@kodevibe/harness 0.9.0 → 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 +68 -77
- package/README.md +67 -70
- package/harness/agents/pm.md +74 -0
- package/harness/core-rules.md +1 -1
- package/package.json +1 -1
package/README.ko.md
CHANGED
|
@@ -9,83 +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
|
+
> **AI 코딩 에이전트는 세션이 끝나면 모든 것을 잊습니다. kode:harness는 목표, 결정, 실패, 프로젝트 방향을 기억하게 합니다.**
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
> **v0.9.0** — 네이밍 재설계 (스킬/에이전트 이름 직관화), 6개 IDE 지원, Navigation Dispatcher, 5개 파이프라인 (🟢🔵🔴🟡🟣), Crew Artifact Integration.
|
|
17
|
-
|
|
18
|
-
---
|
|
19
|
-
|
|
20
|
-
## Harness에서 Enterprise Harness Engineering으로
|
|
21
|
-
|
|
22
|
-
AI "harness" — LLM 코딩 에이전트를 안내하는 구조화된 마크다운 파일 — 는 AI 기반 개발의 기본 패턴이 되었습니다. BMAD, gstack, GSD 같은 프레임워크가 **1인 개발자**를 위해 이 접근법을 개척했습니다.
|
|
23
|
-
|
|
24
|
-
이 접근은 harness 엔지니어링을 1인 도구 수준에서 멀티 개발자 팀과 solo 개발자까지 포괄하는 **엔터프라이즈급 방향 관리 기법**으로 확장합니다. **kode:harness**는 이 접근을 제품 형태로 구현한 실행 프레임워크입니다.
|
|
25
|
-
|
|
26
|
-
| | 기존 Harness | kode:harness + harness engineering |
|
|
27
|
-
|---|---|---|
|
|
28
|
-
| 대상 | 1인 개발자 | **멀티 개발자 팀** |
|
|
29
|
-
| 초점 | AI가 무엇을 하는지 | **AI가 어디로 가는지** |
|
|
30
|
-
| 방향 관리 | ❌ | ✅ Direction Guard + pivot + Decision Log |
|
|
31
|
-
| 팀 상태 공유 | ❌ | ✅ 공유/개인 상태 분리 |
|
|
32
|
-
| 토큰 예산 | 200+ 파일 | **~25개 파일 (~17K 토큰)** — 소형 LLM도 작동 |
|
|
33
|
-
|
|
34
|
-
## 어떤 문제를 해결하나요?
|
|
35
|
-
|
|
36
|
-
혼자 개발할 때는 AI 코딩 어시스턴트의 방향이 일관됩니다. 하지만 **기업 팀**에서는 각 개발자가 독립된 AI 세션을 실행하고, 각 AI는 제각각 다른 방향으로 흘러갑니다.
|
|
37
|
-
|
|
38
|
-
- 개발자 A의 AI → 마이크로서비스로 리팩토링
|
|
39
|
-
- 개발자 B의 AI → 모놀리스를 강화
|
|
40
|
-
- 개발자 C의 AI → 이미 결정된 사항을 다시 논의
|
|
41
|
-
|
|
42
|
-
공유된 방향 관리 없이는 **여러 개발자의 AI가 프로젝트를 분리시킵니다.**
|
|
43
|
-
|
|
44
|
-
kode:harness는 모든 개발자의 AI에게 동일한 목표·비목표·결정사항·프로젝트 상태를 제공하여, 누가 코딩하든 어떤 IDE를 쓰든 **하나의 방향**으로 수렴하게 합니다.
|
|
45
|
-
|
|
46
|
-
## 핵심 설계 원칙
|
|
47
|
-
|
|
48
|
-
> **경량성**: Claude Sonnet이나 GPT-4o 같은 대형 LLM뿐 아니라, 프라이빗 망의 소형 LLM(GPT OSS 120B급, 로컬 LLM 등)도 kode:harness 파일을 읽고 프로젝트 방향을 유지할 수 있어야 합니다. BMAD의 200개 이상 파일 대비 **~25개 파일, ~17K 토큰**으로 동일한 효과를 달성합니다.
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
## 주요 기능
|
|
53
|
-
|
|
54
|
-
| 기능 | 설명 |
|
|
55
|
-
|------|------|
|
|
56
|
-
| 🧭 **Direction Guard** | 모든 코딩 요청을 프로젝트 목표/비목표와 대조 후 실행 |
|
|
57
|
-
| 🧭 **Navigation Dispatcher** | Turn-by-Turn 네비게이션으로 5개 파이프라인을 따라 다음 단계 프롬프트를 자동 안내 |
|
|
58
|
-
| 🟢🔵🔴🟡🟣 **5개 파이프라인** | New Dev → Continue → Bug Fix → Direction Change → Crew-Driven |
|
|
59
|
-
| 🟣 **Crew Artifact Integration** | 외부 기획 도구 산출물(PRD, Architecture, ARB Checklist)을 직접 읽기 — 수동 복사 불필요 |
|
|
60
|
-
| 📝 **State Files** | LLM 세션 간 프로젝트 지식을 유지하는 5개 마크다운 파일 |
|
|
61
|
-
| 🛠️ **Skills** | 기획, 리뷰, 디버깅, 방향 전환을 위한 단계별 절차 10개 |
|
|
62
|
-
| 🤖 **Agents** | 워크플로를 강제하는 역할 기반 페르소나 4개 |
|
|
63
|
-
| ⚠️ **Failure Patterns** | 동일 실수 반복을 방지하는 프로젝트별 실패 기록 |
|
|
64
|
-
| 📝 **Decision Log** | 결정의 이유를 기록해 LLM이 확정된 사항을 재논의하지 않도록 방지 |
|
|
14
|
+
AI 코딩 에이전트를 위한 프로덕션급 가드레일. 컨텍스트 부패를 방지하고, 프로젝트 방향을 강제하며, 세션 간 상태를 유지합니다. **Copilot, Claude, Cursor, Codex, Windsurf, Gemini** 지원. 의존성 제로.
|
|
65
15
|
|
|
66
16
|
---
|
|
67
17
|
|
|
68
18
|
## 빠른 시작
|
|
69
19
|
|
|
70
20
|
```bash
|
|
71
|
-
#
|
|
72
|
-
npx @kodevibe/harness init
|
|
73
|
-
|
|
74
|
-
# Team 모드 (멀티 개발자)
|
|
75
|
-
npx @kodevibe/harness init --team
|
|
21
|
+
npx @kodevibe/harness init # IDE 선택
|
|
76
22
|
```
|
|
77
23
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
설치 후, LLM에게 `setup` 스킬을 실행하도록 요청하세요:
|
|
81
|
-
|
|
24
|
+
```bash
|
|
25
|
+
# 그 후 AI 에이전트에게:
|
|
82
26
|
> "setup을 실행해서 이 프로젝트를 온보딩해줘."
|
|
27
|
+
```
|
|
83
28
|
|
|
84
|
-
|
|
29
|
+
끝입니다. 이제 AI는 영속적인 메모리, 방향 가드레일, 자기 교정 루프를 갖게 됩니다.
|
|
85
30
|
|
|
86
|
-
|
|
31
|
+
<details>
|
|
32
|
+
<summary>추가 설치 옵션</summary>
|
|
87
33
|
|
|
88
34
|
```bash
|
|
35
|
+
# Team 모드 (멀티 개발자 방향 정렬)
|
|
36
|
+
npx @kodevibe/harness init --team
|
|
37
|
+
|
|
38
|
+
# 비대화형 (CI/스크립트)
|
|
89
39
|
npx @kodevibe/harness init --ide vscode
|
|
90
40
|
npx @kodevibe/harness init --ide claude
|
|
91
41
|
npx @kodevibe/harness init --ide cursor
|
|
@@ -94,8 +44,6 @@ npx @kodevibe/harness init --ide windsurf
|
|
|
94
44
|
npx @kodevibe/harness init --ide antigravity
|
|
95
45
|
```
|
|
96
46
|
|
|
97
|
-
### 옵션
|
|
98
|
-
|
|
99
47
|
| 플래그 | 설명 |
|
|
100
48
|
|--------|------|
|
|
101
49
|
| `--ide <이름>` | 대상 IDE: `vscode`, `claude`, `cursor`, `codex`, `windsurf`, `antigravity` |
|
|
@@ -106,14 +54,58 @@ npx @kodevibe/harness init --ide antigravity
|
|
|
106
54
|
| `--overwrite` | 기존 파일 덮어쓰기 (state 파일 포함) |
|
|
107
55
|
| `--version` | 버전 번호 표시 |
|
|
108
56
|
|
|
109
|
-
|
|
57
|
+
</details>
|
|
110
58
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## 문제: 컨텍스트 부패 (Context Rot)
|
|
62
|
+
|
|
63
|
+
AI 코딩 에이전트는 매 세션 제로에서 시작합니다. 세션 3에서는 세션 1의 아키텍처 결정을 잊고, 세션 10에서는 이미 확정된 사항을 다시 논의하며 자신의 이전 작업과 모순됩니다.
|
|
64
|
+
|
|
65
|
+
팀에서는 더 심각합니다 — 개발자 A의 AI는 마이크로서비스로 리팩토링하고, 개발자 B의 AI는 모놀리스를 강화합니다. **공유 가드레일 없이는 AI 에이전트가 프로젝트를 분리시킵니다.**
|
|
66
|
+
|
|
67
|
+
kode:harness는 세 가지 메커니즘으로 해결합니다:
|
|
68
|
+
|
|
69
|
+
| 메커니즘 | 방지하는 문제 |
|
|
70
|
+
|---------|-------------|
|
|
71
|
+
| **상태 영속성** | AI가 세션 간 목표, 결정, 진행 상황을 잊는 것 |
|
|
72
|
+
| **방향 가드** | AI가 프로젝트 목표에서 이탈하거나 과거 결정과 모순되는 것 |
|
|
73
|
+
| **실패 패턴** | AI가 세션 간 같은 실수를 반복하는 것 |
|
|
74
|
+
|
|
75
|
+
---
|
|
114
76
|
|
|
115
|
-
|
|
116
|
-
|
|
77
|
+
## 왜 그냥 ...을 쓰면 안 되나요?
|
|
78
|
+
|
|
79
|
+
| 접근법 | 한계 | kode:harness 차이점 |
|
|
80
|
+
|--------|------|---------------------|
|
|
81
|
+
| **`.cursorrules` / `copilot-instructions.md`** | 정적. 상태 영속성 없음, 자기 교정 없음, 세션 간 기억 없음. | 매 세션 업데이트되는 살아있는 state 파일. Direction Guard가 매 요청을 목표와 대조. |
|
|
82
|
+
| **LangChain / CrewAI** | AI 앱 구축용 런타임 오케스트레이션. AI 코딩 에이전트 방향 관리용이 아님. | IDE 안에서 작동하는 마크다운 네이티브 가드레일. 런타임 없음, SDK 없음. |
|
|
83
|
+
| **BMAD / gstack / GSD** | 1인 개발자용. 200+ 파일. 방향 관리 없음. | ~25개 파일 (~17K 토큰). Direction Guard + Decision Log. 멀티 개발자 팀 지원. |
|
|
84
|
+
| **"조심하면 되지"** | 잊을 때까지만 동작. LLM은 과거 세션에서 배우지 않음. | 자동화: `wrap-up`이 교훈 캡처, `debug`가 실패 추적, `reviewer`가 state 감사. |
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## 주요 기능
|
|
89
|
+
|
|
90
|
+
| 기능 | 설명 |
|
|
91
|
+
|------|------|
|
|
92
|
+
| 🛡️ **Direction Guard** | 모든 코딩 요청을 프로젝트 목표/비목표와 대조 후 실행 |
|
|
93
|
+
| 🧭 **Navigation Dispatcher** | 5개 파이프라인을 따라 다음 단계 프롬프트를 자동 안내 |
|
|
94
|
+
| 📝 **상태 영속성** | LLM 세션 간 프로젝트 지식을 유지하는 5개 마크다운 파일 |
|
|
95
|
+
| 🔄 **5개 파이프라인** | 🟢 신규 → 🔵 계속 → 🔴 버그 수정 → 🟡 방향 전환 → 🟣 Crew 기반 |
|
|
96
|
+
| 🛠️ **10개 스킬** | 단계별 절차: setup, debug, breakdown, review, pivot 등 |
|
|
97
|
+
| 🤖 **4개 에이전트** | 역할 기반 페르소나: pm, reviewer, lead, architect |
|
|
98
|
+
| ⚠️ **실패 패턴** | 세션 간 같은 실수를 방지하는 프로젝트별 실패 기록 |
|
|
99
|
+
| 📋 **Decision Log** | 결정의 이유를 기록해 LLM이 확정된 사항을 재논의하지 않도록 방지 |
|
|
100
|
+
| 🟣 **Crew Artifact Integration** | 외부 기획 산출물 (PRD, Architecture, ARB Checklist) 직접 읽기 |
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## 헬스체크
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
npx @kodevibe/harness doctor # 파일 설치 상태 확인
|
|
108
|
+
npx @kodevibe/harness validate # state 파일에 실제 내용 확인
|
|
117
109
|
```
|
|
118
110
|
|
|
119
111
|
---
|
|
@@ -267,14 +259,13 @@ npx @kodevibe/harness init --team
|
|
|
267
259
|
|
|
268
260
|
---
|
|
269
261
|
|
|
270
|
-
## 왜
|
|
262
|
+
## 왜 만들었나
|
|
271
263
|
|
|
272
|
-
|
|
264
|
+
기존 AI 코딩 프레임워크는 **AI가 무엇을 하는지** — 코드 생성, 테스트 실행, 배포에 집중합니다. 하지만 진짜 문제는 능력이 아닙니다. **방향**입니다.
|
|
273
265
|
|
|
274
|
-
|
|
275
|
-
kode:harness는 **AI가 어디로 가는지** — 모든 개발자의 AI가 같은 방향으로 움직이는지에 집중합니다.
|
|
266
|
+
혼자 개발하면 방향이 일관됩니다. 하지만 팀에서는 각 개발자의 AI가 독립적으로 이탈합니다. 그리고 혼자 개발해도 세션 간 방향을 잃습니다 — 우리가 **컨텍스트 부패(Context Rot)**라 부르는 현상입니다. AI는 아키텍처 결정을 잊고, 확정된 사항을 재논의하며, 자신의 이전 작업과 모순됩니다.
|
|
276
267
|
|
|
277
|
-
|
|
268
|
+
kode:harness는 **AI가 어디로 가는지**에 집중합니다. 개발자, IDE, 시간을 넘어 모든 AI 세션에 동일한 목표, 결정, 프로젝트 상태를 제공합니다. 이 근간이 되는 원칙이 **harness engineering** — 어떤 LLM이든 읽을 수 있는 경량 마크다운 네이티브 가드레일입니다.
|
|
278
269
|
|
|
279
270
|
### Crew Artifact Integration (🟣 파이프라인)
|
|
280
271
|
|
|
@@ -292,7 +283,7 @@ Bootstrap이 `docs/crew/`, `docs/PM/`, `docs/Analyst/`, `docs/ARB/`에서 crew
|
|
|
292
283
|
|
|
293
284
|
원본 crew 문서는 **절대 수정되지 않습니다**. 인덱스와 트래커만 생성됩니다.
|
|
294
285
|
|
|
295
|
-
### 비교
|
|
286
|
+
### 다른 프레임워크와의 비교
|
|
296
287
|
|
|
297
288
|
| | BMAD v6.2.2 | gstack v0.15.1 | GSD v1.33.0 | **kode:harness** |
|
|
298
289
|
|---|---|---|---|---|
|
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 (pm, reviewer, lead)
|
|
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
|
-
After installation, ask your LLM to run the `setup` skill:
|
|
65
|
-
|
|
24
|
+
```bash
|
|
25
|
+
# Then tell your AI agent:
|
|
66
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
|
|
|
@@ -240,11 +235,13 @@ These 8 rules are enforced across all skills and agents. They form the quality b
|
|
|
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
|
|---|---|---|---|---|
|
package/harness/agents/pm.md
CHANGED
|
@@ -63,6 +63,36 @@ Apply these insights when creating the implementation plan. If the memory file i
|
|
|
63
63
|
|
|
64
64
|
> **Team Mode**: In Team mode, agent memory is personal (`.harness/agent-memory/`). Each developer accumulates their own planning insights.
|
|
65
65
|
|
|
66
|
+
### Step 0.7: Feature Roadmap Planning (Draft & Correct)
|
|
67
|
+
|
|
68
|
+
**Trigger**: `docs/project-brief.md`에 `## Feature Roadmap` 섹션이 없을 때
|
|
69
|
+
|
|
70
|
+
<!-- CREW_MODE_START -->
|
|
71
|
+
**Crew 파이프라인(🟣)**: FR목록이 이미 Roadmap 역할을 하므로 이 Step을 skip한다.
|
|
72
|
+
<!-- CREW_MODE_END -->
|
|
73
|
+
|
|
74
|
+
1. `docs/project-brief.md`의 Goals + `docs/dependency-map.md`의 현재 모듈 구조를 읽는다
|
|
75
|
+
2. Phase 구조의 Feature Roadmap **초안**을 생성한다:
|
|
76
|
+
```
|
|
77
|
+
## Feature Roadmap
|
|
78
|
+
|
|
79
|
+
### Phase 1 — Core (Goal 달성 필수)
|
|
80
|
+
- [ ] F-001: [기능명] — [어떤 Goal에 대응하는지]
|
|
81
|
+
- [ ] F-002: ...
|
|
82
|
+
|
|
83
|
+
### Phase 2 — Enhancement (사용성/완성도)
|
|
84
|
+
- [ ] F-003: ...
|
|
85
|
+
|
|
86
|
+
### Phase 3 — Nice-to-have
|
|
87
|
+
- [ ] F-004: ...
|
|
88
|
+
```
|
|
89
|
+
3. 사용자에게 초안을 제시한다: **"이 Feature Roadmap을 검토하고, 추가/삭제/순서 변경을 알려주세요."**
|
|
90
|
+
> **물어보지 말고, 초안을 만들어서 교정받는다.** 빈 칸을 채우는 것보다 틀린 것을 고치는 것이 쉽다.
|
|
91
|
+
4. 사용자 교정을 반영한 최종 Roadmap을 `docs/project-brief.md`에 `## Feature Roadmap` 섹션으로 기록한다
|
|
92
|
+
5. Feature Roadmap이 확정되면 아래 "For New Feature" 절차로 진행한다
|
|
93
|
+
|
|
94
|
+
> **pivot 이후**: pivot이 `project-brief.md`를 업데이트하면, pm은 변경된 Roadmap을 읽고 Checkpoint에서 반영한다.
|
|
95
|
+
|
|
66
96
|
### For New Feature
|
|
67
97
|
|
|
68
98
|
1. Read `docs/project-brief.md` to understand project vision, goals, **non-goals**, and **Decision Log**
|
|
@@ -249,6 +279,50 @@ Use this format when Crew Artifact Index exists in project-brief.md. If no Artif
|
|
|
249
279
|
```
|
|
250
280
|
<!-- CREW_MODE_END -->
|
|
251
281
|
|
|
282
|
+
## Sprint Completion Checkpoint
|
|
283
|
+
|
|
284
|
+
**Trigger**: 현재 Sprint의 모든 Story가 ✅ 완료되었을 때 (reviewer pass → pm checkpoint)
|
|
285
|
+
|
|
286
|
+
이 절차는 Sprint 종료 시 자동으로 실행된다. "계속할까요?"가 아니라 **구체적 선택을 강제**한다.
|
|
287
|
+
|
|
288
|
+
### 절차
|
|
289
|
+
|
|
290
|
+
1. **진척 현황 읽기**:
|
|
291
|
+
<!-- CREW_MODE_START -->
|
|
292
|
+
- 🟣 crew 파이프라인: `docs/project-brief.md`의 Validation Tracker에서 FR Coverage를 읽는다
|
|
293
|
+
<!-- CREW_MODE_END -->
|
|
294
|
+
- 🟢🔵 no-crew 파이프라인: `docs/project-brief.md`의 Feature Roadmap을 읽는다
|
|
295
|
+
|
|
296
|
+
2. **Phase별 진척 표시**:
|
|
297
|
+
```
|
|
298
|
+
📊 Feature Roadmap Progress
|
|
299
|
+
Phase 1 (Core): ████████░░ 4/5
|
|
300
|
+
Phase 2 (Enhancement): ░░░░░░░░░░ 0/3
|
|
301
|
+
Phase 3 (Nice-to-have): ░░░░░░░░░░ 0/2
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
3. **선택지 제시** (Yes/No 아님 — Selection Forcing):
|
|
305
|
+
```
|
|
306
|
+
다음 Sprint에 포함할 기능을 선택하세요:
|
|
307
|
+
|
|
308
|
+
Phase 1 (Core) — 미완료:
|
|
309
|
+
[ ] F-005: [기능명]
|
|
310
|
+
|
|
311
|
+
Phase 2 (Enhancement):
|
|
312
|
+
[ ] F-006: [기능명]
|
|
313
|
+
[ ] F-007: [기능명]
|
|
314
|
+
|
|
315
|
+
🏁 마무리: 현재 상태로 프로젝트를 완료하고 wrap-up 진행
|
|
316
|
+
```
|
|
317
|
+
> **"계속"은 선택지에 없다.** 사용자는 구체적 기능을 골라야 하거나, 명시적으로 "마무리"를 선택해야 한다.
|
|
318
|
+
|
|
319
|
+
4. **사용자 선택에 따라 분기**:
|
|
320
|
+
- **기능 선택** → 선택된 기능으로 Sprint 계획 (위의 "For New Feature" 절차 진행)
|
|
321
|
+
- **"마무리" 선택** → 🧭 Next Step을 `wrap-up`으로 출력
|
|
322
|
+
- Feature Roadmap에 없는 기능 추가 요청 → Roadmap에 먼저 추가한 후 Sprint 계획
|
|
323
|
+
|
|
324
|
+
5. **Roadmap 업데이트**: 완료된 기능의 체크박스를 `[x]`로 변경하고 `docs/project-brief.md`에 기록
|
|
325
|
+
|
|
252
326
|
### Architecture Query Response
|
|
253
327
|
```markdown
|
|
254
328
|
## Module: [name]
|
package/harness/core-rules.md
CHANGED
|
@@ -98,7 +98,7 @@ When a skill or agent reports STATUS: DONE, output the next step in this format:
|
|
|
98
98
|
| `lead` (story started) | [Coding] | "S{N}-{M} 구현을 시작해줘" → 완료 후 **새 채팅**에서 `@reviewer` 호출 |
|
|
99
99
|
| [Coding done] | `reviewer` | "S{N}-{M} 코드를 리뷰해줘" |
|
|
100
100
|
| `reviewer` (pass, more stories) | Commit → `lead` | \"커밋 후 다음 Story는?\" |
|
|
101
|
-
| `reviewer` (pass, all done) | Commit → `
|
|
101
|
+
| `reviewer` (pass, sprint all done) | Commit → `pm` checkpoint | \"커밋 후 Sprint 완료 — pm checkpoint 실행\" |
|
|
102
102
|
| `reviewer` (STATE-AUDIT) | `wrap-up` | "state 파일을 정리하고 세션 마무리해줘" |
|
|
103
103
|
| `debug` | `reviewer` | "수정한 코드를 리뷰해줘" |
|
|
104
104
|
| `pivot` | `pm` | "변경된 방향에 맞춰 재계획해줘" |
|