@leeovery/claude-technical-workflows 2.1.27 → 2.1.29

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 (76) hide show
  1. package/README.md +90 -92
  2. package/agents/implementation-analysis-task-writer.md +6 -5
  3. package/agents/planning-review-integrity.md +71 -0
  4. package/agents/planning-review-traceability.md +74 -0
  5. package/agents/planning-task-designer.md +4 -4
  6. package/package.json +1 -1
  7. package/skills/link-dependencies/SKILL.md +3 -3
  8. package/skills/migrate/scripts/migrations/002-specification-frontmatter.sh +5 -0
  9. package/skills/migrate/scripts/migrations/003-planning-frontmatter.sh +5 -0
  10. package/skills/migrate/scripts/migrations/004-sources-object-format.sh +5 -0
  11. package/skills/migrate/scripts/migrations/005-plan-external-deps-frontmatter.sh +5 -0
  12. package/skills/migrate/scripts/migrations/006-directory-restructure.sh +167 -0
  13. package/skills/migrate/scripts/migrations/007-tasks-subdirectory.sh +86 -0
  14. package/skills/start-discussion/references/handle-selection.md +8 -0
  15. package/skills/start-feature/SKILL.md +2 -2
  16. package/skills/start-implementation/SKILL.md +1 -3
  17. package/skills/start-implementation/scripts/discovery.sh +7 -7
  18. package/skills/start-planning/references/invoke-skill.md +3 -3
  19. package/skills/start-planning/scripts/discovery.sh +8 -8
  20. package/skills/start-review/references/invoke-skill.md +3 -3
  21. package/skills/start-review/scripts/discovery.sh +3 -3
  22. package/skills/start-specification/references/confirm-continue.md +3 -3
  23. package/skills/start-specification/references/confirm-create.md +3 -3
  24. package/skills/start-specification/references/confirm-refine.md +1 -1
  25. package/skills/start-specification/references/confirm-unify.md +4 -4
  26. package/skills/start-specification/references/handoffs/continue-concluded.md +3 -1
  27. package/skills/start-specification/references/handoffs/continue.md +3 -1
  28. package/skills/start-specification/references/handoffs/create-with-incorporation.md +2 -2
  29. package/skills/start-specification/references/handoffs/create.md +1 -1
  30. package/skills/start-specification/references/handoffs/unify-with-incorporation.md +3 -3
  31. package/skills/start-specification/references/handoffs/unify.md +1 -1
  32. package/skills/start-specification/scripts/discovery.sh +6 -6
  33. package/skills/status/scripts/discovery.sh +7 -7
  34. package/skills/technical-discussion/SKILL.md +46 -8
  35. package/skills/technical-implementation/SKILL.md +66 -20
  36. package/skills/technical-implementation/references/{steps/analysis-loop.md → analysis-loop.md} +1 -1
  37. package/skills/technical-implementation/references/{steps/invoke-analysis.md → invoke-analysis.md} +5 -5
  38. package/skills/technical-implementation/references/{steps/invoke-executor.md → invoke-executor.md} +5 -5
  39. package/skills/technical-implementation/references/{steps/invoke-reviewer.md → invoke-reviewer.md} +2 -2
  40. package/skills/technical-implementation/references/{steps/invoke-synthesizer.md → invoke-synthesizer.md} +3 -3
  41. package/skills/technical-implementation/references/{steps/invoke-task-writer.md → invoke-task-writer.md} +4 -4
  42. package/skills/technical-implementation/references/{steps/task-loop.md → task-loop.md} +45 -38
  43. package/skills/technical-planning/SKILL.md +64 -22
  44. package/skills/technical-planning/references/{steps/analyze-task-graph.md → analyze-task-graph.md} +33 -16
  45. package/skills/technical-planning/references/author-tasks.md +100 -0
  46. package/skills/technical-planning/references/{steps/define-phases.md → define-phases.md} +15 -9
  47. package/skills/technical-planning/references/{steps/define-tasks.md → define-tasks.md} +10 -6
  48. package/skills/technical-planning/references/invoke-review-integrity.md +36 -0
  49. package/skills/technical-planning/references/invoke-review-traceability.md +37 -0
  50. package/skills/technical-planning/references/output-formats/local-markdown/about.md +6 -4
  51. package/skills/technical-planning/references/output-formats/local-markdown/authoring.md +3 -3
  52. package/skills/technical-planning/references/output-formats/local-markdown/reading.md +3 -3
  53. package/skills/technical-planning/references/output-formats/local-markdown/updating.md +1 -1
  54. package/skills/technical-planning/references/output-formats/tick/about.md +68 -0
  55. package/skills/technical-planning/references/output-formats/tick/authoring.md +106 -0
  56. package/skills/technical-planning/references/output-formats/tick/graph.md +62 -0
  57. package/skills/technical-planning/references/output-formats/tick/reading.md +61 -0
  58. package/skills/technical-planning/references/output-formats/tick/updating.md +25 -0
  59. package/skills/technical-planning/references/output-formats.md +11 -0
  60. package/skills/technical-planning/references/{steps/plan-construction.md → plan-construction.md} +33 -9
  61. package/skills/technical-planning/references/plan-review.md +122 -0
  62. package/skills/technical-planning/references/process-review-findings.md +171 -0
  63. package/skills/technical-planning/references/{steps/resolve-dependencies.md → resolve-dependencies.md} +18 -12
  64. package/skills/technical-planning/references/review-integrity.md +127 -0
  65. package/skills/technical-planning/references/review-traceability.md +105 -0
  66. package/skills/technical-planning/references/task-design.md +1 -1
  67. package/skills/technical-planning/references/{steps/verify-source-material.md → verify-source-material.md} +3 -3
  68. package/skills/technical-research/SKILL.md +20 -4
  69. package/skills/technical-review/SKILL.md +21 -4
  70. package/skills/technical-specification/SKILL.md +34 -8
  71. package/skills/technical-specification/references/specification-guide.md +228 -56
  72. package/skills/view-plan/SKILL.md +1 -1
  73. package/skills/technical-planning/references/steps/author-tasks.md +0 -72
  74. package/skills/technical-planning/references/steps/plan-review.md +0 -94
  75. package/skills/technical-planning/references/steps/review-integrity.md +0 -222
  76. package/skills/technical-planning/references/steps/review-traceability.md +0 -200
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  <h1 align="center">Claude Technical Workflows</h1>
2
2
 
