{"_id":"@anton-kochev/pithos.telos","_rev":"2-f4edb63b5df288fb37503b99a76bb6c5","name":"@anton-kochev/pithos.telos","dist-tags":{"bootstrap":"0.0.0","latest":"0.2.0"},"versions":{"0.0.0":{"name":"@anton-kochev/pithos.telos","version":"0.0.0","keywords":["pi-package","pi-extension","pithos","tasks","todo","project-management"],"license":"MIT","_id":"@anton-kochev/pithos.telos@0.0.0","maintainers":[{"name":"anton-kochev","email":"anton.kochev@gmail.com"}],"homepage":"https://github.com/anton-kochev/pithos-kit#readme","bugs":{"url":"https://github.com/anton-kochev/pithos-kit/issues"},"pi":{"extensions":["./extensions"]},"dist":{"shasum":"e0b9e4d929ae0925e97a4828c61715396a4e0ed2","tarball":"https://registry.npmjs.org/@anton-kochev/pithos.telos/-/pithos.telos-0.0.0.tgz","fileCount":8,"integrity":"sha512-ULcp403uqQuGL25PPRqNyIlrBHzkJvLJ+xqx3pu3xnsPDoFhPOp3SBlNGmKX/NSKPJaBe99hIxAgrflu9wmN6Q==","signatures":[{"sig":"MEYCIQChJz5cTqiIG6JJ90jNV1c8CrP+6B8J4JkzNt2DHflv+QIhAMxU/3XX8EcmCp2pQXZvyVM290EMANP9q12R4wxZd462","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45956},"type":"module","scripts":{"test":"node --import tsx --test test/*.test.ts"},"_npmUser":{"name":"anton-kochev","email":"anton.kochev@gmail.com"},"repository":{"url":"git+https://github.com/anton-kochev/pithos-kit.git","type":"git","directory":"pithos.telos"},"_npmVersion":"10.9.2","description":"Telos: repo-scoped structured task tracking for Pi.","directories":{},"_nodeVersion":"22.14.0","dependencies":{"yaml":"^2.9.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.20.4"},"peerDependencies":{"typebox":"*","@earendil-works/pi-ai":"*","@earendil-works/pi-tui":"*","@earendil-works/pi-coding-agent":"*"},"_npmOperationalInternal":{"tmp":"tmp/pithos.telos_0.0.0_1786363682695_0.02087655777917563","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@anton-kochev/pithos.telos","version":"0.2.0","description":"Telos: repo-scoped structured task tracking for Pi.","keywords":["pi-package","pi-extension","pithos","tasks","todo","project-management"],"license":"MIT","type":"module","repository":{"type":"git","url":"git+https://github.com/anton-kochev/pithos-kit.git","directory":"pithos.telos"},"publishConfig":{"access":"public"},"dependencies":{"yaml":"^2.9.0"},"devDependencies":{"tsx":"^4.20.4"},"peerDependencies":{"@earendil-works/pi-ai":"*","@earendil-works/pi-coding-agent":"*","@earendil-works/pi-tui":"*","typebox":"*"},"pi":{"extensions":["./extensions"]},"scripts":{"test":"node --import tsx --test test/*.test.ts"},"gitHead":"14e32cc67fc85c72b7588bf1c31b78361f1eaa8c","_id":"@anton-kochev/pithos.telos@0.2.0","bugs":{"url":"https://github.com/anton-kochev/pithos-kit/issues"},"homepage":"https://github.com/anton-kochev/pithos-kit#readme","_nodeVersion":"24.18.0","_npmVersion":"12.0.2","dist":{"integrity":"sha512-iqAuQgoSC9Iys67Xsfu0iFH3Ac8lTm0Cw5dixEiyRpZzAWYDOfnXFgxl2aA8KbFEmd5VRUMiWAbejrRzGk7w2A==","shasum":"452122a5badae0de754f55c19d6474f65c8f648d","tarball":"https://registry.npmjs.org/@anton-kochev/pithos.telos/-/pithos.telos-0.2.0.tgz","fileCount":8,"unpackedSize":45956,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@anton-kochev%2fpithos.telos@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQD3RKB0F+1QJ5Xv19lP/Q1QM6PqdPAeAH1rRGRfUouvxAIgerUboaIUUZQGj60M87WnZYDbvrBTd0Us0BKuxxQ/HU8="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:cc99da08-901c-459c-858f-2520f479a523"}},"directories":{},"maintainers":[{"name":"anton-kochev","email":"anton.kochev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pithos.telos_0.2.0_1786376270497_0.17254974180451677"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-10T12:08:02.478Z","modified":"2026-08-10T15:37:51.023Z","0.0.0":"2026-08-10T12:08:02.880Z","0.2.0":"2026-08-10T15:37:50.661Z"},"bugs":{"url":"https://github.com/anton-kochev/pithos-kit/issues"},"license":"MIT","homepage":"https://github.com/anton-kochev/pithos-kit#readme","keywords":["pi-package","pi-extension","pithos","tasks","todo","project-management"],"repository":{"type":"git","url":"git+https://github.com/anton-kochev/pithos-kit.git","directory":"pithos.telos"},"description":"Telos: repo-scoped structured task tracking for Pi.","maintainers":[{"name":"anton-kochev","email":"anton.kochev@gmail.com"}],"readme":"# telos\n\nRepo-scoped structured task tracking for pi.\n\nTelos adds a `/tasks` command and an agent-callable `telos_tasks` tool. Tasks persist in the current repository's `.pi/telos-tasks.md`, so they survive pi sessions and remain inspectable outside pi.\n\n## Install\n\n```bash\npi install npm:@anton-kochev/pithos.telos\n```\n\nPin to a version:\n\n```bash\npi install npm:@anton-kochev/pithos.telos@<version>\n```\n\nFor local development from a checkout of [`pithos-kit`](https://github.com/anton-kochev/pithos-kit):\n\n```bash\npi install ./pithos.telos\npi install ./pithos.telos -l   # project-local\n```\n\nTemporary test run:\n\n```bash\npi -e ./pithos.telos\n```\n\n## Usage\n\nInside pi:\n\n```text\n/tasks\n/tasks list [--archived|--all]\n/tasks create [--priority low|medium|high|urgent] [--status todo|in_progress|blocked|done|archived] [--notes <notes>] [--depends <id[,id...]>] <title>\n/tasks show <id>\n/tasks update <id> [--title <title>] [--priority low|medium|high|urgent] [--status todo|in_progress|blocked|done|archived] [--notes <notes>] [--depends <id[,id...]>]\n/tasks status <id> <todo|in_progress|blocked|done|archived>\n/tasks complete <id>\n/tasks reopen <id>\n/tasks block <id>\n/tasks archive <id>\n/tasks delete <id>       # rejected; use archive instead\n/tasks --help\n```\n\nExamples:\n\n```text\n/tasks create --priority high \"Implement Telos MVP\"\n/tasks list --all\n/tasks update TSK-abc123ef --notes \"Waiting on review\"\n/tasks create --depends TSK-abc123ef \"Build on existing task\"\n/tasks complete TSK-abc123ef\n/tasks archive TSK-abc123ef\n```\n\n`/tasks` with no arguments opens a read-only interactive task list when pi has an interactive UI. Use `↑`/`↓` to move the chevron pointer between tasks, press `Enter` or `Space` to open/close details for the selected task, and press `Esc`, `Ctrl+C`, or `q` to exit without modifying tasks. In non-interactive modes it prints the active task list as text.\n\n### Interactive list legend\n\nThe interactive list uses compact glyphs so task rows stay scannable:\n\nStatuses:\n\n```text\n□ todo\n▣ in_progress\n▧ blocked\n■ done\n▫ archived\n```\n\nPriorities:\n\n```text\n●●● urgent\n●●○ high\n●○○ medium\n○○○ low\n```\n\nDependency indicator:\n\n```text\n◂1   depends on one task\n◂2   depends on two tasks\n```\n\nExample row:\n\n```text\n› □ TSK-9d6a63e4  ●○○  Dependent test task  ◂1\n```\n\nThe `›` chevron marks the selected task. Press `Enter` or `Space` to switch to a details view for that task:\n\n```text\n─── TSK-9d6a63e4 ─────────────────────────\n\n  Dependent test task\n  □ todo · ●○○ medium\n\n  Dependencies\n  □ TSK-e1fe6249  ●○○  Move Telos task artifact under .pi\n\n  Created  2026-06-04 11:08 UTC\n  Updated  2026-06-04 11:08 UTC\n```\n\nThe details view shows the description and dependencies only when they are present. Long descriptions wrap instead of truncating.\n\nCompleted tasks are dimmed and sorted after incomplete active tasks. Dependency IDs are not expanded in the list; use the details view or `/tasks show <id>` for full details.\n\n## Agent tool\n\nTelos registers one LLM-callable tool: `telos_tasks`.\n\nThe tool supports the same task operations as `/tasks`: create, list, show, update, status, complete, reopen, block, archive, and delete rejection. It also accepts `dependencies: string[]` for create and update operations. It is described neutrally so the agent can use it when the user asks to manage or track tasks; Telos does not add any automatic per-turn task creation or tracking hook.\n\n## `.pi/telos-tasks.md` artifact\n\nTelos stores canonical task data in YAML frontmatter under the repository's `.pi` directory:\n\n```md\n---\ntelos_version: 1\ntasks:\n  - id: TSK-abc123ef\n    title: Implement Telos MVP\n    status: todo\n    priority: high\n    notes: \"\"\n    dependencies: []\n    created: \"2026-06-02T12:00:00.000Z\"\n    updated: \"2026-06-02T12:00:00.000Z\"\n---\n\n# Tasks\n\nGenerated human-readable summary...\n```\n\nThe YAML frontmatter is the source of truth. The Markdown body is regenerated after successful Telos mutations and should be treated as display output.\n\nTask fields:\n\n- `id` — stable task ID, generated as `TSK-{short_hash}`, for example `TSK-abc123ef`\n- `title` — non-empty task title\n- `status` — `todo`, `in_progress`, `blocked`, `done`, or `archived`\n- `priority` — `low`, `medium`, `high`, or `urgent`\n- `notes` — string, may be empty\n- `dependencies` — task IDs this task depends on; use `[]` when there are none. Dependencies must reference existing tasks, cannot reference the task itself, and cannot contain duplicates.\n- `created` — ISO 8601 timestamp\n- `updated` — ISO 8601 timestamp\n\nArchive is the MVP soft-delete mechanism. Physical deletion is rejected and leaves `.pi/telos-tasks.md` unchanged.\n\n## Local development\n\n```bash\ncd pithos.telos\nnpm install\nnpm test\n```\n\nTelos uses Node's built-in `node:test` runner with `tsx` for TypeScript tests.\n\n## Publish\n\nThis package is intended to publish through the repository's trusted publishing workflow. Release with a package-specific tag:\n\n```bash\ncd pithos.telos\nnpm version patch --tag-version-prefix=\"pithos.telos-v\"\ngit push --follow-tags\n```\n\n## Notes\n\nThis package imports pi runtime packages as peer dependencies:\n\n- `@earendil-works/pi-ai`\n- `@earendil-works/pi-coding-agent`\n- `@earendil-works/pi-tui`\n- `typebox`\n\nDo not bundle those dependencies; pi provides them at runtime.\n","readmeFilename":"README.md"}