ai-dev-requirements 0.1.9 → 0.1.11

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.
@@ -1,17 +1,16 @@
1
1
  ---
2
2
  name: dev-workflow
3
3
  description: >
4
- Use when starting any development task - receiving a requirement ticket number, requirement description,
5
- or when user says "start developing", "new feature", "implement XXX". Drives the full workflow from
6
- requirement fetching through user stories, UI resource acquisition, skill matching, implementation
7
- planning, coding, and verification. Supports ONES/GitHub/Jira MCP for requirements, Figma MCP for
8
- design references, and npx skills find for frontend UI skills when no design is provided.
4
+ Use when starting any AI-assisted development task that needs a controlled agent harness:
5
+ requirement intake, MCP/context loading, normalization, task graph planning, gated execution,
6
+ verification, review, and handoff. Supports ONES/GitHub/Jira/Figma MCP as context sources,
7
+ but does not require changing MCP server code.
9
8
  metadata:
10
9
  author: ai-dev-workflow
11
10
  version: "0.1.0"
12
11
  ---
13
12
 
14
- # Dev Workflow
13
+ # Dev Workflow Harness
15
14
 
16
15
  ## Setup
17
16
 
@@ -30,16 +29,16 @@ npx skills add daguanren21/ai-dev-workflow -a cursor
30
29
 
31
30
  **Prerequisites:**
32
31
 
