@intentsolutionsio/sprint 1.0.0 → 1.0.3

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 (33) hide show
  1. package/README.md +11 -1
  2. package/agents/allpurpose-agent.md +11 -0
  3. package/agents/cicd-agent.md +4 -0
  4. package/agents/nextjs-dev.md +4 -0
  5. package/agents/nextjs-diagnostics-agent.md +12 -0
  6. package/agents/project-architect.md +25 -0
  7. package/agents/python-dev.md +8 -0
  8. package/agents/qa-test-agent.md +2 -0
  9. package/agents/ui-test-agent.md +18 -0
  10. package/agents/website-designer.md +7 -0
  11. package/commands/clean.md +8 -0
  12. package/commands/generate-map.md +5 -0
  13. package/commands/new.md +7 -0
  14. package/commands/setup.md +19 -0
  15. package/commands/sprint.md +38 -16
  16. package/commands/test.md +13 -2
  17. package/package.json +1 -1
  18. package/skills/agent-patterns/SKILL.md +18 -5
  19. package/skills/agent-patterns/references/examples.md +17 -0
  20. package/skills/agent-patterns/references/ui-test-report.md +8 -1
  21. package/skills/api-contract/SKILL.md +16 -5
  22. package/skills/api-contract/references/best-practices.md +3 -1
  23. package/skills/api-contract/references/errors.md +1 -1
  24. package/skills/api-contract/references/examples.md +16 -1
  25. package/skills/api-contract/references/pagination.md +2 -1
  26. package/skills/api-contract/references/typescript-interfaces.md +2 -1
  27. package/skills/api-contract/references/writing-endpoints.md +4 -1
  28. package/skills/spec-writing/SKILL.md +14 -5
  29. package/skills/spec-writing/references/examples.md +7 -0
  30. package/skills/spec-writing/references/testing-configuration.md +6 -1
  31. package/skills/sprint-workflow/SKILL.md +16 -5
  32. package/skills/sprint-workflow/references/examples.md +17 -0
  33. package/skills/sprint-workflow/references/sprint-phases.md +7 -1
@@ -5,6 +5,7 @@
5
5
  The simplest pattern: one agent implementing one spec file with a shared contract.
6
6
 
7
7
  **SPAWN REQUEST block:**
8
+
8
9
  ```
9
10
  SPAWN REQUEST
10
11
  Agent: python-dev
@@ -14,6 +15,7 @@ Scope: All backend endpoints
14
15
  ```
15
16
 
16
17
  **Agent reads these files, implements, then returns:**
18
+
17
19
  ```
18
20
  AGENT REPORT
19
21
  Agent: python-dev
@@ -34,6 +36,7 @@ Multiple agents running concurrently, each assigned to a non-overlapping domain
34
36
  boundary to prevent file conflicts.
35
37
 
36
38
  **Architect produces three SPAWN REQUEST blocks:**
39
+
37
40
  ```
38
41
  SPAWN REQUEST
39
42
  Agent: python-dev
@@ -54,6 +57,7 @@ Scope: Docker, GitHub Actions, and deployment configs
54
57
  ```
55
58
 
56
59
  **Domain boundaries (no file overlap):**
60
+
57
61
  ```