3
3
  <p align="center">
4
- <strong>From Idea to Implementation: Software Engineering Workflows for Claude Code</strong>
4
+ <strong>From Idea to Implementation: Agentic Engineering Workflows for Claude Code</strong>
5
5
  </p>
6
6
 
7
7
  <p align="center">
@@ -36,6 +36,8 @@ Research → Discussion → Specification → Planning → Implementation → Re
36
36
 
37
37
  **Flexible entry points:** Need the full workflow? Start at Research or Discussion and progress through each phase. Already know what you're building? Jump straight to Specification with `/start-feature`. Entry-point skills gather context and feed it to processing skills.
38
38
 
39
+ **Engineered like software.** This isn't a collection of prompts — it's built with the same discipline you'd apply to code. Processing skills follow the single responsibility principle. Entry-point skills compose with them, keeping input gathering DRY. Output formats implement a [5-file adapter contract](#output-formats), so planning works identically regardless of where tasks end up. Agents handle isolated concerns. The result is a natural language workflow that's modular, extensible, and maintainable — software engineering principles applied to agentic workflows.
40
+
39
41
  > [!NOTE]
40
42
  > **Work in progress.** The workflow is being refined through real-world usage. Expect updates as patterns evolve.
41
43
 
@@ -52,53 +54,76 @@ See [Installation](#installation) for details.
52
54
 
53
55
  ## How do I use it?
54
56
 
55
- ### Two Ways to Use the Skills
57
+ ### Where to Start
58
+
59
+ Pick your entry point based on where you are:
60
+
61
+ - **Seeds of an idea?** → Start with `/start-research` *(recommended)*
62
+ You have a rough idea but haven't explored feasibility, alternatives, or scope yet. Research lets you think freely before committing to anything.
63
+
64
+ - **Know what you're building?** → Start with `/start-discussion`
65
+ You've moved past exploration and want to capture architecture decisions, edge cases, and rationale for specific topics.
66
+
67
+ - **Clear feature, ready to spec?** → Use `/start-feature`
68
+ You already know the what and why. Jump straight to building a specification from inline context — no prior documents needed.
69
+
70
+ **Why research is the recommended default:** When you move from research to discussion, the discussion skill analyses your research document and automatically breaks it into focused discussion topics. Skip research and you manage topic structure yourself.
56
71
 
57
- **1. Full Workflow** - Sequential phases that build on each other:
72
+ ### The Workflow
58
73
 
59
74
  ```
60
- Research → Discussion → Specification → Planning → Implementation → Review
75
+ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐
76
+ │ Research │──▶│ Discussion │──▶│ Specification │
77
+ │ (Phase 1) │ │ (Phase 2) │ │ (Phase 3) │
78
+ ├───────────────┤ ├───────────────┤ ├───────────────┤
79
+ │ EXPLORING │ │ WHAT & WHY │ │ REFINING │
80
+ │ │ │ │ │ │
81
+ │ • Ideas │ │ • Architecture│ │ • Validate │
82
+ │ • Market │ │ • Decisions │ │ • Filter │
83
+ │ • Viability │ │ • Edge cases │ │ • Enrich │
84
+ │ │ │ • Rationale │ │ • Standalone │
85
+ └───────────────┘ └───────────────┘ └───────────────┘
86
+
87
+
88
+ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐
89
+ │ Review │◀──│Implementation │◀──│ Planning │
90
+ │ (Phase 6) │ │ (Phase 5) │ │ (Phase 4) │
91
+ ├───────────────┤ ├───────────────┤ ├───────────────┤
92
+ │ VALIDATING │ │ DOING │ │ HOW │
93
+ │ │ │ │ │ │
94
+ │ • Plan check │ │ • Tests first │ │ • Phases │
95
+ │ • Specs check │ │ • Then code │ │ • Tasks │
96
+ │ • Test quality│ │ • Commit often│ │ • Criteria │
97
+ │ • Code quality│ │ • Task gates │ │ • Outputs │
98
+ └───────────────┘ └───────────────┘ └───────────────┘
61
99
  ```
62
100
 
63
- Start with `/start-research` or `/start-discussion` and follow the flow. Each phase outputs files that the next phase consumes.
101
+ Each phase produces documents that feed the next. Here's the journey:
64
102
 
65
- **2. Standalone Skills** - Jump directly to a processing skill with flexible inputs:
103
+ **Research** — Free-form exploration. Investigate ideas, market fit, technical feasibility, business viability. The output is a research document capturing everything you've explored. The key benefit: when you move to discussion, the skill analyses this document and breaks it into focused topics automatically.
66
104
 
67
- | Skill | What it does |
68
- |-------|-------------|
69
- | `/start-feature` | Create a spec directly from inline context (skip research/discussion) |
105
+ **Discussion** Per-topic deep dives into architecture, edge cases, competing approaches, and rationale. Each topic gets its own document. This captures not just decisions, but *why* you made them — the alternatives considered, the trade-offs weighed, the journey to the decision. Conclude each topic when its decisions are made.
70
106
 
71
- *More standalone skills coming soon.*
107
+ **Specification** — This is where the magic happens. The skill analyses *all* your discussions and creates intelligent groupings — 10 discussions might become 3–5 specifications, or you can unify everything into one. It filters hallucinations, enriches gaps, and validates decisions against each other. The spec becomes the golden document: planning only references this, not earlier phases.
72
108
 
73
- ### The Two-Tier Skill Architecture
109
+ **Planning** Converts each specification into phased implementation plans with tasks, acceptance criteria, and dependency ordering. Supports [multiple output formats](#output-formats) from local markdown files to CLI tools with native dependency graphs. Task authoring has per-item approval gates (with auto-mode for faster flow).
74
110
 
75
- **Processing skills** (`technical-*`) are input-agnostic. They don't know or care where their inputs came from: a discussion document, inline context, or external sources. They just process what they receive.
111
+ **Implementation** Executes plans via strict TDD. Tests first, then code, commit after each task. Per-task approval gates keep you in control, with auto-mode available when you trust the flow.
76
112
 
77
- **Entry-point skills** (`/start-*`, `/status`, etc.) are the input layer. They gather context (from files, prompts, or inline) and pass it to processing skills. This separation means:
113
+ **Review** Validates the implementation against spec and plan. Catches drift, missing requirements, and quality issues. The spec is the source of truth here earlier phases may contain rejected ideas that were intentionally filtered out. Produces structured feedback without fixing code directly.
78
114
 
79
- - The same processing skill can be invoked from different entry points
80
- - You can create custom entry-point skills that feed processing skills in new ways
81
- - Processing skills remain reusable without coupling to specific workflows
115
+ ### Standalone Skills
82
116
 
83
- ```
84
- ┌─────────────────────────────────────────────────────────────┐
85
- │ ENTRY-POINT SKILLS │
86
- │ (gather inputs from files, prompts, inline context) │
87
- ├─────────────────────────────────────────────────────────────┤
88
- │ /start-specification /start-feature (your custom) │
89
- │ │ │ │ │
90
- │ └───────────┬───────────┘ │ │
91
- │ ▼ ▼ │
92
- ├─────────────────────────────────────────────────────────────┤
93
- │ PROCESSING SKILLS │
94
- │ (process inputs without knowing their source) │
95
- ├─────────────────────────────────────────────────────────────┤
96
- │ technical-specification skill │
97
- │ technical-planning skill │
98
- │ technical-implementation skill │
99
- │ etc. │
100
- └─────────────────────────────────────────────────────────────┘
101
- ```
117
+ Not every task needs the full workflow. These skills gather inputs flexibly and invoke processing skills directly:
118
+
119
+ | Skill | What it does |
120
+ |-------|-------------|
121
+ | `/start-feature` | Create a spec directly from inline context (skip research/discussion) |
122
+ | `/link-dependencies` | Wire cross-topic dependencies across plans |
123
+
124
+ ### Under the Hood
125
+
126
+ Skills are organised in two tiers. **Entry-point skills** (`/start-*`, `/status`, etc.) gather context from files, prompts, or inline input. **Processing skills** (`technical-*`) receive those inputs and do the work — they don't know or care where inputs came from. This separation means the same processing skill can be invoked from different entry points: `/start-specification` and `/start-feature` both feed `technical-specification` with different inputs. You can create custom entry-point skills that feed processing skills in new ways.
102
127
 
103
128
  ### Workflow Skills
104
129
 
@@ -113,19 +138,25 @@ Start with `/start-research` or `/start-discussion` and follow the flow. Each ph
113
138
 
114
139
  Run the skill directly or ask Claude to run it. Each gathers context from previous phase outputs and passes it to the processing skill.
115
140
 
116
- ## Installation
141
+ ### Output Formats
142
+
143
+ Planning supports multiple output formats through an adapter pattern. Each format implements a 5-file contract — about, authoring, reading, updating, and graph — so the planning workflow works identically regardless of where tasks are stored.
117
144
 
118
- | Method | Where files live | Best for |
119
- |---------|----------------------------|-------------------------------------------------|
120
- | **npm** | `.claude/` in your project | Ownership, version control, Claude Code for Web |
145
+ | Format | Best for | Setup | |
146
+ |--------|----------|-------|-|
147
+ | **Tick** | AI-driven workflows, native dependencies, token-efficient | `brew install leeovery/tools/tick` | Recommended |
148
+ | **Local Markdown** | Simple features, offline, quick iterations | None | |
149
+ | **Linear** | Team collaboration, visual tracking | Linear account + MCP server | |
121
150
 
122
- ### npm
151
+ Choose a format when planning begins. New formats can be scaffolded with `/create-output-format`.
152
+
153
+ ## Installation
123
154
 
124
155
  ```bash
125
156
  npm install -D @leeovery/claude-technical-workflows
126
157
  ```
127
158
 
128
- Skills are copied to `.claude/` and can be committed, giving you ownership and making them available everywhere including Claude Code for Web.
159
+ Skills are copied to `.claude/` in your project and can be committed, giving you ownership and making them available everywhere including Claude Code for Web.
129
160
 
130
161
  <details>
131
162
  <summary>pnpm users</summary>
@@ -149,70 +180,37 @@ npx claude-manager remove @leeovery/claude-technical-workflows && npm rm @leeove
149
180
  ```
150
181
  </details>
151
182
 
152
- ## The Six-Phase Workflow
153
-
154
- When using the full workflow, it progresses through six distinct phases:
155
-
156
- ```
157
- ┌───────────────┐ ┌───────────────┐ ┌───────────────┐
158
- │ Research │──▶│ Discussion │──▶│ Specification │
159
- │ (Phase 1) │ │ (Phase 2) │ │ (Phase 3) │
160
- ├───────────────┤ ├───────────────┤ ├───────────────┤
161
- │ EXPLORING │ │ WHAT & WHY │ │ REFINING │
162
- │ │ │ │ │ │
163
- │ • Ideas │ │ • Architecture│ │ • Validate │
164
- │ • Market │ │ • Decisions │ │ • Filter │
165
- │ • Viability │ │ • Edge cases │ │ • Enrich │
166
- │ │ │ • Rationale │ │ • Standalone │
167
- └───────────────┘ └───────────────┘ └───────────────┘
168
-
169
-
170
- ┌───────────────┐ ┌───────────────┐ ┌───────────────┐
171
- │ Review │◀──│Implementation │◀──│ Planning │
172
- │ (Phase 6) │ │ (Phase 5) │ │ (Phase 4) │
173
- ├───────────────┤ ├───────────────┤ ├───────────────┤
174
- │ VALIDATING │ │ DOING │ │ HOW │
175
- │ │ │ │ │ │
176
- │ • Plan check │ │ • Tests first │ │ • Phases │
177
- │ • Specs check │ │ • Then code │ │ • Tasks │
178
- │ • Test quality│ │ • Commit often│ │ • Criteria │
179
- │ • Code quality│ │ • Task gates │ │ • Outputs │
180
- └───────────────┘ └───────────────┘ └───────────────┘
181
- ```
182
-
183
- **Phase 1 - Research:** Explore ideas from their earliest seed. Investigate market fit, technical feasibility, business viability. Free-flowing exploration that may or may not lead to building something.
184
-
185
- **Phase 2 - Discussion:** Captures the back-and-forth exploration of a problem. Documents competing solutions, why certain approaches won or lost, edge cases discovered, and the journey to decisions, not just the decisions themselves.
186
-
187
- **Phase 3 - Specification:** Transforms discussion(s) into validated, standalone specifications. Automatically analyses multiple discussions for natural groupings, filters hallucinations and inaccuracies, enriches gaps, and builds documents that planning can execute against without referencing other sources.
188
-
189
- **Phase 4 - Planning:** Converts specifications into actionable implementation plans with phases, tasks, and acceptance criteria. Supports multiple output formats (local markdown, Linear).
190
-
191
- **Phase 5 - Implementation:** Executes the plan using strict TDD. Writes tests first, implements to pass, commits frequently, with per-task approval gates (auto mode available).
192
-
193
- **Phase 6 - Review:** Validates completed work against specification requirements and plan acceptance criteria. The specification is the validated source of truth; earlier phases may contain rejected ideas that were intentionally filtered out. Provides structured feedback without fixing code directly.
194
-
195
183
  ## Project Structure
196
184
 
197
185
  ### Output Files
198
186
 
199
- Documents are stored in your project using a **phase-first** organisation:
187
+ Documents are stored in your project using a **phase-first** organisation. Early phases use flat files; later phases use topic directories with multiple files for tracking and analysis.
200
188
 
201
189
  ```
202
190
  docs/workflow/
203
- ├── research/ # Phase 1 - flat, semantically named files
191
+ ├── research/ # Phase 1 flat, semantically named
204
192
  │ ├── exploration.md
205
193
  │ ├── competitor-analysis.md
206
194
  │ └── pricing-models.md
207
- ├── discussion/ # Phase 2 - one file per topic
208
- │ └── {topic}.md
209
- ├── specification/ # Phase 3 - one file per topic
195
+ ├── discussion/ # Phase 2 one file per topic
210
196
  │ └── {topic}.md
211
- └── planning/ # Phase 4 - one file per topic
197
+ ├── specification/ # Phase 3 directory per topic
198
+ │ └── {topic}/
199
+ │ └── specification.md
200
+ ├── planning/ # Phase 4 — directory per topic
201
+ │ └── {topic}/
202
+ │ ├── plan.md # Plan index (phases, metadata)
203
+ │ └── tasks/ # Task files (local-markdown format)
204
+ │ ├── {topic}-1-1.md
205
+ │ └── {topic}-1-2.md
206
+ ├── implementation/ # Phase 5 — directory per topic
207
+ │ └── {topic}/
208
+ │ └── tracking.md # Progress, gates, current task
209
+ └── review/ # Phase 6 — one file per review
212
210
  └── {topic}.md
213
211
  ```
214
212
 
215
- Research starts with `exploration.md` and splits into topic files as themes emerge. From discussion onwards, each topic gets its own file per phase.
213
+ Research starts with `exploration.md` and splits into topic files as themes emerge. From specification onwards, each topic gets its own directory. Planning task storage varies by [output format](#output-formats) — the tree above shows local-markdown; Tick and Linear store tasks externally.
216
214
 
217
215
  ### Package Structure
218
216
 
@@ -280,7 +278,7 @@ Sequential skills that expect files from previous phases and pass content to pro
280
278
  | [**/start-research**](skills/start-research/) | Begin research exploration. For early-stage ideas, feasibility checks, and broad exploration before formal discussion. |
281
279
  | [**/start-discussion**](skills/start-discussion/) | Begin a new technical discussion. Gathers topic, context, background information, and relevant codebase areas before starting documentation. |
282
280
  | [**/start-specification**](skills/start-specification/) | Start a specification session from existing discussion(s). Automatically analyses multiple discussions for natural groupings and consolidates them into unified specifications. |
283
- | [**/start-planning**](skills/start-planning/) | Start a planning session from an existing specification. Creates implementation plans with phases, tasks, and acceptance criteria. Supports multiple output formats (local markdown, Linear). |
281
+ | [**/start-planning**](skills/start-planning/) | Start a planning session from an existing specification. Creates implementation plans with phases, tasks, and acceptance criteria. Supports multiple output formats. |
284
282
  | [**/start-implementation**](skills/start-implementation/) | Start implementing a plan. Executes tasks via strict TDD, committing after each passing test. |
285
283
  | [**/start-review**](skills/start-review/) | Start reviewing completed work. Validates implementation against plan tasks and acceptance criteria. |
286
284
 
@@ -30,7 +30,7 @@ You receive via the orchestrator's prompt:
30
30
 
31
31
  ## Update the Plan Index File
32
32
 
33
- The Plan Index File (`docs/workflow/planning/{topic}.md`) is the single source of truth for planning progress. After creating task files, you **must** append the new phase and task table to its body.
33
+ The Plan Index File (`docs/workflow/planning/{topic}/plan.md`) is the single source of truth for planning progress. After creating task files, you **must** append the new phase and task table to its body.
34
34
 
35
35
  Append at the end of the Plan Index File body:
36
36
 
@@ -41,16 +41,17 @@ status: approved
41
41
  **Goal**: Address findings from implementation analysis cycle {N}.
42
42
 
43
43
  #### Tasks
44
- | ID | Name | Edge Cases | Status |
45
- |----|------|------------|--------|
46
- | {topic}-{phase}-1 | {Task Title} | — | authored |
47
- | {topic}-{phase}-2 | {Task Title} | — | authored |
44
+ | ID | Name | Edge Cases | Status | Ext ID |
45
+ |----|------|------------|--------|--------|
46
+ | {topic}-{phase}-1 | {Task Title} | — | authored | {ext-id} |
47
+ | {topic}-{phase}-2 | {Task Title} | — | authored | {ext-id} |
48
48
  ```
49
49
 
50
50
  - Use `status: approved` for the phase (it's pre-approved by the user in the approval gate)
51
51
  - Use `authored` for each task status (the task files are fully written)
52
52
  - Use `—` for edge cases (analysis tasks don't have separate edge case annotations)
53
53
  - Task IDs must match the IDs used in the created task files
54
+ - `Ext ID` must contain the external identifier for the task as exposed by the output format.
54
55
 
55
56
  ## Hard Rules
56
57
 
@@ -0,0 +1,71 @@
1
+ ---
2
+ name: planning-review-integrity
3
+ description: Reviews plan structural quality, implementation readiness, and standards adherence. Invoked by technical-planning skill during plan review.
4
+ tools: Read, Glob, Grep, Write, Bash
5
+ model: opus
6
+ ---
7
+
8
+ # Planning Review: Integrity
9
+
10
+ Perform an **integrity review** of the plan as a standalone document — checking structural quality, implementation readiness, and adherence to planning standards.
11
+
12
+ ## Your Input
13
+
14
+ You receive file paths and context via the orchestrator's prompt:
15
+
16
+ 1. **Review criteria path** — `review-integrity.md` with detailed review criteria and tracking file format
17
+ 2. **Plan path** — the Plan Index File
18
+ 3. **Format reading.md path** — the output format's reading instructions for locating task files
19
+ 4. **Cycle number** — current review cycle (for tracking file naming)
20
+ 5. **Topic name** — for file naming and paths
21
+ 6. **Task design path** — `task-design.md` with the canonical task template and field requirements
22
+
23
+ ## Your Process
24
+
25
+ 1. **Read the review criteria** (`review-integrity.md`) — absorb all review dimensions before starting
26
+ 2. **Read the Plan Index File** for structure and phase overview
27
+ 3. **Locate and read all task files** following the format's reading.md instructions
28
+ 4. **Evaluate all review criteria** as defined in the review criteria file
29
+ 5. **Create the tracking file** — write findings to `review-integrity-tracking-c{N}.md` in the plan topic directory, using the format defined in the review criteria file
30
+ 6. **Commit the tracking file**: `planning({topic}): integrity review cycle {N}`
31
+ 7. **Return status**
32
+
33
+ ## Writing Full Fix Content
34
+
35
+ For each finding, the tracking file must contain the **exact content** that would be written to the plan if the fix is approved. The orchestrator presents this content to the user as-is — what the user sees is what gets applied.
36
+
37
+ - **Current**: Copy the existing content verbatim from the plan/task file. This shows the user exactly what's there now.
38
+ - **Proposed**: Write the replacement content in full plan format. This is what will replace the current content if approved.
39
+
40
+ For `add-task` or `add-phase`, omit **Current** and write the complete new content in **Proposed**.
41
+ For `remove-task` or `remove-phase`, include **Current** for reference and omit **Proposed**.
42
+
43
+ **Task structure**: Read `task-design.md` before writing any proposed content. All task content — whether new tasks (`add-task`) or modifications to existing tasks (`update-task`, `add-to-task`) — must follow the canonical task template and field requirements defined there. This is the same template the planning agents used to create the plan.
44
+
45
+ **Do not write summaries or descriptions** like "restructure the acceptance criteria". Write the actual restructured criteria as they should appear in the plan.
46
+
47
+ ## Hard Rules
48
+
49
+ **MANDATORY. No exceptions.**
50
+
51
+ 1. **Read everything** — plan and all tasks. Do not skip or skim.
52
+ 2. **Write only the tracking file** — do not modify the plan or tasks
53
+ 3. **Commit the tracking file** — ensures it survives context refresh
54
+ 4. **No user interaction** — return status to the orchestrator
55
+ 5. **Full fix content** — every finding must include complete Current/Proposed content in plan format. No summaries.
56
+ 6. **Proportional** — prioritize by impact. Don't nitpick style when architecture is wrong.
57
+ 7. **Task scope only** — check the plan as built; don't redesign it
58
+
59
+ ## Your Output
60
+
61
+ Return a brief status:
62
+
63
+ ```
64
+ STATUS: findings | clean
65
+ CYCLE: {N}
66
+ TRACKING_FILE: {path to tracking file}
67
+ FINDING_COUNT: {N}
68
+ ```
69
+
70
+ - `clean`: No findings. The plan meets structural quality standards.
71
+ - `findings`: Tracking file contains findings for the orchestrator to present to the user.
@@ -0,0 +1,74 @@
1
+ ---
2
+ name: planning-review-traceability
3
+ description: Analyzes plan traceability against specification in both directions. Invoked by technical-planning skill during plan review.
4
+ tools: Read, Glob, Grep, Write, Bash
5
+ model: opus
6
+ ---
7
+
8
+ # Planning Review: Traceability
9
+
10
+ Perform a **traceability analysis** comparing the plan against its specification in both directions — verifying that everything from the spec is in the plan, and everything in the plan traces back to the spec.
11
+
12
+ ## Your Input
13
+
14
+ You receive file paths and context via the orchestrator's prompt:
15
+
16
+ 1. **Review criteria path** — `review-traceability.md` with detailed analysis criteria and tracking file format
17
+ 2. **Specification path** — the validated specification to trace against
18
+ 3. **Plan path** — the Plan Index File
19
+ 4. **Format reading.md path** — the output format's reading instructions for locating task files
20
+ 5. **Cycle number** — current review cycle (for tracking file naming)
21
+ 6. **Topic name** — for file naming and paths
22
+ 7. **Task design path** — `task-design.md` with the canonical task template and field requirements
23
+
24
+ ## Your Process
25
+
26
+ 1. **Read the review criteria** (`review-traceability.md`) — absorb the full analysis criteria before starting
27
+ 2. **Read the specification** in full — do not rely on summaries or memory
28
+ 3. **Read the Plan Index File** for structure and phase overview
29
+ 4. **Locate and read all task files** following the format's reading.md instructions
30
+ 5. **Perform Direction 1** (Spec → Plan): verify every spec element has plan coverage
31
+ 6. **Perform Direction 2** (Plan → Spec): verify every plan element traces to the spec
32
+ 7. **Create the tracking file** — write findings to `review-traceability-tracking-c{N}.md` in the plan topic directory, using the format defined in the review criteria file
33
+ 8. **Commit the tracking file**: `planning({topic}): traceability review cycle {N}`
34
+ 9. **Return status**
35
+
36
+ ## Writing Full Fix Content
37
+
38
+ For each finding, the tracking file must contain the **exact content** that would be written to the plan if the fix is approved. The orchestrator presents this content to the user as-is — what the user sees is what gets applied.
39
+
40
+ - **Current**: Copy the existing content verbatim from the plan/task file. This shows the user exactly what's there now.
41
+ - **Proposed**: Write the replacement content in full plan format. This is what will replace the current content if approved.
42
+
43
+ For `add-task` or `add-phase`, omit **Current** and write the complete new content in **Proposed**.
44
+ For `remove-task` or `remove-phase`, include **Current** for reference and omit **Proposed**.
45
+
46
+ **Task structure**: Read `task-design.md` before writing any proposed content. All task content — whether new tasks (`add-task`) or modifications to existing tasks (`update-task`, `add-to-task`) — must follow the canonical task template and field requirements defined there.
47
+
48
+ **Do not write summaries or descriptions** like "add missing acceptance criteria for edge case X". Write the actual acceptance criteria as they should appear in the plan.
49
+
50
+ ## Hard Rules
51
+
52
+ **MANDATORY. No exceptions.**
53
+
54
+ 1. **Read everything** — spec, plan, and all tasks. Do not skip or skim.
55
+ 2. **Write only the tracking file** — do not modify the plan, tasks, or specification
56
+ 3. **Commit the tracking file** — ensures it survives context refresh
57
+ 4. **No user interaction** — return status to the orchestrator. The orchestrator handles presentation and approval.
58
+ 5. **Full fix content** — every finding must include complete Current/Proposed content in plan format. No summaries.
59
+ 6. **Trace, don't invent** — if content can't be traced to the spec, flag it. Don't justify it.
60
+ 7. **Spec-grounded fixes** — proposed content must come from the specification. Do not hallucinate plan content.
61
+
62
+ ## Your Output
63
+
64
+ Return a brief status:
65
+
66
+ ```
67
+ STATUS: findings | clean
68
+ CYCLE: {N}
69
+ TRACKING_FILE: {path to tracking file}
70
+ FINDING_COUNT: {N}
71
+ ```
72
+
73
+ - `clean`: No findings. The plan is a faithful translation of the specification.
74
+ - `findings`: Tracking file contains findings for the orchestrator to present to the user.
@@ -55,10 +55,10 @@ Phase {N}: {Phase Name}
55
55
 
56
56
  ```markdown
57
57
  #### Tasks
58
- | ID | Name | Edge Cases | Status |
59
- |----|------|------------|--------|
60
- | {topic}-{phase}-1 | {Task Name} | {list} | pending |
61
- | {topic}-{phase}-2 | {Task Name} | {list} | pending |
58
+ | ID | Name | Edge Cases | Status | Ext ID |
59
+ |----|------|------------|--------|--------|
60
+ | {topic}-{phase}-1 | {Task Name} | {list} | pending | |
61
+ | {topic}-{phase}-2 | {Task Name} | {list} | pending | |
62
62
  ```
63
63
 
64
64
  Use placeholder IDs in the format `{topic}-{phase}-{seq}`. The orchestrator will use the topic name from the Plan Index File.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@leeovery/claude-technical-workflows",
3
- "version": "2.1.27",
3
+ "version": "2.1.29",
4
4
  "description": "Technical workflow skills & commands for Claude Code",
5
5
  "license": "MIT",
6
6
  "author": "Lee Overy <me@leeovery.com>",
@@ -20,7 +20,7 @@ Scan the codebase for existing plans:
20
20
 
21
21
  1. **Find plan files**: Look in `docs/workflow/planning/`
22
22
  - Run `ls docs/workflow/planning/` to list plan files
23
- - Each file is named `{topic}.md`
23
+ - Each topic is a directory containing `plan.md`
24
24
 
25
25
  2. **Extract plan metadata**: For each plan file
26
26
  - Read the frontmatter to get the `format:` field
@@ -116,7 +116,7 @@ Key:
116
116
 
117
117
  For each unresolved dependency:
118
118
 
119
- 1. **Search for matching plan**: Does `docs/workflow/planning/{dependency-topic}.md` exist?
119
+ 1. **Search for matching plan**: Does `docs/workflow/planning/{dependency-topic}/plan.md` exist?
120
120
  - If no match: Mark as "no plan exists" - cannot resolve yet
121
121
 
122
122
  2. **If plan exists**: Load the format's reading reference
@@ -168,7 +168,7 @@ Unresolved (no matching plan exists):
168
168
  • {source} → {target}: {description}
169
169
 
170
170
  Updated files:
171
- • docs/workflow/planning/{topic}.md
171
+ • docs/workflow/planning/{topic}/plan.md
172
172
  ```
173
173
 
174
174
  If any dependencies remain unresolved:
@@ -52,6 +52,11 @@ fi
52
52
  for file in "$SPEC_DIR"/*.md; do
53
53
  [ -f "$file" ] || continue
54
54
 
55
+ # Skip tracking/review files — only process specification documents
56
+ case "$(basename "$file")" in
57
+ *-review-*|*-tracking*) continue ;;
58
+ esac
59
+
55
60
  # Check if already migrated via tracking
56
61
  if is_migrated "$file" "$MIGRATION_ID"; then
57
62
  report_skip "$file"
@@ -50,6 +50,11 @@ fi
50
50
  for file in "$PLAN_DIR"/*.md; do
51
51
  [ -f "$file" ] || continue
52
52
 
53
+ # Skip tracking/review files — only process plan documents
54
+ case "$(basename "$file")" in
55
+ *-review-*|*-tracking*) continue ;;
56
+ esac
57
+
53
58
  # Check if already migrated via tracking
54
59
  if is_migrated "$file" "$MIGRATION_ID"; then
55
60
  report_skip "$file"
@@ -87,6 +87,11 @@ extract_simple_sources() {
87
87
  for file in "$SPEC_DIR"/*.md; do
88
88
  [ -f "$file" ] || continue
89
89
 
90
+ # Skip tracking/review files — only process specification documents
91
+ case "$(basename "$file")" in
92
+ *-review-*|*-tracking*) continue ;;
93
+ esac
94
+
90
95
  # Check if already migrated via tracking
91
96
  if is_migrated "$file" "$MIGRATION_ID"; then
92
97
  report_skip "$file"
@@ -117,6 +117,11 @@ parse_dep_line() {
117
117
  for file in "$PLAN_DIR"/*.md; do
118
118
  [ -f "$file" ] || continue
119
119
 
120
+ # Skip tracking/review files — only process plan documents
121
+ case "$(basename "$file")" in
122
+ *-review-*|*-tracking*) continue ;;
123
+ esac
124
+
120
125
  # Check if already migrated via tracking
121
126
  if is_migrated "$file" "$MIGRATION_ID"; then
122
127
  report_skip "$file"