@taskset/cli 4.0.0 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/README.md +23 -20
  3. package/dist/cli.d.ts.map +1 -1
  4. package/dist/cli.js +538 -71
  5. package/docs/_meta.ts +9 -0
  6. package/docs/agents/_meta.ts +5 -0
  7. package/docs/agents/commands.md +70 -0
  8. package/docs/agents/index.md +99 -0
  9. package/docs/agents/llms.txt +28 -0
  10. package/docs/agents/workflows.md +50 -0
  11. package/docs/cli-reference.md +461 -0
  12. package/docs/configuration.md +63 -0
  13. package/docs/document-types.md +103 -0
  14. package/docs/getting-started.md +106 -0
  15. package/docs/index.md +43 -0
  16. package/docs/maintainers/_meta.ts +7 -0
  17. package/docs/maintainers/architecture/_meta.ts +5 -0
  18. package/docs/maintainers/architecture/decisions/0001-documentation-platform.md +44 -0
  19. package/docs/maintainers/architecture/decisions/0002-code-architecture.md +31 -0
  20. package/docs/maintainers/architecture/decisions/0003-snapshot-policy.md +31 -0
  21. package/docs/maintainers/architecture/decisions/_meta.ts +5 -0
  22. package/docs/maintainers/architecture/overview.md +111 -0
  23. package/docs/maintainers/architecture/synchronization.md +56 -0
  24. package/docs/maintainers/development/_meta.ts +6 -0
  25. package/docs/maintainers/development/contributing.md +58 -0
  26. package/docs/maintainers/development/documentation.md +52 -0
  27. package/docs/maintainers/development/engineering.md +59 -0
  28. package/docs/maintainers/development/testing.md +89 -0
  29. package/docs/maintainers/index.md +20 -0
  30. package/docs/maintainers/product/_meta.ts +3 -0
  31. package/docs/maintainers/product/vision.md +68 -0
  32. package/docs/maintainers/technology.md +55 -0
  33. package/docs/task-files.md +180 -0
  34. package/package.json +8 -6
  35. package/skills/taskset/SKILL.md +240 -0
  36. package/skills/taskset/references/changesets-examples.md +97 -0
  37. package/skills/taskset/references/document-modeling-examples.md +63 -0
  38. package/skills/taskset/references/monorepo-task-modeling.md +125 -0
  39. package/skills/taskset/references/task-modeling-examples.md +249 -0
  40. package/skills/taskset-implement/SKILL.md +240 -0
  41. package/skills/taskset-implement/agents/openai.yaml +4 -0
  42. package/skills/taskset-implement/references/architecture/client-and-server.md +69 -0
  43. package/skills/taskset-implement/references/architecture/documentation-and-generated.md +72 -0
  44. package/skills/taskset-implement/references/architecture/ownership-and-dependencies.md +108 -0
  45. package/skills/taskset-implement/references/architecture/product-and-source.md +81 -0
  46. package/skills/taskset-implement/references/architecture/storage-and-snapshots.md +45 -0
  47. package/skills/taskset-implement/references/architecture.md +34 -0
  48. package/skills/taskset-implement/references/conventions/backend-and-tooling.md +33 -0
  49. package/skills/taskset-implement/references/conventions/design.md +38 -0
  50. package/skills/taskset-implement/references/conventions/interfaces-and-ui.md +50 -0
  51. package/skills/taskset-implement/references/conventions/naming-and-packages.md +64 -0
  52. package/skills/taskset-implement/references/conventions/task-files.md +94 -0
  53. package/skills/taskset-implement/references/conventions/tests-and-docs.md +55 -0
  54. package/skills/taskset-implement/references/conventions/typescript-and-exports.md +41 -0
  55. package/skills/taskset-implement/references/conventions.md +40 -0
  56. package/skills/taskset-implement/references/release.md +135 -0
  57. package/skills/taskset-implement/references/workflows/dependencies-and-docs-site.md +54 -0
  58. package/skills/taskset-implement/references/workflows/environment-and-pnpm.md +109 -0
  59. package/skills/taskset-implement/references/workflows/persisted-data-and-git.md +30 -0
  60. package/skills/taskset-implement/references/workflows/validation.md +34 -0
  61. package/skills/taskset-implement/references/workflows/vitest-and-test-strategy.md +82 -0
  62. package/skills/taskset-implement/references/workflows.md +33 -0
  63. package/src/cli.ts +640 -87