58
62
  python-dev → src/api/*, src/models/*, tests/api/*
59
63
  nextjs-dev → app/*, components/*, tests/ui/*
@@ -61,6 +65,7 @@ cicd-agent → .github/workflows/*, Dockerfile, docker-compose.yml
61
65
  ```
62
66
 
63
67
  **All three agents run simultaneously. Reports collected:**
68
+
64
69
  ```
65
70
  AGENT REPORT
66
71
  Agent: python-dev
@@ -90,6 +95,7 @@ Testing agents must run after implementation agents complete. QA runs first,
90
95
  then UI testing runs after QA passes.
91
96
 
92
97
  **Sequential SPAWN REQUEST chain:**
98
+
93
99
  ```
94
100
  SPAWN REQUEST
95
101
  Agent: qa-test-agent
@@ -106,6 +112,7 @@ Scope: Browser-based E2E tests for all user flows
106
112
  ```
107
113
 
108
114
  **QA agent report:**
115
+
109
116
  ```
110
117
  AGENT REPORT
111
118
  Agent: qa-test-agent
@@ -122,6 +129,7 @@ Conformity: 2 endpoints deviate from api-contract.md error codes
122
129
  ```
123
130
 
124
131
  **UI test agent report (using structured format):**
132
+
125
133
  ```
126
134
  AGENT REPORT
127
135
  Agent: ui-test-agent
@@ -145,6 +153,7 @@ After collecting all agent reports, the architect decides whether to iterate
145
153
  or finalize.
146
154
 
147
155
  **Architect receives reports from Iteration 1:**
156
+
148
157
  ```
149
158
  python-dev: COMPLETE (all endpoints working)
150
159
  nextjs-dev: COMPLETE (all components rendered)
@@ -153,6 +162,7 @@ ui-test-agent: 1 failure (checkout button disabled)
153
162
  ```
154
163
 
155
164
  **Architect analysis:**
165
+
156
166
  ```
157
167
  Conformity Review:
158
168
  ✓ 4/6 API endpoints fully conformant
@@ -177,6 +187,7 @@ Updated status.md:
177
187
  ```
178
188
 
179
189
  **Architect spawns narrowed Iteration 2:**
190
+
180
191
  ```
181
192
  SPAWN REQUEST
182
193
  Agent: python-dev
@@ -196,6 +207,7 @@ The orchestrator detects the project framework and selects appropriate
196
207
  specialized agents.
197
208
 
198
209
  **Project detection:**
210
+
199
211
  ```
200
212
  Phase 0 scan:
201
213
  → Found: next.config.js → Framework: Next.js
@@ -209,6 +221,7 @@ Agent selection:
209
221
  ```
210
222
 
211
223
  **For a different project stack:**
224
+
212
225
  ```
213
226
  Phase 0 scan:
214
227
  → Found: nuxt.config.ts → Framework: Nuxt 3
@@ -226,6 +239,7 @@ Agent selection:
226
239
  When an agent fails to produce a valid report or encounters unrecoverable errors.
227
240
 
228
241
  **Failed agent report:**
242
+
229
243
  ```
230
244
  AGENT REPORT
231
245
  Agent: python-dev
@@ -237,6 +251,7 @@ Conformity: Unable to assess — implementation did not start
237
251
  ```
238
252
 
239
253
  **Architect response:**
254
+
240
255
  ```
241
256
  Architect reviews failure:
242
257
  → Root cause: platform-specific dependency issue
@@ -256,6 +271,7 @@ Notes: Use asyncpg instead of psycopg2-binary for PostgreSQL
256
271
  When agents need strict boundaries to prevent overlapping modifications.
257
272
 
258
273
  **Tightly scoped SPAWN REQUEST:**
274
+
259
275
  ```
260
276
  SPAWN REQUEST
261
277
  Agent: python-dev
@@ -273,6 +289,7 @@ Forbidden Paths:
273
289
  ```
274
290
 
275
291
  **Agent respects boundaries in its report:**
292
+
276
293
  ```
277
294
  AGENT REPORT
278
295
  Agent: python-dev
@@ -3,15 +3,18 @@
3
3
  ## UI TEST REPORT
4
4
 
5
5
  ### MODE
6
+
6
7
  AUTOMATED
7
8
 
8
9
  ### SUMMARY
10
+
9
11
  - Total tests run: 8
10
12
  - Passed: 7
11
13
  - Failed: 1
12
14
  - Session duration: 45s
13
15
 
14
16
  ### COVERAGE
17
+
15
18
  - Scenarios covered:
16
19
  - Login with valid credentials
17
20
  - Login with invalid password
@@ -21,6 +24,7 @@ AUTOMATED
21
24
  - Email verification flow (requires email testing setup)
22
25
 
23
26
  ### FAILURES
27
+
24
28
  - Scenario: Registration validation
25
29
  - Path/URL: /register
26
30
  - Symptom: Error message not displayed
@@ -28,8 +32,11 @@ AUTOMATED
28
32
  - Actual: Form submits without feedback
29
33
 
30
34
  ### CONSOLE ERRORS
35
+
31
36
  None.
32
37
 
33
38
  ### NOTES FOR ARCHITECT
39
+
34
40
  - Registration error handling needs frontend fix
35
- ```
41
+
42
+ ```
@@ -1,13 +1,21 @@
1
1
  ---
2
2
  name: api-contract
3
- description: |
4
- Configure this skill should be used when the user asks about "API contract", "api-contract.md", "shared interface", "TypeScript interfaces", "request response schemas", "endpoint design", or needs guidance on designing contracts that coordinate backend and frontend agents. Use when building or modifying API endpoints. Trigger with phrases like 'create API', 'design endpoint', or 'API scaffold'.
3
+ description: 'Configure this skill should be used when the user asks about "API contract",
4
+ "api-contract.md", "shared interface", "TypeScript interfaces", "request response
5
+ schemas", "endpoint design", or needs guidance on designing contracts that coordinate
6
+ backend and frontend agents. Use when building or modifying API endpoints. Trigger
7
+ with phrases like ''create API'', ''design endpoint'', or ''API scaffold''.
8
+
9
+ '
5
10
  allowed-tools: Read
6
11
  version: 1.0.0
7
12
  author: Damien Laine <damien.laine@gmail.com>
8
13
  license: MIT
9
- compatible-with: claude-code, codex, openclaw
10
- tags: [community, api, typescript]
14
+ tags:
15
+ - community
16
+ - api
17
+ - typescript
18
+ compatibility: Designed for Claude Code, also compatible with Codex and OpenClaw
11
19
  ---
12
20
  # API Contract
13
21
 
@@ -51,6 +59,7 @@ API Contract guides the creation of `api-contract.md` files that serve as the sh
51
59
  ## Examples
52
60
 
53
61
  **Authentication endpoint contract:**
62
+
54
63
  ```markdown
55
64
  #### POST /auth/register
56
65
 
@@ -78,6 +87,7 @@ Create a new user account.
78
87
  ```
79
88
 
80
89
  **Paginated list endpoint:**
90
+
81
91
  ```markdown
82
92
  #### GET /products
83
93
 
@@ -99,6 +109,7 @@ List products with pagination.
99
109
  ```
100
110
 
101
111
  **Shared TypeScript interface:**
112
+
102
113
  ```typescript
103
114
  interface ApiError {
104
115
  code: string;
@@ -112,4 +123,4 @@ interface ApiError {
112
123
  - `${CLAUDE_SKILL_DIR}/references/writing-endpoints.md` -- Endpoint definition template and key elements
113
124
  - `${CLAUDE_SKILL_DIR}/references/typescript-interfaces.md` -- Canonical type definitions and guidelines
114
125
  - `${CLAUDE_SKILL_DIR}/references/pagination.md` -- Pagination parameters and PaginatedResponse interface
115
- - `${CLAUDE_SKILL_DIR}/references/best-practices.md` -- Contract authoring rules (specificity, DRY, no implementation details)
126
+ - `${CLAUDE_SKILL_DIR}/references/best-practices.md` -- Contract authoring rules (specificity, DRY, no implementation details)
@@ -22,6 +22,7 @@
22
22
  "password": "SecurePass123"
23
23
  }
24
24
  ```
25
+
25
26
  ```
26
27
 
27
28
  ### Document All States
@@ -42,6 +43,7 @@ Reference shared types instead of duplicating:
42
43
  ### No Implementation Details
43
44
 
44
45
  The contract defines WHAT, not HOW:
46
+
45
47
  - Don't mention database columns
46
48
  - Don't specify frameworks
47
- - Don't include file paths
49
+ - Don't include file paths
@@ -1,4 +1,4 @@
1
- # Error Handling Reference
1
+ ## Error Handling Reference
2
2
 
3
3
  ### Standard Error Format
4
4
 
@@ -132,7 +132,9 @@ List products with pagination and filtering.
132
132
  ```
133
133
 
134
134
  **Errors:**
135
+
135
136
  - 400: Invalid query parameter → `{ code: "INVALID_PARAM", details: { limit: ["max 100"] } }`
137
+
136
138
  ```
137
139
 
138
140
  ## Example 2: Authentication Contract with Token Flow
@@ -183,22 +185,25 @@ Create a new user account and return authentication tokens.
183
185
  ```
184
186
 
185
187
  **Errors:**
188
+
186
189
  - 400: Invalid email format or weak password → field-level details
187
190
  - 409: Email already registered → `{ code: "EMAIL_EXISTS" }`
188
191
 
189
192
  ---
190
193
 
191
- #### POST /auth/login
194
+ ### POST /auth/login
192
195
 
193
196
  Authenticate with email and password.
194
197
 
195
198
  **Request:**
199
+
196
200
  | Field | Type | Required |
197
201
  |----------|--------|----------|
198
202
  | email | string | yes |
199
203
  | password | string | yes |
200
204
 
201
205
  **Response (200 OK):**
206
+
202
207
  ```json
203
208
  {
204
209
  "user": UserProfile,
@@ -207,6 +212,7 @@ Authenticate with email and password.
207
212
  ```
208
213
 
209
214
  **Errors:**
215
+
210
216
  - 401: Invalid credentials → `{ code: "INVALID_CREDENTIALS" }`
211
217
  (same message for wrong email and wrong password to prevent enumeration)
212
218
  - 429: Too many attempts → `{ code: "RATE_LIMITED", message: "Try again in 60s" }`
@@ -219,11 +225,13 @@ Exchange a valid refresh token for new tokens. The old refresh token is
219
225
  invalidated (rotation).
220
226
 
221
227
  **Request:**
228
+
222
229
  | Field | Type | Required |
223
230
  |--------------|--------|----------|
224
231
  | refreshToken | string | yes |
225
232
 
226
233
  **Response (200 OK):**
234
+
227
235
  ```json
228
236
  {
229
237
  "tokens": AuthTokens
@@ -231,6 +239,7 @@ invalidated (rotation).
231
239
  ```
232
240
 
233
241
  **Errors:**
242
+
234
243
  - 401: Invalid or expired refresh token → `{ code: "INVALID_REFRESH_TOKEN" }`
235
244
  (also triggered if token was already rotated — potential theft detection)
236
245
 
@@ -241,11 +250,13 @@ invalidated (rotation).
241
250
  Invalidate the refresh token for the current session.
242
251
 
243
252
  **Headers:**
253
+
244
254
  | Header | Value |
245
255
  |---------------|----------------------|
246
256
  | Authorization | Bearer {accessToken} |
247
257
 
248
258
  **Request:**
259
+
249
260
  | Field | Type | Required |
250
261
  |--------------|--------|----------|
251
262
  | refreshToken | string | yes |
@@ -254,7 +265,9 @@ Invalidate the refresh token for the current session.
254
265
  Empty body.
255
266
 
256
267
  **Errors:**
268
+
257
269
  - 401: Missing or invalid access token
270
+
258
271
  ```
259
272
 
260
273
  ## Example 3: TypeScript Interface Definitions
@@ -408,8 +421,10 @@ List line items for a specific order.
408
421
  ```
409
422
 
410
423
  **Errors:**
424
+
411
425
  - 403: Order belongs to a different user
412
426
  - 404: Order not found
427
+
413
428
  ```
414
429
 
415
430
  ## Example 5: Contract Section for Webhook Callbacks
@@ -29,6 +29,7 @@ List products with pagination.
29
29
  }
30
30
  }
31
31
  ```
32
+
32
33
  ```
33
34
 
34
35
  ### Pagination Interface
@@ -43,4 +44,4 @@ interface PaginatedResponse<T> {
43
44
  totalPages: number;
44
45
  };
45
46
  }
46
- ```
47
+ ```
@@ -35,6 +35,7 @@ interface ApiError {
35
35
  details?: Record<string, string[]>;
36
36
  }
37
37
  ```
38
+
38
39
  ```
39
40
 
40
41
  ### Type Guidelines
@@ -43,4 +44,4 @@ interface ApiError {
43
44
  - Mark optional fields with `?`
44
45
  - Use union types for nullable: `string | null`
45
46
  - Include all possible response shapes
46
- - Match types to JSON serialization
47
+ - Match types to JSON serialization
@@ -19,6 +19,7 @@ Create a new user account.
19
19
  ```
20
20
 
21
21
  **Response (201):**
22
+
22
23
  ```json
23
24
  {
24
25
  "id": "uuid",
@@ -29,9 +30,11 @@ Create a new user account.
29
30
  ```
30
31
 
31
32
  **Errors:**
33
+
32
34
  - 400: Invalid request body
33
35
  - 409: Email already exists
34
36
  - 422: Validation failed
37
+
35
38
  ```
36
39
 
37
40
  ### Key Elements
@@ -42,4 +45,4 @@ Create a new user account.
42
45
  | Description | What the endpoint does |
43
46
  | Request | Input schema with types and constraints |
44
47
  | Response | Output schema with status code |
45
- | Errors | Possible error responses |
48
+ | Errors | Possible error responses |
@@ -1,13 +1,20 @@
1
1
  ---
2
2
  name: spec-writing
3
- description: |
4
- Execute this skill should be used when the user asks about "writing specs", "specs.md format", "how to write specifications", "sprint requirements", "testing configuration", "scope definition", or needs guidance on creating effective sprint specifications for agentic development. Use when appropriate context detected. Trigger with relevant phrases based on skill purpose.
3
+ description: 'Execute this skill should be used when the user asks about "writing
4
+ specs", "specs.md format", "how to write specifications", "sprint requirements",
5
+ "testing configuration", "scope definition", or needs guidance on creating effective
6
+ sprint specifications for agentic development. Use when appropriate context detected.
7
+ Trigger with relevant phrases based on skill purpose.
8
+
9
+ '
5
10
  allowed-tools: Read
6
11
  version: 1.0.0
7
12
  author: Damien Laine <damien.laine@gmail.com>
8
13
  license: MIT
9
- compatible-with: claude-code, codex, openclaw
10
- tags: [community, spec-writing]
14
+ tags:
15
+ - community
16
+ - spec-writing
17
+ compatibility: Designed for Claude Code, also compatible with Codex and OpenClaw
11
18
  ---
12
19
  # Spec Writing
13
20
 
@@ -55,6 +62,7 @@ Spec Writing provides guidance on authoring effective `specs.md` files that driv
55
62
  ## Examples
56
63
 
57
64
  **Minimal but effective spec:**
65
+
58
66
  ```markdown
59
67
  # Sprint 1: User Authentication
60
68
 
@@ -80,6 +88,7 @@ Add user authentication with email/password login
80
88
  ```
81
89
 
82
90
  **Frontend-only sprint (no QA needed):**
91
+
83
92
  ```markdown
84
93
  # Sprint 3: Dashboard Redesign
85
94
 
@@ -107,4 +116,4 @@ Redesign the admin dashboard with responsive layout
107
116
 
108
117
  - `${CLAUDE_SKILL_DIR}/references/testing-configuration.md` -- Testing section options with guidance on when to use each setting
109
118
  - Sprint workflow skill for understanding how specs feed into the phase lifecycle
110
- - API contract skill for designing endpoint contracts referenced by specs
119
+ - API contract skill for designing endpoint contracts referenced by specs
@@ -35,6 +35,7 @@ Add email/password authentication with JWT tokens and refresh token rotation.
35
35
  ```
36
36
 
37
37
  **Why this works:**
38
+
38
39
  - Goal is one sentence describing the deliverable
39
40
  - In Scope lists every endpoint with its behavior
40
41
  - Out of Scope prevents agent drift toward OAuth or email flows
@@ -74,6 +75,7 @@ Add dark mode with system preference detection and manual toggle.
74
75
  ```
75
76
 
76
77
  **Why manual testing is appropriate here:**
78
+
77
79
  - Visual correctness (contrast, readability) requires human eyes
78
80
  - Theme transitions need subjective quality assessment
79
81
  - System preference detection needs OS-level interaction
@@ -121,6 +123,7 @@ Full-text product search with type-ahead suggestions and faceted filtering.
121
123
  ```
122
124
 
123
125
  **Why this works:**
126
+
124
127
  - Scope is partitioned by domain (Backend / Frontend / Shared)
125
128
  - Each agent gets a clear boundary
126
129
  - Shared types are called out so both agents reference the same contract
@@ -132,6 +135,7 @@ A spec that has been narrowed based on iteration 1 results. Completed items
132
135
  are removed and only remaining work and fixes are listed.
133
136
 
134
137
  **Original specs.md (before sprint):**
138
+
135
139
  ```markdown
136
140
  # Sprint 2: User Dashboard
137
141
 
@@ -157,6 +161,7 @@ Build a user dashboard showing recent activity, notifications, and account setti
157
161
  ```
158
162
 
159
163
  **Updated specs.md (after iteration 1, 2 items remaining):**
164
+
160
165
  ```markdown
161
166
  # Sprint 2: User Dashboard (Iteration 2)
162
167
 
@@ -186,6 +191,7 @@ Fix remaining issues from iteration 1.
186
191
  ```
187
192
 
188
193
  **Why iterative narrowing matters:**
194
+
189
195
  - Removes completed work so agents do not re-implement it
190
196
  - Explicitly describes the two bugs with expected vs actual behavior
191
197
  - "Completed" section tells agents what NOT to touch
@@ -266,6 +272,7 @@ Real-time chat for project collaboration with channel support and presence track
266
272
  ```
267
273
 
268
274
  **Why constraints are valuable:**
275
+
269
276
  - Prevents agents from choosing a different WebSocket library
270
277
  - Ensures new code integrates with existing database stack
271
278
  - Manual UI testing because real-time interactions are hard to automate reliably
@@ -15,26 +15,31 @@ The Testing section controls which testing agents run.
15
15
  ### When to Use Each
16
16
 
17
17
  **QA: required**
18
+
18
19
  - New API endpoints
19
20
  - Business logic changes
20
21
  - Data validation rules
21
22
 
22
23
  **QA: skip**
24
+
23
25
  - Frontend-only changes
24
26
  - Documentation updates
25
27
  - Configuration changes
26
28
 
27
29
  **UI Testing: required**
30
+
28
31
  - User-facing features
29
32
  - Form submissions
30
33
  - Navigation flows
31
34
 
32
35
  **UI Testing Mode: manual**
36
+
33
37
  - Complex interactions
34
38
  - Visual verification needed
35
39
  - Exploratory testing
36
40
 
37
41
  **UI Testing Mode: automated**
42
+
38
43
  - Regression testing
39
44
  - Standard CRUD flows
40
- - Repeatable scenarios
45
+ - Repeatable scenarios
@@ -1,13 +1,21 @@
1
1
  ---
2
2
  name: sprint-workflow
3
- description: |
4
- Execute this skill should be used when the user asks about "how sprints work", "sprint phases", "iteration workflow", "convergent development", "sprint lifecycle", "when to use sprints", or wants to understand the sprint execution model and its convergent diffusion approach. Use when appropriate context detected. Trigger with relevant phrases based on skill purpose.
3
+ description: 'Execute this skill should be used when the user asks about "how sprints
4
+ work", "sprint phases", "iteration workflow", "convergent development", "sprint
5
+ lifecycle", "when to use sprints", or wants to understand the sprint execution model
6
+ and its convergent diffusion approach. Use when appropriate context detected. Trigger
7
+ with relevant phrases based on skill purpose.
8
+
9
+ '
5
10
  allowed-tools: Read
6
11
  version: 1.0.0
7
12
  author: Damien Laine <damien.laine@gmail.com>
8
13
  license: MIT
9
- compatible-with: claude-code, codex, openclaw
10
- tags: [community, workflow, sprint-workflow]
14
+ tags:
15
+ - community
16
+ - workflow
17
+ - sprint-workflow
18
+ compatibility: Designed for Claude Code, also compatible with Codex and OpenClaw
11
19
  ---
12
20
  # Sprint Workflow
13
21
 
@@ -53,6 +61,7 @@ Sprint Workflow describes the convergent diffusion execution model used by the S
53
61
  ## Examples
54
62
 
55
63
  **Starting a new sprint:**
64
+
56
65
  ```bash
57
66
  /sprint:new # Creates .claude/sprint/1/specs.md
58
67
  # Edit specs.md with requirements
@@ -60,6 +69,7 @@ Sprint Workflow describes the convergent diffusion execution model used by the S
60
69
  ```
61
70
 
62
71
  **Resuming after iteration pause:**
72
+
63
73
  ```bash
64
74
  # Review .claude/sprint/1/status.md for blockers
65
75
  # Adjust specs.md to narrow scope or fix conflicts
@@ -67,6 +77,7 @@ Sprint Workflow describes the convergent diffusion execution model used by the S
67
77
  ```
68
78
 
69
79
  **Typical convergence flow:**
80
+
70
81
  ```
71
82
  Iteration 1: Architect plans → 3 agents implement → tests find 2 failures
72
83
  Iteration 2: Architect narrows specs to 2 fixes → agents patch → tests pass
@@ -78,4 +89,4 @@ Iteration 3: All specs satisfied → FINALIZE
78
89
  - `${CLAUDE_SKILL_DIR}/references/sprint-phases.md` -- Detailed reference for all six phases with agent assignments and handoff rules
79
90
  - Agent patterns skill for SPAWN REQUEST format and report structure
80
91
  - Spec writing skill for authoring effective `specs.md` files
81
- - API contract skill for designing the shared interface between agents
92
+ - API contract skill for designing the shared interface between agents