@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.
- package/CHANGELOG.md +38 -0
- package/README.md +23 -20
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +538 -71
- package/docs/_meta.ts +9 -0
- package/docs/agents/_meta.ts +5 -0
- package/docs/agents/commands.md +70 -0
- package/docs/agents/index.md +99 -0
- package/docs/agents/llms.txt +28 -0
- package/docs/agents/workflows.md +50 -0
- package/docs/cli-reference.md +461 -0
- package/docs/configuration.md +63 -0
- package/docs/document-types.md +103 -0
- package/docs/getting-started.md +106 -0
- package/docs/index.md +43 -0
- package/docs/maintainers/_meta.ts +7 -0
- package/docs/maintainers/architecture/_meta.ts +5 -0
- package/docs/maintainers/architecture/decisions/0001-documentation-platform.md +44 -0
- package/docs/maintainers/architecture/decisions/0002-code-architecture.md +31 -0
- package/docs/maintainers/architecture/decisions/0003-snapshot-policy.md +31 -0
- package/docs/maintainers/architecture/decisions/_meta.ts +5 -0
- package/docs/maintainers/architecture/overview.md +111 -0
- package/docs/maintainers/architecture/synchronization.md +56 -0
- package/docs/maintainers/development/_meta.ts +6 -0
- package/docs/maintainers/development/contributing.md +58 -0
- package/docs/maintainers/development/documentation.md +52 -0
- package/docs/maintainers/development/engineering.md +59 -0
- package/docs/maintainers/development/testing.md +89 -0
- package/docs/maintainers/index.md +20 -0
- package/docs/maintainers/product/_meta.ts +3 -0
- package/docs/maintainers/product/vision.md +68 -0
- package/docs/maintainers/technology.md +55 -0
- package/docs/task-files.md +180 -0
- package/package.json +8 -6
- package/skills/taskset/SKILL.md +240 -0
- package/skills/taskset/references/changesets-examples.md +97 -0
- package/skills/taskset/references/document-modeling-examples.md +63 -0
- package/skills/taskset/references/monorepo-task-modeling.md +125 -0
- package/skills/taskset/references/task-modeling-examples.md +249 -0
- package/skills/taskset-implement/SKILL.md +240 -0
- package/skills/taskset-implement/agents/openai.yaml +4 -0
- package/skills/taskset-implement/references/architecture/client-and-server.md +69 -0
- package/skills/taskset-implement/references/architecture/documentation-and-generated.md +72 -0
- package/skills/taskset-implement/references/architecture/ownership-and-dependencies.md +108 -0
- package/skills/taskset-implement/references/architecture/product-and-source.md +81 -0
- package/skills/taskset-implement/references/architecture/storage-and-snapshots.md +45 -0
- package/skills/taskset-implement/references/architecture.md +34 -0
- package/skills/taskset-implement/references/conventions/backend-and-tooling.md +33 -0
- package/skills/taskset-implement/references/conventions/design.md +38 -0
- package/skills/taskset-implement/references/conventions/interfaces-and-ui.md +50 -0
- package/skills/taskset-implement/references/conventions/naming-and-packages.md +64 -0
- package/skills/taskset-implement/references/conventions/task-files.md +94 -0
- package/skills/taskset-implement/references/conventions/tests-and-docs.md +55 -0
- package/skills/taskset-implement/references/conventions/typescript-and-exports.md +41 -0
- package/skills/taskset-implement/references/conventions.md +40 -0
- package/skills/taskset-implement/references/release.md +135 -0
- package/skills/taskset-implement/references/workflows/dependencies-and-docs-site.md +54 -0
- package/skills/taskset-implement/references/workflows/environment-and-pnpm.md +109 -0
- package/skills/taskset-implement/references/workflows/persisted-data-and-git.md +30 -0
- package/skills/taskset-implement/references/workflows/validation.md +34 -0
- package/skills/taskset-implement/references/workflows/vitest-and-test-strategy.md +82 -0
- package/skills/taskset-implement/references/workflows.md +33 -0
- package/src/cli.ts +640 -87
package/docs/_meta.ts
ADDED
|
@@ -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.
|