@martinffx/atelier 1.4.0 → 3.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 +38 -0
- package/README.md +95 -220
- 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/atelier-orchestrator/SKILL.md +180 -0
- package/skills/atelier-setup/SKILL.md +80 -0
- package/skills/code-review/SKILL.md +2 -2
- package/skills/code-review/references/reviewers.md +3 -3
- package/skills/code-review/references/rq.md +9 -9
- 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 +21 -16
- package/skills/spec-finish/SKILL.md +14 -14
- package/skills/spec-implement/SKILL.md +42 -42
- package/skills/spec-plan/SKILL.md +72 -26
- package/skills/spec-plan/references/plan_template.md +77 -0
- package/skills/code-subagents/references/code-quality-reviewer-prompt.md +0 -48
- package/skills/code-subagents/references/spec-reviewer-prompt.md +0 -62
- package/skills/python-architecture/SKILL.md +0 -148
- package/skills/python-architecture/references/data-modeling.md +0 -558
- package/skills/python-architecture/references/ddd.md +0 -569
- package/skills/python-architecture/references/functional-core.md +0 -337
- package/skills/python-build-tools/SKILL.md +0 -153
- package/skills/python-build-tools/references/basedpyright.md +0 -321
- package/skills/python-build-tools/references/ruff.md +0 -225
- package/skills/python-build-tools/references/uv.md +0 -257
- package/skills/python-fastapi/SKILL.md +0 -184
- package/skills/python-fastapi/references/api-design.md +0 -563
- package/skills/python-fastapi/references/dependencies.md +0 -479
- package/skills/python-fastapi/references/middleware.md +0 -475
- package/skills/python-fastapi/references/validation.md +0 -497
- package/skills/python-modern-python/SKILL.md +0 -201
- package/skills/python-modern-python/references/async.md +0 -76
- package/skills/python-modern-python/references/pattern-matching.md +0 -89
- package/skills/python-modern-python/references/typing.md +0 -96
- package/skills/python-monorepo/SKILL.md +0 -146
- package/skills/python-monorepo/references/docker.md +0 -515
- package/skills/python-monorepo/references/namespace-packages.md +0 -426
- package/skills/python-monorepo/references/workspace-config.md +0 -341
- package/skills/python-sqlalchemy/SKILL.md +0 -119
- package/skills/python-sqlalchemy/references/async.md +0 -51
- package/skills/python-sqlalchemy/references/models.md +0 -67
- package/skills/python-sqlalchemy/references/queries.md +0 -57
- package/skills/python-temporal/SKILL.md +0 -128
- package/skills/python-temporal/references/patterns.md +0 -87
- package/skills/python-temporal/references/testing.md +0 -54
- package/skills/python-testing/SKILL.md +0 -161
- package/skills/python-testing/references/boundaries.md +0 -449
- package/skills/python-testing/references/mocking.md +0 -449
- package/skills/python-testing/references/pytest.md +0 -524
- package/skills/spec-orchestrator/SKILL.md +0 -145
- package/skills/typescript-api-design/SKILL.md +0 -396
- package/skills/typescript-api-design/references/error-responses.md +0 -469
- package/skills/typescript-build-tools/SKILL.md +0 -447
- package/skills/typescript-build-tools/references/biome.md +0 -436
- package/skills/typescript-build-tools/references/bun.md +0 -432
- package/skills/typescript-build-tools/references/turborepo.md +0 -426
- package/skills/typescript-build-tools/references/vitest.md +0 -518
- package/skills/typescript-drizzle-orm/SKILL.md +0 -398
- package/skills/typescript-drizzle-orm/references/cloudflare.md +0 -392
- package/skills/typescript-drizzle-orm/references/entity-pattern.md +0 -412
- package/skills/typescript-drizzle-orm/references/postgresql.md +0 -191
- package/skills/typescript-drizzle-orm/references/repository-pattern.md +0 -479
- package/skills/typescript-drizzle-orm/references/sqlite.md +0 -291
- package/skills/typescript-dynamodb-toolbox/SKILL.md +0 -370
- package/skills/typescript-dynamodb-toolbox/references/entity-layer.md +0 -574
- package/skills/typescript-dynamodb-toolbox/references/error-handling.md +0 -495
- package/skills/typescript-dynamodb-toolbox/references/modeling.md +0 -332
- package/skills/typescript-dynamodb-toolbox/references/repository-layer.md +0 -631
- package/skills/typescript-dynamodb-toolbox/references/testing.md +0 -718
- package/skills/typescript-dynamodb-toolbox/references/transactions.md +0 -423
- package/skills/typescript-effect-ts/SKILL.md +0 -341
- package/skills/typescript-effect-ts/references/core.md +0 -412
- package/skills/typescript-effect-ts/references/error-handling.md +0 -468
- package/skills/typescript-effect-ts/references/resources.md +0 -476
- package/skills/typescript-effect-ts/references/schema.md +0 -536
- package/skills/typescript-effect-ts/references/services.md +0 -461
- package/skills/typescript-fastify/SKILL.md +0 -405
- package/skills/typescript-fastify/references/plugins.md +0 -329
- package/skills/typescript-fastify/references/typeid.md +0 -315
- package/skills/typescript-functional-patterns/SKILL.md +0 -402
- package/skills/typescript-functional-patterns/references/adts.md +0 -497
- package/skills/typescript-functional-patterns/references/branded-types.md +0 -542
- package/skills/typescript-functional-patterns/references/migration-guide.md +0 -695
- package/skills/typescript-functional-patterns/references/option-result.md +0 -585
- package/skills/typescript-testing/SKILL.md +0 -353
- package/skills/typescript-testing/references/mocking.md +0 -675
- package/skills/typescript-testing/references/msw.md +0 -852
- package/skills/typescript-testing/references/snapshot-testing.md +0 -774
|
@@ -673,7 +673,7 @@ prompt: |
|
|
|
673
673
|
|
|
674
674
|
YOUR FIRST TASK - LOOK FOR RELEVANT SKILLS:
|
|
675
675
|
As a Security Reviewer, look for relevant language, framework, testing, architecture, security, or tooling skills before reviewing.
|
|
676
|
-
Load relevant
|
|
676
|
+
Load relevant installed language, framework, testing, architecture, security, or tooling skills.
|
|
677
677
|
If no relevant skill is available or a skill cannot be loaded, continue with this reviewer prompt.
|
|
678
678
|
Failure to find or load a skill is not a review failure.
|
|
679
679
|
|
|
@@ -719,7 +719,7 @@ prompt: |
|
|
|
719
719
|
|
|
720
720
|
YOUR FIRST TASK - LOOK FOR RELEVANT SKILLS:
|
|
721
721
|
As a Correctness Reviewer, look for relevant language, framework, testing, architecture, security, or tooling skills before reviewing.
|
|
722
|
-
Load relevant
|
|
722
|
+
Load relevant installed language, framework, testing, architecture, security, or tooling skills.
|
|
723
723
|
If no relevant skill is available or a skill cannot be loaded, continue with this reviewer prompt.
|
|
724
724
|
Failure to find or load a skill is not a review failure.
|
|
725
725
|
|
|
@@ -755,7 +755,7 @@ prompt: |
|
|
|
755
755
|
|
|
756
756
|
YOUR FIRST TASK - LOOK FOR RELEVANT SKILLS:
|
|
757
757
|
As a PerformanceOperator Reviewer, look for relevant language, framework, testing, architecture, security, or tooling skills before reviewing.
|
|
758
|
-
Load relevant
|
|
758
|
+
Load relevant installed language, framework, testing, architecture, security, or tooling skills.
|
|
759
759
|
If no relevant skill is available or a skill cannot be loaded, continue with this reviewer prompt.
|
|
760
760
|
Failure to find or load a skill is not a review failure.
|
|
761
761
|
|
|
@@ -34,12 +34,12 @@ Capture the list of changed files and the full diff.
|
|
|
34
34
|
|
|
35
35
|
**Purpose:** Analyze diff to determine context, select reviewers, identify relevant skills to look for.
|
|
36
36
|
|
|
37
|
-
**Uses:** `
|
|
37
|
+
**Uses:** `sentinel` agent.
|
|
38
38
|
|
|
39
39
|
### Subagent Invocation
|
|
40
40
|
|
|
41
41
|
```yaml
|
|
42
|
-
subagent_type:
|
|
42
|
+
subagent_type: sentinel
|
|
43
43
|
description: "Triage diff for code review"
|
|
44
44
|
prompt: |
|
|
45
45
|
Analyze this code diff to determine review needs.
|
|
@@ -67,8 +67,8 @@ prompt: |
|
|
|
67
67
|
- Reviewers should load relevant skills that are available.
|
|
68
68
|
- If no relevant skill is available, reviewers continue with their reviewer prompt.
|
|
69
69
|
- Failure to find or load a skill is not a review failure.
|
|
70
|
-
- TypeScript →
|
|
71
|
-
- Python →
|
|
70
|
+
- TypeScript → installed TypeScript language, testing, and framework skills
|
|
71
|
+
- Python → installed Python language, testing, and framework skills
|
|
72
72
|
- Rust → rust-specific skills if available
|
|
73
73
|
- Go → go-specific skills if available
|
|
74
74
|
|
|
@@ -81,7 +81,7 @@ prompt: |
|
|
|
81
81
|
"domain": "web-api|frontend|database|..."
|
|
82
82
|
},
|
|
83
83
|
"reviewers": ["Security", "Correctness"],
|
|
84
|
-
"skills_to_load": ["
|
|
84
|
+
"skills_to_load": ["relevant installed testing skill"]
|
|
85
85
|
}
|
|
86
86
|
```
|
|
87
87
|
|
|
@@ -93,7 +93,7 @@ prompt: |
|
|
|
93
93
|
{
|
|
94
94
|
"context": { "language": "typescript", "framework": "fastify", "domain": "web-api" },
|
|
95
95
|
"reviewers": ["Security", "Correctness", "PerformanceOperator"],
|
|
96
|
-
"skills_to_load": ["
|
|
96
|
+
"skills_to_load": ["relevant installed testing skill"]
|
|
97
97
|
}
|
|
98
98
|
```
|
|
99
99
|
|
|
@@ -114,7 +114,7 @@ Reviewer names are prompt personas, not subagent types. Do not use `general`, `S
|
|
|
114
114
|
Before dispatching reviewers, the detected relevant skills are passed to each reviewer as best-effort guidance:
|
|
115
115
|
```json
|
|
116
116
|
{
|
|
117
|
-
"skills_to_load": ["
|
|
117
|
+
"skills_to_load": ["relevant installed testing skill"]
|
|
118
118
|
}
|
|
119
119
|
```
|
|
120
120
|
|
|
@@ -263,7 +263,7 @@ prompt: |
|
|
|
263
263
|
|
|
264
264
|
**PRE-STEP: Look for Relevant Skills**
|
|
265
265
|
Before reviewing, look for relevant architecture and language architecture skills.
|
|
266
|
-
Load relevant
|
|
266
|
+
Load relevant installed language, framework, testing, architecture, security, or tooling skills.
|
|
267
267
|
If no relevant skill is available or a skill cannot be loaded, continue with this architect prompt.
|
|
268
268
|
Failure to find or load a skill is not a review failure.
|
|
269
269
|
|
|
@@ -364,7 +364,7 @@ Display findings in terminal per [output.md](./output.md).
|
|
|
364
364
|
| Step | Subagent | Uses | Parallel? | Purpose |
|
|
365
365
|
|------|----------|------|----------|---------|
|
|
366
366
|
| 1 | Get Diff | inline | — | `git diff <branch>` |
|
|
367
|
-
| 2 | Triage | `
|
|
367
|
+
| 2 | Triage | `sentinel` agent | No | Detect context, select reviewers, identify relevant skills to look for |
|
|
368
368
|
| 3 | Reviewers | `oracle` agent | Yes (per reviewer) | Specialty analysis |
|
|
369
369
|
| 4 | Synthesis | inline | No | Deduplicate and group |
|
|
370
370
|
| 5 | Architect | `architect` agent | No | Architecture review |
|
|
@@ -1,25 +1,23 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: code-subagents
|
|
3
3
|
description: >
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
and integration of results. Trigger when executing plan tasks with subagent support, when
|
|
8
|
-
facing 2+ independent problems, or when the user asks to use subagents for implementation.
|
|
4
|
+
Implementation subagent dispatch patterns. Use when independent implementation work is
|
|
5
|
+
available and subagents can execute it. Covers parallel dispatch, shared-tree patch
|
|
6
|
+
snapshots, one combined review per completed batch, and serial integration.
|
|
9
7
|
user-invocable: false
|
|
10
8
|
---
|
|
11
9
|
|
|
12
|
-
#
|
|
10
|
+
# Implementation Subagents
|
|
13
11
|
|
|
14
|
-
Fresh subagent per task.
|
|
15
|
-
when dependent.
|
|
12
|
+
Fresh subagent per task. One combined review per completed batch. Parallel when independent,
|
|
13
|
+
sequential when dependent.
|
|
16
14
|
|
|
17
15
|
## When to Use Subagents
|
|
18
16
|
|
|
19
17
|
**Use when:**
|
|
20
|
-
-
|
|
21
|
-
-
|
|
22
|
-
- Each problem can be understood without context from
|
|
18
|
+
- 2+ independent work items do not share state or files
|
|
19
|
+
- Each work item has explicit requirements, constraints, files, and validation
|
|
20
|
+
- Each problem can be understood without context from the other work items
|
|
23
21
|
|
|
24
22
|
**Don't use when:**
|
|
25
23
|
- Tasks are tightly coupled (editing the same files)
|
|
@@ -53,6 +51,13 @@ Task C (notification tests) ──→ review → complete
|
|
|
53
51
|
**Independence check:** Would fixing Task A affect Task B? Would they edit the same files?
|
|
54
52
|
If no to both, dispatch in parallel.
|
|
55
53
|
|
|
54
|
+
For shared-tree parallel work:
|
|
55
|
+
|
|
56
|
+
1. Assign each task an exclusive file list before dispatch
|
|
57
|
+
2. Do not let implementers stage or commit changes
|
|
58
|
+
3. Capture a path-scoped `git diff` for each task when it reports completion
|
|
59
|
+
4. Run tasks sequentially if their file ownership overlaps or cannot be isolated
|
|
60
|
+
|
|
56
61
|
---
|
|
57
62
|
|
|
58
63
|
## Prompt Templates
|
|
@@ -60,15 +65,14 @@ If no to both, dispatch in parallel.
|
|
|
60
65
|
Use these templates when dispatching subagents. Each template is battle-tested — don't
|
|
61
66
|
improvise, use them as-is and fill in the variables.
|
|
62
67
|
|
|
63
|
-
- **[references/
|
|
64
|
-
- **[references/
|
|
65
|
-
- **[references/code-quality-reviewer-prompt.md](references/code-quality-reviewer-prompt.md)** — Code quality review. Critical/Important/Minor severity.
|
|
68
|
+
- **[references/implementor-prompt.md](references/implementor-prompt.md)** — Dispatch an implementer. Includes self-review checklist.
|
|
69
|
+
- **[references/batch-reviewer-prompt.md](references/batch-reviewer-prompt.md)** — Combined plan and code-quality review for one completed batch.
|
|
66
70
|
|
|
67
71
|
### Prompt quality rules
|
|
68
72
|
|
|
69
73
|
- **Focused** — one task, one problem domain
|
|
70
|
-
- **Self-contained** — all context needed is in the prompt.
|
|
71
|
-
|
|
74
|
+
- **Self-contained** — all context needed is in the prompt. Provide the complete work-item
|
|
75
|
+
requirements; do not make the subagent recover context
|
|
72
76
|
- **Specific about files** — exact paths, not "the relevant files"
|
|
73
77
|
- **Specific about output** — what should the subagent return?
|
|
74
78
|
- **Constrained** — what should they NOT touch?
|
|
@@ -84,63 +88,30 @@ improvise, use them as-is and fill in the variables.
|
|
|
84
88
|
|
|
85
89
|
---
|
|
86
90
|
|
|
87
|
-
##
|
|
88
|
-
|
|
89
|
-
Every completed task gets two reviews in order. Do not skip either. Do not reverse the order.
|
|
90
|
-
|
|
91
|
-
### Stage 1: Spec Compliance
|
|
92
|
-
|
|
93
|
-
Does the implementation match what was specified?
|
|
91
|
+
## Batch Review
|
|
94
92
|
|
|
95
|
-
|
|
96
|
-
## Spec Review
|
|
93
|
+
Run one combined review after every completed batch, not separate reviews for each task.
|
|
97
94
|
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
**Task spec:** [paste task from plan.json]
|
|
101
|
-
|
|
102
|
-
**Files changed:** [list from subagent output]
|
|
103
|
-
|
|
104
|
-
Check:
|
|
105
|
-
1. Are all requirements from the task spec implemented?
|
|
106
|
-
2. Is anything implemented that wasn't specified? (over-building)
|
|
107
|
-
3. Do tests cover the specified acceptance criteria?
|
|
108
|
-
4. Does the implementation match the design in design.md?
|
|
109
|
-
|
|
110
|
-
Report: List any gaps or extras. Mark ✅ if compliant, ❌ if not.
|
|
111
|
-
```
|
|
95
|
+
Give one fresh reviewer:
|
|
112
96
|
|
|
113
|
-
|
|
114
|
-
|
|
97
|
+
- The complete requirements for work items in the batch
|
|
98
|
+
- The relevant constraints
|
|
99
|
+
- The path-scoped patch captured for each task
|
|
100
|
+
- The implementers' reports and validation results
|
|
115
101
|
|
|
116
|
-
|
|
102
|
+
The reviewer checks both requirements compliance and code quality:
|
|
117
103
|
|
|
118
|
-
|
|
104
|
+
1. Every requirement and acceptance criterion is implemented
|
|
105
|
+
2. The batch follows the supplied constraints
|
|
106
|
+
3. No unrequested work or out-of-scope files are included
|
|
107
|
+
4. Tests are meaningful and cover the right boundaries
|
|
108
|
+
5. The code follows existing patterns without unnecessary complexity
|
|
119
109
|
|
|
120
|
-
|
|
121
|
-
## Code Quality Review
|
|
110
|
+
Use [references/batch-reviewer-prompt.md](references/batch-reviewer-prompt.md) as written.
|
|
122
111
|
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
Check:
|
|
128
|
-
1. Does the code follow existing patterns and conventions?
|
|
129
|
-
2. Are tests meaningful (not just asserting true)?
|
|
130
|
-
3. Is there unnecessary complexity?
|
|
131
|
-
4. Are edge cases handled?
|
|
132
|
-
5. Is the code clean (no dead code, no unnecessary comments)?
|
|
133
|
-
|
|
134
|
-
Rate issues as Critical (blocks merge), Important (should fix), or Minor (nice to have).
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
If the quality reviewer finds Critical or Important issues → implementer fixes → reviewer
|
|
138
|
-
reviews again. Minor issues can be noted and moved past.
|
|
139
|
-
|
|
140
|
-
### Why this order matters
|
|
141
|
-
|
|
142
|
-
Spec compliance first because there's no point polishing code that doesn't meet the spec.
|
|
143
|
-
Quality second because compliant code still needs to be well-built.
|
|
112
|
+
If the reviewer finds Critical or Important issues, send each issue back to the relevant
|
|
113
|
+
implementer, refresh its path-scoped patch, and review the batch again. Minor issues may be
|
|
114
|
+
noted and moved past.
|
|
144
115
|
|
|
145
116
|
---
|
|
146
117
|
|
|
@@ -161,9 +132,11 @@ they're thinking rather than guessing.
|
|
|
161
132
|
After subagents complete (especially parallel dispatch):
|
|
162
133
|
|
|
163
134
|
1. **Read each summary** — understand what changed
|
|
164
|
-
2. **
|
|
165
|
-
3. **
|
|
166
|
-
4. **
|
|
135
|
+
2. **Capture task patches** — use each task's exclusive file list
|
|
136
|
+
3. **Review the batch** — one combined requirements and quality review
|
|
137
|
+
4. **Run full test suite** — verify all changes work together
|
|
138
|
+
5. **Commit** — the coordinator commits the reviewed batch serially
|
|
139
|
+
6. **Update progress tracking** — when the caller uses it
|
|
167
140
|
|
|
168
141
|
If there are conflicts between parallel results, resolve them manually. Don't dispatch
|
|
169
142
|
another subagent to merge — that requires too much context.
|
|
@@ -176,9 +149,5 @@ If a subagent fails a task:
|
|
|
176
149
|
|
|
177
150
|
- **Don't fix it manually** — that pollutes your context
|
|
178
151
|
- **Dispatch a fix subagent** with specific instructions about what went wrong
|
|
179
|
-
- **If it fails twice**, stop and escalate to the human. The
|
|
180
|
-
|
|
181
|
-
If failure reveals a design problem:
|
|
182
|
-
|
|
183
|
-
> "This task is failing because [reason]. The design in design.md may need to change.
|
|
184
|
-
> Want me to go back to spec-brainstorm?"
|
|
152
|
+
- **If it fails twice**, stop and escalate to the human. The requirements or constraints may
|
|
153
|
+
need revision.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Batch Reviewer Prompt Template
|
|
2
|
+
|
|
3
|
+
Use this template after all tasks in an implementation batch report completion. Review the
|
|
4
|
+
captured task patches, not a commit range.
|
|
5
|
+
|
|
6
|
+
## Template
|
|
7
|
+
|
|
8
|
+
```
|
|
9
|
+
You are reviewing one completed implementation batch for requirements compliance and code quality.
|
|
10
|
+
|
|
11
|
+
## Batch Requirements
|
|
12
|
+
|
|
13
|
+
{BATCH_REQUIREMENTS}
|
|
14
|
+
|
|
15
|
+
## Constraints
|
|
16
|
+
|
|
17
|
+
{CONSTRAINTS}
|
|
18
|
+
|
|
19
|
+
## Task Patches
|
|
20
|
+
|
|
21
|
+
{BATCH_PATCHES}
|
|
22
|
+
|
|
23
|
+
## Implementer Reports and Validation
|
|
24
|
+
|
|
25
|
+
{IMPLEMENTER_REPORTS}
|
|
26
|
+
|
|
27
|
+
## CRITICAL: Verify the Patches
|
|
28
|
+
|
|
29
|
+
Do not trust the implementer reports. Review the captured patches and relevant code directly.
|
|
30
|
+
|
|
31
|
+
Check:
|
|
32
|
+
1. Every requirement and acceptance criterion is implemented
|
|
33
|
+
2. The implementation follows the supplied constraints
|
|
34
|
+
3. No unrequested work or out-of-scope files are included
|
|
35
|
+
4. Tests are meaningful and cover the right boundaries
|
|
36
|
+
5. The code follows existing patterns without unnecessary complexity
|
|
37
|
+
6. Error cases and edge conditions are handled
|
|
38
|
+
|
|
39
|
+
## Report
|
|
40
|
+
|
|
41
|
+
- **Strengths:** What was done well
|
|
42
|
+
- **Issues:** Critical, Important, or Minor findings with file:line references and fixes
|
|
43
|
+
- **Assessment:** Approved, Approved with minor issues, or Changes requested
|
|
44
|
+
```
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
# Implementer Prompt Template
|
|
2
2
|
|
|
3
|
-
Use this template when dispatching an implementer subagent. Paste the
|
|
4
|
-
|
|
3
|
+
Use this template when dispatching an implementer subagent. Paste the complete work-item
|
|
4
|
+
requirements. Do not make the subagent recover context.
|
|
5
5
|
|
|
6
6
|
## Template
|
|
7
7
|
|
|
8
8
|
```
|
|
9
|
-
You are implementing
|
|
9
|
+
You are implementing {WORK_ITEM_NAME}
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## Work Item Requirements
|
|
12
12
|
|
|
13
|
-
{
|
|
13
|
+
{WORK_ITEM_REQUIREMENTS}
|
|
14
14
|
|
|
15
15
|
## Context
|
|
16
16
|
|
|
17
|
-
{Scene-setting: where this fits in the
|
|
18
|
-
|
|
17
|
+
{Scene-setting: where this fits in the work, what was built before it, constraints, and
|
|
18
|
+
existing patterns to follow}
|
|
19
19
|
|
|
20
20
|
## Before You Begin
|
|
21
21
|
|
|
@@ -33,9 +33,8 @@ Once you're clear on requirements:
|
|
|
33
33
|
1. Implement exactly what the task specifies
|
|
34
34
|
2. Write tests following TDD (failing test → verify fail → implement → verify pass)
|
|
35
35
|
3. Verify implementation works
|
|
36
|
-
4.
|
|
37
|
-
5.
|
|
38
|
-
6. Report back
|
|
36
|
+
4. Self-review (see below)
|
|
37
|
+
5. Report back. Do not commit; the coordinator integrates and commits reviewed work serially.
|
|
39
38
|
|
|
40
39
|
Work from: {WORKING_DIRECTORY}
|
|
41
40
|
|
|
@@ -47,7 +46,7 @@ It's always OK to pause and clarify. Don't guess or make assumptions.
|
|
|
47
46
|
Review your work with fresh eyes:
|
|
48
47
|
|
|
49
48
|
**Completeness:**
|
|
50
|
-
- Did I fully implement
|
|
49
|
+
- Did I fully implement every requirement?
|
|
51
50
|
- Did I miss any requirements?
|
|
52
51
|
- Are there edge cases I didn't handle?
|
|
53
52
|
|
|
@@ -1,23 +1,27 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: spec-brainstorm
|
|
3
3
|
description: >
|
|
4
|
-
Conversational design workshop for
|
|
4
|
+
Conversational design workshop for substantial work. Interviews the human one question
|
|
5
5
|
at a time, explores 2-3 approaches with trade-offs, and presents the design
|
|
6
6
|
section by section for approval before writing the spec. Combines requirements
|
|
7
7
|
discovery with codebase research and architecture design.
|
|
8
|
-
Use when the user
|
|
9
|
-
|
|
8
|
+
Use when the user explicitly requests a spec or when atelier-orchestrator selects a
|
|
9
|
+
Spec-backed Plan. Ambiguous design or discovery requests route through atelier-orchestrator.
|
|
10
10
|
user-invocable: true
|
|
11
11
|
argument-hint: <topic or feature description>
|
|
12
12
|
---
|
|
13
13
|
|
|
14
14
|
# Spec Brainstorm
|
|
15
15
|
|
|
16
|
-
Conversational design workshop that produces a focused, reviewed spec.
|
|
16
|
+
Conversational design workshop for substantial work that produces a focused, reviewed spec.
|
|
17
17
|
|
|
18
18
|
One question at a time. Multiple approaches explored. Design approved in
|
|
19
19
|
sections. Ruthless scope control. No implementation until design is approved.
|
|
20
20
|
|
|
21
|
+
Run this skill only after `atelier-orchestrator` selects a Spec-backed Plan or the human
|
|
22
|
+
explicitly requests a spec. Bounded work should go directly to `spec-plan` for an Inline
|
|
23
|
+
Plan. Do not reclassify the planning mode here.
|
|
24
|
+
|
|
21
25
|
## Artifact
|
|
22
26
|
|
|
23
27
|
```
|
|
@@ -33,11 +37,11 @@ Requirements are inline — no separate requirements.json needed.
|
|
|
33
37
|
|
|
34
38
|
These principles apply to every spec, every time.
|
|
35
39
|
|
|
36
|
-
###
|
|
40
|
+
### Specs must earn their cost
|
|
37
41
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
Persisted specs are for work whose discovery, architecture, dependencies, or coordination
|
|
43
|
+
needs justify a durable artifact. Do not pull bounded work into this workflow merely because
|
|
44
|
+
it touches multiple files or takes time. That work belongs in an Inline Plan.
|
|
41
45
|
|
|
42
46
|
### Design for isolation and clarity
|
|
43
47
|
|
|
@@ -54,8 +58,9 @@ changes.
|
|
|
54
58
|
### Decomposition
|
|
55
59
|
|
|
56
60
|
If the request describes multiple independent subsystems, flag it immediately. Decompose
|
|
57
|
-
into sub-projects before diving into details. Each sub-project gets its own spec
|
|
58
|
-
|
|
61
|
+
into sub-projects before diving into details. Each substantial sub-project gets its own spec
|
|
62
|
+
and plan; bounded sub-projects can use Inline Plans. A spec that tries to cover three
|
|
63
|
+
subsystems helps no one.
|
|
59
64
|
|
|
60
65
|
### YAGNI ruthlessly
|
|
61
66
|
|
|
@@ -210,7 +215,7 @@ with acceptance criteria and priorities. If rejected: revise. If the rejection
|
|
|
210
215
|
reveals a scope misunderstanding, loop back to Discovery (Step 2).
|
|
211
216
|
|
|
212
217
|
**Batch B: Architecture** — component design, domain modeling, and layer
|
|
213
|
-
boundaries. Use
|
|
218
|
+
boundaries. Use installed language-specific architecture or API-design skills as relevant to
|
|
214
219
|
your stack. Then present: component structure, domain model, where business
|
|
215
220
|
logic lives, where IO lives. If rejected: revise. If the rejection undermines
|
|
216
221
|
the chosen approach, offer to return to approach exploration (4a). If it
|
|
@@ -330,16 +335,16 @@ note them at handoff.
|
|
|
330
335
|
**Tell the human:**
|
|
331
336
|
|
|
332
337
|
> "Spec written to `docs/specs/<path>`. Every section was approved during our
|
|
333
|
-
> conversation
|
|
334
|
-
>
|
|
338
|
+
> conversation - review it if you'd like, or we can go straight to the
|
|
339
|
+
> Spec-backed Plan. Ready for spec-plan?"
|
|
335
340
|
|
|
336
341
|
If the human requests changes — in conversation or by annotating the file —
|
|
337
342
|
address every note, update the spec, and re-run the self-review. If a change
|
|
338
343
|
alters the substance of an approved section, re-present that section for
|
|
339
344
|
approval before continuing.
|
|
340
345
|
|
|
341
|
-
The next step is **spec-plan
|
|
342
|
-
go-ahead. Do not write code.
|
|
346
|
+
The next step is **spec-plan** in Spec-backed mode. Do not start planning without the
|
|
347
|
+
human's go-ahead. Do not write code.
|
|
343
348
|
|
|
344
|
-
If planning reveals design flaws, loop back to research. See **
|
|
349
|
+
If planning reveals design flaws, loop back to research. See **atelier-orchestrator**
|
|
345
350
|
for iteration patterns.
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: spec-finish
|
|
3
3
|
description: >
|
|
4
|
-
Post-implementation completion workflow. Use after spec-implement
|
|
5
|
-
review, create stacked commits, and open a PR via code-pull-request.
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
Post-implementation completion workflow for Spec-backed Plans. Use after spec-implement
|
|
5
|
+
completes to validate, review, create stacked commits, and open a PR via code-pull-request.
|
|
6
|
+
Triggers only with an active Spec-backed Plan after spec-implement completes, including when
|
|
7
|
+
the user says "finish", "done", or "complete" in that context.
|
|
8
8
|
user-invocable: true
|
|
9
9
|
---
|
|
10
10
|
|
|
@@ -15,11 +15,11 @@ Post-implementation workflow: validate → review → stack commits → prepare
|
|
|
15
15
|
## Prerequisites
|
|
16
16
|
|
|
17
17
|
Before starting, verify:
|
|
18
|
-
1. All
|
|
18
|
+
1. All Spec-backed Plan tasks are complete
|
|
19
19
|
2. Working directory is clean (committed or staged)
|
|
20
20
|
3. Tests pass
|
|
21
21
|
|
|
22
|
-
If not complete
|
|
22
|
+
If not complete, go back to `spec-implement`.
|
|
23
23
|
|
|
24
24
|
---
|
|
25
25
|
|
|
@@ -61,7 +61,7 @@ npm run build
|
|
|
61
61
|
go build ./...
|
|
62
62
|
```
|
|
63
63
|
|
|
64
|
-
**If any fail:** Return to spec-implement to fix.
|
|
64
|
+
**If any fail:** Return to `spec-implement` to fix.
|
|
65
65
|
|
|
66
66
|
**If all pass:** Proceed.
|
|
67
67
|
|
|
@@ -78,8 +78,8 @@ Use the Skill tool to invoke code-review skill for comprehensive code review.
|
|
|
78
78
|
- No debug code left
|
|
79
79
|
|
|
80
80
|
### If code-review finds issues
|
|
81
|
-
-
|
|
82
|
-
-
|
|
81
|
+
- Minor fixes may be made here, then re-validated and reviewed.
|
|
82
|
+
- Blocking or scope-changing fixes return to `spec-implement`.
|
|
83
83
|
|
|
84
84
|
---
|
|
85
85
|
|
|
@@ -114,8 +114,8 @@ Use the Skill tool to invoke code-review skill for comprehensive code review.
|
|
|
114
114
|
## Step 5: Open the PR
|
|
115
115
|
|
|
116
116
|
Steps 1-4 (validate, review, stack commits, update docs) must all be complete
|
|
117
|
-
before proceeding. **If code-review found blocking issues, stop
|
|
118
|
-
spec-implement to fix them. Do not proceed to Step 5b.**
|
|
117
|
+
before proceeding. **If code-review found blocking or scope-changing issues, stop and return
|
|
118
|
+
to spec-implement to fix them. Do not proceed to Step 5b.**
|
|
119
119
|
|
|
120
120
|
### Step 5a: Present Completion Summary
|
|
121
121
|
|
|
@@ -157,6 +157,6 @@ This skill orchestrates other skills:
|
|
|
157
157
|
|
|
158
158
|
## When NOT to Use
|
|
159
159
|
|
|
160
|
-
- If implementation still in progress
|
|
161
|
-
- If tests failing
|
|
162
|
-
- If review found blocking issues
|
|
160
|
+
- If implementation is still in progress, use spec-implement
|
|
161
|
+
- If tests are failing, go back to spec-implement
|
|
162
|
+
- If review found blocking or scope-changing issues, go back to spec-implement
|