tracerkit 1.19.3 → 1.19.5
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/README.md +22 -23
- package/package.json +1 -1
- package/skills/brief/SKILL.md +16 -30
- package/skills/build/SKILL.md +0 -4
- package/skills/check/SKILL.md +31 -81
- package/skills/plan/SKILL.md +1 -19
- package/skills/prd/SKILL.md +0 -9
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ DEFINE PLAN BUILD VERIFY
|
|
|
29
29
|
│ │ │ │
|
|
30
30
|
▼ ▼ ▼ ▼
|
|
31
31
|
PRD doc Phased plan Implement phase Pass/fail
|
|
32
|
-
+ feedback loops
|
|
32
|
+
+ feedback loops
|
|
33
33
|
```
|
|
34
34
|
|
|
35
35
|
## Get Started
|
|
@@ -125,17 +125,17 @@ AI: Phase 1 — Theme visible end-to-end (3 remaining)
|
|
|
125
125
|
Implementing... all checks pass. Commit?
|
|
126
126
|
|
|
127
127
|
You: /tk:check dark-mode-support
|
|
128
|
-
AI:
|
|
129
|
-
|
|
128
|
+
AI: Total: 7/7
|
|
129
|
+
All phases complete — implementation verified.
|
|
130
130
|
```
|
|
131
131
|
|
|
132
132
|
Between sessions, `/tk:brief` shows active features and picks up where you left off:
|
|
133
133
|
|
|
134
134
|
```
|
|
135
135
|
You: /tk:brief
|
|
136
|
-
AI:
|
|
137
|
-
|
|
138
|
-
|
|
136
|
+
AI: dark-mode-support (3/7)
|
|
137
|
+
Phase 1 — Theme visible end-to-end: 3/3
|
|
138
|
+
> Phase 2 — User can toggle and persist preference: 0/4
|
|
139
139
|
|
|
140
140
|
**Focus → dark-mode-support**
|
|
141
141
|
```
|
|
@@ -144,26 +144,25 @@ See [Examples](docs/examples.md) for full walkthroughs.
|
|
|
144
144
|
|
|
145
145
|
## Skills
|
|
146
146
|
|
|
147
|
-
| Skill | What it does | Output
|
|
148
|
-
| ------------------ | ------------------------------------------------------ |
|
|
149
|
-
| `/tk:prd <idea>` | Interview → codebase scan → structured PRD | `.tracerkit/prds/<slug>.md`
|
|
150
|
-
| `/tk:plan <slug>` | PRD → phased vertical slices, each demoable on its own | `.tracerkit/plans/<slug>.md`
|
|
151
|
-
| `/tk:build <slug>` | Implement next incomplete phase, run feedback loops | Code changes + checked items in plan
|
|
152
|
-
| `/tk:brief` | Feature dashboard with progress and suggested focus | Terminal only, no files
|
|
153
|
-
| `/tk:check [slug]` | Verify done-when checkboxes against codebase and tests |
|
|
147
|
+
| Skill | What it does | Output |
|
|
148
|
+
| ------------------ | ------------------------------------------------------ | ------------------------------------ |
|
|
149
|
+
| `/tk:prd <idea>` | Interview → codebase scan → structured PRD | `.tracerkit/prds/<slug>.md` |
|
|
150
|
+
| `/tk:plan <slug>` | PRD → phased vertical slices, each demoable on its own | `.tracerkit/plans/<slug>.md` |
|
|
151
|
+
| `/tk:build <slug>` | Implement next incomplete phase, run feedback loops | Code changes + checked items in plan |
|
|
152
|
+
| `/tk:brief` | Feature dashboard with progress and suggested focus | Terminal only, no files |
|
|
153
|
+
| `/tk:check [slug]` | Verify done-when checkboxes against codebase and tests | Checkboxes updated in plan |
|
|
154
154
|
|
|
155
155
|
## Docs
|
|
156
156
|
|
|
157
|
-
| Document
|
|
158
|
-
|
|
|
159
|
-
| [Examples](docs/examples.md)
|
|
160
|
-
| [CLI Reference](docs/cli-reference.md)
|
|
161
|
-
| [
|
|
162
|
-
| [
|
|
163
|
-
| [
|
|
164
|
-
| [
|
|
165
|
-
| [
|
|
166
|
-
| [OpenCode Setup](docs/opencode-setup.md) | Use TracerKit skills in OpenCode |
|
|
157
|
+
| Document | Description |
|
|
158
|
+
| -------------------------------------------- | ------------------------------------------------- |
|
|
159
|
+
| [Examples](docs/examples.md) | Walk through end-to-end usage scenarios |
|
|
160
|
+
| [CLI Reference](docs/cli-reference.md) | Commands: init, update, uninstall |
|
|
161
|
+
| [Comparison](docs/comparison.md) | Compare TracerKit to Spec Kit, Kiro, and OpenSpec |
|
|
162
|
+
| [Cursor Setup](docs/cursor-setup.md) | Use TracerKit skills in Cursor |
|
|
163
|
+
| [Gemini CLI Setup](docs/gemini-cli-setup.md) | Use TracerKit skills in Gemini CLI |
|
|
164
|
+
| [Copilot Setup](docs/copilot-setup.md) | Use TracerKit skills in GitHub Copilot |
|
|
165
|
+
| [OpenCode Setup](docs/opencode-setup.md) | Use TracerKit skills in OpenCode |
|
|
167
166
|
|
|
168
167
|
## Contributing
|
|
169
168
|
|
package/package.json
CHANGED
package/skills/brief/SKILL.md
CHANGED
|
@@ -6,49 +6,35 @@ description: Session briefing — shows active features, progress, and suggested
|
|
|
6
6
|
|
|
7
7
|
Overview of active features, progress, and suggested focus.
|
|
8
8
|
|
|
9
|
-
## Pre-loaded context
|
|
10
|
-
|
|
11
|
-
- Available PRDs: !`ls .tracerkit/prds/*.md 2>/dev/null || echo "(none)"`
|
|
12
|
-
|
|
13
9
|
## Algorithm
|
|
14
10
|
|
|
15
|
-
### 1. Discover
|
|
16
|
-
|
|
17
|
-
For each `.md` file in `.tracerkit/prds/`: parse frontmatter, extract `status` and `created`. Skip `status: done`. Slug = filename without `.md`.
|
|
11
|
+
### 1. Discover plans
|
|
18
12
|
|
|
19
|
-
|
|
13
|
+
Glob `.tracerkit/plans/*.md`. Slug = filename without `.md`. If no plans found, output: `No plans found — run /tk:prd to start one.`
|
|
20
14
|
|
|
21
|
-
|
|
15
|
+
### 2. Count progress
|
|
22
16
|
|
|
23
|
-
|
|
17
|
+
For each plan, count `- [x]` and `- [ ]` lines under each `## Phase N` heading. Per-phase: `checked/total`. Sum across phases → total progress. First phase with unchecked items → cursor.
|
|
24
18
|
|
|
25
|
-
|
|
19
|
+
Skip plans where all items are checked (fully complete).
|
|
26
20
|
|
|
27
|
-
|
|
21
|
+
### 3. Show progress
|
|
28
22
|
|
|
29
|
-
|
|
30
|
-
- < 30 days → `Nw` (e.g. `2w`)
|
|
31
|
-
- 30+ days → `Nmo` (e.g. `1mo`)
|
|
32
|
-
|
|
33
|
-
Output this exact table format:
|
|
23
|
+
For each incomplete plan:
|
|
34
24
|
|
|
35
25
|
```
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
26
|
+
<slug> (checked/total)
|
|
27
|
+
Phase 1 — title: checked/total
|
|
28
|
+
> Phase 2 — title: checked/total
|
|
29
|
+
Phase 3 — title: checked/total
|
|
39
30
|
```
|
|
40
31
|
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
### 4. Determine focus
|
|
44
|
-
|
|
45
|
-
Apply these rules in order:
|
|
32
|
+
The `>` marks the first incomplete phase (cursor). Completed phases show without `>`.
|
|
46
33
|
|
|
47
|
-
|
|
48
|
-
2. Multiple `in_progress` features → select the oldest by `created`
|
|
49
|
-
3. Zero `in_progress` features → select the oldest overall
|
|
34
|
+
### 4. Suggest focus
|
|
50
35
|
|
|
51
|
-
|
|
36
|
+
If exactly one incomplete plan → auto-select it.
|
|
37
|
+
If multiple incomplete plans → select the one closest to completion.
|
|
52
38
|
|
|
53
39
|
```
|
|
54
40
|
**Focus → <slug>**
|
|
@@ -58,6 +44,6 @@ Append below the table:
|
|
|
58
44
|
|
|
59
45
|
Present options and wait for the user's choice:
|
|
60
46
|
|
|
61
|
-
1. Continue focused feature —
|
|
47
|
+
1. Continue focused feature — `/tk:build <slug>` (Recommended)
|
|
62
48
|
2. Start new feature — `/tk:prd`
|
|
63
49
|
3. Check progress — `/tk:check <slug>`
|
package/skills/build/SKILL.md
CHANGED
|
@@ -11,10 +11,6 @@ Implement the next incomplete phase of a plan — one phase per invocation.
|
|
|
11
11
|
|
|
12
12
|
**Interactive prompts**: present options as a numbered list and wait for the user's choice.
|
|
13
13
|
|
|
14
|
-
## Pre-loaded context
|
|
15
|
-
|
|
16
|
-
- Available plans: !`ls .tracerkit/plans/*.md 2>/dev/null || echo "(none)"`
|
|
17
|
-
|
|
18
14
|
## Input
|
|
19
15
|
|
|
20
16
|
The argument (if provided) is: $ARGUMENTS
|
package/skills/check/SKILL.md
CHANGED
|
@@ -1,39 +1,21 @@
|
|
|
1
1
|
---
|
|
2
|
-
description: Verify implementation against plan. Shows progress
|
|
2
|
+
description: Verify implementation against plan. Shows progress and finds blockers. Use after implementing a plan.
|
|
3
3
|
argument-hint: '[slug]'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Check Implementation
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Verify plan checkboxes against the codebase. Unmark items that don't hold up (`[x]` → `[ ]`).
|
|
9
9
|
|
|
10
10
|
**Interactive prompts**: present options as a numbered list and wait for the user's choice.
|
|
11
11
|
|
|
12
|
-
## Pre-loaded context
|
|
13
|
-
|
|
14
|
-
- Available plans: !`ls .tracerkit/plans/*.md 2>/dev/null || echo "(none)"`
|
|
15
|
-
|
|
16
12
|
## Input
|
|
17
13
|
|
|
18
14
|
The argument (if provided) is: $ARGUMENTS
|
|
19
15
|
|
|
20
|
-
Use the argument as `<slug>` if given.
|
|
21
|
-
|
|
22
|
-
If no argument is provided, build a summary table before asking which one to check:
|
|
23
|
-
|
|
24
|
-
```markdown
|
|
25
|
-
| Feature | Status | Progress |
|
|
26
|
-
| ------- | ------ | -------- |
|
|
27
|
-
| <slug> | ... | 3/7 |
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
For each `.md` file in `.tracerkit/prds/`:
|
|
31
|
-
|
|
32
|
-
1. Read the file, parse YAML frontmatter (block between `---` fences)
|
|
33
|
-
2. Extract `status` — use `unknown` if missing
|
|
34
|
-
3. If `.tracerkit/plans/<slug>.md` exists, count progress (see Progress Algorithm below). Show `—` if no plan.
|
|
16
|
+
Use the argument as `<slug>` if given. Accepts slug or `@file` reference.
|
|
35
17
|
|
|
36
|
-
|
|
18
|
+
If no argument is provided, list available plans as numbered options and wait for the user's choice.
|
|
37
19
|
|
|
38
20
|
## Progress Algorithm
|
|
39
21
|
|
|
@@ -45,57 +27,48 @@ Count `- [x]` and `- [ ]` lines under each `## Phase N` heading. Per-phase: `Pha
|
|
|
45
27
|
|
|
46
28
|
Read `.tracerkit/plans/<slug>.md`. If missing, list plans as numbered options and wait for the user's choice.
|
|
47
29
|
|
|
48
|
-
### 2.
|
|
30
|
+
### 2. Fast-path: check if implementation exists
|
|
49
31
|
|
|
50
|
-
|
|
32
|
+
If primary module file(s) from Phase 1 don't exist, skip subagent — report `0/N — not yet started`, list Phase 1 done-when items.
|
|
51
33
|
|
|
52
|
-
### 3.
|
|
34
|
+
### 3. Launch read-only review
|
|
53
35
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
### 3b. Launch read-only review
|
|
57
|
-
|
|
58
|
-
Use a **general-purpose subagent** (not `code-review` — that agent is for PR reviews). The subagent must be **read-only** (no file writes, no edits). It should:
|
|
36
|
+
Use a **general-purpose subagent** (not `code-review`). The subagent must be **read-only** (no file writes, no edits). It should:
|
|
59
37
|
|
|
60
38
|
1. Read every section of the plan — architectural decisions, each phase, done-when checkboxes
|
|
61
39
|
2. For each phase, check every `- [ ]` / `- [x]` item against the codebase
|
|
62
|
-
3. Run the project's test suite
|
|
63
|
-
4.
|
|
64
|
-
|
|
65
|
-
For each checkbox, determine whether it should be verified (`[x]`) or not (`[ ]`) and report this — do not edit any files.
|
|
40
|
+
3. Run the project's test suite and include pass/fail results
|
|
41
|
+
4. For each checkbox, determine whether it should be checked (`[x]`) or unchecked (`[ ]`)
|
|
66
42
|
|
|
67
43
|
Collect findings into two categories:
|
|
68
44
|
|
|
69
|
-
- **BLOCKERS** — checked items that don't hold up, failing tests, broken contracts
|
|
70
|
-
- **SUGGESTIONS** — improvements, minor gaps, style issues
|
|
45
|
+
- **BLOCKERS** — checked items that don't hold up, failing tests, broken contracts
|
|
46
|
+
- **SUGGESTIONS** — improvements, minor gaps, style issues
|
|
71
47
|
|
|
72
|
-
###
|
|
48
|
+
### 4. Update checkboxes
|
|
73
49
|
|
|
74
|
-
Using the subagent's report, update each checkbox in `.tracerkit/plans/<slug>.md
|
|
50
|
+
Using the subagent's report, update each checkbox in `.tracerkit/plans/<slug>.md`:
|
|
75
51
|
|
|
76
|
-
|
|
52
|
+
- Items that pass verification → `[x]`
|
|
53
|
+
- Items that fail verification → `[ ]` (unmark)
|
|
77
54
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
- All checks verified + zero BLOCKERS → transition PRD to `done`
|
|
81
|
-
- Some checks verified + zero BLOCKERS → keep PRD as `in_progress`
|
|
82
|
-
- BLOCKERS found → keep PRD as `in_progress`
|
|
83
|
-
|
|
84
|
-
### 5. Report to user
|
|
55
|
+
### 5. Report
|
|
85
56
|
|
|
86
57
|
Count progress per phase (Progress Algorithm), then print:
|
|
87
58
|
|
|
88
|
-
```
|
|
59
|
+
```text
|
|
89
60
|
## Verification: <slug>
|
|
90
61
|
|
|
91
|
-
### Status: created | in_progress | done
|
|
92
|
-
|
|
93
62
|
### Progress
|
|
94
63
|
|
|
95
|
-
Phase 1 — title: checked/total
|
|
96
|
-
Phase 2 — title: checked/total
|
|
97
|
-
Total: checked/total
|
|
64
|
+
Phase 1 — title: checked/total
|
|
65
|
+
> Phase 2 — title: checked/total
|
|
66
|
+
Total: checked/total
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
The `>` marks the first incomplete phase (cursor).
|
|
98
70
|
|
|
71
|
+
```text
|
|
99
72
|
### BLOCKERS
|
|
100
73
|
|
|
101
74
|
- (list or "None")
|
|
@@ -105,41 +78,18 @@ Total: checked/total
|
|
|
105
78
|
- (list or "None")
|
|
106
79
|
```
|
|
107
80
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
Append a verdict block at the bottom of `.tracerkit/plans/<slug>.md`:
|
|
111
|
-
|
|
112
|
-
```markdown
|
|
113
|
-
---
|
|
114
|
-
|
|
115
|
-
## Verdict
|
|
116
|
-
|
|
117
|
-
- **Date**: YYYY-MM-DD
|
|
118
|
-
- **Checks**: (checked/total)
|
|
119
|
-
- **BLOCKERS**: (count)
|
|
120
|
-
- **SUGGESTIONS**: (count)
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
If a previous verdict block exists, replace it with the new one.
|
|
124
|
-
|
|
125
|
-
### 7. On `done` — mark complete
|
|
126
|
-
|
|
127
|
-
If all checks pass and zero BLOCKERS:
|
|
128
|
-
|
|
129
|
-
1. Update PRD frontmatter: `status: done`, add `completed: <UTC ISO 8601>`
|
|
130
|
-
2. Update plan frontmatter: `status: done`, add `completed: <UTC ISO 8601>`
|
|
81
|
+
If all items verified (total checked = total):
|
|
131
82
|
|
|
132
|
-
|
|
83
|
+
> All phases complete — implementation verified.
|
|
133
84
|
|
|
134
|
-
|
|
85
|
+
### 6. Next steps
|
|
135
86
|
|
|
136
|
-
|
|
87
|
+
If blockers exist, list items to fix, then re-run `/tk:check <slug>`.
|
|
137
88
|
|
|
138
|
-
|
|
89
|
+
If all items verified, suggest creating a PR or shipping.
|
|
139
90
|
|
|
140
91
|
## Rules
|
|
141
92
|
|
|
142
93
|
- The review subagent must be **read-only** — it must not create, edit, or delete any files
|
|
143
|
-
- The only file writes this skill makes are:
|
|
94
|
+
- The only file writes this skill makes are: checkbox updates in the plan
|
|
144
95
|
- Never modify implementation code — only observe and report
|
|
145
|
-
- If the PRD file is missing but all checks pass, warn and proceed — mark the plan complete only (skip PRD status update)
|
package/skills/plan/SKILL.md
CHANGED
|
@@ -11,10 +11,6 @@ Break a PRD into phased vertical slices (tracer bullets).
|
|
|
11
11
|
|
|
12
12
|
Output: `.tracerkit/plans/<slug>.md`.
|
|
13
13
|
|
|
14
|
-
## Pre-loaded context
|
|
15
|
-
|
|
16
|
-
- Available PRDs: !`ls .tracerkit/prds/*.md 2>/dev/null || echo "(none)"`
|
|
17
|
-
|
|
18
14
|
## Input
|
|
19
15
|
|
|
20
16
|
The argument (if provided) is: $ARGUMENTS
|
|
@@ -32,10 +28,6 @@ If `.tracerkit/plans/<slug>.md` exists, present options and wait:
|
|
|
32
28
|
1. Overwrite existing (Recommended)
|
|
33
29
|
2. Pick a new name
|
|
34
30
|
|
|
35
|
-
### 1b. Update PRD status
|
|
36
|
-
|
|
37
|
-
Set `status: in_progress` in `.tracerkit/prds/<slug>.md` frontmatter. Change only `status`.
|
|
38
|
-
|
|
39
31
|
### 2. Explore the codebase
|
|
40
32
|
|
|
41
33
|
Map architecture, patterns, integration points. Skip if codebase context exists from prior step.
|
|
@@ -107,19 +99,9 @@ Iterate until approved.
|
|
|
107
99
|
Save to `.tracerkit/plans/<slug>.md` (create dir if missing).
|
|
108
100
|
|
|
109
101
|
```markdown
|
|
110
|
-
---
|
|
111
|
-
source_prd: .tracerkit/prds/<slug>.md
|
|
112
|
-
slug: <slug>
|
|
113
|
-
status: in_progress
|
|
114
|
-
---
|
|
115
|
-
|
|
116
102
|
# Plan: <Feature Name>
|
|
117
|
-
|
|
118
|
-
> Source PRD: `.tracerkit/prds/<slug>.md`
|
|
119
103
|
```
|
|
120
104
|
|
|
121
|
-
Then update PRD frontmatter: add `plan: .tracerkit/plans/<slug>.md` field (creates backlink).
|
|
122
|
-
|
|
123
105
|
Use this structure for the plan body:
|
|
124
106
|
|
|
125
107
|
```markdown
|
|
@@ -173,5 +155,5 @@ To implement this plan phase by phase, run `/tk:build <slug>`. It handles branch
|
|
|
173
155
|
- Each phase must be demoable end-to-end on its own
|
|
174
156
|
- "Done when" must be a checkbox list of testable conditions, not prose
|
|
175
157
|
- **Safety valve**: if a phase has >5 "Done when" items, stop and split it into smaller phases before continuing
|
|
176
|
-
- Never modify the source PRD content
|
|
158
|
+
- Never modify the source PRD content
|
|
177
159
|
- Carry PRD's Out of Scope forward verbatim
|
package/skills/prd/SKILL.md
CHANGED
|
@@ -9,10 +9,6 @@ Skip satisfied steps. If argument provided, skip to Step 2.
|
|
|
9
9
|
|
|
10
10
|
**Interactive prompts**: present options as a numbered list and wait for the user's choice.
|
|
11
11
|
|
|
12
|
-
## Pre-loaded context
|
|
13
|
-
|
|
14
|
-
- Existing PRDs: !`ls .tracerkit/prds/*.md 2>/dev/null || echo "(none)"`
|
|
15
|
-
|
|
16
12
|
## Input
|
|
17
13
|
|
|
18
14
|
The argument is: $ARGUMENTS
|
|
@@ -74,11 +70,6 @@ Present modules. Confirm which need tests.
|
|
|
74
70
|
Save to `.tracerkit/prds/<slug>.md` (create dir if missing).
|
|
75
71
|
|
|
76
72
|
```markdown
|
|
77
|
-
---
|
|
78
|
-
created: <UTC ISO 8601>
|
|
79
|
-
status: created
|
|
80
|
-
---
|
|
81
|
-
|
|
82
73
|
# Feature Name
|
|
83
74
|
```
|
|
84
75
|
|