@tienne/gestalt 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +13 -2
- package/README.ko.md +115 -3
- package/README.md +142 -11
- package/dist/package.json +1 -1
- package/dist/src/core/types.d.ts +85 -0
- package/dist/src/core/types.d.ts.map +1 -1
- package/dist/src/execute/audit-engine.d.ts +20 -0
- package/dist/src/execute/audit-engine.d.ts.map +1 -0
- package/dist/src/execute/audit-engine.js +49 -0
- package/dist/src/execute/audit-engine.js.map +1 -0
- package/dist/src/execute/parallel-groups.d.ts +9 -0
- package/dist/src/execute/parallel-groups.d.ts.map +1 -0
- package/dist/src/execute/parallel-groups.js +39 -0
- package/dist/src/execute/parallel-groups.js.map +1 -0
- package/dist/src/execute/passthrough-engine.d.ts +2 -0
- package/dist/src/execute/passthrough-engine.d.ts.map +1 -1
- package/dist/src/execute/passthrough-engine.js +6 -0
- package/dist/src/execute/passthrough-engine.js.map +1 -1
- package/dist/src/execute/repository.d.ts.map +1 -1
- package/dist/src/execute/repository.js +3 -0
- package/dist/src/execute/repository.js.map +1 -1
- package/dist/src/execute/session.d.ts +3 -1
- package/dist/src/execute/session.d.ts.map +1 -1
- package/dist/src/execute/session.js +31 -0
- package/dist/src/execute/session.js.map +1 -1
- package/dist/src/interview/context-compressor.d.ts +17 -0
- package/dist/src/interview/context-compressor.d.ts.map +1 -0
- package/dist/src/interview/context-compressor.js +40 -0
- package/dist/src/interview/context-compressor.js.map +1 -0
- package/dist/src/interview/mini-interview-engine.d.ts +33 -0
- package/dist/src/interview/mini-interview-engine.d.ts.map +1 -0
- package/dist/src/interview/mini-interview-engine.js +103 -0
- package/dist/src/interview/mini-interview-engine.js.map +1 -0
- package/dist/src/interview/passthrough-engine.d.ts +7 -0
- package/dist/src/interview/passthrough-engine.d.ts.map +1 -1
- package/dist/src/interview/passthrough-engine.js +15 -1
- package/dist/src/interview/passthrough-engine.js.map +1 -1
- package/dist/src/interview/session.d.ts +2 -1
- package/dist/src/interview/session.d.ts.map +1 -1
- package/dist/src/interview/session.js +5 -0
- package/dist/src/interview/session.js.map +1 -1
- package/dist/src/mcp/schemas.d.ts +75 -9
- package/dist/src/mcp/schemas.d.ts.map +1 -1
- package/dist/src/mcp/schemas.js +24 -2
- package/dist/src/mcp/schemas.js.map +1 -1
- package/dist/src/mcp/server.d.ts.map +1 -1
- package/dist/src/mcp/server.js +5 -2
- package/dist/src/mcp/server.js.map +1 -1
- package/dist/src/mcp/tools/execute-passthrough.d.ts.map +1 -1
- package/dist/src/mcp/tools/execute-passthrough.js +174 -1
- package/dist/src/mcp/tools/execute-passthrough.js.map +1 -1
- package/dist/src/mcp/tools/interview-passthrough.d.ts.map +1 -1
- package/dist/src/mcp/tools/interview-passthrough.js +45 -2
- package/dist/src/mcp/tools/interview-passthrough.js.map +1 -1
- package/dist/src/mcp/tools/interview.d.ts.map +1 -1
- package/dist/src/mcp/tools/interview.js +8 -0
- package/dist/src/mcp/tools/interview.js.map +1 -1
- package/dist/src/mcp/tools/spec-passthrough.d.ts +2 -1
- package/dist/src/mcp/tools/spec-passthrough.d.ts.map +1 -1
- package/dist/src/mcp/tools/spec-passthrough.js +54 -3
- package/dist/src/mcp/tools/spec-passthrough.js.map +1 -1
- package/dist/src/mcp/tools/spec.d.ts.map +1 -1
- package/dist/src/mcp/tools/spec.js +2 -0
- package/dist/src/mcp/tools/spec.js.map +1 -1
- package/dist/src/memory/memory-context-injector.d.ts +26 -0
- package/dist/src/memory/memory-context-injector.d.ts.map +1 -0
- package/dist/src/memory/memory-context-injector.js +67 -0
- package/dist/src/memory/memory-context-injector.js.map +1 -0
- package/dist/src/memory/project-memory-store.d.ts +14 -0
- package/dist/src/memory/project-memory-store.d.ts.map +1 -0
- package/dist/src/memory/project-memory-store.js +105 -0
- package/dist/src/memory/project-memory-store.js.map +1 -0
- package/dist/src/memory/user-profile-store.d.ts +13 -0
- package/dist/src/memory/user-profile-store.d.ts.map +1 -0
- package/dist/src/memory/user-profile-store.js +89 -0
- package/dist/src/memory/user-profile-store.js.map +1 -0
- package/dist/src/spec/passthrough-generator.d.ts +2 -0
- package/dist/src/spec/passthrough-generator.d.ts.map +1 -1
- package/dist/src/spec/passthrough-generator.js +34 -0
- package/dist/src/spec/passthrough-generator.js.map +1 -1
- package/dist/src/spec/templates.d.ts +12 -0
- package/dist/src/spec/templates.d.ts.map +1 -0
- package/dist/src/spec/templates.js +103 -0
- package/dist/src/spec/templates.js.map +1 -0
- package/dist/src/spec/text-based-spec-generator.d.ts +15 -0
- package/dist/src/spec/text-based-spec-generator.d.ts.map +1 -0
- package/dist/src/spec/text-based-spec-generator.js +63 -0
- package/dist/src/spec/text-based-spec-generator.js.map +1 -0
- package/package.json +1 -1
- package/README.backup.md +0 -442
package/CLAUDE.md
CHANGED
|
@@ -84,7 +84,7 @@ interface GestaltConfig {
|
|
|
84
84
|
|
|
85
85
|
## MCP Tools
|
|
86
86
|
- `ges_interview`: action=[start|respond|score|complete]
|
|
87
|
-
- `ges_generate_spec`: sessionId, force?
|
|
87
|
+
- `ges_generate_spec`: sessionId? (optional), text? (optional), force?, spec? (passthrough)
|
|
88
88
|
- `ges_execute`: action=[start|plan_step|plan_complete|execute_start|execute_task|evaluate|status|evolve_fix|evolve|evolve_patch|evolve_re_execute|evolve_lateral|evolve_lateral_result|role_match|role_consensus]
|
|
89
89
|
- `ges_create_agent`: action=[start|submit] — 인터뷰 기반 커스텀 Role Agent 생성
|
|
90
90
|
- `ges_status`: sessionId?
|
|
@@ -159,8 +159,18 @@ ges_interview({ action: "complete", sessionId: "<id>" })
|
|
|
159
159
|
```
|
|
160
160
|
|
|
161
161
|
**Step 6: Spec 생성 (2단계)**
|
|
162
|
+
|
|
163
|
+
두 가지 입력 경로 중 하나를 선택한다.
|
|
164
|
+
|
|
162
165
|
```
|
|
163
|
-
//
|
|
166
|
+
// Text-based 경로 (인터뷰 불필요)
|
|
167
|
+
ges_generate_spec({ text: "..." })
|
|
168
|
+
→ specContext (systemPrompt, specPrompt) 반환
|
|
169
|
+
|
|
170
|
+
ges_generate_spec({ text: "...", spec: {...} })
|
|
171
|
+
→ Zod 검증 후 최종 Spec 반환 + .gestalt/memory.json 자동 업데이트
|
|
172
|
+
|
|
173
|
+
// Interview 기반 경로 (6a: specContext 요청)
|
|
164
174
|
ges_generate_spec({ sessionId: "<id>" })
|
|
165
175
|
→ specContext (systemPrompt, specPrompt, allRounds) 반환
|
|
166
176
|
|
|
@@ -346,6 +356,7 @@ ges_execute({ action: "role_consensus", sessionId: "<id>", consensus: {...} })
|
|
|
346
356
|
- Spec의 `gestaltAnalysis[].principle`은 enum: `closure | proximity | similarity | figure_ground | continuity`
|
|
347
357
|
- `ontologySchema.entities[]`: `{ name, description, attributes[] }`
|
|
348
358
|
- `ontologySchema.relations[]`: `{ from, to, type }`
|
|
359
|
+
- text-based 경로: `sessionId` 불필요, 생성된 spec의 `interviewSessionId`는 `"text-input"`으로 설정
|
|
349
360
|
|
|
350
361
|
## Project Structure
|
|
351
362
|
- `src/core/` — types, errors, Result monad, config, constants
|
package/README.ko.md
CHANGED
|
@@ -94,6 +94,26 @@ Claude Code
|
|
|
94
94
|
|
|
95
95
|
---
|
|
96
96
|
|
|
97
|
+
## Project Memory
|
|
98
|
+
|
|
99
|
+
Spec과 실행 결과는 레포 루트의 `.gestalt/memory.json`에 자동으로 기록돼요.
|
|
100
|
+
|
|
101
|
+
```json
|
|
102
|
+
{
|
|
103
|
+
"specHistory": [
|
|
104
|
+
{ "specId": "...", "goal": "Build a user auth system", "sourceType": "text" }
|
|
105
|
+
],
|
|
106
|
+
"executionHistory": [],
|
|
107
|
+
"architectureDecisions": []
|
|
108
|
+
}
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
- **커밋하세요** — `.gestalt/memory.json`은 일반 JSON 파일이에요. 커밋하면 팀원도 `git pull` 후 이전 결정 사항을 그대로 이어받을 수 있어요.
|
|
112
|
+
- **컨텍스트 주입** — 다음 Spec을 생성할 때 이전 목표와 아키텍처 결정 사항이 프롬프트에 자동으로 주입돼요.
|
|
113
|
+
- **User Profile** — 개인 설정은 `~/.gestalt/profile.json`에 저장되며 커밋 대상에 포함되지 않아요.
|
|
114
|
+
|
|
115
|
+
---
|
|
116
|
+
|
|
97
117
|
## 설치
|
|
98
118
|
|
|
99
119
|
### 옵션 1: Claude Code 플러그인 (권장)
|
|
@@ -188,11 +208,43 @@ claude mcp add gestalt -- npx -y @tienne/gestalt
|
|
|
188
208
|
8라운드 → 모호성: 0.19 ✓ Spec 생성 준비 완료
|
|
189
209
|
```
|
|
190
210
|
|
|
211
|
+
#### 인터뷰가 길어질 때 (Context Compression)
|
|
212
|
+
|
|
213
|
+
라운드가 5개를 초과하면 Gestalt가 자동으로 압축을 제안해요. `compress` action을 사용하면 이전 대화를 요약해 컨텍스트를 줄일 수 있어요:
|
|
214
|
+
|
|
215
|
+
```
|
|
216
|
+
1. respond 응답에 needsCompression: true + compressionContext 포함
|
|
217
|
+
2. ges_interview({ action: "compress", sessionId }) → compressionContext 반환
|
|
218
|
+
3. caller가 요약 생성 후 제출 → 세션에 저장
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
이후 라운드에서는 압축된 요약이 자동으로 주입돼요.
|
|
222
|
+
|
|
191
223
|
---
|
|
192
224
|
|
|
193
225
|
### 2단계 — Spec 생성
|
|
194
226
|
|
|
195
|
-
|
|
227
|
+
**옵션 A — 텍스트로 바로 생성 (인터뷰 불필요):**
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
ges_generate_spec({ text: "Stripe로 결제 플로우 구현" })
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
**옵션 A-2 — 내장 템플릿 사용:**
|
|
234
|
+
|
|
235
|
+
3가지 내장 템플릿으로 빠르게 시작할 수 있어요:
|
|
236
|
+
|
|
237
|
+
| 템플릿 ID | 설명 |
|
|
238
|
+
|-----------|------|
|
|
239
|
+
| `rest-api` | REST API 서버 (인증, CRUD, OpenAPI) |
|
|
240
|
+
| `react-dashboard` | React 대시보드 앱 (차트, 필터, 반응형) |
|
|
241
|
+
| `cli-tool` | CLI 도구 (서브커맨드, 설정, 배포) |
|
|
242
|
+
|
|
243
|
+
```bash
|
|
244
|
+
ges_generate_spec({ text: "JWT 인증이 포함된 API", template: "rest-api" })
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
**옵션 B — 완료된 인터뷰에서 생성:**
|
|
196
248
|
|
|
197
249
|
```bash
|
|
198
250
|
/spec
|
|
@@ -233,6 +285,62 @@ Spec을 의존성 기반 실행 계획으로 변환하고 실행해요:
|
|
|
233
285
|
- Jaccard 유사도 기반 측정
|
|
234
286
|
- Threshold를 초과하면 소급 검토가 자동으로 시작돼요
|
|
235
287
|
|
|
288
|
+
#### 병렬 실행 (Parallel Groups)
|
|
289
|
+
|
|
290
|
+
`plan_complete` 응답에 `parallelGroups: string[][]`이 포함돼요. 의존성이 없는 태스크는 같은 그룹에 배치되어 동시 실행할 수 있어요:
|
|
291
|
+
|
|
292
|
+
```json
|
|
293
|
+
"parallelGroups": [
|
|
294
|
+
["setup-db", "setup-env"], // 동시 실행 가능
|
|
295
|
+
["create-schema"], // 위 그룹 완료 후 실행
|
|
296
|
+
["seed-data", "run-tests"] // 동시 실행 가능
|
|
297
|
+
]
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
#### 실행 이어하기 (Resume)
|
|
301
|
+
|
|
302
|
+
실행 중 세션이 중단되어도 이어서 계속할 수 있어요:
|
|
303
|
+
|
|
304
|
+
```bash
|
|
305
|
+
ges_execute({ action: "resume", sessionId: "<id>" })
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
`ResumeContext`를 반환해요: 완료된 태스크 목록, 다음 태스크, 진행률(%). `ges_status` 응답에도 `resumeContext`가 자동으로 포함돼요.
|
|
309
|
+
|
|
310
|
+
#### Brownfield 감사 (Audit)
|
|
311
|
+
|
|
312
|
+
기존 코드베이스가 있을 때 Spec 대비 구현 현황을 분석할 수 있어요:
|
|
313
|
+
|
|
314
|
+
```bash
|
|
315
|
+
# 1단계: 감사 컨텍스트 요청
|
|
316
|
+
ges_execute({ action: "audit", sessionId: "<id>" })
|
|
317
|
+
→ auditContext (systemPrompt, auditPrompt) 반환
|
|
318
|
+
|
|
319
|
+
# 2단계: 코드베이스 스냅샷 + 감사 결과 제출
|
|
320
|
+
ges_execute({
|
|
321
|
+
action: "audit",
|
|
322
|
+
sessionId: "<id>",
|
|
323
|
+
codebaseSnapshot: "...",
|
|
324
|
+
auditResult: { implementedACs: [0,2], partialACs: [1], missingACs: [3], gapAnalysis: "..." }
|
|
325
|
+
})
|
|
326
|
+
```
|
|
327
|
+
|
|
328
|
+
#### Sub-agent 스포닝 (Spawn)
|
|
329
|
+
|
|
330
|
+
복잡한 태스크를 동적으로 하위 태스크로 분해할 수 있어요:
|
|
331
|
+
|
|
332
|
+
```bash
|
|
333
|
+
ges_execute({
|
|
334
|
+
action: "spawn",
|
|
335
|
+
sessionId: "<id>",
|
|
336
|
+
parentTaskId: "task-3",
|
|
337
|
+
subTasks: [
|
|
338
|
+
{ title: "DB 스키마 작성", description: "..." },
|
|
339
|
+
{ title: "마이그레이션 실행", description: "...", dependsOn: ["spawned-<id>"] }
|
|
340
|
+
]
|
|
341
|
+
})
|
|
342
|
+
```
|
|
343
|
+
|
|
236
344
|
---
|
|
237
345
|
|
|
238
346
|
### 4단계 — Evaluate (평가)
|
|
@@ -455,15 +563,19 @@ Claude Code
|
|
|
455
563
|
│ Interview Engine │
|
|
456
564
|
│ ├─ GestaltPrincipleSelector │
|
|
457
565
|
│ ├─ AmbiguityScorer │
|
|
458
|
-
│
|
|
566
|
+
│ ├─ SessionManager │
|
|
567
|
+
│ └─ ContextCompressor │
|
|
459
568
|
│ │
|
|
460
569
|
│ Spec Generator │
|
|
461
|
-
│
|
|
570
|
+
│ ├─ PassthroughSpecGenerator │
|
|
571
|
+
│ └─ SpecTemplateRegistry │
|
|
462
572
|
│ │
|
|
463
573
|
│ Execute Engine │
|
|
464
574
|
│ ├─ DAG Validator │
|
|
575
|
+
│ ├─ ParallelGroupsCalculator │
|
|
465
576
|
│ ├─ DriftDetector │
|
|
466
577
|
│ ├─ EvaluationEngine │
|
|
578
|
+
│ ├─ AuditEngine │
|
|
467
579
|
│ └─ ExecuteSessionManager │
|
|
468
580
|
│ │
|
|
469
581
|
│ Resilience Engine │
|
package/README.md
CHANGED
|
@@ -27,22 +27,41 @@ Gestalt is an MCP (Model Context Protocol) server that runs inside Claude Code.
|
|
|
27
27
|
|
|
28
28
|
---
|
|
29
29
|
|
|
30
|
-
##
|
|
30
|
+
## Quick Start
|
|
31
31
|
|
|
32
|
-
|
|
32
|
+
**Choose your path:**
|
|
33
|
+
|
|
34
|
+
### For Non-Developers (Claude Desktop)
|
|
35
|
+
|
|
36
|
+
No terminal. No API key. Just Claude Desktop.
|
|
37
|
+
|
|
38
|
+
→ **[5-minute Getting Started Guide](./docs/getting-started.md)**
|
|
39
|
+
|
|
40
|
+
1. Open Claude Desktop
|
|
41
|
+
2. Install the Gestalt plugin
|
|
42
|
+
3. Type `/interview "your idea"` — Gestalt guides you through the rest
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
### For Developers (MCP Integration)
|
|
33
47
|
|
|
34
48
|
```bash
|
|
35
|
-
#
|
|
36
|
-
/
|
|
49
|
+
# Step 1: Add to marketplace (one-time setup)
|
|
50
|
+
/plugin marketplace add tienne/gestalt
|
|
37
51
|
|
|
38
|
-
#
|
|
39
|
-
/
|
|
52
|
+
# Step 2: Install the plugin
|
|
53
|
+
/plugin install gestalt@gestalt
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Then in any Claude Code session:
|
|
40
57
|
|
|
41
|
-
|
|
58
|
+
```bash
|
|
59
|
+
/interview "user authentication system"
|
|
60
|
+
/spec
|
|
42
61
|
/execute
|
|
43
62
|
```
|
|
44
63
|
|
|
45
|
-
|
|
64
|
+
→ **[Full MCP Reference](./docs/mcp-reference.md)** — all tools, parameters, and examples
|
|
46
65
|
|
|
47
66
|
---
|
|
48
67
|
|
|
@@ -89,6 +108,26 @@ You (in Claude Code)
|
|
|
89
108
|
|
|
90
109
|
---
|
|
91
110
|
|
|
111
|
+
## Project Memory
|
|
112
|
+
|
|
113
|
+
Every spec and execution result is automatically recorded in `.gestalt/memory.json` at your repo root.
|
|
114
|
+
|
|
115
|
+
```json
|
|
116
|
+
{
|
|
117
|
+
"specHistory": [
|
|
118
|
+
{ "specId": "...", "goal": "Build a user auth system", "sourceType": "text" }
|
|
119
|
+
],
|
|
120
|
+
"executionHistory": [],
|
|
121
|
+
"architectureDecisions": []
|
|
122
|
+
}
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
- **Commit it** — `.gestalt/memory.json` is plain JSON. Commit it and teammates inherit all prior decisions on `git pull`.
|
|
126
|
+
- **Context injection** — When generating the next spec, prior goals and architecture decisions are automatically injected into the prompt.
|
|
127
|
+
- **User profile** — Personal preferences are stored in `~/.gestalt/profile.json` and are never committed.
|
|
128
|
+
|
|
129
|
+
---
|
|
130
|
+
|
|
92
131
|
## Installation
|
|
93
132
|
|
|
94
133
|
### Option 1: Claude Code Plugin (Recommended)
|
|
@@ -183,11 +222,43 @@ Round 4 → ambiguity: 0.45 (getting clearer)
|
|
|
183
222
|
Round 8 → ambiguity: 0.19 ✓ ready for Spec
|
|
184
223
|
```
|
|
185
224
|
|
|
225
|
+
#### Long interviews: Context Compression
|
|
226
|
+
|
|
227
|
+
When rounds exceed 5, Gestalt automatically signals that compression is available. Use the `compress` action to summarize earlier rounds and keep the context window lean:
|
|
228
|
+
|
|
229
|
+
```
|
|
230
|
+
1. respond returns needsCompression: true + compressionContext
|
|
231
|
+
2. ges_interview({ action: "compress", sessionId }) → compressionContext
|
|
232
|
+
3. Caller generates summary → submits it → stored in session
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
The compressed summary is automatically injected into all subsequent rounds.
|
|
236
|
+
|
|
186
237
|
---
|
|
187
238
|
|
|
188
239
|
### Step 2 — Spec Generation
|
|
189
240
|
|
|
190
|
-
|
|
241
|
+
**Option A — From text (no interview required):**
|
|
242
|
+
|
|
243
|
+
```bash
|
|
244
|
+
ges_generate_spec({ text: "Build a checkout flow with Stripe" })
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
**Option A-2 — With a built-in template:**
|
|
248
|
+
|
|
249
|
+
Three starter templates pre-fill common constraints and acceptance criteria:
|
|
250
|
+
|
|
251
|
+
| Template ID | Description |
|
|
252
|
+
|-------------|-------------|
|
|
253
|
+
| `rest-api` | REST API server with auth, CRUD, and OpenAPI |
|
|
254
|
+
| `react-dashboard` | React dashboard with charts, filters, and responsive layout |
|
|
255
|
+
| `cli-tool` | CLI tool with subcommands, config, and distribution |
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
ges_generate_spec({ text: "API with JWT authentication", template: "rest-api" })
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
**Option B — From a completed interview:**
|
|
191
262
|
|
|
192
263
|
```bash
|
|
193
264
|
/spec
|
|
@@ -228,6 +299,62 @@ Transforms the Spec into a dependency-aware execution plan and runs it:
|
|
|
228
299
|
- Jaccard similarity-based measurement
|
|
229
300
|
- Auto-triggers a retrospective when drift exceeds threshold
|
|
230
301
|
|
|
302
|
+
#### Parallel execution groups
|
|
303
|
+
|
|
304
|
+
The `plan_complete` response includes `parallelGroups: string[][]`. Tasks with no mutual dependencies land in the same group and can be executed concurrently:
|
|
305
|
+
|
|
306
|
+
```json
|
|
307
|
+
"parallelGroups": [
|
|
308
|
+
["setup-db", "setup-env"], // run in parallel
|
|
309
|
+
["create-schema"], // after group above
|
|
310
|
+
["seed-data", "run-tests"] // run in parallel
|
|
311
|
+
]
|
|
312
|
+
```
|
|
313
|
+
|
|
314
|
+
#### Resuming an interrupted execution
|
|
315
|
+
|
|
316
|
+
Pick up where you left off when a session is interrupted:
|
|
317
|
+
|
|
318
|
+
```bash
|
|
319
|
+
ges_execute({ action: "resume", sessionId: "<id>" })
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
Returns `ResumeContext`: completed task IDs, next task, and `progressPercent`. The `ges_status` response also includes `resumeContext` automatically for any executing session.
|
|
323
|
+
|
|
324
|
+
#### Brownfield audit
|
|
325
|
+
|
|
326
|
+
When a codebase already exists, audit it against the Spec before executing new tasks:
|
|
327
|
+
|
|
328
|
+
```bash
|
|
329
|
+
# Step 1: request audit context
|
|
330
|
+
ges_execute({ action: "audit", sessionId: "<id>" })
|
|
331
|
+
→ auditContext (systemPrompt, auditPrompt)
|
|
332
|
+
|
|
333
|
+
# Step 2: submit codebase snapshot + audit result
|
|
334
|
+
ges_execute({
|
|
335
|
+
action: "audit",
|
|
336
|
+
sessionId: "<id>",
|
|
337
|
+
codebaseSnapshot: "...",
|
|
338
|
+
auditResult: { implementedACs: [0,2], partialACs: [1], missingACs: [3], gapAnalysis: "..." }
|
|
339
|
+
})
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
#### Sub-agent spawning
|
|
343
|
+
|
|
344
|
+
Decompose a complex task into sub-tasks dynamically during execution:
|
|
345
|
+
|
|
346
|
+
```bash
|
|
347
|
+
ges_execute({
|
|
348
|
+
action: "spawn",
|
|
349
|
+
sessionId: "<id>",
|
|
350
|
+
parentTaskId: "task-3",
|
|
351
|
+
subTasks: [
|
|
352
|
+
{ title: "Write DB schema", description: "..." },
|
|
353
|
+
{ title: "Run migration", description: "...", dependsOn: ["spawned-<id>"] }
|
|
354
|
+
]
|
|
355
|
+
})
|
|
356
|
+
```
|
|
357
|
+
|
|
231
358
|
---
|
|
232
359
|
|
|
233
360
|
### Step 4 — Evaluate
|
|
@@ -448,15 +575,19 @@ Claude Code (you)
|
|
|
448
575
|
│ Interview Engine │
|
|
449
576
|
│ ├─ GestaltPrincipleSelector │
|
|
450
577
|
│ ├─ AmbiguityScorer │
|
|
451
|
-
│
|
|
578
|
+
│ ├─ SessionManager │
|
|
579
|
+
│ └─ ContextCompressor │
|
|
452
580
|
│ │
|
|
453
581
|
│ Spec Generator │
|
|
454
|
-
│
|
|
582
|
+
│ ├─ PassthroughSpecGenerator │
|
|
583
|
+
│ └─ SpecTemplateRegistry │
|
|
455
584
|
│ │
|
|
456
585
|
│ Execute Engine │
|
|
457
586
|
│ ├─ DAG Validator │
|
|
587
|
+
│ ├─ ParallelGroupsCalculator │
|
|
458
588
|
│ ├─ DriftDetector │
|
|
459
589
|
│ ├─ EvaluationEngine │
|
|
590
|
+
│ ├─ AuditEngine │
|
|
460
591
|
│ └─ ExecuteSessionManager │
|
|
461
592
|
│ │
|
|
462
593
|
│ Resilience Engine │
|
package/dist/package.json
CHANGED
package/dist/src/core/types.d.ts
CHANGED
|
@@ -35,6 +35,11 @@ export interface InterviewRound {
|
|
|
35
35
|
gestaltFocus: GestaltPrinciple;
|
|
36
36
|
timestamp: string;
|
|
37
37
|
}
|
|
38
|
+
export interface CompressedContext {
|
|
39
|
+
summary: string;
|
|
40
|
+
compressedAt: string;
|
|
41
|
+
roundsCompressed: number;
|
|
42
|
+
}
|
|
38
43
|
export interface InterviewSession {
|
|
39
44
|
sessionId: string;
|
|
40
45
|
topic: string;
|
|
@@ -42,6 +47,7 @@ export interface InterviewSession {
|
|
|
42
47
|
projectType: ProjectType;
|
|
43
48
|
rounds: InterviewRound[];
|
|
44
49
|
ambiguityScore: AmbiguityScore | null;
|
|
50
|
+
compressedContext?: CompressedContext;
|
|
45
51
|
createdAt: string;
|
|
46
52
|
updatedAt: string;
|
|
47
53
|
}
|
|
@@ -151,6 +157,7 @@ export interface ExecutionPlan {
|
|
|
151
157
|
atomicTasks: AtomicTask[];
|
|
152
158
|
taskGroups: TaskGroup[];
|
|
153
159
|
dagValidation: DAGValidation;
|
|
160
|
+
parallelGroups: string[][];
|
|
154
161
|
createdAt: string;
|
|
155
162
|
}
|
|
156
163
|
export type TaskExecutionStatus = 'pending' | 'in_progress' | 'completed' | 'failed' | 'skipped';
|
|
@@ -241,6 +248,29 @@ export interface EvolutionGeneration {
|
|
|
241
248
|
delta: SpecDelta;
|
|
242
249
|
terminationReason?: TerminationReason;
|
|
243
250
|
}
|
|
251
|
+
export interface ResumeContext {
|
|
252
|
+
completedTaskIds: string[];
|
|
253
|
+
nextTaskId: string | null;
|
|
254
|
+
totalTasks: number;
|
|
255
|
+
progressPercent: number;
|
|
256
|
+
}
|
|
257
|
+
export interface AuditResult {
|
|
258
|
+
implementedACs: number[];
|
|
259
|
+
partialACs: number[];
|
|
260
|
+
missingACs: number[];
|
|
261
|
+
gapAnalysis: string;
|
|
262
|
+
auditedAt: string;
|
|
263
|
+
}
|
|
264
|
+
export interface SubTask {
|
|
265
|
+
taskId: string;
|
|
266
|
+
parentTaskId: string;
|
|
267
|
+
title: string;
|
|
268
|
+
description: string;
|
|
269
|
+
inheritedContext: string;
|
|
270
|
+
dependsOn: string[];
|
|
271
|
+
status: 'pending' | 'in_progress' | 'completed' | 'failed';
|
|
272
|
+
createdAt: string;
|
|
273
|
+
}
|
|
244
274
|
export interface ExecuteSession {
|
|
245
275
|
sessionId: string;
|
|
246
276
|
specId: string;
|
|
@@ -250,6 +280,10 @@ export interface ExecuteSession {
|
|
|
250
280
|
planningSteps: PlanningStepResult[];
|
|
251
281
|
executionPlan?: ExecutionPlan;
|
|
252
282
|
taskResults: TaskExecutionResult[];
|
|
283
|
+
completedTaskIds: string[];
|
|
284
|
+
nextTaskId: string | null;
|
|
285
|
+
subTasks: SubTask[];
|
|
286
|
+
auditResult?: AuditResult;
|
|
253
287
|
evaluateStage?: EvaluateStage;
|
|
254
288
|
structuralResult?: StructuralResult;
|
|
255
289
|
evaluationResult?: EvaluationResult;
|
|
@@ -357,6 +391,57 @@ export interface ReviewSession {
|
|
|
357
391
|
createdAt: string;
|
|
358
392
|
updatedAt: string;
|
|
359
393
|
}
|
|
394
|
+
export interface SpecTemplate {
|
|
395
|
+
id: string;
|
|
396
|
+
name: string;
|
|
397
|
+
description: string;
|
|
398
|
+
baseConstraints: string[];
|
|
399
|
+
baseAcceptanceCriteria: string[];
|
|
400
|
+
baseOntologyEntities: string[];
|
|
401
|
+
}
|
|
402
|
+
export type TextInputSourceType = 'text' | 'jira' | 'github_issue';
|
|
403
|
+
export interface TextInputSource {
|
|
404
|
+
type: TextInputSourceType;
|
|
405
|
+
content: string;
|
|
406
|
+
metadata?: Record<string, unknown>;
|
|
407
|
+
}
|
|
408
|
+
export interface SpecHistoryEntry {
|
|
409
|
+
specId: string;
|
|
410
|
+
goal: string;
|
|
411
|
+
createdAt: string;
|
|
412
|
+
interviewSessionId?: string;
|
|
413
|
+
sourceType: TextInputSourceType | 'interview';
|
|
414
|
+
}
|
|
415
|
+
export interface MemoryExecutionRecord {
|
|
416
|
+
executeSessionId: string;
|
|
417
|
+
specId: string;
|
|
418
|
+
completedTasks: string[];
|
|
419
|
+
failedTasks: string[];
|
|
420
|
+
resultSummary: string;
|
|
421
|
+
completedAt: string;
|
|
422
|
+
}
|
|
423
|
+
export interface CompressedContextEntry {
|
|
424
|
+
sessionId: string;
|
|
425
|
+
summary: string;
|
|
426
|
+
compressedAt: string;
|
|
427
|
+
}
|
|
428
|
+
export interface ProjectMemory {
|
|
429
|
+
version: string;
|
|
430
|
+
repoRoot: string;
|
|
431
|
+
specHistory: SpecHistoryEntry[];
|
|
432
|
+
executionHistory: MemoryExecutionRecord[];
|
|
433
|
+
architectureDecisions: string[];
|
|
434
|
+
compressedContexts?: CompressedContextEntry[];
|
|
435
|
+
lastUpdated: string;
|
|
436
|
+
}
|
|
437
|
+
export interface UserProfile {
|
|
438
|
+
userId?: string;
|
|
439
|
+
preferredModel?: string;
|
|
440
|
+
crossRepoPatterns: string[];
|
|
441
|
+
personalPreferences: Record<string, unknown>;
|
|
442
|
+
createdAt: string;
|
|
443
|
+
updatedAt: string;
|
|
444
|
+
}
|
|
360
445
|
export interface DomainEvent<T = unknown> {
|
|
361
446
|
id: string;
|
|
362
447
|
aggregateType: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { Spec, AuditResult } from '../core/types.js';
|
|
2
|
+
export interface AuditContext {
|
|
3
|
+
systemPrompt: string;
|
|
4
|
+
auditPrompt: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Passthrough AuditEngine.
|
|
8
|
+
* 코드베이스를 분석하여 Spec ACs와의 gap을 식별한다.
|
|
9
|
+
* LLM 없이 동작하며, caller가 auditPrompt를 사용해 분석 후 결과를 제출한다.
|
|
10
|
+
*/
|
|
11
|
+
export declare class AuditEngine {
|
|
12
|
+
buildAuditContext(spec: Spec, codebaseSnapshot: string): AuditContext;
|
|
13
|
+
buildAuditResult(raw: {
|
|
14
|
+
implementedACs: number[];
|
|
15
|
+
partialACs: number[];
|
|
16
|
+
missingACs: number[];
|
|
17
|
+
gapAnalysis: string;
|
|
18
|
+
}): AuditResult;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=audit-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit-engine.d.ts","sourceRoot":"","sources":["../../../src/execute/audit-engine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,qBAAa,WAAW;IACtB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,GAAG,YAAY;IAoCrE,gBAAgB,CACd,GAAG,EAAE;QAAE,cAAc,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GACjG,WAAW;CASf"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Passthrough AuditEngine.
|
|
3
|
+
* 코드베이스를 분석하여 Spec ACs와의 gap을 식별한다.
|
|
4
|
+
* LLM 없이 동작하며, caller가 auditPrompt를 사용해 분석 후 결과를 제출한다.
|
|
5
|
+
*/
|
|
6
|
+
export class AuditEngine {
|
|
7
|
+
buildAuditContext(spec, codebaseSnapshot) {
|
|
8
|
+
const systemPrompt = `You are a senior software engineer auditing a codebase against a project specification.
|
|
9
|
+
Your task is to determine which Acceptance Criteria (ACs) are fully implemented, partially implemented, or missing entirely.
|
|
10
|
+
Be precise: only classify an AC as "implemented" if you can see clear evidence in the code. Be conservative.`;
|
|
11
|
+
const acList = spec.acceptanceCriteria
|
|
12
|
+
.map((ac, i) => `AC[${i}]: ${ac}`)
|
|
13
|
+
.join('\n');
|
|
14
|
+
const auditPrompt = `Audit the following codebase snapshot against the project specification.
|
|
15
|
+
|
|
16
|
+
## Spec Goal
|
|
17
|
+
${spec.goal}
|
|
18
|
+
|
|
19
|
+
## Acceptance Criteria
|
|
20
|
+
${acList}
|
|
21
|
+
|
|
22
|
+
## Codebase Snapshot
|
|
23
|
+
${codebaseSnapshot}
|
|
24
|
+
|
|
25
|
+
Classify each AC index as one of:
|
|
26
|
+
- "implemented": Clear evidence in the code that this AC is satisfied
|
|
27
|
+
- "partial": Some implementation exists but incomplete or missing edge cases
|
|
28
|
+
- "missing": No implementation found
|
|
29
|
+
|
|
30
|
+
Respond with ONLY a JSON object:
|
|
31
|
+
{
|
|
32
|
+
"implementedACs": [0, 2],
|
|
33
|
+
"partialACs": [1, 4],
|
|
34
|
+
"missingACs": [3, 5],
|
|
35
|
+
"gapAnalysis": "Summary of what's missing and the most critical gaps to address"
|
|
36
|
+
}`;
|
|
37
|
+
return { systemPrompt, auditPrompt };
|
|
38
|
+
}
|
|
39
|
+
buildAuditResult(raw) {
|
|
40
|
+
return {
|
|
41
|
+
implementedACs: raw.implementedACs,
|
|
42
|
+
partialACs: raw.partialACs,
|
|
43
|
+
missingACs: raw.missingACs,
|
|
44
|
+
gapAnalysis: raw.gapAnalysis,
|
|
45
|
+
auditedAt: new Date().toISOString(),
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=audit-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"audit-engine.js","sourceRoot":"","sources":["../../../src/execute/audit-engine.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,OAAO,WAAW;IACtB,iBAAiB,CAAC,IAAU,EAAE,gBAAwB;QACpD,MAAM,YAAY,GAAG;;6GAEoF,CAAC;QAE1G,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB;aACnC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;aACjC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,WAAW,GAAG;;;EAGtB,IAAI,CAAC,IAAI;;;EAGT,MAAM;;;EAGN,gBAAgB;;;;;;;;;;;;;EAahB,CAAC;QAEC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;IACvC,CAAC;IAED,gBAAgB,CACd,GAAkG;QAElG,OAAO;YACL,cAAc,EAAE,GAAG,CAAC,cAAc;YAClC,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,WAAW,EAAE,GAAG,CAAC,WAAW;YAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AtomicTask } from '../core/types.js';
|
|
2
|
+
/**
|
|
3
|
+
* DAG 위상 정렬 기반으로 병렬 실행 가능한 태스크 그룹을 계산한다.
|
|
4
|
+
* 동일 레이어의 태스크들은 의존성이 없어 동시에 실행 가능하다.
|
|
5
|
+
*
|
|
6
|
+
* @returns string[][] — 각 배열이 동시 실행 가능한 태스크 ID 목록
|
|
7
|
+
*/
|
|
8
|
+
export declare function computeParallelGroups(tasks: AtomicTask[], topologicalOrder: string[]): string[][];
|
|
9
|
+
//# sourceMappingURL=parallel-groups.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parallel-groups.d.ts","sourceRoot":"","sources":["../../../src/execute/parallel-groups.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,UAAU,EAAE,EACnB,gBAAgB,EAAE,MAAM,EAAE,GACzB,MAAM,EAAE,EAAE,CAiCZ"}
|