33
- 1. Install [find-skills](https://github.com/vercel-labs/skills) for community skill discovery:
32
+ 1. Optional community skill discovery:
34
33
 
35
34
  ```bash
36
35
  npx skills add vercel-labs/skills --skill find-skills -a claude-code
37
36
  ```
38
37
 
39
- 2. (Optional) Install companion MCP servers based on your requirement source:
38
+ 2. Optional companion MCP servers based on context source:
40
39
 
41
40
  | Source | MCP Server |
42
- |--------|-----------|
41
+ |--------|------------|
43
42
  | ONES | `ai-dev-requirements` (bundled) |
44
43
  | GitHub | [github/github-mcp-server](https://github.com/github/github-mcp-server) |
45
44
  | Jira | [Atlassian Rovo MCP](https://www.atlassian.com/blog/announcements/remote-mcp-server) |
@@ -47,169 +46,233 @@ npx skills add vercel-labs/skills --skill find-skills -a claude-code
47
46
 
48
47
  ## Overview
49
48
 
50
- Requirement-driven AI-assisted development workflow. From requirements to user stories, from user stories to implementation plans, from plans to code.
49
+ AI agent harness for requirement-driven software work. The harness controls what context the agent may load, which artifacts it must produce, when it must pause, how tasks are scheduled, and which verification gates must pass before handoff.
51
50
 
52
- **Announce at start:** "I'm using the dev-workflow skill to drive the development process."
51
+ **Announce at start:** "I'm using the dev-workflow harness to drive this development task."
53
52
 
54
- **Core principle:** Requirements first, then user stories, then plan, then code. Never skip to code without a confirmed user story and plan.
53
+ **Core principle:** Harness first. Normalize inputs, create traceable artifacts, validate coverage, execute behind gates, and hand off evidence. Do not jump from a requirement directly to code.
55
54
 
56
- ## The Process
55
+ **Default execution policy:** When this harness is triggered, the agent must produce user stories and an implementation plan before writing code, then pause for developer confirmation. The developer does not need to say "write the plan first" every time. Only skip this gate when the developer explicitly says to bypass planning or directly start implementation.
57
56
 
58
- ### Phase 1: Fetch Requirements
57
+ ## Harness Engineering Principles
59
58
 
60
- Identify the requirement source and fetch using the corresponding MCP:
59
+ - Treat the harness as feedforward guidance plus feedback sensors, not just a checklist.
60
+ - Keep `SKILL.md` concise; load detailed references only when needed.
61
+ - Prefer deterministic gates for repeatable work: dependency install, lint, typecheck, build, tests, diff checks.
62
+ - Use backpressure: successful gates stay quiet, failed gates expose precise, actionable errors.
63
+ - Mark context source quality before planning; do not infer from blocked, login-gated, or verification-gated pages.
61
64
 
62
- | Source | MCP Server | Tool |
63
- |--------|-----------|------|
64
- | ONES | `requirements` MCP (bundled) | `get_requirement` |
65
- | GitHub | `github` MCP ([github/github-mcp-server](https://github.com/github/github-mcp-server)) | get issue |
66
- | Jira | `atlassian` MCP ([Atlassian Rovo MCP](https://www.atlassian.com/blog/announcements/remote-mcp-server)) | get issue |
67
- | Natural language | No MCP needed | Use user's description directly |
65
+ For detailed operating rules, use `references/workflow.md`, `references/task-types.md`, and the templates under `references/templates/`.
68
66
 
69
- Save raw requirements to `docs/plans/{feature-name}/requirements.md`.
67
+ ## Harness Lifecycle
70
68
 
71
- ### Phase 2: Write User Stories
69
+ ### Phase 1: Intake
72
70
 
73
- Convert requirements into standard user stories:
71
+ **Input:** requirement ID, issue link, document link, Figma link, screenshot, or natural language request.
74
72
 
75
- ```markdown
76
- ### US-1: {title}
77
- **As a** {role},
78
- **I want** {goal},
79
- **So that** {value}.
73
+ **Action:**
74
+ - Identify the requested outcome.
75
+ - Identify context sources: ONES, GitHub, Jira, Figma, local files, or user text.
76
+ - Choose a stable `{feature-name}` for artifact paths.
80
77
 
81
- #### Acceptance Criteria
82
- - [ ] Given {precondition}, When {action}, Then {expected result}
78
+ **Output:** source inventory and artifact path: `docs/plans/{feature-name}/`.
83
79
 
84
- #### UI Notes
85
- - 🎨 Figma: {link} | 🖼️ Screenshot: {path} | 📝 No UI dependency
86
- ```
80
+ **Pause:** only if the request has no actionable requirement or source.
87
81
 
88
- Rules:
89
- 1. Each story must be independently deliverable
90
- 2. Acceptance criteria use Given/When/Then
91
- 3. Stories involving UI: mark and **pause** for developer to provide UI reference
92
- 4. Non-UI stories: mark as "No UI dependency"
82
+ ### Phase 2: Context Load
93
83
 
94
- Save to `docs/plans/{feature-name}/user-stories.md`.
84
+ **Input:** source inventory from intake.
95
85
 
96
- **PAUSE:** Present stories to developer for confirmation. Collect UI references.
86
+ **Action:**
87
+ - Fetch ONES requirements with the bundled Requirements MCP Server when available.
88
+ - Fetch GitHub or Jira issue context with external MCP servers when available.
89
+ - Fetch Figma design context with Figma MCP when UI work depends on a Figma file.
90
+ - Use user-provided text directly when no MCP source exists.
97
91
 
98
- ### Phase 3: Acquire UI Resources
92
+ **Output:** `docs/plans/{feature-name}/requirements.md`.
99
93
 
100
- **Path A Developer provided UI reference:**
101
- - **Figma copy link** → Use Figma MCP Server to read design details (components, variables, layout)
102
- - **Screenshot/image** → Analyze image directly for UI structure
103
- - **Text description** → Understand UI intent from description
94
+ **Pause:** if required context is unavailable and cannot be replaced by user-provided text.
104
95
 
105
- **Path B No UI reference provided:**
96
+ ### Phase 3: Normalize Requirements
106
97
 
107
- Search for frontend UI skills via `npx skills find`:
98
+ **Input:** `requirements.md`.
108
99
 
109
- ```bash
110
- npx skills find frontend design
111
- npx skills find ui component
112
- npx skills find css styling
113
- ```
100
+ **Action:**
101
+ - Convert raw context into independently deliverable user stories.
102
+ - Write acceptance criteria with Given/When/Then.
103
+ - Mark UI dependencies, backend dependencies, data dependencies, and external integrations.
104
+ - Record open questions and assumptions explicitly.
114
105
 
115
- Load matching community skills and apply their best practices to guide UI implementation.
106
+ **Output:** `docs/plans/{feature-name}/user-stories.md`.
116
107
 
117
- Also check the 5-level skill lookup (Phase 4) for project-level UI conventions.
108
+ **Pause:** always. The developer must confirm stories and required UI references before planning.
118
109
 
119
- ### Phase 4: Match Skills (5-Level Lookup)
110
+ ### Phase 4: Build Harness Plan
120
111
 
121
- Extract tech keywords from user stories, find best practices by priority:
112
+ **Input:** confirmed user stories, UI references, project conventions, and relevant skills.
122
113
 
123
- | Priority | Source | Description |
124
- |:---:|------|------|
125
- | L1 | Project `skills/` | Project-specific conventions (highest priority) |
126
- | L2 | Installed global skills | superpowers, giga-ui, vue-best-practices, etc. |
127
- | L3 | `npx skills find {keyword}` | skills.sh community ecosystem |
128
- | L4 | Context7 MCP | Framework/library official docs |
129
- | L5 | WebSearch | Fallback |
114
+ **Action:**
115
+ - Build a task graph from user stories.
116
+ - Assign task type, agent role, scheduler mode, isolation key, dependencies, inputs, outputs, review level, and verification gate.
117
+ - Prefer small tasks that can be reviewed and verified independently.
118
+ - Use `references/task-types.md` for scheduler semantics and templates from `references/templates/`.
130
119
 
131
- ### Phase 5: Write Implementation Plan
120
+ **Output:** `docs/plans/{feature-name}/implementation-plan.md`.
132
121
 
133
- **REQUIRED SUB-SKILL:** Use `superpowers:writing-plans` to generate the plan.
122
+ **Pause:** always before implementation. Present the implementation plan and wait for developer confirmation unless the developer explicitly bypassed the planning gate.
134
123
 
135
- Based on user stories + UI resources + matched skills, generate bite-sized plan:
136
- - Each step 2-5 minutes, TDD, exact file paths and code
137
- - DRY, YAGNI, frequent commits
124
+ ### Phase 5: Validate Coverage
138
125
 
139
- Save to `docs/plans/{feature-name}/implementation-plan.md`.
126
+ **Input:** requirements, user stories, and harness plan.
140
127
 
141
- ### Phase 6: Requirement Validation
128
+ **Action:**
129
+ - Build a traceability matrix: requirement -> user story -> task -> verification gate.
130
+ - Check every requirement for story coverage, acceptance criteria, implementation task, edge cases, and verification.
131
+ - Classify uncovered items and risks.
142
132
 
143
- Validate that the design and plan fully cover all product requirements before coding. Follow the detailed spec in `references/requirement-validation.md`.
133
+ **Output:** `docs/plans/{feature-name}/validation-report.md`.
144
134
 
145
- Core steps:
146
- 1. Build a traceability matrix: requirement → user story → design section → task
147
- 2. Check each requirement for: story coverage, AC completeness, design landing, task breakdown, edge case coverage
148
- 3. Generate `validation-report.md` with coverage stats, uncovered items, and risk items
149
- 4. **PAUSE:** Present the report to the developer for confirmation
135
+ **Pause:** always when coverage is incomplete, high risk, or requires product judgment.
150
136
 
151
- Judgment:
152
- - ✅ Pass: all requirements covered, no high-risk items → proceed to Phase 7
153
- - ⚠️ Conditional pass: coverage ≥ 90%, uncovered items are low priority → confirm with developer, then proceed
154
- - ❌ Fail: core requirements uncovered or high-risk unresolved → go back to Phase 5 and revise
137
+ ### Phase 6: Execute Behind Gates
155
138
 
156
- Save to `docs/plans/{feature-name}/validation-report.md`.
139
+ **Input:** approved harness plan.
157
140
 
158
- ### Phase 7: Implement Code
141
+ **Action:**
142
+ - Use subagent-driven execution when available; otherwise execute inline with checkpoints.
143
+ - Preserve isolation keys.
144
+ - Run `parallel` tasks within `parallel_limit`.
145
+ - Run `isolated` tasks serially within the same isolation key and in parallel across different keys.
146
+ - Run `serial` tasks under a global lock.
147
+ - Record meaningful execution notes in `execution-log.md`.
159
148
 
160
- **REQUIRED SUB-SKILL:** Use `superpowers:subagent-driven-development` or `superpowers:executing-plans`.
149
+ **Output:** source, test, documentation, or generated artifacts declared by the plan.
161
150
 
162
- Follow task types and scheduling strategies defined in `references/task-types.md`.
163
- Follow the 10-step workflow defined in `references/workflow.md`.
164
- Use task templates from `references/templates/` for task declarations.
151
+ **Pause:** on blockers, repeated verification failure, unclear instructions, or isolation conflicts.
165
152
 
166
- Key constraints:
167
- - Max 5 parallel tasks
168
- - `code:dev` → isolated (serial within module, parallel across modules)
169
- - `code:refactor` → serial (global lock)
170
- - `doc:write` / `test` → parallel
153
+ ### Phase 7: Verify
171
154
 
172
- ### Phase 8: Verify
155
+ **Input:** changed artifacts.
173
156
 
174
- 1. **Quality gate** (in order, all must pass):
175
- ```bash
176
- pnpm lint # Code style
177
- pnpm type # TypeScript type check (tsc --noEmit)
178
- pnpm build # Build verification
179
- ```
180
- 2. **UI verification** (frontend projects only): Playwright MCP
181
- 3. **Code review:** **REQUIRED SUB-SKILL:** Use `superpowers:requesting-code-review`
157
+ **Action:**
158
+ - Run the verification gates declared by each task.
159
+ - For TypeScript projects, prefer `pnpm lint`, `pnpm typecheck`, `pnpm build`, and targeted tests when applicable.
160
+ - For frontend projects, verify user-facing behavior with browser automation where available.
161
+ - Capture failures before fixing them.
162
+ - Prefer targeted gates before full gates.
163
+ - Keep successful gate output concise.
164
+ - On failure, capture the command, key error, likely owner task, and next repair action.
182
165
 
183
- ## Quick Reference
166
+ **Output:** verification evidence in `execution-log.md` or `handoff.md`.
184
167
 
185
- | Phase | Output | Pause? |
186
- |-------|--------|--------|
187
- | 1. Requirements | `requirements.md` | No |
188
- | 2. User Stories | `user-stories.md` | **Yes** — developer confirms |
189
- | 3. UI Resources | figma-notes / screenshots | Only if UI stories exist |
190
- | 4. Skill Matching | matched skills list | No |
191
- | 5. Plan | `implementation-plan.md` | Per writing-plans skill |
192
- | 6. Requirement Validation | `validation-report.md` | **Yes** — developer confirms |
193
- | 7. Code | Source files + tests | Per executing-plans skill |
194
- | 8. Verify | lint + type + build pass | No |
168
+ **Pause:** if required verification cannot run or fails repeatedly.
195
169
 
196
- ## Output Structure
170
+ ### Phase 8: Review
197
171
 
198
- ```
172
+ **Input:** final diff and verification evidence.
173
+
174
+ **Action:**
175
+ - Review requirement coverage, behavioral risk, changed files, and verification results.
176
+ - Use strict review for new features and refactors.
177
+ - Use standard review for fixes and tests.
178
+ - Use light review for documentation and research.
179
+
180
+ **Output:** review notes, risk list, and any follow-up tasks.
181
+
182
+ **Pause:** if review finds a blocking defect or missing requirement coverage.
183
+
184
+ ### Phase 9: Handoff
185
+
186
+ **Input:** final artifacts, verification evidence, and review notes.
187
+
188
+ **Action:**
189
+ - Summarize changed files and user-visible behavior.
190
+ - State verification commands and results.
191
+ - State residual risks or skipped checks.
192
+ - Provide next actions only when they are concrete.
193
+
194
+ **Output:** `docs/plans/{feature-name}/handoff.md` when the project requires persistent handoff, plus the final agent response.
195
+
196
+ ## MCP Boundary
197
+
198
+ MCP is a context layer for the harness.
199
+
200
+ Allowed:
201
+
202
+ - Fetch ONES requirements through the bundled Requirements MCP Server.
203
+ - Fetch GitHub or Jira issue context through external MCP servers.
204
+ - Fetch Figma design context through a Figma MCP server.
205
+ - Use MCP-derived context to populate harness artifacts.
206
+
207
+ Not part of this harness skill:
208
+
209
+ - Changing MCP server source code.
210
+ - Adding MCP tools.
211
+ - Changing adapters, auth, config loading, or package exports.
212
+
213
+ ## Artifact Contract
214
+
215
+ Use this structure for harness artifacts:
216
+
217
+ ```text
199
218
  docs/plans/{feature-name}/
200
219
  ├── requirements.md
201
220
  ├── user-stories.md
202
- ├── ui-references/
203
- │ ├── figma-notes.md
204
- │ └── screenshots/
221
+ ├── implementation-plan.md
205
222
  ├── validation-report.md
206
- └── implementation-plan.md
223
+ ├── execution-log.md
224
+ └── handoff.md
207
225
  ```
208
226
 
227
+ Optional UI artifacts:
228
+
229
+ ```text
230
+ docs/plans/{feature-name}/ui-references/
231
+ ├── figma-notes.md
232
+ └── screenshots/
233
+ ```
234
+
235
+ ## Scheduling Rules
236
+
237
+ | Scheduler | Meaning | Constraint |
238
+ |-----------|---------|------------|
239
+ | `parallel` | Independent work | Bounded by `parallel_limit` |
240
+ | `isolated` | Work isolated by module, file, or data source | Serial within an isolation key, parallel across keys |
241
+ | `serial` | Work requiring a global lock | One task at a time |
242
+
243
+ Default `parallel_limit`: 5.
244
+
245
+ Use `references/task-types.md` for task declarations and review levels.
246
+
247
+ ## Recovery Rules
248
+
249
+ | Failure | Harness Response |
250
+ |---------|------------------|
251
+ | Missing context | Pause and ask for source, or proceed only with explicit user-provided text |
252
+ | Missing UI reference | Pause before implementation for UI work that depends on visual fidelity |
253
+ | Coverage validation failure | Revise user stories or plan before execution |
254
+ | Verification failure | Capture failure, fix the relevant task, rerun the gate |
255
+ | Parallel conflict | Stop the affected group and serialize the conflict boundary |
256
+
257
+ ## Quick Reference
258
+
259
+ | Phase | Output | Pause |
260
+ |-------|--------|-------|
261
+ | 1. Intake | Source inventory | Conditional |
262
+ | 2. Context Load | `requirements.md` | Conditional |
263
+ | 3. Normalize | `user-stories.md` | Yes |
264
+ | 4. Harness Plan | `implementation-plan.md` | Conditional |
265
+ | 5. Coverage Validation | `validation-report.md` | Yes on risk |
266
+ | 6. Execute | Changed artifacts + `execution-log.md` | On blocker |
267
+ | 7. Verify | Verification evidence | On failure |
268
+ | 8. Review | Review notes | On blocking finding |
269
+ | 9. Handoff | `handoff.md` or final response | No |
270
+
209
271
  ## Common Mistakes
210
272
 
211
- - **Skipping user stories** — jumping straight from requirements to code. Always convert to user stories first.
212
- - **Not pausing for UI** continuing without UI reference when stories involve UI changes. Always pause and ask.
213
- - **Ignoring skill matching** not checking for relevant project/community skills before planning. Always run the 5-level lookup.
214
- - **Skipping requirement validation** going straight from plan to code without verifying coverage. Always run the traceability check and pause for developer confirmation.
215
- - **Wrong parallelism** running `code:refactor` tasks in parallel. Refactoring is always serial.
273
+ - Jumping from requirement to code without normalized stories and a plan.
274
+ - Treating MCP as the implementation target instead of a context source.
275
+ - Running tasks with the same isolation key in parallel.
276
+ - Skipping coverage validation before implementation.
277
+ - Claiming completion without fresh verification evidence.
278
+ - Leaving handoff without changed files, verification results, and residual risks.