package/docs/_meta.ts ADDED
@@ -0,0 +1,9 @@
1
+ export default {
2
+ index: 'Overview',
3
+ 'getting-started': 'Getting Started',
4
+ configuration: 'Configuration',
5
+ 'cli-reference': 'CLI Reference',
6
+ 'task-files': 'Task Files',
7
+ 'document-types': 'Document Types',
8
+ agents: 'For Agents',
9
+ }
@@ -0,0 +1,5 @@
1
+ export default {
2
+ index: 'For Agents',
3
+ workflows: 'Agent Workflows',
4
+ commands: 'Agent Commands',
5
+ }
@@ -0,0 +1,70 @@
1
+ ---
2
+ title: Use Taskset command contracts
3
+ description: Machine-oriented contracts for discovery, JSON output, clear flags, search, and identifiers.
4
+ contentType: Reference
5
+ navLabel: Agent Commands
6
+ ---
7
+
8
+ # Use Taskset command contracts
9
+
10
+ This page quotes the contracts agents should rely on. For the full human reference, see [CLI reference](../cli-reference.md).
11
+
12
+ ## Discovery and defaults
13
+
14
+ | Fact | Contract |
15
+ | --- | --- |
16
+ | Repository marker | Nearest ancestor `.taskset/` directory |
17
+ | Optional config | `taskset.config.ts` beside that root |
18
+ | Missing config | Built-in statuses, priorities, and defaults |
19
+ | `taskset config --json` | Includes `rootDirectory`, `configPath`, `hasConfig`, `dataDirectory`, `config` |
20
+ | `taskset init` | Creates `.taskset/`; `--config` writes optional config |
21
+
22
+ ## Output and exit codes
23
+
24
+ - Stdout carries requested output
25
+ - Stderr carries diagnostics and generation warnings
26
+ - Exit `0` means success
27
+ - Exit `1` means repository or domain failure
28
+ - Exit `2` means usage or validation failure
29
+
30
+ ## Identifiers
31
+
32
+ - Entity `id` values are immutable 5–6 character lowercase hex strings
33
+ - Filenames are `{sequence}-{slug}-{id}.md`
34
+ - Commands and relationships must use the short `id`
35
+ - Never cite the mutable sequence prefix as identity
36
+
37
+ ## Array updates and clear flags
38
+
39
+ Array options replace the whole stored array. Repeat the singular option once per desired value. Clear with the exact plural flag:
40
+
41
+ - `--clear-dependencies`
42
+ - `--clear-labels`
43
+ - `--clear-assignees`
44
+ - `--clear-reviewers`
45
+ - `--clear-related`
46
+ - `--clear-files`
47
+ - `--clear-directories`
48
+ - `--clear-projects`
49
+ - `--clear-parent`
50
+ - `--clear-owner`
51
+
52
+ Do not guess a clear flag from the singular setter name.
53
+
54
+ ## Search and impact
55
+
56
+ - `--search` is token-aware: every normalized term must match title or body
57
+ - Terms may appear in any order
58
+ - `--impact` expands file, directory, or dependency matches to dependent work
59
+
60
+ ## Document kinds
61
+
62
+ Use only these kinds:
63
+
64
+ - `story`
65
+ - `flow`
66
+ - `decision` (`adr`, `dr` aliases)
67
+ - `research`
68
+ - `runbook`
69
+
70
+ Document statuses are `draft`, `ready`, `active`, `accepted`, `superseded`, and `archived`.
@@ -0,0 +1,99 @@
1
+ ---
2
+ title: Operate Taskset as an agent
3
+ description: Plan, research, decide, and track repository work with the Taskset CLI, skill, and JSON contracts.
4
+ contentType: How-to
5
+ navLabel: For Agents
6
+ ---
7
+
8
+ # Operate Taskset as an agent
9
+
10
+ Use this page when you are an agent operating Taskset in a repository. Humans should start with [Getting started](../getting-started.md). Maintainer architecture lives under [Maintainer docs](../maintainers/index.md).
11
+
12
+ Taskset is not only a task tracker. You use it to capture plans, research, decisions, flows, runbooks, and the tasks that execute them in one Git-native graph.
13
+
14
+ ## Load the skill first
15
+
16
+ Prefer the packaged skill before inventing workflow:
17
+
18
+ ```bash
19
+ npx skills add FalseFoundation/taskset --skill taskset
20
+ ```
21
+
22
+ Project and global skill installs both work. After a project npm install, offline copies also live at `node_modules/@taskset/cli/skills/taskset/SKILL.md`.
23
+
24
+ ## Invoke the CLI
25
+
26
+ Do not assume `pnpm taskset`. Use whichever runner the environment provides:
27
+
28
+ ```bash
29
+ npx @taskset/cli document list --json
30
+ npx @taskset/cli task list --json
31
+ pnpm dlx @taskset/cli doctor --json
32
+ yarn dlx @taskset/cli document show your_document_id_here --json
33
+ bunx @taskset/cli sync --json
34
+ taskset task list --json
35
+ ```
36
+
37
+ ## Discover the repository
38
+
39
+ 1. Walk upward for `.taskset/`
40
+ 2. Load optional `taskset.config.ts` at that root when present
41
+ 3. Otherwise use built-in defaults
42
+
43
+ No config file is required. `taskset init` creates `.taskset/` only. Pass `--config` when the repository wants an optional TypeScript overlay.
44
+
45
+ ## Choose the right artifact
46
+
47
+ | If the work produces… | Create… |
48
+ | --- | --- |
49
+ | A user outcome or acceptance criteria | `story` |
50
+ | A journey with variants and checks | `flow` |
51
+ | Evidence, options, or a recommendation | `research` |
52
+ | A lasting architectural or product choice | `decision` / `adr` |
53
+ | A repeatable recovery or ops procedure | `runbook` |
54
+ | Scoped execution with status and owners | `task` |
55
+
56
+ Link documents and tasks with `--related`. Keep one-off scratch in the task body.
57
+
58
+ ## Core operating rules
59
+
60
+ - Treat `.taskset/tasks/` and kind-specific document directories as the source of truth
61
+ - Mutate through CLI commands when a command exists
62
+ - Cite short hex ids such as `a1b2c3`, never filename sequence prefixes
63
+ - Prefer `--json` for handoffs
64
+ - Create follow-up tasks or checklist subtasks for newly discovered work
65
+ - Create research, decision, runbook, story, or flow documents when work produces reusable evidence or lasting choices
66
+ - Keep statuses current mid-work
67
+
68
+ ## Command map
69
+
70
+ | Goal | Command |
71
+ | --- | --- |
72
+ | Inspect root and defaults | `taskset config --json` |
73
+ | Validate repository | `taskset doctor --json` |
74
+ | List or search tasks | `taskset task list --search "terms" --json` |
75
+ | List or search documents | `taskset document list research --search "terms" --json` |
76
+ | Show one entity | `taskset task show your_task_id_here --json` |
77
+ | Create executable work | `taskset task create --title "Describe the work"` |
78
+ | Create durable memory | `taskset document create research --title "Evaluate options" --related your_task_id_here` |
79
+ | Change status | `taskset task status your_task_id_here doing` |
80
+ | Impact query | `taskset task list --file path/or/dir --impact --json` |
81
+ | Repair and rebuild | `taskset sync --json` |
82
+
83
+ Full contracts: [CLI reference](../cli-reference.md) and [Agent command contracts](commands.md).
84
+
85
+ ## Workflow checklist
86
+
87
+ 1. Confirm the repository root with `taskset config --json`
88
+ 2. Search existing tasks and documents before creating duplicates
89
+ 3. Capture durable evidence or decisions as documents mid-work
90
+ 4. Create or update tasks for executable delivery
91
+ 5. Resolve ownership before mutating assigned work
92
+ 6. Keep statuses current, then re-validate after edits
93
+
94
+ ## Related pages
95
+
96
+ - [Agent workflows](workflows.md)
97
+ - [Agent command contracts](commands.md)
98
+ - [Document types](../document-types.md)
99
+ - [Task files](../task-files.md)
@@ -0,0 +1,28 @@
1
+ # Taskset
2
+
3
+ > Git-native Markdown workspace for planning, research, decisions, operations, and delivery.
4
+
5
+ Taskset stores stories, flows, research, decisions, runbooks, and tasks under `.taskset/`. The CLI is published as `@taskset/cli` and runs through package runners or a global install. Config files are optional.
6
+
7
+ ## For agents
8
+
9
+ - [Operate Taskset as an agent](https://taskset.false.foundation/docs/agents)
10
+ - [Follow agent workflows](https://taskset.false.foundation/docs/agents/workflows)
11
+ - [Use Taskset command contracts](https://taskset.false.foundation/docs/agents/commands)
12
+ - [Choose a document type](https://taskset.false.foundation/docs/document-types)
13
+ - [Understand task files](https://taskset.false.foundation/docs/task-files)
14
+ - [CLI reference](https://taskset.false.foundation/docs/cli-reference)
15
+
16
+ ## For humans
17
+
18
+ - [Keep the whole delivery story beside the code](https://taskset.false.foundation/docs)
19
+ - [Start a Taskset repository](https://taskset.false.foundation/docs/getting-started)
20
+ - [Configure Taskset defaults](https://taskset.false.foundation/docs/configuration)
21
+
22
+ ## Optional offline skill
23
+
24
+ After install, load `node_modules/@taskset/cli/skills/taskset/SKILL.md`, or install with:
25
+
26
+ ```text
27
+ npx skills add FalseFoundation/taskset --skill taskset
28
+ ```
@@ -0,0 +1,50 @@
1
+ ---
2
+ title: Follow agent workflows in Taskset
3
+ description: Ownership checks, mid-work updates, documents, and monorepo habits for agent operators.
4
+ contentType: How-to
5
+ navLabel: Agent Workflows
6
+ ---
7
+
8
+ # Follow agent workflows in Taskset
9
+
10
+ These workflows assume the CLI is available and `.taskset/` already exists. Initialize with `taskset init` when it does not. Use documents for durable memory and tasks for execution; link them so later agents inherit the full story.
11
+
12
+ ## Before you execute a task
13
+
14
+ 1. Run `taskset task show your_task_id_here --json`
15
+ 2. Resolve `git config --get user.name`
16
+ 3. Compare owner and assignees with that identity
17
+ 4. Pause for confirmation when another person owns or is exclusively assigned the task
18
+ 5. Check unresolved dependencies and blockers before status changes
19
+
20
+ Matching ownership does not override blockers. A generic instruction such as “work on the next task” does not override another person’s assignment.
21
+
22
+ ## While you execute
23
+
24
+ - Set the active task to `doing` when work starts
25
+ - Create child tasks (`--parent`) or checklist items (`- [ ]`) for newly discovered work
26
+ - Check off finished checklist items as `- [x]`
27
+ - Mark finished child tasks `done`
28
+ - Create research, decision, runbook, story, or flow documents when evidence or lasting choices appear
29
+ - Link documents and tasks with `--related`
30
+ - Update a primary skill when the session designates one and a lasting lesson emerges
31
+
32
+ Do not leave discovered work only in chat.
33
+
34
+ ## Close-out
35
+
36
+ 1. Confirm acceptance criteria are met
37
+ 2. Confirm every tracked subtask is finished or intentionally resolved
38
+ 3. Set the parent task to `done`
39
+ 4. Run the repository’s relevant tests or `taskset doctor --json` when the change touched contracts or many files
40
+
41
+ ## Monorepo habits
42
+
43
+ - Prefer declared package names and existing Taskset projects over directory-name guesses
44
+ - Record `--depends-on` only for real execution prerequisites
45
+ - Attach the narrowest accurate `--file` or `--directory` scopes
46
+ - Validate the changed package and affected dependents
47
+
48
+ ## Batch and sync
49
+
50
+ Use `taskset document batch manifest.json --json` for multi-document jobs. Use `taskset sync --json` after upgrades or when filenames, ids, or generated views need repair.