tracerkit 1.16.0 → 1.17.1

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tracerkit",
3
- "version": "1.16.0",
3
+ "version": "1.17.1",
4
4
  "description": "Spec-driven workflow for AI coding agents — PRD → plan → verify. Pure Markdown skills, zero runtime deps.",
5
5
  "license": "MIT",
6
6
  "author": {
@@ -9,6 +9,8 @@ argument-hint: '[slug]'
9
9
 
10
10
  Check implementation against a plan. Update checks, stamp findings, transition status, and mark complete when done.
11
11
 
12
+ **Interactive prompts**: use `AskUserQuestion` when available for selections and confirmations; otherwise present options as a numbered list.
13
+
12
14
  ## Pre-loaded context
13
15
 
14
16
  <!-- if:local -->
@@ -50,7 +52,7 @@ For each `.md` file in `.tracerkit/prds/`:
50
52
  6. If plan issue exists, count progress from checkboxes in its body (see Progress Algorithm below). Show `—` if no plan.
51
53
  <!-- end:github -->
52
54
 
53
- Ask which feature to verify.
55
+ Present each feature as an option and let the user pick which to verify. Use `AskUserQuestion` when available; otherwise present as a numbered list.
54
56
 
55
57
  ## Progress Algorithm
56
58
 
@@ -62,12 +64,12 @@ Count `- [x]` and `- [ ]` lines under each `## Phase N` heading. Per-phase: `Pha
62
64
 
63
65
  <!-- if:local -->
64
66
 
65
- Read `.tracerkit/plans/<slug>.md`. If missing, list plans and ask.
67
+ Read `.tracerkit/plans/<slug>.md`. If missing, list plans and ask the user to select one (use `AskUserQuestion` when available).
66
68
 
67
69
  <!-- end:local -->
68
70
  <!-- if:github -->
69
71
 
70
- Find plan issue: open issue with label `{{github.labels.plan}}`, title matching `[{{github.labels.plan}}] <slug>:`. If missing, list plans and ask.
72
+ Find plan issue: open issue with label `{{github.labels.plan}}`, title matching `[{{github.labels.plan}}] <slug>:`. If missing, list plans and ask the user to select one (use `AskUserQuestion` when available).
71
73
 
72
74
  <!-- end:github -->
73
75
 
@@ -9,6 +9,8 @@ argument-hint: '[slug]'
9
9
 
10
10
  Break a PRD into phased vertical slices (tracer bullets).
11
11
 
12
+ **Interactive prompts**: use `AskUserQuestion` when available for selections, confirmations, and approval steps; otherwise present options as a numbered list.
13
+
12
14
  <!-- if:local -->
13
15
 
14
16
  Output: `.tracerkit/plans/<slug>.md`.
@@ -34,7 +36,7 @@ Output: a GitHub Issue with label `{{github.labels.plan}}`.
34
36
 
35
37
  The argument (if provided) is: $ARGUMENTS
36
38
 
37
- Use argument as `<slug>`. If empty, list available PRDs and ask.
39
+ Use argument as `<slug>`. If empty, list available PRDs and ask the user to select one (use `AskUserQuestion` when available; otherwise present as a numbered list).
38
40
 
39
41
  ## Workflow
40
42
 
@@ -42,12 +44,12 @@ Use argument as `<slug>`. If empty, list available PRDs and ask.
42
44
 
43
45
  <!-- if:local -->
44
46
 
45
- Read `.tracerkit/prds/<slug>.md`. If missing, list PRDs and ask. If `.tracerkit/plans/<slug>.md` exists, ask: overwrite or new name?
47
+ Read `.tracerkit/prds/<slug>.md`. If missing, list PRDs and ask the user to select one. If `.tracerkit/plans/<slug>.md` exists, ask: "Overwrite existing" / "Pick a new name". Use `AskUserQuestion` when available; otherwise present as a numbered list.
46
48
 
47
49
  <!-- end:local -->
48
50
  <!-- if:github -->
49
51
 
50
- Find PRD issue: open issue with label `{{github.labels.prd}}`, title matching `[{{github.labels.prd}}] <slug>:`. If missing, list PRDs and ask. If plan issue with label `{{github.labels.plan}}` and matching title exists, ask: update or new name?
52
+ Find PRD issue: open issue with label `{{github.labels.prd}}`, title matching `[{{github.labels.prd}}] <slug>:`. If missing, list PRDs and ask the user to select one. If plan issue with label `{{github.labels.plan}}` and matching title exists, ask: "Update existing plan" / "Use a new name". Use `AskUserQuestion` when available; otherwise present as a numbered list.
51
53
 
52
54
  <!-- end:github -->
53
55
 
@@ -110,7 +112,7 @@ Each phase: thin vertical slice through all layers (schema → service → API
110
112
 
111
113
  - 1 module touched → 2–3 phases max
112
114
  - 2–3 modules touched → 3–5 phases max
113
- - 4+ modules or 6+ phases → stop and ask the user to split the PRD
115
+ - 4+ modules or 6+ phases → stop and ask: "PRD touches 4+ modules. Split before planning?" with options: "Split the PRD" (Recommended) / "Continue anyway". Use `AskUserQuestion` when available.
114
116
 
115
117
  Count "modules touched" by scanning the PRD's New Modules and Schema Changes sections.
116
118
 
@@ -122,7 +124,7 @@ Assign an agent tag to tasks where appropriate:
122
124
 
123
125
  ### 5. Quiz the user
124
126
 
125
- Present breakdown (title, user stories covered, done-when per phase). Ask: granularity right? Merge or split? Iterate until approved.
127
+ Present breakdown (title, user stories covered, done-when per phase). Ask: "How's the granularity?" with options: "Looks good, proceed" (Recommended) / "Merge some phases" / "Split a phase". Use `AskUserQuestion` when available; otherwise present as a numbered list. Iterate until approved.
126
128
 
127
129
  ### 6. Save plan
128
130
 
@@ -215,15 +217,11 @@ Carried forward from PRD verbatim.
215
217
  Gaps found in the PRD needing resolution. Blank if none.
216
218
  ```
217
219
 
218
- Print one line per phase: `Phase N — <title> (<condition summary>)`. Then ask: "Run `/tk:check <slug>` when ready?"
220
+ Print one line per phase: `Phase N — <title> (<condition summary>)`. Then ask: "What's next?" with options: "Start implementing" (Recommended) / "Run `/tk:check <slug>`" / "Done for now". Use `AskUserQuestion` when available; otherwise present as a numbered list.
219
221
 
220
222
  ## Execution guidance
221
223
 
222
- When implementing this plan, **always offer to create a feature branch** before writing any code:
223
-
224
- > "Create branch `feat/<slug>` for this work? (Y/n)"
225
-
226
- If accepted, create the branch from the default branch.
224
+ When implementing this plan, **always offer to create a feature branch** before writing any code. Ask: "Create branch `feat/<slug>`?" with options: "Yes, create branch" (Recommended) / "No, stay on current branch". Use `AskUserQuestion` when available. If accepted, create the branch from the default branch.
227
225
 
228
226
  ### During implementation
229
227
 
@@ -9,6 +9,8 @@ argument-hint: <idea>
9
9
 
10
10
  Skip satisfied steps. If argument provided, skip to Step 2.
11
11
 
12
+ **Interactive prompts**: use `AskUserQuestion` when available for choices, confirmations, and interview questions (structured selection UI); otherwise present options as a numbered list.
13
+
12
14
  ## Pre-loaded context
13
15
 
14
16
  <!-- if:local -->
@@ -34,12 +36,12 @@ If empty, go to Step 1; derive slug after gathering the idea. If provided, deriv
34
36
 
35
37
  <!-- if:local -->
36
38
 
37
- Output: `.tracerkit/prds/<slug>.md`. If exists, ask: overwrite or new name?
39
+ Output: `.tracerkit/prds/<slug>.md`. If exists, ask: "Overwrite existing" / "Pick a new name" (use `AskUserQuestion` when available).
38
40
 
39
41
  <!-- end:local -->
40
42
  <!-- if:github -->
41
43
 
42
- Output: GitHub Issue with label `{{github.labels.prd}}`, title `[{{github.labels.prd}}] <slug>: <Feature Title>`. If matching issue exists, ask: update or new slug?
44
+ Output: GitHub Issue with label `{{github.labels.prd}}`, title `[{{github.labels.prd}}] <slug>: <Feature Title>`. If matching issue exists, ask: "Update existing issue" / "Use a new slug" (use `AskUserQuestion` when available).
43
45
 
44
46
  <!-- end:github -->
45
47
 
@@ -57,7 +59,7 @@ Map current state: data models, services, API routes, frontend, tests. Note exis
57
59
 
58
60
  ### 3. Interview
59
61
 
60
- One question at a time. Lead with your recommended answer. Explore code instead of asking when possible. Offer A/B/C for terse answers.
62
+ One question at a time. Lead with your recommended answer (mark it `(Recommended)` and list first). Explore code instead of asking when possible. Present 2–4 options for each question — structured choices are faster than free-text. Use `AskUserQuestion` when available; otherwise present as a numbered list.
61
63
 
62
64
  | Branch | Key questions | Skip when |
63
65
  | ---------------- | --------------------------------------- | -------------------------------- |
@@ -71,7 +73,7 @@ One question at a time. Lead with your recommended answer. Explore code instead
71
73
 
72
74
  ### 3b. Gray areas
73
75
 
74
- Surface ambiguities, contradictions, unstated assumptions. Present numbered list. Resolve all before continuing.
76
+ Surface ambiguities, contradictions, unstated assumptions. For each gray area, present proposed resolution options (use `AskUserQuestion` when available). Resolve all before continuing.
75
77
 
76
78
  ### 4. Design modules
77
79
 
@@ -79,7 +81,7 @@ Sketch modules. Favor **deep modules** — simple interface (1-3 entry points) h
79
81
 
80
82
  Shallow signals: many small 1:1 functions, callers compose multiple calls, feature changes require interface changes.
81
83
 
82
- Present modules. Confirm which need tests.
84
+ Present modules. Confirm which need tests (multiSelect). Use `AskUserQuestion` when available; otherwise present as a checklist for the user to confirm.
83
85
 
84
86
  ### 5. Write PRD
85
87
 
@@ -134,4 +136,4 @@ PRD body structure (same for local file and issue body). Omit empty sections. No
134
136
 
135
137
  ---
136
138
 
137
- Then ask: "Run `/tk:plan <slug>` next?"
139
+ Then ask: "What's next?" with options: "Run `/tk:plan <slug>`" (Recommended) / "Done for now". Use `AskUserQuestion` when available; otherwise present as a numbered list.