@martinffx/atelier 1.4.0 → 2.0.0
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/CHANGELOG.md +24 -0
- package/README.md +150 -116
- package/agents/architect.md +6 -6
- package/agents/oracle.md +1 -1
- package/agents/{recon.md → sentinel.md} +3 -3
- package/dist/atelier.js +167 -26
- package/package.json +2 -1
- package/skills/code-review/SKILL.md +2 -2
- package/skills/code-review/references/rq.md +3 -3
- package/skills/code-subagents/SKILL.md +44 -75
- package/skills/code-subagents/references/batch-reviewer-prompt.md +44 -0
- package/skills/code-subagents/references/implementor-prompt.md +10 -11
- package/skills/spec-brainstorm/SKILL.md +19 -14
- package/skills/spec-finish/SKILL.md +14 -14
- package/skills/spec-implement/SKILL.md +40 -39
- package/skills/spec-orchestrator/SKILL.md +71 -36
- package/skills/spec-plan/SKILL.md +79 -25
- package/skills/code-subagents/references/code-quality-reviewer-prompt.md +0 -48
- package/skills/code-subagents/references/spec-reviewer-prompt.md +0 -62
|
@@ -1,22 +1,72 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: spec-plan
|
|
3
3
|
description: >
|
|
4
|
-
Write implementation plans
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
execution (use spec-implement).
|
|
4
|
+
Write approved implementation plans in one of two modes. Explicit Inline mode creates a
|
|
5
|
+
conversational plan for bounded work. Spec-backed Plan converts an approved design.md into
|
|
6
|
+
plan.json and optional tracked tasks. Trigger after spec-orchestrator selects a mode, when
|
|
7
|
+
the user asks to plan work, or after spec-brainstorm completes. Direct invocation without a
|
|
8
|
+
selected mode uses Spec-backed Plan. Do NOT use for research or execution.
|
|
10
9
|
user-invocable: true
|
|
11
10
|
---
|
|
12
11
|
|
|
13
12
|
# Spec Plan
|
|
14
13
|
|
|
15
|
-
Write a plan so clear that any engineer can follow it.
|
|
16
|
-
|
|
17
|
-
not write code.
|
|
14
|
+
Write a proportional plan so clear that any engineer can follow it. The selected planning
|
|
15
|
+
mode determines whether the plan stays in the conversation or becomes a persisted structured
|
|
16
|
+
artifact. This skill does not write code.
|
|
18
17
|
|
|
19
|
-
|
|
18
|
+
`spec-orchestrator` owns automatic classification and the human may override it. When this
|
|
19
|
+
skill is directly invoked without a selected mode, use Spec-backed Plan. If Inline planning
|
|
20
|
+
reveals substantial design or coordination needs, ask the human whether to switch to a
|
|
21
|
+
Spec-backed Plan before presenting the plan.
|
|
22
|
+
|
|
23
|
+
## Outputs
|
|
24
|
+
|
|
25
|
+
### Inline Plan (when explicitly selected)
|
|
26
|
+
|
|
27
|
+
No repository artifact and no task tracker entry. Present the plan in conversation using:
|
|
28
|
+
|
|
29
|
+
```markdown
|
|
30
|
+
## context
|
|
31
|
+
|
|
32
|
+
## scope
|
|
33
|
+
|
|
34
|
+
## changes
|
|
35
|
+
|
|
36
|
+
## files
|
|
37
|
+
|
|
38
|
+
## validation
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
## Inline Plan Workflow
|
|
42
|
+
|
|
43
|
+
Read enough of the codebase to identify the current behavior, boundaries, affected files,
|
|
44
|
+
and concrete validation. Keep the plan proportional. Populate every section:
|
|
45
|
+
|
|
46
|
+
- `context`: Current behavior, relevant constraints, and why the change is needed
|
|
47
|
+
- `scope`: Explicit in-scope and out-of-scope boundaries
|
|
48
|
+
- `changes`: Ordered implementation changes at useful engineering granularity
|
|
49
|
+
- `files`: Exact files expected to be created, modified, or deleted
|
|
50
|
+
- `validation`: Concrete tests, checks, or manual verification
|
|
51
|
+
|
|
52
|
+
Do not manufacture phases, task IDs, dependency graphs, acceptance matrices, `design.md`,
|
|
53
|
+
`plan.json`, Beads issues, or harness todos. The conversation is the plan artifact.
|
|
54
|
+
|
|
55
|
+
**Tell the human:** "Inline Plan ready for review."
|
|
56
|
+
|
|
57
|
+
**STOP. Wait for human review.**
|
|
58
|
+
|
|
59
|
+
If the human requests changes, revise the plan in conversation and present the complete
|
|
60
|
+
plan again. Do not implement until the human explicitly approves it. A material scope
|
|
61
|
+
change after approval also requires a revised plan and renewed approval.
|
|
62
|
+
|
|
63
|
+
Approval authorizes implementation. Implement the approved conversational plan directly using
|
|
64
|
+
the Inline execution safeguards in `spec-orchestrator`. Do not invoke `spec-implement`,
|
|
65
|
+
`spec-finish`, `code-subagents`, or task tracking.
|
|
66
|
+
|
|
67
|
+
Do not create planning artifacts or tracker entries during this handoff.
|
|
68
|
+
|
|
69
|
+
## Spec-backed Plan Artifacts
|
|
20
70
|
|
|
21
71
|
```
|
|
22
72
|
docs/specs/YYYY-MM-DD-<feature-name>/
|
|
@@ -103,7 +153,7 @@ structured plan.json when approved.
|
|
|
103
153
|
|
|
104
154
|
---
|
|
105
155
|
|
|
106
|
-
## Step 1: Write the Plan Draft
|
|
156
|
+
## Spec-backed Step 1: Write the Plan Draft
|
|
107
157
|
|
|
108
158
|
Read the approved design.md, then write a plan as a markdown section in the same
|
|
109
159
|
document or as a separate draft.
|
|
@@ -146,7 +196,7 @@ Each task should take 15-60 minutes. If larger, decompose into smaller tasks.
|
|
|
146
196
|
|
|
147
197
|
---
|
|
148
198
|
|
|
149
|
-
## Step 2: The Annotation Cycle
|
|
199
|
+
## Spec-backed Step 2: The Annotation Cycle
|
|
150
200
|
|
|
151
201
|
The human annotates the plan draft directly — adding corrections, rejections, domain
|
|
152
202
|
knowledge, business constraints, or "remove this entirely."
|
|
@@ -178,14 +228,15 @@ explicitly approves it.
|
|
|
178
228
|
|
|
179
229
|
---
|
|
180
230
|
|
|
181
|
-
## Step 3: Create Structured Tasks
|
|
231
|
+
## Spec-backed Step 3: Create Structured Tasks
|
|
182
232
|
|
|
183
233
|
When the human approves — "looks good", "approved", "create tasks" — convert the plan
|
|
184
234
|
into plan.json.
|
|
185
235
|
|
|
186
236
|
### Task Tracking
|
|
187
237
|
|
|
188
|
-
|
|
238
|
+
Create tracker entries when they add execution value. For multi-task or dependency-ordered
|
|
239
|
+
work, **prefer beads**:
|
|
189
240
|
```bash
|
|
190
241
|
# Create epic and tasks with dependencies
|
|
191
242
|
bd create "Feature: {name}" --label {feature} --type epic
|
|
@@ -193,15 +244,15 @@ bd create "Task: {name}" --label {feature} --type task --epic {epic-id}
|
|
|
193
244
|
bd dep add --type blocks {task-a} {task-b} # task-a blocks task-b
|
|
194
245
|
```
|
|
195
246
|
|
|
196
|
-
|
|
197
|
-
|
|
247
|
+
If tracking is useful and beads is unavailable, use the harness's native todo system.
|
|
248
|
+
Do not duplicate a simple plan.json into a tracker merely to satisfy the workflow.
|
|
198
249
|
|
|
199
250
|
### What to do
|
|
200
251
|
|
|
201
252
|
1. Convert the annotated plan draft into structured plan.json
|
|
202
253
|
2. Each task maps to a unit with inputs, description, files, and validation
|
|
203
254
|
3. Dependencies between tasks are captured in `depends_on` fields
|
|
204
|
-
4.
|
|
255
|
+
4. When execution benefits from task tracking, create tasks using beads or harness todos:
|
|
205
256
|
- Create an epic/feature container
|
|
206
257
|
- Add tasks per phase with clear descriptions
|
|
207
258
|
- Mark dependencies between tasks (beads: `bd dep add`, harness: manual ordering)
|
|
@@ -221,11 +272,12 @@ After creating plan.json, verify:
|
|
|
221
272
|
|
|
222
273
|
## Handoff
|
|
223
274
|
|
|
224
|
-
When plan.json is created and
|
|
275
|
+
When plan.json is created, and any useful tracker entries have been created, the next
|
|
276
|
+
step is **spec-implement** in Spec-backed mode.
|
|
225
277
|
|
|
226
278
|
Tell the human:
|
|
227
279
|
|
|
228
|
-
> "Plan is approved
|
|
280
|
+
> "Spec-backed Plan is approved. Ready to start implementation?"
|
|
229
281
|
>
|
|
230
282
|
> **Autonomous** — I'll work through all tasks, only stopping if blocked.
|
|
231
283
|
>
|
|
@@ -240,9 +292,11 @@ loop back to research. See **spec-orchestrator** for iteration patterns.
|
|
|
240
292
|
|
|
241
293
|
## Quick Reference
|
|
242
294
|
|
|
243
|
-
|
|
|
244
|
-
|
|
245
|
-
| "write a plan"
|
|
246
|
-
| "I added notes" |
|
|
247
|
-
|
|
|
248
|
-
|
|
|
295
|
+
| Selected mode / human says | You do |
|
|
296
|
+
|----------------------------|--------|
|
|
297
|
+
| Inline / "write a plan" | Present the five-section Inline Plan, stop |
|
|
298
|
+
| Inline / "I added notes" | Revise and re-present the complete Inline Plan |
|
|
299
|
+
| Inline / "approved" | Implement the approved conversational plan directly; create no artifacts |
|
|
300
|
+
| Spec-backed / "write a plan" | Write the plan draft from design.md, stop |
|
|
301
|
+
| Spec-backed / "I added notes" | Re-read, address all notes, do NOT implement |
|
|
302
|
+
| Spec-backed / "approved" / "create tasks" | Create plan.json and useful task tracking |
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
# Code Quality Reviewer Prompt Template
|
|
2
|
-
|
|
3
|
-
Dispatch after the spec compliance review passes (✅). Verifies the implementation is
|
|
4
|
-
well-built — clean, tested, maintainable.
|
|
5
|
-
|
|
6
|
-
**Only dispatch after spec compliance is confirmed.**
|
|
7
|
-
|
|
8
|
-
## Template
|
|
9
|
-
|
|
10
|
-
```
|
|
11
|
-
You are reviewing code quality for Task {TASK_ID}: {TASK_NAME}
|
|
12
|
-
|
|
13
|
-
## What Was Implemented
|
|
14
|
-
|
|
15
|
-
{From implementer's report — what they built}
|
|
16
|
-
|
|
17
|
-
## Requirements Reference
|
|
18
|
-
|
|
19
|
-
Task {TASK_ID} from {PLAN_FILE_PATH}
|
|
20
|
-
|
|
21
|
-
## Diff Range
|
|
22
|
-
|
|
23
|
-
Base: {BASE_SHA} (commit before task)
|
|
24
|
-
Head: {HEAD_SHA} (current commit)
|
|
25
|
-
|
|
26
|
-
## Your Job
|
|
27
|
-
|
|
28
|
-
Review the implementation for quality:
|
|
29
|
-
|
|
30
|
-
1. Does the code follow existing patterns and conventions in the codebase?
|
|
31
|
-
2. Are tests meaningful (not just asserting true or testing mocks)?
|
|
32
|
-
3. Is there unnecessary complexity?
|
|
33
|
-
4. Are edge cases handled?
|
|
34
|
-
5. Is the code clean (no dead code, no unnecessary comments, clear naming)?
|
|
35
|
-
6. Are the right things tested at the right boundaries (unit vs integration)?
|
|
36
|
-
|
|
37
|
-
## Issue Severity
|
|
38
|
-
|
|
39
|
-
- **Critical** — Blocks merge. Bugs, security issues, broken tests, missing error handling.
|
|
40
|
-
- **Important** — Should fix. Magic numbers, unclear naming, missing edge cases, poor test design.
|
|
41
|
-
- **Minor** — Nice to have. Style preferences, minor refactors, documentation suggestions.
|
|
42
|
-
|
|
43
|
-
## Report
|
|
44
|
-
|
|
45
|
-
- **Strengths:** What was done well
|
|
46
|
-
- **Issues:** List with severity (Critical / Important / Minor) and file:line references
|
|
47
|
-
- **Assessment:** Approved, Approved with minor issues, or Changes requested
|
|
48
|
-
```
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
# Spec Compliance Reviewer Prompt Template
|
|
2
|
-
|
|
3
|
-
Dispatch after the implementer completes a task. Verifies the implementation matches what
|
|
4
|
-
was specified — nothing more, nothing less.
|
|
5
|
-
|
|
6
|
-
**Dispatch this BEFORE the code quality review.**
|
|
7
|
-
|
|
8
|
-
## Template
|
|
9
|
-
|
|
10
|
-
```
|
|
11
|
-
You are reviewing whether an implementation matches its specification.
|
|
12
|
-
|
|
13
|
-
## What Was Requested
|
|
14
|
-
|
|
15
|
-
{FULL TEXT of task requirements from plan.json}
|
|
16
|
-
|
|
17
|
-
## What Implementer Claims They Built
|
|
18
|
-
|
|
19
|
-
{From implementer's report}
|
|
20
|
-
|
|
21
|
-
## CRITICAL: Do Not Trust the Report
|
|
22
|
-
|
|
23
|
-
The implementer's report may be incomplete, inaccurate, or optimistic. You MUST verify
|
|
24
|
-
everything independently.
|
|
25
|
-
|
|
26
|
-
**DO NOT:**
|
|
27
|
-
- Take their word for what they implemented
|
|
28
|
-
- Trust their claims about completeness
|
|
29
|
-
- Accept their interpretation of requirements
|
|
30
|
-
|
|
31
|
-
**DO:**
|
|
32
|
-
- Read the actual code they wrote
|
|
33
|
-
- Compare actual implementation to requirements line by line
|
|
34
|
-
- Check for missing pieces they claimed to implement
|
|
35
|
-
- Look for extra features they didn't mention
|
|
36
|
-
|
|
37
|
-
## Your Job
|
|
38
|
-
|
|
39
|
-
Read the implementation code and verify:
|
|
40
|
-
|
|
41
|
-
**Missing requirements:**
|
|
42
|
-
- Did they implement everything that was requested?
|
|
43
|
-
- Are there requirements they skipped or missed?
|
|
44
|
-
- Did they claim something works but didn't actually implement it?
|
|
45
|
-
|
|
46
|
-
**Extra/unneeded work:**
|
|
47
|
-
- Did they build things that weren't requested?
|
|
48
|
-
- Did they over-engineer or add unnecessary features?
|
|
49
|
-
- Did they add "nice to haves" that weren't in spec?
|
|
50
|
-
|
|
51
|
-
**Misunderstandings:**
|
|
52
|
-
- Did they interpret requirements differently than intended?
|
|
53
|
-
- Did they solve the wrong problem?
|
|
54
|
-
- Did they implement the right feature but the wrong way?
|
|
55
|
-
|
|
56
|
-
**Verify by reading code, not by trusting the report.**
|
|
57
|
-
|
|
58
|
-
## Report
|
|
59
|
-
|
|
60
|
-
- ✅ Spec compliant (if everything matches after code inspection)
|
|
61
|
-
- ❌ Issues found: [list specifically what's missing or extra, with file:line references]
|
|
62
|
-
```
|