@kodevibe/harness 0.8.4 → 0.9.1
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/README.ko.md +101 -109
- package/README.md +100 -102
- package/harness/agent-memory/architect.md +2 -2
- package/harness/agent-memory/{sprint-manager.md → lead.md} +4 -4
- package/harness/agent-memory/{planner.md → pm.md} +3 -3
- package/harness/agent-memory/reviewer.md +5 -5
- package/harness/agents/architect.md +9 -9
- package/harness/agents/{sprint-manager.md → lead.md} +24 -24
- package/harness/agents/{planner.md → pm.md} +98 -24
- package/harness/agents/reviewer.md +19 -19
- package/harness/core-rules.md +40 -40
- package/harness/dependency-map.md +2 -2
- package/harness/failure-patterns.md +4 -4
- package/harness/features.md +3 -3
- package/harness/project-brief.md +11 -11
- package/harness/project-state.md +5 -5
- package/harness/skills/{feature-breakdown.md → breakdown.md} +8 -8
- package/harness/skills/{impact-analysis.md → check-impact.md} +5 -5
- package/harness/skills/{investigate.md → debug.md} +8 -8
- package/harness/skills/pivot.md +4 -4
- package/harness/skills/{code-review-pr.md → pr-review.md} +4 -4
- package/harness/skills/{deployment.md → release.md} +8 -8
- package/harness/skills/{bootstrap.md → setup.md} +16 -16
- package/harness/skills/{learn.md → wrap-up.md} +12 -12
- package/package.json +1 -1
- package/src/init.js +22 -22
- /package/harness/skills/{security-checklist.md → secure.md} +0 -0
- /package/harness/skills/{test-integrity.md → sync-tests.md} +0 -0
package/README.md
CHANGED
|
@@ -9,67 +9,33 @@
|
|
|
9
9
|
[](https://github.com/AIDD-Projects/harness/actions/workflows/ci.yml)
|
|
10
10
|
[](https://opensource.org/licenses/MIT)
|
|
11
11
|
|
|
12
|
-
**
|
|
12
|
+
> **Your AI coding agent forgets everything between sessions. kode:harness makes it remember — goals, decisions, failures, and project direction.**
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
Production-grade guardrails for AI coding agents. Prevents context rot, enforces project direction, and persists state across sessions. Works with **Copilot, Claude, Cursor, Codex, Windsurf, and Gemini**. Zero dependencies.
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
## From Harness to Enterprise Harness Engineering
|
|
19
|
-
|
|
20
|
-
The concept of an AI "harness" — structured markdown files that guide LLM coding agents — has become a foundational pattern in AI-assisted development. Frameworks like BMAD, gstack, and GSD pioneered this approach for **solo developers**.
|
|
21
|
-
|
|
22
|
-
This approach takes harness engineering beyond solo tooling. It evolves the harness concept into an **enterprise-grade direction management method** for both multi-developer teams and solo developers. **kode:harness** is the product form of that approach.
|
|
23
|
-
|
|
24
|
-
| | Traditional Harness | kode:harness + harness engineering |
|
|
25
|
-
|---|---|---|
|
|
26
|
-
| Target | Solo developer | **Multi-developer teams** |
|
|
27
|
-
| Focus | What the AI does | **Where the AI is going** |
|
|
28
|
-
| Direction management | ❌ | ✅ Direction Guard + pivot + Decision Log |
|
|
29
|
-
| Team state sharing | ❌ | ✅ Shared/personal state separation |
|
|
30
|
-
| Token budget | 200+ files | **~25 files (~17K tokens)** — works with small LLMs too |
|
|
31
|
-
|
|
32
|
-
## The Problem
|
|
33
|
-
|
|
34
|
-
When one developer uses an AI coding assistant, direction stays consistent. But in **enterprise teams**, each developer runs their own AI sessions — and each AI drifts independently. Developer A's AI refactors toward microservices while Developer B's AI doubles down on the monolith. Without shared direction management, **AI agents across multiple developers pull the project apart.**
|
|
35
|
-
|
|
36
|
-
kode:harness solves this. It gives every developer's AI the same goals, non-goals, decisions, and project state — so all AI sessions converge on **one direction**, regardless of who's coding or which IDE they use.
|
|
37
|
-
|
|
38
|
-
## What It Does
|
|
39
|
-
|
|
40
|
-
kode:harness manages your **project's direction** — goals, decisions, scope — so LLM coding agents stay aligned **across developers and sessions**. Zero dependencies, 6 IDE support, native format generation. The underlying approach is harness engineering for multi-developer and enterprise-grade execution.
|
|
41
|
-
|
|
42
|
-
- **Direction Guard** — Every coding request is checked against project goals/non-goals before execution
|
|
43
|
-
- **Navigation Dispatcher** — 🧭 Turn-by-Turn navigation guides developers through 5 pipelines with explicit next-step prompts
|
|
44
|
-
- **5 Pipelines** — 🟢 New Dev → 🟕 Continue → 🟤 Bug Fix → 🟡 Direction Change → 🟣 Crew-Driven (external planning artifact integration)
|
|
45
|
-
- **Crew Artifact Integration** — Reads external planning output (PRD, Architecture, ARB Checklist) directly — no manual copy needed
|
|
46
|
-
- **State Files** — 5 markdown files that persist project knowledge across LLM sessions
|
|
47
|
-
- **Skills** — Step-by-step procedures for planning, review, debugging, and direction changes
|
|
48
|
-
- **Agents** — Role-based personas that enforce the workflow (planner, reviewer, sprint-manager)
|
|
49
|
-
- **Failure Patterns** — Project-specific failure log that prevents repeat mistakes
|
|
50
|
-
- **Decision Log** — Records why decisions were made so LLMs don't re-debate settled choices
|
|
16
|
+
---
|
|
51
17
|
|
|
52
18
|
## Quick Start
|
|
53
19
|
|
|
54
20
|
```bash
|
|
55
|
-
#
|
|
56
|
-
npx @kodevibe/harness init
|
|
57
|
-
|
|
58
|
-
# Team mode (multi-developer)
|
|
59
|
-
npx @kodevibe/harness init --team
|
|
21
|
+
npx @kodevibe/harness init # pick your IDE
|
|
60
22
|
```
|
|
61
23
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
> "Run bootstrap to onboard this project."
|
|
24
|
+
```bash
|
|
25
|
+
# Then tell your AI agent:
|
|
26
|
+
> "Run setup to onboard this project."
|
|
27
|
+
```
|
|
67
28
|
|
|
68
|
-
|
|
29
|
+
That's it. Your AI now has persistent memory, direction guardrails, and self-correction loops.
|
|
69
30
|
|
|
70
|
-
|
|
31
|
+
<details>
|
|
32
|
+
<summary>More install options</summary>
|
|
71
33
|
|
|
72
34
|
```bash
|
|
35
|
+
# Team mode (multi-developer direction alignment)
|
|
36
|
+
npx @kodevibe/harness init --team
|
|
37
|
+
|
|
38
|
+
# Non-interactive (CI/scripts)
|
|
73
39
|
npx @kodevibe/harness init --ide vscode
|
|
74
40
|
npx @kodevibe/harness init --ide claude
|
|
75
41
|
npx @kodevibe/harness init --ide cursor
|
|
@@ -78,8 +44,6 @@ npx @kodevibe/harness init --ide windsurf
|
|
|
78
44
|
npx @kodevibe/harness init --ide antigravity
|
|
79
45
|
```
|
|
80
46
|
|
|
81
|
-
### Options
|
|
82
|
-
|
|
83
47
|
| Flag | Description |
|
|
84
48
|
|------|-------------|
|
|
85
49
|
| `--ide <name>` | Target IDE: `vscode`, `claude`, `cursor`, `codex`, `windsurf`, `antigravity` |
|
|
@@ -90,28 +54,59 @@ npx @kodevibe/harness init --ide antigravity
|
|
|
90
54
|
| `--overwrite` | Overwrite existing files (including state files) |
|
|
91
55
|
| `--version` | Show version number |
|
|
92
56
|
|
|
93
|
-
|
|
57
|
+
</details>
|
|
94
58
|
|
|
95
|
-
|
|
96
|
-
# Verify kode:harness files are installed
|
|
97
|
-
npx @kodevibe/harness doctor
|
|
59
|
+
---
|
|
98
60
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
61
|
+
## The Problem: Context Rot
|
|
62
|
+
|
|
63
|
+
Your AI coding agent starts every session from zero. By session 3, it's forgotten the architecture decisions from session 1. By session 10, it's re-debating settled choices and contradicting its own earlier work.
|
|
64
|
+
|
|
65
|
+
In teams, it's worse — Developer A's AI refactors toward microservices while Developer B's AI doubles down on the monolith. **Without shared guardrails, AI agents pull the project apart.**
|
|
66
|
+
|
|
67
|
+
kode:harness solves this with three mechanisms:
|
|
68
|
+
|
|
69
|
+
| Mechanism | What it prevents |
|
|
70
|
+
|-----------|-----------------|
|
|
71
|
+
| **State Persistence** | AI forgetting goals, decisions, and progress between sessions |
|
|
72
|
+
| **Direction Guard** | AI drifting away from project goals or contradicting past decisions |
|
|
73
|
+
| **Failure Patterns** | AI repeating the same mistakes across sessions |
|
|
102
74
|
|
|
103
|
-
|
|
75
|
+
---
|
|
104
76
|
|
|
105
|
-
|
|
77
|
+
## Why not just...?
|
|
106
78
|
|
|
107
|
-
|
|
|
108
|
-
|
|
109
|
-
|
|
|
110
|
-
|
|
|
111
|
-
|
|
|
112
|
-
|
|
|
79
|
+
| Approach | Limitation | kode:harness difference |
|
|
80
|
+
|----------|-----------|------------------------|
|
|
81
|
+
| **`.cursorrules` / `copilot-instructions.md`** | Static. No state persistence, no self-correction, no cross-session memory. | Living state files that update every session. Direction Guard checks every request against goals. |
|
|
82
|
+
| **LangChain / CrewAI** | Runtime orchestration for building AI apps. Not for directing AI coding agents. | Markdown-native guardrails that work inside your IDE. No runtime, no SDK. |
|
|
83
|
+
| **BMAD / gstack / GSD** | Built for solo developers. 200+ files. No direction management. | ~25 files (~17K tokens). Direction Guard + Decision Log. Multi-developer team support. |
|
|
84
|
+
| **"I'll just be careful"** | Works until you forget. LLMs don't learn from past sessions. | Automated: `wrap-up` captures lessons, `debug` tracks failures, `reviewer` audits state. |
|
|
113
85
|
|
|
114
|
-
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## What It Does
|
|
89
|
+
|
|
90
|
+
| Feature | Description |
|
|
91
|
+
|---------|-------------|
|
|
92
|
+
| 🛡️ **Direction Guard** | Every coding request is checked against project goals/non-goals before execution |
|
|
93
|
+
| 🧭 **Navigation Dispatcher** | Turn-by-Turn navigation through 5 pipelines with copy-paste next-step prompts |
|
|
94
|
+
| 📝 **State Persistence** | 5 markdown files that persist project knowledge across LLM sessions |
|
|
95
|
+
| 🔄 **5 Pipelines** | 🟢 New Dev → 🔵 Continue → 🔴 Bug Fix → 🟡 Direction Change → 🟣 Crew-Driven |
|
|
96
|
+
| 🛠️ **10 Skills** | Step-by-step procedures: setup, debug, breakdown, review, pivot, and more |
|
|
97
|
+
| 🤖 **4 Agents** | Role-based personas: pm, reviewer, lead, architect |
|
|
98
|
+
| ⚠️ **Failure Patterns** | Project-specific failure log that prevents repeat mistakes across sessions |
|
|
99
|
+
| 📋 **Decision Log** | Records why decisions were made so LLMs don't re-debate settled choices |
|
|
100
|
+
| 🟣 **Crew Artifact Integration** | Reads external planning output (PRD, Architecture, ARB Checklist) directly |
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Health Check
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
npx @kodevibe/harness doctor # verify files are installed
|
|
108
|
+
npx @kodevibe/harness validate # verify state files have real content
|
|
109
|
+
```
|
|
115
110
|
|
|
116
111
|
## Supported IDEs
|
|
117
112
|
|
|
@@ -132,21 +127,21 @@ All IDEs also get state files (`project-state.md`, `project-brief.md`, `features
|
|
|
132
127
|
- **Core Rules** — 136-line dispatcher: session start guidance, workflow references, state file list, and Iron Laws. Detailed rules are embedded in each skill/agent that enforces them.
|
|
133
128
|
|
|
134
129
|
### Skills (on-demand procedures)
|
|
135
|
-
- **
|
|
136
|
-
- **
|
|
130
|
+
- **setup** — Onboard project into kode:harness: scans codebase + fills state files automatically
|
|
131
|
+
- **wrap-up** — End-of-session wrap-up: captures failure patterns, updates project state, detects direction drift
|
|
137
132
|
- **pivot** — Propagate direction changes across all state files when goals/tech/scope changes
|
|
138
|
-
- **
|
|
139
|
-
- **
|
|
140
|
-
- **
|
|
141
|
-
- **impact
|
|
142
|
-
- **
|
|
143
|
-
- **
|
|
144
|
-
- **
|
|
133
|
+
- **sync-tests** — Verify mock/interface synchronization before committing
|
|
134
|
+
- **secure** — Pre-commit security risk scan
|
|
135
|
+
- **debug** — 4-phase systematic debugging (evidence → scope → fix → verify)
|
|
136
|
+
- **check-impact** — Assess change blast radius before modifying shared modules
|
|
137
|
+
- **breakdown** — Decompose features into dependency-ordered implementation tasks
|
|
138
|
+
- **pr-review** — Review incoming Pull Requests for quality, security, and direction alignment
|
|
139
|
+
- **release** — Pre-release validation checklist (tests, state files, security, versioning)
|
|
145
140
|
|
|
146
141
|
### Agents (role-based personas)
|
|
147
|
-
- **
|
|
142
|
+
- **pm** — Feature planning, dependency analysis, Direction Alignment (goal/non-goal/decision check)
|
|
148
143
|
- **reviewer** — Code review + State File Audit (verifies state files were actually updated)
|
|
149
|
-
- **
|
|
144
|
+
- **lead** — Sprint/Story state management, scope drift prevention, Next Step Recommendation
|
|
150
145
|
- **architect** — Design review gate: validates structural changes against project direction and module boundaries
|
|
151
146
|
|
|
152
147
|
### State Files (project memory)
|
|
@@ -159,7 +154,7 @@ All IDEs also get state files (`project-state.md`, `project-brief.md`, `features
|
|
|
159
154
|
## How It Works
|
|
160
155
|
|
|
161
156
|
### 1. Bootstrap (once)
|
|
162
|
-
After `harness init`, run the `
|
|
157
|
+
After `harness init`, run the `setup` skill. It scans your codebase, interviews you about goals/non-goals, and fills all 5 state files automatically. **This is the most important step** — without it, Direction Guard and other skills have no context.
|
|
163
158
|
|
|
164
159
|
### 2. Direction Guard (every request)
|
|
165
160
|
Before ANY coding task, the LLM reads `project-brief.md` and checks:
|
|
@@ -169,26 +164,26 @@ Before ANY coding task, the LLM reads `project-brief.md` and checks:
|
|
|
169
164
|
|
|
170
165
|
### 3. Workflow Pipeline
|
|
171
166
|
```
|
|
172
|
-
|
|
167
|
+
setup → pm → [code] → reviewer → lead → wrap-up
|
|
173
168
|
```
|
|
174
169
|
|
|
175
170
|
kode:harness provides **5 pipelines** for different scenarios:
|
|
176
171
|
|
|
177
172
|
| Pipeline | When | Flow |
|
|
178
173
|
|---|---|---|
|
|
179
|
-
| 🟢 New Dev | First feature |
|
|
180
|
-
| 🔵 Continue | Resuming work |
|
|
181
|
-
| 🔴 Bug Fix | Debugging |
|
|
182
|
-
| 🟡 Direction Change | Goals/tech shift | pivot →
|
|
183
|
-
| 🟣 Crew-Driven | With external planning artifacts |
|
|
174
|
+
| 🟢 New Dev | First feature | setup → pm → lead → [code] → reviewer → wrap-up |
|
|
175
|
+
| 🔵 Continue | Resuming work | lead → [code] → reviewer → wrap-up |
|
|
176
|
+
| 🔴 Bug Fix | Debugging | debug → [fix] → reviewer → wrap-up |
|
|
177
|
+
| 🟡 Direction Change | Goals/tech shift | pivot → pm → lead → [code] → reviewer → wrap-up |
|
|
178
|
+
| 🟣 Crew-Driven | With external planning artifacts | setup(crew) → pm → lead → [code] → reviewer → wrap-up |
|
|
184
179
|
|
|
185
180
|
Each step ends with a 🧭 **Navigation block** telling you exactly what to do next — including the prompt to type.
|
|
186
181
|
|
|
187
|
-
- **
|
|
182
|
+
- **pm**: Checks direction alignment, breaks down features. **Confirm-First gate** — won't proceed without your approval.
|
|
188
183
|
- **reviewer**: Reviews code + audits state file updates
|
|
189
|
-
- **
|
|
190
|
-
- **
|
|
191
|
-
- **
|
|
184
|
+
- **lead**: Tracks progress via **Wave-Level Pacing** — runs tests between implementation waves
|
|
185
|
+
- **wrap-up**: Captures lessons before session ends
|
|
186
|
+
- **debug**: **Recalculating Mode** — after 3 failed attempts, proposes alternative approaches
|
|
192
187
|
|
|
193
188
|
### 4. Direction Changes
|
|
194
189
|
When goals, technology, or scope changes, run the `pivot` skill:
|
|
@@ -227,24 +222,26 @@ These 8 rules are enforced across all skills and agents. They form the quality b
|
|
|
227
222
|
|
|
228
223
|
| # | Law | Enforced By |
|
|
229
224
|
|---|-----|-------------|
|
|
230
|
-
| 1 | **Mock Sync** — Interface change → update mocks in the same commit | `reviewer`, `
|
|
225
|
+
| 1 | **Mock Sync** — Interface change → update mocks in the same commit | `reviewer`, `sync-tests` |
|
|
231
226
|
| 2 | **Type Check** — Read the source before calling constructors. Never trust memory. | `reviewer` |
|
|
232
|
-
| 3 | **Scope Compliance** — Stay within current Story scope. Report before modifying out-of-scope files. | `
|
|
233
|
-
| 4 | **Security** — No credentials, passwords, or API keys in code or commits. | `
|
|
227
|
+
| 3 | **Scope Compliance** — Stay within current Story scope. Report before modifying out-of-scope files. | `lead`, `reviewer` |
|
|
228
|
+
| 4 | **Security** — No credentials, passwords, or API keys in code or commits. | `secure`, `reviewer` |
|
|
234
229
|
| 5 | **3-Failure Stop** — Same approach fails 3 times → stop and report. | All agents |
|
|
235
|
-
| 6 | **Dependency Map** — New/modified module → update `dependency-map.md` in the same commit. | `reviewer`, `
|
|
236
|
-
| 7 | **Feature Registry** — New feature → register in `features.md` in the same commit. | `reviewer`, `
|
|
237
|
-
| 8 | **Session Handoff** — Session end → update `project-state.md` Quick Summary. | `
|
|
230
|
+
| 6 | **Dependency Map** — New/modified module → update `dependency-map.md` in the same commit. | `reviewer`, `wrap-up` |
|
|
231
|
+
| 7 | **Feature Registry** — New feature → register in `features.md` in the same commit. | `reviewer`, `wrap-up` |
|
|
232
|
+
| 8 | **Session Handoff** — Session end → update `project-state.md` Quick Summary. | `wrap-up` |
|
|
238
233
|
|
|
239
234
|
## Documentation
|
|
240
235
|
|
|
241
236
|
See [docs/reference.md](docs/reference.md) for detailed descriptions of every skill, agent, rule, and state file.
|
|
242
237
|
|
|
243
|
-
## Why
|
|
238
|
+
## Why We Built This
|
|
239
|
+
|
|
240
|
+
Existing AI coding frameworks focus on **what the AI does** — generate code, run tests, deploy. But the real problem isn't capability. It's **direction**.
|
|
244
241
|
|
|
245
|
-
|
|
242
|
+
When one developer uses AI, direction stays consistent. But in teams, each developer's AI drifts independently. And even solo developers lose direction across sessions — what we call **Context Rot**. The AI forgets architecture decisions, re-debates settled choices, and contradicts its own earlier work.
|
|
246
243
|
|
|
247
|
-
|
|
244
|
+
kode:harness focuses on **where the AI is going**. It gives every AI session — across developers, across IDEs, across time — the same goals, decisions, and project state. The underlying discipline is **harness engineering**: lightweight, markdown-native guardrails that any LLM can read.
|
|
248
245
|
|
|
249
246
|
### Crew Artifact Integration (🟣 Pipeline)
|
|
250
247
|
|
|
@@ -262,7 +259,7 @@ Bootstrap auto-detects crew artifacts in `docs/crew/`, `docs/PM/`, `docs/Analyst
|
|
|
262
259
|
|
|
263
260
|
Original crew documents are **never modified**. Only the index and tracker are created.
|
|
264
261
|
|
|
265
|
-
###
|
|
262
|
+
### How It Compares
|
|
266
263
|
|
|
267
264
|
| | BMAD v6.2.2 | gstack v0.15.1 | GSD v1.33.0 | kode:harness |
|
|
268
265
|
|---|---|---|---|---|
|
|
@@ -272,19 +269,20 @@ Original crew documents are **never modified**. Only the index and tracker are c
|
|
|
272
269
|
| IDE support | 20+ (installer) | 5 (setup --host) | 13 (runtime select) | 6 (native format) |
|
|
273
270
|
| Direction management | ❌ | ❌ | ❌ | ✅ (Direction Guard + pivot + Decision Log) |
|
|
274
271
|
| Iron Laws (code quality rules) | ❌ | ❌ | ❌ | ✅ (8 laws embedded in skills) |
|
|
275
|
-
| Cold start | ❌ | ❌ | `/gsd-new-project` | ✅ (`
|
|
272
|
+
| Cold start | ❌ | ❌ | `/gsd-new-project` | ✅ (`setup` skill) |
|
|
276
273
|
| Context per task | 4-6 files | 1 file | Fresh 200k per plan | 2-3 files (136-line dispatcher) |
|
|
277
274
|
|
|
278
275
|
## Roadmap
|
|
279
276
|
|
|
280
|
-
kode:harness is at **v0.
|
|
277
|
+
kode:harness is at **v0.9.0** — naming redesign complete, 6 IDE support, Navigation Dispatcher and Crew Artifact Integration stable.
|
|
281
278
|
|
|
282
279
|
| Phase | Version | Status | Focus |
|
|
283
280
|
|---|---|---|---|
|
|
284
281
|
| **Foundation** | v0.5.0 | ✅ Done | Core framework: 6 IDE support, 8 skills, 3 agents, Team Mode, Direction Guard |
|
|
285
282
|
| **Hardening** | v0.6.5 | ✅ Done | 10 skills, 4 agents, Iron Laws, CLI batch/doctor/validate, merge conflict SOP, direction drift detection |
|
|
286
283
|
| **Flexibility** | v0.7.x | ✅ Done | Delegate team conventions to project-brief.md, remove prescriptive rules |
|
|
287
|
-
| **Navigation** | v0.8.x | ✅
|
|
284
|
+
| **Navigation** | v0.8.x | ✅ Done | 🧭 Navigation Dispatcher, 5 Pipelines, Crew Artifact Integration, 100-point quality audit, Confirm-First gate, Wave-Level Pacing, Recalculating Mode |
|
|
285
|
+
| **Naming** | v0.9.0 | ✅ Current | Skill/agent naming redesign for clarity and discoverability |
|
|
288
286
|
| **Validation** | v1.0 | 🔜 Next | Real-world project adoption, user feedback collection |
|
|
289
287
|
|
|
290
288
|
### What's Next
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Architect Memory
|
|
2
2
|
|
|
3
|
-
> Auto-updated by the `
|
|
3
|
+
> Auto-updated by the `wrap-up` skill at session end. Do not edit manually.
|
|
4
4
|
> **Initialization**: After the first architecture review, replace placeholder comments below with real data.
|
|
5
5
|
> **Update trigger**: Only updated when the `architect` agent runs. If architect was not invoked this session, this file stays unchanged.
|
|
6
6
|
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
<!-- Record anti-patterns with severity, detection method, and prevention.
|
|
28
28
|
Format: Pattern — Severity (HIGH/MED/LOW) — Detection — Resolution — Prevention
|
|
29
29
|
Examples:
|
|
30
|
-
- Circular dep auth↔user — HIGH — dependency-map bidirectional check — extracted shared types — run impact
|
|
30
|
+
- Circular dep auth↔user — HIGH — dependency-map bidirectional check — extracted shared types — run check-impact before interface changes
|
|
31
31
|
- God module in utils/ (800+ lines) — MED — file size check — decompose into auth-utils, date-utils, string-utils — enforce max 200 lines per module
|
|
32
32
|
-->
|
|
33
33
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Sprint Manager Memory
|
|
2
2
|
|
|
3
|
-
> Auto-updated by the `
|
|
3
|
+
> Auto-updated by the `wrap-up` skill at session end. Do not edit manually.
|
|
4
4
|
> **Initialization**: After the first sprint completes, replace placeholder comments below with real data.
|
|
5
|
-
> **Update trigger**: Updated when `
|
|
5
|
+
> **Update trigger**: Updated when `wrap-up` skill runs after sprint management actions.
|
|
6
6
|
|
|
7
7
|
## Velocity Tracking
|
|
8
8
|
|
|
@@ -12,13 +12,13 @@
|
|
|
12
12
|
- [Sprint 1] 3/5 (60%) — ramp-up phase, scope adjusted mid-sprint
|
|
13
13
|
- [Sprint 2] 4/4 (100%) — right-sized after Sprint 1 calibration
|
|
14
14
|
- [Sprint 3] 5/5 (100%) — team rhythm established
|
|
15
|
-
Benchmark: Set after 3+ sprints. If rate < 50% for 2 consecutive sprints → flag in
|
|
15
|
+
Benchmark: Set after 3+ sprints. If rate < 50% for 2 consecutive sprints → flag in lead recommendations.
|
|
16
16
|
Average velocity: recalculate after each sprint (e.g., "Average: 4.0 stories/sprint after 3 sprints")
|
|
17
17
|
-->
|
|
18
18
|
|
|
19
19
|
## Scope Drift History
|
|
20
20
|
|
|
21
|
-
<!-- Record scope violations caught by
|
|
21
|
+
<!-- Record scope violations caught by lead or reviewer.
|
|
22
22
|
Format: [Story ID] Drift type — Files affected — Resolution
|
|
23
23
|
Examples:
|
|
24
24
|
- [S1-003] Out-of-scope modification — 3 files in auth/ (not in story scope) — reverted, created new story S1-005
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Planner Memory
|
|
2
2
|
|
|
3
|
-
> Auto-updated by the `
|
|
3
|
+
> Auto-updated by the `wrap-up` skill at session end. Do not edit manually.
|
|
4
4
|
> **Initialization**: After the first sprint completes, replace placeholder comments below with real data.
|
|
5
|
-
> **Update trigger**: Updated when `
|
|
5
|
+
> **Update trigger**: Updated when `wrap-up` skill runs after a pm session.
|
|
6
6
|
|
|
7
7
|
## Estimation Accuracy
|
|
8
8
|
|
|
@@ -43,5 +43,5 @@
|
|
|
43
43
|
- [Sprint 1] Planned: 5, Done: 3, Rate: 60% — ramp-up phase, team unfamiliar with codebase
|
|
44
44
|
- [Sprint 2] Planned: 4, Done: 4, Rate: 100% — right-sized after Sprint 1 data
|
|
45
45
|
- [Sprint 3] Planned: 4, Done: 5, Rate: 125% — acceleration, consider planning 5 next sprint
|
|
46
|
-
Benchmark: After 3+ sprints, calculate average rate. If < 60% for 2 consecutive sprints →
|
|
46
|
+
Benchmark: After 3+ sprints, calculate average rate. If < 60% for 2 consecutive sprints → debug causes
|
|
47
47
|
-->
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Reviewer Memory
|
|
2
2
|
|
|
3
|
-
> Auto-updated by the `
|
|
3
|
+
> Auto-updated by the `wrap-up` skill at session end. Do not edit manually.
|
|
4
4
|
> **Initialization**: After the first code review, replace placeholder comments below with real data.
|
|
5
|
-
> **Update trigger**: Updated when `
|
|
5
|
+
> **Update trigger**: Updated when `wrap-up` skill runs after a reviewer session.
|
|
6
6
|
|
|
7
7
|
## Project-Specific Review Patterns
|
|
8
8
|
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
Format: Pattern — Location — Severity — Prevention
|
|
11
11
|
Examples:
|
|
12
12
|
- SQL injection risk in src/api/routes/ — req.params used directly — HIGH — add parameterized query wrapper
|
|
13
|
-
- Mock sync miss rate 50% — interface changes in src/domain/ — HIGH — run
|
|
13
|
+
- Mock sync miss rate 50% — interface changes in src/domain/ — HIGH — run sync-tests skill pre-commit
|
|
14
14
|
- Hardcoded timeout 5000ms in tests — tests/integration/ — LOW — extract to test config
|
|
15
15
|
-->
|
|
16
16
|
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
- Escalations: 0
|
|
33
33
|
<!-- Track ratios after 5+ reviews:
|
|
34
34
|
- Auto-fix rate: auto-fixes / total issues (if > 30% → consider automating those checks)
|
|
35
|
-
- Escalation rate: escalations / total reviews (if > 20% →
|
|
35
|
+
- Escalation rate: escalations / total reviews (if > 20% → debug root cause)
|
|
36
36
|
-->
|
|
37
37
|
|
|
38
38
|
## Test Failure Patterns
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
<!-- Track which test patterns commonly fail during reviews.
|
|
41
41
|
Format: Pattern — Frequency — Root Cause — Mitigation
|
|
42
42
|
Examples:
|
|
43
|
-
- Mock method missing after interface change — 4/10 reviews — FP-001 — run
|
|
43
|
+
- Mock method missing after interface change — 4/10 reviews — FP-001 — run sync-tests pre-commit
|
|
44
44
|
- Async test timeout — 2/10 reviews — missing await — enforce eslint no-floating-promises
|
|
45
45
|
- Snapshot mismatch after UI change — 3/10 reviews — stale snapshots — update snapshots in same commit
|
|
46
46
|
-->
|
|
@@ -9,12 +9,12 @@ The Architect is invoked when changes affect multiple modules, introduce new lay
|
|
|
9
9
|
## Invoked By
|
|
10
10
|
|
|
11
11
|
- **User** (direct) — "아키텍처 리뷰해줘", "설계 검토해줘"
|
|
12
|
-
- **
|
|
12
|
+
- **pm** (optional) — when proposed changes affect 3+ modules or introduce new layers
|
|
13
13
|
|
|
14
14
|
## Referenced Skills
|
|
15
15
|
|
|
16
|
-
- impact
|
|
17
|
-
-
|
|
16
|
+
- check-impact — Change blast radius assessment
|
|
17
|
+
- breakdown — Task decomposition for structural changes
|
|
18
18
|
|
|
19
19
|
## Referenced Files
|
|
20
20
|
|
|
@@ -45,7 +45,7 @@ Before proceeding, verify that required state files have content:
|
|
|
45
45
|
- `docs/dependency-map.md` — Must have at least one module row (for existing projects)
|
|
46
46
|
- `docs/project-brief.md` — Must have Vision and Goals filled
|
|
47
47
|
|
|
48
|
-
If `docs/project-brief.md` has no Vision/Goals filled OR `docs/dependency-map.md` has zero module rows → **Stop and run the `
|
|
48
|
+
If `docs/project-brief.md` has no Vision/Goals filled OR `docs/dependency-map.md` has zero module rows → **Stop and run the `setup` skill first.** Report: "State files are empty. Running setup to onboard this project."
|
|
49
49
|
|
|
50
50
|
**Step 0.1: Circular Dependency Check**
|
|
51
51
|
|
|
@@ -85,7 +85,7 @@ Apply these insights when evaluating the current proposal. If the memory file is
|
|
|
85
85
|
4. If misaligned → **warn and recommend `pivot` before proceeding**
|
|
86
86
|
|
|
87
87
|
**Step 3: Impact Analysis**
|
|
88
|
-
1. Run `impact
|
|
88
|
+
1. Run `check-impact` skill on all affected modules
|
|
89
89
|
2. Identify:
|
|
90
90
|
- Modules that will be modified
|
|
91
91
|
- Modules that depend on modified modules (ripple effect)
|
|
@@ -140,7 +140,7 @@ After architecture review completes, always append a 🧭 block:
|
|
|
140
140
|
|
|
141
141
|
| Architect Result | 🧭 Next Step |
|
|
142
142
|
|---|---|
|
|
143
|
-
| APPROVE | `
|
|
143
|
+
| APPROVE | `pm` — "승인된 설계로 기능을 계획해줘" |
|
|
144
144
|
| REVISE | [Redesign] — "설계를 수정하고 다시 `architect` 호출" |
|
|
145
145
|
| REJECT | User decision — "설계가 반려되었습니다. 대안을 논의합시다" |
|
|
146
146
|
| Direction misaligned | `pivot` — "방향을 전환하고 state 파일을 업데이트해줘" |
|
|
@@ -149,10 +149,10 @@ Example 🧭 block for APPROVE:
|
|
|
149
149
|
```
|
|
150
150
|
---
|
|
151
151
|
🧭 Next Step
|
|
152
|
-
→ Next: `
|
|
152
|
+
→ Next: `pm`
|
|
153
153
|
→ Prompt: "승인된 설계로 기능을 계획해줘"
|
|
154
154
|
→ Why: Architecture approved — proceed to feature planning
|
|
155
|
-
→ Pipeline: 🟢 Pre-pipeline (leads to
|
|
155
|
+
→ Pipeline: 🟢 Pre-pipeline (leads to pm Step 2/6)
|
|
156
156
|
---
|
|
157
157
|
```
|
|
158
158
|
|
|
@@ -161,7 +161,7 @@ Example 🧭 block for APPROVE:
|
|
|
161
161
|
- This agent reviews design, it does NOT implement changes
|
|
162
162
|
- Always defer to `docs/project-brief.md` Decision Log for settled architectural decisions
|
|
163
163
|
- If unsure about direction, recommend involving the designated authority (per project-brief.md; default: team lead)
|
|
164
|
-
- For implementation after approval, hand off to the `
|
|
164
|
+
- For implementation after approval, hand off to the `pm` agent
|
|
165
165
|
|
|
166
166
|
<!-- TEAM_MODE_START -->
|
|
167
167
|
## Team Mode: Cross-Team Architecture
|
|
@@ -8,22 +8,22 @@ Keeps the LLM focused on the current work item.
|
|
|
8
8
|
## Invoked By
|
|
9
9
|
|
|
10
10
|
- **User** (direct) — "다음 Story는?", "현재 상태 보여줘"
|
|
11
|
-
- **
|
|
12
|
-
- **reviewer** (pass, more stories) →
|
|
11
|
+
- **pm** → User confirmation → lead (🟢 pipeline Step 3)
|
|
12
|
+
- **reviewer** (pass, more stories) → lead — "다음 Story는?"
|
|
13
13
|
|
|
14
14
|
## Referenced Skills
|
|
15
15
|
|
|
16
|
-
-
|
|
17
|
-
-
|
|
16
|
+
- setup — Recommended when state files are empty
|
|
17
|
+
- wrap-up — Recommended at session end or when all stories are done
|
|
18
18
|
- pivot — Recommended when direction change is detected
|
|
19
|
-
-
|
|
19
|
+
- debug — Recommended when bug is blocking progress
|
|
20
20
|
|
|
21
21
|
## Referenced Files
|
|
22
22
|
|
|
23
23
|
### Required — 반드시 읽기
|
|
24
24
|
- docs/project-state.md — 핵심 파일: 현재 Sprint/Story 상태 (Step 0, 모든 Handler에서 사용)
|
|
25
25
|
- docs/features.md — 진행률 개요 (Next Step Recommendation에서 사용)
|
|
26
|
-
- docs/agent-memory/
|
|
26
|
+
- docs/agent-memory/lead.md — 과거 velocity 및 scope drift 데이터
|
|
27
27
|
|
|
28
28
|
### Optional — 해당 Step에서만 읽기
|
|
29
29
|
- docs/project-brief.md — 방향 확인 필요 시에만 읽기
|
|
@@ -38,11 +38,11 @@ Before handling any request, verify `docs/project-state.md` has content:
|
|
|
38
38
|
- Quick Summary must not be all TODO placeholders
|
|
39
39
|
- Story Status table must have at least one row
|
|
40
40
|
|
|
41
|
-
If `docs/project-state.md` is empty/placeholder-only → **Recommend running `
|
|
41
|
+
If `docs/project-state.md` is empty/placeholder-only → **Recommend running `setup` skill first.** Report: "docs/project-state.md is empty. Run setup to initialize project state before tracking sprints."
|
|
42
42
|
|
|
43
43
|
### Step 0.5: Load Agent Memory
|
|
44
44
|
|
|
45
|
-
Read `docs/agent-memory/
|
|
45
|
+
Read `docs/agent-memory/lead.md` for past learnings:
|
|
46
46
|
- Team velocity data (stories per sprint)
|
|
47
47
|
- Scope drift history (how often did scope expand?)
|
|
48
48
|
- Story sizing accuracy (were estimates correct?)
|
|
@@ -71,15 +71,15 @@ After every status check, recommend the next action based on current context:
|
|
|
71
71
|
|
|
72
72
|
| Situation | Recommendation |
|
|
73
73
|
|-----------|---------------|
|
|
74
|
-
| State files are empty | → "Run `
|
|
74
|
+
| State files are empty | → "Run `setup` to onboard this project" |
|
|
75
75
|
|docs/project-brief.md has no Vision/Goals | → "Fill out docs/project-brief.md — this is critical for direction" |
|
|
76
|
-
| No stories exist | → "Run `
|
|
76
|
+
| No stories exist | → "Run `pm` to break down your first feature" |
|
|
77
77
|
| A story is in-progress | → "Continue S{N}-{M}: [title]. Scope: [files]" |
|
|
78
|
-
| All stories in sprint are done | → "Run `
|
|
78
|
+
| All stories in sprint are done | → "Run `wrap-up` to capture session lessons, then start a new sprint" |
|
|
79
79
|
| A direction change was discussed | → "Run `pivot` to update all state files before continuing" |
|
|
80
80
|
| Recent failure patterns apply | → "Watch out for FP-{NNN}: [description]" |
|
|
81
81
|
<!-- CREW_MODE_START -->
|
|
82
|
-
| Unplanned KPI/FR in Validation Tracker | → "Run `
|
|
82
|
+
| Unplanned KPI/FR in Validation Tracker | → "Run `pm` — add Stories for unplanned KPI/FR items" |
|
|
83
83
|
| All ARB Fail items resolved | → "ARB Fail items all resolved — deployment readiness can be checked" |
|
|
84
84
|
<!-- CREW_MODE_END -->
|
|
85
85
|
|
|
@@ -109,20 +109,20 @@ After every status check, recommend the next action based on current context:
|
|
|
109
109
|
3. Read `docs/dependency-map.md` to identify modules involved in this Story
|
|
110
110
|
4. Specify Story scope (related files/directories from dependency-map)
|
|
111
111
|
5. Alert relevant docs/failure-patterns.md items
|
|
112
|
-
6. Recommend relevant skill: "Consider running `
|
|
112
|
+
6. Recommend relevant skill: "Consider running `pm` if this story needs detailed breakdown"
|
|
113
113
|
|
|
114
|
-
**Request: "plan approved" / "플랜 반영해줘" (
|
|
114
|
+
**Request: "plan approved" / "플랜 반영해줘" (pm → lead handoff)**
|
|
115
115
|
|
|
116
|
-
When invoked after
|
|
116
|
+
When invoked after pm approval, verify that pm wrote state files correctly:
|
|
117
117
|
|
|
118
118
|
1. Read `docs/project-state.md` — check if Stories from the approved plan exist
|
|
119
119
|
2. **If Stories exist** → proceed to "new story" handler (set first `todo` Story to `in-progress`)
|
|
120
|
-
3. **If Stories are missing** (
|
|
120
|
+
3. **If Stories are missing** (pm failed to write):
|
|
121
121
|
a. Read the approved plan from the conversation context
|
|
122
122
|
b. Create Sprint entry in `docs/project-state.md` (Sprint N, theme from plan)
|
|
123
123
|
c. Add all Story rows to the Story Status table (status = `⬜ todo`)
|
|
124
124
|
d. Update Quick Summary section
|
|
125
|
-
e. Report: "Planner가 state files에 반영하지 않아
|
|
125
|
+
e. Report: "Planner가 state files에 반영하지 않아 lead가 보완했습니다."
|
|
126
126
|
f. Proceed to set the first Story to `in-progress`
|
|
127
127
|
<!-- CREW_MODE_START -->
|
|
128
128
|
4. If 🟣 pipeline: verify `docs/project-brief.md` Validation Tracker has Story mappings. If missing, fill them from the plan.
|
|
@@ -134,7 +134,7 @@ When invoked after planner approval, verify that planner wrote state files corre
|
|
|
134
134
|
|
|
135
135
|
**Wave-Level Pacing (Turn-by-Turn Guidance)**
|
|
136
136
|
|
|
137
|
-
When a Story contains multiple Tasks/Waves (from
|
|
137
|
+
When a Story contains multiple Tasks/Waves (from breakdown):
|
|
138
138
|
- Guide implementation **one Wave at a time** (not one file at a time, not all at once)
|
|
139
139
|
- After each Wave is implemented, **run tests (or invoke `reviewer` for a quick check)** to verify the Wave is clean before proceeding
|
|
140
140
|
- Only after verification passes, prompt: "Wave {N} 완료 (tests pass). Wave {N+1}로 넘어갈까요?"
|
|
@@ -178,7 +178,7 @@ STATUS: DONE
|
|
|
178
178
|
#### Validation Dashboard (🟣 Pipeline only)
|
|
179
179
|
|
|
180
180
|
When `docs/project-brief.md` contains a `## Validation Tracker` section with data, display the Validation Tracker as a dashboard in every status output.
|
|
181
|
-
If the Validation Tracker exists but has zero rows (no KPIs/FRs indexed yet), display: `KPI Coverage: 0/0 (N/A) — consider running
|
|
181
|
+
If the Validation Tracker exists but has zero rows (no KPIs/FRs indexed yet), display: `KPI Coverage: 0/0 (N/A) — consider running setup to populate Artifact Index`.
|
|
182
182
|
|
|
183
183
|
```
|
|
184
184
|
### 📊 Validation Dashboard
|
|
@@ -190,19 +190,19 @@ If the Validation Tracker exists but has zero rows (no KPIs/FRs indexed yet), di
|
|
|
190
190
|
- [KPI/FR ID]: [description] — 관련 Story 없음
|
|
191
191
|
```
|
|
192
192
|
|
|
193
|
-
**Sprint Manager reads and reports the Validation Tracker numbers.** It does NOT auto-create Stories for missing coverage — that is the
|
|
193
|
+
**Sprint Manager reads and reports the Validation Tracker numbers.** It does NOT auto-create Stories for missing coverage — that is the pm's role. If unplanned items exist, recommend running `pm`.
|
|
194
194
|
<!-- CREW_MODE_END -->
|
|
195
195
|
|
|
196
196
|
### 🧭 Navigation — What Comes After Sprint Manager
|
|
197
197
|
|
|
198
|
-
After
|
|
198
|
+
After lead completes, always append a 🧭 block based on the outcome:
|
|
199
199
|
|
|
200
200
|
| Sprint Manager Result | 🧭 Next Step |
|
|
201
201
|
|---|---|
|
|
202
|
-
| State files empty | `
|
|
203
|
-
| No stories exist | `
|
|
202
|
+
| State files empty | `setup` — "프로젝트를 온보딩해줘" |
|
|
203
|
+
| No stories exist | `pm` — "[기능]을 계획해줘" |
|
|
204
204
|
| Story set to in-progress | [Coding] — "S{N}-{M} 구현을 시작해줘". 완료 후 **새 채팅**에서 reviewer 호출 |
|
|
205
|
-
| All stories done | `
|
|
205
|
+
| All stories done | `wrap-up` — "세션을 마무리해줘" |
|
|
206
206
|
| Direction change detected | `pivot` — "방향을 전환해줘" |
|
|
207
207
|
|
|
208
208
|
Example 🧭 block for starting a story:
|