@kodevibe/harness 0.8.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.
- package/LICENSE +21 -0
- package/README.ko.md +351 -0
- package/README.md +314 -0
- package/bin/cli.js +4 -0
- package/harness/agent-memory/architect.md +42 -0
- package/harness/agent-memory/planner.md +47 -0
- package/harness/agent-memory/reviewer.md +46 -0
- package/harness/agent-memory/sprint-manager.md +49 -0
- package/harness/agents/architect.md +177 -0
- package/harness/agents/planner.md +320 -0
- package/harness/agents/reviewer.md +273 -0
- package/harness/agents/sprint-manager.md +250 -0
- package/harness/core-rules.md +136 -0
- package/harness/dependency-map.md +58 -0
- package/harness/failure-patterns.md +63 -0
- package/harness/features.md +53 -0
- package/harness/project-brief.md +145 -0
- package/harness/project-state.md +85 -0
- package/harness/skills/bootstrap.md +326 -0
- package/harness/skills/code-review-pr.md +141 -0
- package/harness/skills/deployment.md +144 -0
- package/harness/skills/feature-breakdown.md +136 -0
- package/harness/skills/impact-analysis.md +110 -0
- package/harness/skills/investigate.md +172 -0
- package/harness/skills/learn.md +308 -0
- package/harness/skills/pivot.md +171 -0
- package/harness/skills/security-checklist.md +101 -0
- package/harness/skills/test-integrity.md +94 -0
- package/package.json +53 -0
- package/src/init.js +772 -0
- package/templates/agent.template.md +56 -0
- package/templates/skill.template.md +54 -0
package/README.md
ADDED
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
<div align="right">
|
|
2
|
+
<a href="README.ko.md"><img src="https://img.shields.io/badge/lang-한국어-blue.svg" alt="한국어"></a>
|
|
3
|
+
</div>
|
|
4
|
+
|
|
5
|
+
# kode:harness
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/@kodevibe/harness)
|
|
8
|
+
[](https://www.npmjs.com/package/@kodevibe/harness)
|
|
9
|
+
[](https://github.com/AIDD-Projects/harness/actions/workflows/ci.yml)
|
|
10
|
+
[](https://opensource.org/licenses/MIT)
|
|
11
|
+
|
|
12
|
+
**Keep every developer's AI aligned on one project direction.**
|
|
13
|
+
|
|
14
|
+
kode:harness is built on **harness engineering** for multi-developer, enterprise-grade AI-assisted development.
|
|
15
|
+
|
|
16
|
+
> **v0.8.3** — 6 IDE support, Navigation Dispatcher, 5 Pipelines (🟢🔵🔴🟡🟣), Crew Artifact Integration, 100-point quality audit.
|
|
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
|
|
51
|
+
|
|
52
|
+
## Quick Start
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
# Solo mode (default)
|
|
56
|
+
npx @kodevibe/harness init
|
|
57
|
+
|
|
58
|
+
# Team mode (multi-developer)
|
|
59
|
+
npx @kodevibe/harness init --team
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
Select your IDE when prompted. Files are installed into the current directory.
|
|
63
|
+
|
|
64
|
+
After installation, ask your LLM to run the `bootstrap` skill:
|
|
65
|
+
|
|
66
|
+
> "Run bootstrap to onboard this project."
|
|
67
|
+
|
|
68
|
+
This scans your codebase and fills all 5 state files automatically.
|
|
69
|
+
|
|
70
|
+
### Non-interactive
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
npx @kodevibe/harness init --ide vscode
|
|
74
|
+
npx @kodevibe/harness init --ide claude
|
|
75
|
+
npx @kodevibe/harness init --ide cursor
|
|
76
|
+
npx @kodevibe/harness init --ide codex
|
|
77
|
+
npx @kodevibe/harness init --ide windsurf
|
|
78
|
+
npx @kodevibe/harness init --ide antigravity
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
### Options
|
|
82
|
+
|
|
83
|
+
| Flag | Description |
|
|
84
|
+
|------|-------------|
|
|
85
|
+
| `--ide <name>` | Target IDE: `vscode`, `claude`, `cursor`, `codex`, `windsurf`, `antigravity` |
|
|
86
|
+
| `--mode <mode>` | Project mode: `solo` (default) or `team` |
|
|
87
|
+
| `--dir <path>` | Target directory (default: current directory) |
|
|
88
|
+
| `--team` | Shorthand for `--mode team` |
|
|
89
|
+
| `--batch` | Non-interactive mode (requires `--ide`; defaults to solo mode) |
|
|
90
|
+
| `--overwrite` | Overwrite existing files (including state files) |
|
|
91
|
+
| `--version` | Show version number |
|
|
92
|
+
|
|
93
|
+
### Health Check
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
# Verify kode:harness files are installed
|
|
97
|
+
npx @kodevibe/harness doctor
|
|
98
|
+
|
|
99
|
+
# Verify state files have real content (not just placeholders)
|
|
100
|
+
npx @kodevibe/harness validate
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### IDE Configuration (Optional)
|
|
104
|
+
|
|
105
|
+
Large projects with crew artifacts may require increased turn limits:
|
|
106
|
+
|
|
107
|
+
| IDE | Setting | Recommended |
|
|
108
|
+
|-----|---------|-------------|
|
|
109
|
+
| VS Code | `chat.agent.maxRequests` in settings.json | `100` |
|
|
110
|
+
| Cursor | Auto-managed | Default OK |
|
|
111
|
+
| Windsurf | Auto-managed | Default OK |
|
|
112
|
+
| Claude Code | Terminal-based | Default OK |
|
|
113
|
+
|
|
114
|
+
> This is only needed when running `bootstrap` with crew artifacts on projects that have many existing frameworks. Normal coding/review operations work within default limits.
|
|
115
|
+
|
|
116
|
+
## Supported IDEs
|
|
117
|
+
|
|
118
|
+
| IDE | Dispatcher (always-on) | Skills | Agents |
|
|
119
|
+
|-----|----------------------|--------|--------|
|
|
120
|
+
| **VS Code Copilot** | `.github/copilot-instructions.md` | `.github/skills/*/SKILL.md` | `.github/agents/*.agent.md` |
|
|
121
|
+
| **Claude Code** | `.claude/rules/core.md` | `.claude/skills/*/SKILL.md` | `.claude/agents/*.md` |
|
|
122
|
+
| **Cursor** | `.cursor/rules/core.mdc` | `.cursor/skills/*/SKILL.md` | `.cursor/agents/*.md` |
|
|
123
|
+
| **Codex** | `AGENTS.md` | `.agents/skills/*/SKILL.md` | `.codex/agents/*.toml` |
|
|
124
|
+
| **Windsurf** | `.windsurf/rules/core.md` | `.windsurf/skills/*/SKILL.md` | *(agents installed as skills)* |
|
|
125
|
+
| **Antigravity** | `GEMINI.md` | `.gemini/skills/*/SKILL.md` | `.gemini/agents/*.md` |
|
|
126
|
+
|
|
127
|
+
All IDEs also get state files (`project-state.md`, `project-brief.md`, `features.md`, `failure-patterns.md`, `dependency-map.md`) in the `docs/` directory.
|
|
128
|
+
|
|
129
|
+
## What Gets Installed
|
|
130
|
+
|
|
131
|
+
### Dispatcher (always active)
|
|
132
|
+
- **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
|
+
|
|
134
|
+
### Skills (on-demand procedures)
|
|
135
|
+
- **bootstrap** — Onboard project into kode:harness: scans codebase + fills state files automatically
|
|
136
|
+
- **learn** — End-of-session wrap-up: captures failure patterns, updates project state, detects direction drift
|
|
137
|
+
- **pivot** — Propagate direction changes across all state files when goals/tech/scope changes
|
|
138
|
+
- **test-integrity** — Verify mock/interface synchronization before committing
|
|
139
|
+
- **security-checklist** — Pre-commit security risk scan
|
|
140
|
+
- **investigate** — 4-phase systematic debugging (evidence → scope → fix → verify)
|
|
141
|
+
- **impact-analysis** — Assess change blast radius before modifying shared modules
|
|
142
|
+
- **feature-breakdown** — Decompose features into dependency-ordered implementation tasks
|
|
143
|
+
- **code-review-pr** — Review incoming Pull Requests for quality, security, and direction alignment
|
|
144
|
+
- **deployment** — Pre-deployment validation checklist (tests, state files, security, versioning)
|
|
145
|
+
|
|
146
|
+
### Agents (role-based personas)
|
|
147
|
+
- **planner** — Feature planning, dependency analysis, Direction Alignment (goal/non-goal/decision check)
|
|
148
|
+
- **reviewer** — Code review + State File Audit (verifies state files were actually updated)
|
|
149
|
+
- **sprint-manager** — Sprint/Story state management, scope drift prevention, Next Step Recommendation
|
|
150
|
+
- **architect** — Design review gate: validates structural changes against project direction and module boundaries
|
|
151
|
+
|
|
152
|
+
### State Files (project memory)
|
|
153
|
+
- **project-brief.md** — Project vision, goals, non-goals, Decision Log (the "why")
|
|
154
|
+
- **project-state.md** — Current sprint, stories, and progress tracking (the "where")
|
|
155
|
+
- **features.md** — Living feature registry so LLMs know what exists (the "what")
|
|
156
|
+
- **dependency-map.md** — Module dependency graph for impact analysis (the "how")
|
|
157
|
+
- **failure-patterns.md** — Project-specific failure patterns that prevent repeat mistakes (the "watch out")
|
|
158
|
+
|
|
159
|
+
## How It Works
|
|
160
|
+
|
|
161
|
+
### 1. Bootstrap (once)
|
|
162
|
+
After `harness init`, run the `bootstrap` 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
|
+
|
|
164
|
+
### 2. Direction Guard (every request)
|
|
165
|
+
Before ANY coding task, the LLM reads `project-brief.md` and checks:
|
|
166
|
+
- Does this align with Goals? → proceed
|
|
167
|
+
- Does this fall under Non-Goals? → warn, suggest `pivot`
|
|
168
|
+
- Does this contradict a Decision Log entry? → warn, suggest `pivot`
|
|
169
|
+
|
|
170
|
+
### 3. Workflow Pipeline
|
|
171
|
+
```
|
|
172
|
+
bootstrap → planner → [code] → reviewer → sprint-manager → learn
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
kode:harness provides **5 pipelines** for different scenarios:
|
|
176
|
+
|
|
177
|
+
| Pipeline | When | Flow |
|
|
178
|
+
|---|---|---|
|
|
179
|
+
| 🟢 New Dev | First feature | bootstrap → planner → sprint-manager → [code] → reviewer → learn |
|
|
180
|
+
| 🔵 Continue | Resuming work | sprint-manager → [code] → reviewer → learn |
|
|
181
|
+
| 🔴 Bug Fix | Debugging | investigate → [fix] → reviewer → learn |
|
|
182
|
+
| 🟡 Direction Change | Goals/tech shift | pivot → planner → sprint-manager → [code] → reviewer → learn |
|
|
183
|
+
| 🟣 Crew-Driven | With external planning artifacts | bootstrap(crew) → planner → sprint-manager → [code] → reviewer → learn |
|
|
184
|
+
|
|
185
|
+
Each step ends with a 🧭 **Navigation block** telling you exactly what to do next — including the prompt to type.
|
|
186
|
+
|
|
187
|
+
- **planner**: Checks direction alignment, breaks down features. **Confirm-First gate** — won't proceed without your approval.
|
|
188
|
+
- **reviewer**: Reviews code + audits state file updates
|
|
189
|
+
- **sprint-manager**: Tracks progress via **Wave-Level Pacing** — runs tests between implementation waves
|
|
190
|
+
- **learn**: Captures lessons before session ends
|
|
191
|
+
- **investigate**: **Recalculating Mode** — after 3 failed attempts, proposes alternative approaches
|
|
192
|
+
|
|
193
|
+
### 4. Direction Changes
|
|
194
|
+
When goals, technology, or scope changes, run the `pivot` skill:
|
|
195
|
+
- Updates ALL 5 state files consistently
|
|
196
|
+
- Records the decision with reasoning in Decision Log
|
|
197
|
+
- Prevents silent inconsistencies across files
|
|
198
|
+
|
|
199
|
+
## Team Mode
|
|
200
|
+
|
|
201
|
+
This is where harness engineering matters most. When multiple developers each run their own AI sessions, direction divergence is inevitable — unless you have shared guardrails.
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
npx @kodevibe/harness init --team
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
| | Solo Mode | Team Mode |
|
|
208
|
+
|---|---|---|
|
|
209
|
+
| Shared State | `docs/` (git tracked) | `docs/` (git tracked): project-brief, features, dependency-map |
|
|
210
|
+
| Personal State | `docs/` (git tracked) | `.harness/` (gitignored): project-state, failure-patterns |
|
|
211
|
+
| Agent Memory | `docs/agent-memory/` | `.harness/agent-memory/` |
|
|
212
|
+
| Target | Solo developer | Enterprise team |
|
|
213
|
+
| Team Rules | — | Pre-Pull, Owner, Read-Only, Append-Only, Pivot Lock, FP Promotion |
|
|
214
|
+
|
|
215
|
+
**How it keeps everyone aligned:**
|
|
216
|
+
|
|
217
|
+
- **Shared state** (`project-brief.md`, `features.md`, `dependency-map.md`) is git-tracked — every developer's AI reads the same goals, non-goals, and decisions
|
|
218
|
+
- **Personal state** (`project-state.md`, `failure-patterns.md`) goes to `.harness/` (gitignored) — each developer tracks their own sprint progress without conflicts
|
|
219
|
+
- **Pre-Pull Protocol** — Before every session, AI pulls latest shared state so no one works on stale direction
|
|
220
|
+
- **Pivot Lock** — Direction changes require the `pivot` skill, which updates ALL state files atomically and records the decision with reasoning
|
|
221
|
+
- **FP Promotion** — Local failure patterns get promoted to shared `failure-patterns.md` so the whole team learns from each developer's mistakes
|
|
222
|
+
- **Owner Tracking** — Dependency map marks module owners to prevent accidental cross-team overwrites
|
|
223
|
+
|
|
224
|
+
## Iron Laws
|
|
225
|
+
|
|
226
|
+
These 8 rules are enforced across all skills and agents. They form the quality backbone of every kode:harness project managed with harness engineering.
|
|
227
|
+
|
|
228
|
+
| # | Law | Enforced By |
|
|
229
|
+
|---|-----|-------------|
|
|
230
|
+
| 1 | **Mock Sync** — Interface change → update mocks in the same commit | `reviewer`, `test-integrity` |
|
|
231
|
+
| 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. | `sprint-manager`, `reviewer` |
|
|
233
|
+
| 4 | **Security** — No credentials, passwords, or API keys in code or commits. | `security-checklist`, `reviewer` |
|
|
234
|
+
| 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`, `learn` |
|
|
236
|
+
| 7 | **Feature Registry** — New feature → register in `features.md` in the same commit. | `reviewer`, `learn` |
|
|
237
|
+
| 8 | **Session Handoff** — Session end → update `project-state.md` Quick Summary. | `learn` |
|
|
238
|
+
|
|
239
|
+
## Documentation
|
|
240
|
+
|
|
241
|
+
See [docs/reference.md](docs/reference.md) for detailed descriptions of every skill, agent, rule, and state file.
|
|
242
|
+
|
|
243
|
+
## Why kode:harness?
|
|
244
|
+
|
|
245
|
+
### The Core Insight
|
|
246
|
+
|
|
247
|
+
Existing AI coding frameworks focus on **what the AI does** (generate code, run tests, deploy). kode:harness focuses on **where the AI is going** — ensuring every developer's AI moves in the same direction. harness engineering is the discipline that keeps the whole team on course.
|
|
248
|
+
|
|
249
|
+
### Crew Artifact Integration (🟣 Pipeline)
|
|
250
|
+
|
|
251
|
+
If your team uses an **external planning tool** (or any tool that produces PRD, Architecture, ARB Checklist documents), kode:harness reads them directly:
|
|
252
|
+
|
|
253
|
+
```bash
|
|
254
|
+
npx @kodevibe/harness init
|
|
255
|
+
# Then ask your LLM:
|
|
256
|
+
> "crew 산출물을 기반으로 프로젝트를 세팅해줘"
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
Bootstrap auto-detects crew artifacts in `docs/crew/`, `docs/PM/`, `docs/Analyst/`, `docs/ARB/` and creates:
|
|
260
|
+
- **Artifact Index** — maps every crew document with path, role, and key contents
|
|
261
|
+
- **Validation Tracker** — tracks KPI coverage, FR coverage, and ARB Fail resolution across Stories
|
|
262
|
+
|
|
263
|
+
Original crew documents are **never modified**. Only the index and tracker are created.
|
|
264
|
+
|
|
265
|
+
### Comparison
|
|
266
|
+
|
|
267
|
+
| | BMAD v6.2.2 | gstack v0.15.1 | GSD v1.33.0 | kode:harness |
|
|
268
|
+
|---|---|---|---|---|
|
|
269
|
+
| Focus | Enterprise SDLC methodology | 1-person software factory | Full lifecycle automation | **Multi-developer direction alignment** |
|
|
270
|
+
| Files | 200+ | ~40 | Hundreds | ~25 |
|
|
271
|
+
| Dependencies | Node 20+ | Bun + Node + Playwright | Node 18+ | Zero |
|
|
272
|
+
| IDE support | 20+ (installer) | 5 (setup --host) | 13 (runtime select) | 6 (native format) |
|
|
273
|
+
| Direction management | ❌ | ❌ | ❌ | ✅ (Direction Guard + pivot + Decision Log) |
|
|
274
|
+
| Iron Laws (code quality rules) | ❌ | ❌ | ❌ | ✅ (8 laws embedded in skills) |
|
|
275
|
+
| Cold start | ❌ | ❌ | `/gsd-new-project` | ✅ (`bootstrap` skill) |
|
|
276
|
+
| Context per task | 4-6 files | 1 file | Fresh 200k per plan | 2-3 files (136-line dispatcher) |
|
|
277
|
+
|
|
278
|
+
## Roadmap
|
|
279
|
+
|
|
280
|
+
kode:harness is at **v0.8.3** — 6 IDE support complete, Navigation Dispatcher and Crew Artifact Integration stable.
|
|
281
|
+
|
|
282
|
+
| Phase | Version | Status | Focus |
|
|
283
|
+
|---|---|---|---|
|
|
284
|
+
| **Foundation** | v0.5.0 | ✅ Done | Core framework: 6 IDE support, 8 skills, 3 agents, Team Mode, Direction Guard |
|
|
285
|
+
| **Hardening** | v0.6.5 | ✅ Done | 10 skills, 4 agents, Iron Laws, CLI batch/doctor/validate, merge conflict SOP, direction drift detection |
|
|
286
|
+
| **Flexibility** | v0.7.x | ✅ Done | Delegate team conventions to project-brief.md, remove prescriptive rules |
|
|
287
|
+
| **Navigation** | v0.8.x | ✅ Current | 🧭 Navigation Dispatcher, 5 Pipelines, Crew Artifact Integration, 100-point quality audit, Confirm-First gate, Wave-Level Pacing, Recalculating Mode |
|
|
288
|
+
| **Validation** | v1.0 | 🔜 Next | Real-world project adoption, user feedback collection |
|
|
289
|
+
|
|
290
|
+
### What's Next
|
|
291
|
+
|
|
292
|
+
- [ ] Pilot: Run external planning artifacts through kode:harness's 🟣 pipeline on a real project
|
|
293
|
+
- [ ] Adopt kode:harness in real projects and collect usage data
|
|
294
|
+
- [ ] Document case studies: solo vs team, crew vs no-crew
|
|
295
|
+
- [ ] Gather user feedback on friction points and missing features
|
|
296
|
+
- [ ] Iterate based on real-world evidence, not assumptions
|
|
297
|
+
|
|
298
|
+
## Contributing & Feedback
|
|
299
|
+
|
|
300
|
+
kode:harness is in active development and we'd love your input.
|
|
301
|
+
|
|
302
|
+
- **Bug reports & feature requests** → [GitHub Issues](https://github.com/AIDD-Projects/harness/issues)
|
|
303
|
+
- **Discussions & ideas** → [GitHub Discussions](https://github.com/AIDD-Projects/harness/discussions)
|
|
304
|
+
- **Try it on your project** → `npx @kodevibe/harness init` and tell us what works (or doesn't)
|
|
305
|
+
|
|
306
|
+
We're especially interested in:
|
|
307
|
+
- How Direction Guard performs in teams of 3+ developers
|
|
308
|
+
- Whether the 6 Team Rules (Pre-Pull, Owner, Read-Only, etc.) are sufficient or need more
|
|
309
|
+
- Which IDE integrations need improvement
|
|
310
|
+
- What skills or agents are missing for your workflow
|
|
311
|
+
|
|
312
|
+
## License
|
|
313
|
+
|
|
314
|
+
MIT
|
package/bin/cli.js
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Architect Memory
|
|
2
|
+
|
|
3
|
+
> Auto-updated by the `learn` skill at session end. Do not edit manually.
|
|
4
|
+
> **Initialization**: After the first architecture review, replace placeholder comments below with real data.
|
|
5
|
+
> **Update trigger**: Only updated when the `architect` agent runs. If architect was not invoked this session, this file stays unchanged.
|
|
6
|
+
|
|
7
|
+
## Design Decision History
|
|
8
|
+
|
|
9
|
+
<!-- Record each architecture decision with context and rationale.
|
|
10
|
+
Format: [Date] Decision — Rationale (alternatives rejected: X, Y)
|
|
11
|
+
Examples:
|
|
12
|
+
- [2025-01-15] Chose layered architecture — simpler for 2-person team (rejected: hexagonal, too much boilerplate)
|
|
13
|
+
- [2025-01-20] Rejected microservices — traffic < 1K req/s, monolith sufficient (revisit when traffic > 10K)
|
|
14
|
+
-->
|
|
15
|
+
|
|
16
|
+
## Module Boundary Insights
|
|
17
|
+
|
|
18
|
+
<!-- Record coupling hotspots and stable zones discovered during reviews.
|
|
19
|
+
Format: Module — Observation — Impact (depended-by count)
|
|
20
|
+
Examples:
|
|
21
|
+
- shared/ is coupling hotspot — changes ripple to 5+ modules — consider splitting into shared/types and shared/utils
|
|
22
|
+
- API layer is stable — rarely modified when business logic changes — safe to skip in impact analysis for domain changes
|
|
23
|
+
-->
|
|
24
|
+
|
|
25
|
+
## Architectural Anti-patterns Observed
|
|
26
|
+
|
|
27
|
+
<!-- Record anti-patterns with severity, detection method, and prevention.
|
|
28
|
+
Format: Pattern — Severity (HIGH/MED/LOW) — Detection — Resolution — Prevention
|
|
29
|
+
Examples:
|
|
30
|
+
- Circular dep auth↔user — HIGH — dependency-map bidirectional check — extracted shared types — run impact-analysis before interface changes
|
|
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
|
+
-->
|
|
33
|
+
|
|
34
|
+
## Architecture Review Trends
|
|
35
|
+
|
|
36
|
+
<!-- Track patterns across reviews to identify systemic issues.
|
|
37
|
+
Format: [Sprint] Reviews: N, Issues found: N, Recurring: list
|
|
38
|
+
Examples:
|
|
39
|
+
- [Sprint 1] Reviews: 2, Issues: 3, Recurring: none (first sprint)
|
|
40
|
+
- [Sprint 2] Reviews: 3, Issues: 2, Recurring: circular dependency (2nd occurrence → escalate)
|
|
41
|
+
Threshold: If same issue recurs 3+ times → add to failure-patterns.md
|
|
42
|
+
-->
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Planner Memory
|
|
2
|
+
|
|
3
|
+
> Auto-updated by the `learn` skill at session end. Do not edit manually.
|
|
4
|
+
> **Initialization**: After the first sprint completes, replace placeholder comments below with real data.
|
|
5
|
+
> **Update trigger**: Updated when `learn` skill runs after a planner session.
|
|
6
|
+
|
|
7
|
+
## Estimation Accuracy
|
|
8
|
+
|
|
9
|
+
<!-- Track estimate vs actual effort per wave to calibrate future planning.
|
|
10
|
+
Format: [Sprint] Wave N: estimate vs actual (ratio)
|
|
11
|
+
Examples:
|
|
12
|
+
- [Sprint 1] Wave 1: accurate (1.0x) — simple CRUD, well-understood domain
|
|
13
|
+
- [Sprint 1] Wave 3: optimistic (2.3x) — integration complexity underestimated
|
|
14
|
+
- [Sprint 2] Wave 2: accurate (1.1x) — applied 1.5x buffer from Sprint 1 lesson
|
|
15
|
+
Rule: If ratio > 2.0x for 2+ sprints → apply mandatory 2x buffer for that wave depth
|
|
16
|
+
-->
|
|
17
|
+
|
|
18
|
+
## Architecture Insights
|
|
19
|
+
|
|
20
|
+
<!-- Record structural patterns that affect planning.
|
|
21
|
+
Format: Pattern — Planning Impact
|
|
22
|
+
Examples:
|
|
23
|
+
- Domain → Application → Infrastructure dependency order — plan domain layer first in every feature
|
|
24
|
+
- Changes to shared/ require full rebuild — always estimate +30 min for shared/ changes
|
|
25
|
+
- DB migration file creation frequently forgotten — add explicit "create migration" task to every DB-touching story
|
|
26
|
+
-->
|
|
27
|
+
|
|
28
|
+
## Repeated Patterns
|
|
29
|
+
|
|
30
|
+
<!-- Track recurring task patterns with frequency to auto-generate checklists.
|
|
31
|
+
Format: Pattern — Frequency (N/total features) — Action
|
|
32
|
+
Examples:
|
|
33
|
+
- New feature = middleware + route + controller + service (4-file set) — 5/5 features — auto-include in breakdown
|
|
34
|
+
- DB migration forgotten — 3/5 features needing DB — add explicit migration task
|
|
35
|
+
- Auth middleware required for new routes — 4/6 route additions — default to auth-required
|
|
36
|
+
-->
|
|
37
|
+
|
|
38
|
+
## Velocity Trends
|
|
39
|
+
|
|
40
|
+
<!-- Track stories-per-sprint to predict capacity and detect trajectory changes.
|
|
41
|
+
Format: [Sprint N] Planned: X, Done: Y, Rate: Z%
|
|
42
|
+
Examples:
|
|
43
|
+
- [Sprint 1] Planned: 5, Done: 3, Rate: 60% — ramp-up phase, team unfamiliar with codebase
|
|
44
|
+
- [Sprint 2] Planned: 4, Done: 4, Rate: 100% — right-sized after Sprint 1 data
|
|
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 → investigate causes
|
|
47
|
+
-->
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Reviewer Memory
|
|
2
|
+
|
|
3
|
+
> Auto-updated by the `learn` skill at session end. Do not edit manually.
|
|
4
|
+
> **Initialization**: After the first code review, replace placeholder comments below with real data.
|
|
5
|
+
> **Update trigger**: Updated when `learn` skill runs after a reviewer session.
|
|
6
|
+
|
|
7
|
+
## Project-Specific Review Patterns
|
|
8
|
+
|
|
9
|
+
<!-- Record patterns specific to THIS project that future reviews should check.
|
|
10
|
+
Format: Pattern — Location — Severity — Prevention
|
|
11
|
+
Examples:
|
|
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 test-integrity skill pre-commit
|
|
14
|
+
- Hardcoded timeout 5000ms in tests — tests/integration/ — LOW — extract to test config
|
|
15
|
+
-->
|
|
16
|
+
|
|
17
|
+
## Frequently Missed Items
|
|
18
|
+
|
|
19
|
+
<!-- Track items that reviews catch repeatedly to prioritize attention.
|
|
20
|
+
Format: Item — Frequency (N/total reviews) — Iron Law reference
|
|
21
|
+
Examples:
|
|
22
|
+
- docs/features.md update omitted — 3/5 reviews — Iron Law #7
|
|
23
|
+
- dependency-map.md not updated after new module — 2/5 reviews — Iron Law #6
|
|
24
|
+
- Test files connecting to real database — 1/5 reviews — testing rules
|
|
25
|
+
Threshold: If frequency > 50% → recommend adding to pre-commit hook
|
|
26
|
+
-->
|
|
27
|
+
|
|
28
|
+
## Review Statistics
|
|
29
|
+
|
|
30
|
+
- Total reviews: 0
|
|
31
|
+
- Auto-fixes applied: 0
|
|
32
|
+
- Escalations: 0
|
|
33
|
+
<!-- Track ratios after 5+ reviews:
|
|
34
|
+
- Auto-fix rate: auto-fixes / total issues (if > 30% → consider automating those checks)
|
|
35
|
+
- Escalation rate: escalations / total reviews (if > 20% → investigate root cause)
|
|
36
|
+
-->
|
|
37
|
+
|
|
38
|
+
## Test Failure Patterns
|
|
39
|
+
|
|
40
|
+
<!-- Track which test patterns commonly fail during reviews.
|
|
41
|
+
Format: Pattern — Frequency — Root Cause — Mitigation
|
|
42
|
+
Examples:
|
|
43
|
+
- Mock method missing after interface change — 4/10 reviews — FP-001 — run test-integrity pre-commit
|
|
44
|
+
- Async test timeout — 2/10 reviews — missing await — enforce eslint no-floating-promises
|
|
45
|
+
- Snapshot mismatch after UI change — 3/10 reviews — stale snapshots — update snapshots in same commit
|
|
46
|
+
-->
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
# Sprint Manager Memory
|
|
2
|
+
|
|
3
|
+
> Auto-updated by the `learn` skill at session end. Do not edit manually.
|
|
4
|
+
> **Initialization**: After the first sprint completes, replace placeholder comments below with real data.
|
|
5
|
+
> **Update trigger**: Updated when `learn` skill runs after sprint management actions.
|
|
6
|
+
|
|
7
|
+
## Velocity Tracking
|
|
8
|
+
|
|
9
|
+
<!-- Track planned vs completed stories per sprint.
|
|
10
|
+
Format: [Sprint N] Done/Planned (Rate%) — Notes
|
|
11
|
+
Examples:
|
|
12
|
+
- [Sprint 1] 3/5 (60%) — ramp-up phase, scope adjusted mid-sprint
|
|
13
|
+
- [Sprint 2] 4/4 (100%) — right-sized after Sprint 1 calibration
|
|
14
|
+
- [Sprint 3] 5/5 (100%) — team rhythm established
|
|
15
|
+
Benchmark: Set after 3+ sprints. If rate < 50% for 2 consecutive sprints → flag in sprint-manager recommendations.
|
|
16
|
+
Average velocity: recalculate after each sprint (e.g., "Average: 4.0 stories/sprint after 3 sprints")
|
|
17
|
+
-->
|
|
18
|
+
|
|
19
|
+
## Scope Drift History
|
|
20
|
+
|
|
21
|
+
<!-- Record scope violations caught by sprint-manager or reviewer.
|
|
22
|
+
Format: [Story ID] Drift type — Files affected — Resolution
|
|
23
|
+
Examples:
|
|
24
|
+
- [S1-003] Out-of-scope modification — 3 files in auth/ (not in story scope) — reverted, created new story S1-005
|
|
25
|
+
- [S2-001] Direction change requested — switched to pivot skill — recorded in Decision Log
|
|
26
|
+
- [S2-004] Feature creep — added caching (not planned) — extracted to S3-001
|
|
27
|
+
Pattern: If drift > 2 per sprint → reduce story scope or improve planning precision
|
|
28
|
+
-->
|
|
29
|
+
|
|
30
|
+
## Recommended Patterns
|
|
31
|
+
|
|
32
|
+
<!-- Record data-backed recommendations for project workflow.
|
|
33
|
+
Format: Recommendation — Evidence (N sprints) — Confidence
|
|
34
|
+
Examples:
|
|
35
|
+
- Plan 4 stories per sprint — based on 5 sprints: avg 4.2 done, 3 caused underutilization, 5+ caused overrun — HIGH
|
|
36
|
+
- Stories touching 5+ files should be split — based on S1-003, S2-004 both overran with 6+ files — MEDIUM
|
|
37
|
+
- Schedule integration stories in Sprint N+1 after domain stories — based on Wave ordering pattern — HIGH
|
|
38
|
+
-->
|
|
39
|
+
|
|
40
|
+
## Story Sizing Accuracy
|
|
41
|
+
|
|
42
|
+
<!-- Track if story estimates match actual effort to improve future planning.
|
|
43
|
+
Format: [Story ID] Estimated: X, Actual: Y, Ratio — Notes
|
|
44
|
+
Examples:
|
|
45
|
+
- [S1-001] Estimated: 1 session, Actual: 1 session, 1.0x — simple scaffolding
|
|
46
|
+
- [S1-002] Estimated: 2 sessions, Actual: 4 sessions, 2.0x — underestimated DB migration complexity
|
|
47
|
+
- [S2-001] Estimated: 2 sessions, Actual: 2 sessions, 1.0x — applied 1.5x buffer from S1 lesson
|
|
48
|
+
Rule: If ratio > 2.0x for 3+ stories → adjust estimation method (break into smaller tasks or add buffers)
|
|
49
|
+
-->
|