claude-prism 0.1.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/README.ko.md +429 -0
- package/README.md +500 -0
- package/bin/cli.mjs +158 -0
- package/hooks/commit-guard.mjs +48 -0
- package/hooks/debug-loop.mjs +67 -0
- package/hooks/scope-guard.mjs +61 -0
- package/hooks/test-tracker.mjs +61 -0
- package/lib/adapter.mjs +89 -0
- package/lib/config.mjs +54 -0
- package/lib/installer.mjs +439 -0
- package/lib/omc.mjs +38 -0
- package/lib/state.mjs +52 -0
- package/lib/utils.mjs +8 -0
- package/package.json +33 -0
- package/templates/commands/claude-prism/checkpoint.md +34 -0
- package/templates/commands/claude-prism/doctor.md +42 -0
- package/templates/commands/claude-prism/help.md +42 -0
- package/templates/commands/claude-prism/plan.md +52 -0
- package/templates/commands/claude-prism/prism.md +84 -0
- package/templates/commands/claude-prism/stats.md +36 -0
- package/templates/rules.en.md +226 -0
- package/templates/rules.ja.md +226 -0
- package/templates/rules.ko.md +226 -0
- package/templates/rules.zh.md +226 -0
- package/templates/runners/commit-guard.mjs +4 -0
- package/templates/runners/debug-loop.mjs +4 -0
- package/templates/runners/scope-guard.mjs +4 -0
- package/templates/runners/test-tracker.mjs +4 -0
- package/templates/settings.json +48 -0
package/README.ko.md
ADDED
|
@@ -0,0 +1,429 @@
|
|
|
1
|
+
# claude-prism
|
|
2
|
+
|
|
3
|
+
AI 코딩 문제 분해 도구 — Understand, Decompose, Execute, Checkpoint (UDEC)
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
╱╲
|
|
7
|
+
━━━━━━━━━▶ ╱ ╲ ──── U 이해 (Understand)
|
|
8
|
+
복잡한 ╱ ╲ ──── D 분해 (Decompose)
|
|
9
|
+
문제 ╱ PRISM╲──── E 실행 (Execute)
|
|
10
|
+
╱________╲─── C 확인 (Checkpoint)
|
|
11
|
+
스펙트럼
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## 무엇인가
|
|
15
|
+
|
|
16
|
+
`claude-prism`은 UDEC 방법론 프레임워크를 Claude Code 프로젝트에 설치합니다.
|
|
17
|
+
|
|
18
|
+
- **U**nderstand (이해) — 행동하기 전에 정보 충분성을 판별. 구조화된 질문 (한 번에 하나씩, 객관식, 최대 3라운드)
|
|
19
|
+
- **D**ecompose (분해) — 복잡한 문제를 2-5분 크기의 검증 가능한 단위로 분해, TDD 기반
|
|
20
|
+
- **E**xecute (실행) — 배치 실행 (배치당 3-4개 태스크), TDD Iron Law 준수
|
|
21
|
+
- **C**heckpoint (확인) — 매 배치 후 보고, 다음 진행 전 사용자 확인
|
|
22
|
+
|
|
23
|
+
## 핵심 철학
|
|
24
|
+
|
|
25
|
+
> 이해하지 않은 것을 구현하지 마라. 분해하지 않은 것을 실행하지 마라.
|
|
26
|
+
|
|
27
|
+
AI 코딩의 가장 비싼 실패는 나쁜 코드가 아니라 — **틀린 것을 만드는 것**이다. AI 에이전트는 이해를 건너뛰고, 분해를 건너뛰고, 30분간 자율 실행한 뒤 사용자가 원하지 않은 것을 만들어냄. Prism은 CLAUDE.md에 방법론 규칙을 주입하여 Claude의 사고방식을 바꾼다.
|
|
28
|
+
|
|
29
|
+
## 설치
|
|
30
|
+
|
|
31
|
+
프로젝트 루트에서:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npx claude-prism init # 영어, hook 포함
|
|
35
|
+
npx claude-prism init --lang=ko # 한국어
|
|
36
|
+
npx claude-prism init --lang=ja # 일본어
|
|
37
|
+
npx claude-prism init --lang=zh # 중국어
|
|
38
|
+
npx claude-prism init --no-hooks # 규칙만, hook 없이
|
|
39
|
+
prism check # 설치 확인
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## 설치 후 구조
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
프로젝트/
|
|
46
|
+
├── CLAUDE.md # PRISM:START ~ PRISM:END 규칙 주입
|
|
47
|
+
├── .claude-prism.json # 설정 (언어, hook 옵션)
|
|
48
|
+
├── .claude/
|
|
49
|
+
│ ├── commands/
|
|
50
|
+
│ │ └── claude-prism/ # 네임스페이스 커맨드
|
|
51
|
+
│ │ ├── prism.md # /claude-prism:prism
|
|
52
|
+
│ │ ├── checkpoint.md # /claude-prism:checkpoint
|
|
53
|
+
│ │ ├── plan.md # /claude-prism:plan
|
|
54
|
+
│ │ ├── doctor.md # /claude-prism:doctor
|
|
55
|
+
│ │ ├── stats.md # /claude-prism:stats
|
|
56
|
+
│ │ └── help.md # /claude-prism:help
|
|
57
|
+
│ ├── hooks/ # (선택, --no-hooks 시 생략)
|
|
58
|
+
│ │ ├── commit-guard.mjs
|
|
59
|
+
│ │ ├── debug-loop.mjs
|
|
60
|
+
│ │ ├── test-tracker.mjs
|
|
61
|
+
│ │ └── scope-guard.mjs
|
|
62
|
+
│ ├── rules/ # hook 규칙 로직
|
|
63
|
+
│ │ ├── commit-guard.mjs
|
|
64
|
+
│ │ ├── debug-loop.mjs
|
|
65
|
+
│ │ ├── test-tracker.mjs
|
|
66
|
+
│ │ └── scope-guard.mjs
|
|
67
|
+
│ ├── lib/ # hook 의존 모듈
|
|
68
|
+
│ │ ├── adapter.mjs
|
|
69
|
+
│ │ ├── state.mjs
|
|
70
|
+
│ │ ├── config.mjs
|
|
71
|
+
│ │ └── utils.mjs
|
|
72
|
+
│ └── settings.json # Claude Code hook 등록
|
|
73
|
+
└── docs/plans/ # /claude-prism:prism 실행 시 계획 파일 생성
|
|
74
|
+
└── YYYY-MM-DD-주제.md
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## 커맨드
|
|
78
|
+
|
|
79
|
+
### 커맨드 레퍼런스
|
|
80
|
+
|
|
81
|
+
| 커맨드 | 언제 사용 | 목적 |
|
|
82
|
+
|--------|----------|------|
|
|
83
|
+
| `/claude-prism:prism` | 모든 작업 (코드/분석) | UDEC 전체 사이클; 분석 요청 시 U 단계에서 자동 정지 |
|
|
84
|
+
| `/claude-prism:plan` | 플랜 파일 관리 | 플랜 목록 조회, 생성, 진행률 |
|
|
85
|
+
| `/claude-prism:checkpoint` | 작업 중간 | 배치 진행 확인, 다음 미리보기 |
|
|
86
|
+
| `/claude-prism:doctor` | 설치 문제 | 건강 진단, 수정 제안 |
|
|
87
|
+
| `/claude-prism:stats` | 현재 상태 | 버전, hooks, 언어, 플랜 진행률 |
|
|
88
|
+
| `/claude-prism:help` | 커맨드 확인 | 커맨드 레퍼런스 |
|
|
89
|
+
|
|
90
|
+
### 워크플로우
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
사용자 요청 도착
|
|
94
|
+
│
|
|
95
|
+
▼
|
|
96
|
+
모호한가? ──Yes──▶ /claude-prism:prism (U 단계에서 명확화 후 진행 or 정지)
|
|
97
|
+
│
|
|
98
|
+
No
|
|
99
|
+
▼
|
|
100
|
+
복잡한가? ──Yes──▶ /claude-prism:prism (전체 UDEC)
|
|
101
|
+
│
|
|
102
|
+
No
|
|
103
|
+
▼
|
|
104
|
+
그냥 실행
|
|
105
|
+
│
|
|
106
|
+
▼
|
|
107
|
+
중간 확인 ───────▶ /claude-prism:checkpoint (배치 사이)
|
|
108
|
+
│
|
|
109
|
+
▼
|
|
110
|
+
플랜 관리 ───────▶ /claude-prism:plan (조회/생성)
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### 실사용 패턴
|
|
114
|
+
|
|
115
|
+
**패턴 1: 기능 구현**
|
|
116
|
+
```
|
|
117
|
+
/claude-prism:prism → "로그인 기능 추가해줘"
|
|
118
|
+
→ Claude 질문: "JWT? 세션?" "OAuth 필요?"
|
|
119
|
+
→ 플랜 생성: docs/plans/2026-02-16-auth.md
|
|
120
|
+
→ Batch 1 실행 (3 tasks)
|
|
121
|
+
/claude-prism:checkpoint → "Batch 1 완료. Batch 2 진행할까요?"
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
**패턴 2: 모호한 요청 정리**
|
|
125
|
+
```
|
|
126
|
+
/claude-prism:prism → "성능 좀 개선해"
|
|
127
|
+
→ Claude: [Insufficient] "어떤 성능?"
|
|
128
|
+
1. 빌드 시간 (next build)
|
|
129
|
+
2. 런타임 (페이지 로딩/렌더링)
|
|
130
|
+
3. 번들 사이즈 (추천)
|
|
131
|
+
→ 합의 도달 → D/E/C 진행 (분석만이면 여기서 정지)
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
**패턴 3: 이전 작업 이어받기**
|
|
135
|
+
```
|
|
136
|
+
/claude-prism:plan → 기존 플랜 목록, 진행률 확인
|
|
137
|
+
/claude-prism:checkpoint → "플랜 X: 5/12 tasks 완료. Batch 3 다음."
|
|
138
|
+
→ "계속" → 실행 재개
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
**패턴 4: 문제 해결**
|
|
142
|
+
```
|
|
143
|
+
/claude-prism:doctor → 설치 건강 확인
|
|
144
|
+
/claude-prism:stats → hooks, 언어, OMC 상태 확인
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Before & After
|
|
148
|
+
|
|
149
|
+
**Before (AI 에이전트의 기본 행동)**
|
|
150
|
+
1. 사용자: "auth 모듈 리팩토링해"
|
|
151
|
+
2. AI: (생각 안 하고) 30분 자율 실행
|
|
152
|
+
3. 결과: 사용자가 원하지 않은 구조로 완성
|
|
153
|
+
|
|
154
|
+
**After (Prism 적용)**
|
|
155
|
+
1. 사용자: "auth 모듈 리팩토링해"
|
|
156
|
+
2. Claude (자동 질문):
|
|
157
|
+
- "목표: 기존 API 유지하면서 내부 구조만 개선하는 게 맞나요? (Yes/No)"
|
|
158
|
+
- "범위: 인증/인가 모두? 아니면 인증만?"
|
|
159
|
+
- "테스트: 기존 테스트는 그대로 두고 진행하는 게 맞나요?"
|
|
160
|
+
3. 사용자 확인 후 → 분해 단계 시작
|
|
161
|
+
4. 결과: 의도대로 완성
|
|
162
|
+
|
|
163
|
+
## CLI 커맨드
|
|
164
|
+
|
|
165
|
+
### prism check
|
|
166
|
+
|
|
167
|
+
설치 후 확인:
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
prism check
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
출력:
|
|
174
|
+
```
|
|
175
|
+
Commands: ✅
|
|
176
|
+
Rules: ✅
|
|
177
|
+
Hooks: ✅
|
|
178
|
+
Config: ✅
|
|
179
|
+
|
|
180
|
+
Status: ✅ All good
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
CI 통합용 JSON 출력:
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
prism check --ci
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
### prism doctor
|
|
190
|
+
|
|
191
|
+
설치 문제 진단 및 해결 방법 제시. oh-my-claudecode (OMC) 감지:
|
|
192
|
+
|
|
193
|
+
```bash
|
|
194
|
+
prism doctor
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
출력 (정상):
|
|
198
|
+
```
|
|
199
|
+
✅ Installation is healthy. No issues found.
|
|
200
|
+
|
|
201
|
+
OMC: ✅ v4.1.1
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
출력 (문제 있음):
|
|
205
|
+
```
|
|
206
|
+
Issues found:
|
|
207
|
+
|
|
208
|
+
❌ CLAUDE.md rules not found
|
|
209
|
+
❌ /claude-prism:prism command not installed
|
|
210
|
+
|
|
211
|
+
Suggested fixes:
|
|
212
|
+
|
|
213
|
+
💡 Run: npx claude-prism init
|
|
214
|
+
💡 Check: .claude/commands/claude-prism/prism.md exists
|
|
215
|
+
```
|
|
216
|
+
|
|
217
|
+
### prism stats
|
|
218
|
+
|
|
219
|
+
설치 상태 요약 (버전, 언어, hook 상태, 계획 파일, OMC 감지):
|
|
220
|
+
|
|
221
|
+
```bash
|
|
222
|
+
prism stats
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
출력:
|
|
226
|
+
```
|
|
227
|
+
Version: v0.1.0
|
|
228
|
+
Language: ko
|
|
229
|
+
Plans: 2 file(s)
|
|
230
|
+
OMC: ✅ v4.1.1
|
|
231
|
+
Hooks:
|
|
232
|
+
✅ commit-guard
|
|
233
|
+
✅ debug-loop
|
|
234
|
+
✅ test-tracker
|
|
235
|
+
✅ scope-guard
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
### prism reset
|
|
239
|
+
|
|
240
|
+
모든 hook 상태 초기화 (편집 횟수, 테스트 시간, 범위 추적). 새 작업 시작이나 대규모 리팩토링 후 사용:
|
|
241
|
+
|
|
242
|
+
```bash
|
|
243
|
+
prism reset
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
출력:
|
|
247
|
+
```
|
|
248
|
+
✅ Hook state cleared (edit counters, test timestamps)
|
|
249
|
+
|
|
250
|
+
🌈 Fresh start. All hooks reset.
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
## Hook (훅)
|
|
254
|
+
|
|
255
|
+
Hook은 선택 사항인 CLI 가드로, 개발 중 규율을 강제합니다. `prism init`에서 설치되며, `--no-hooks`로 건너뜁니다.
|
|
256
|
+
|
|
257
|
+
### commit-guard
|
|
258
|
+
|
|
259
|
+
최근 5분 내에 테스트가 실행되지 않으면 커밋을 차단합니다 (.claude-prism.json의 `maxTestAge`로 설정 가능). `test-tracker`와 함께 작동하여 테스트가 언제 마지막으로 실행되었는지 추적합니다.
|
|
260
|
+
|
|
261
|
+
```json
|
|
262
|
+
{
|
|
263
|
+
"hooks": {
|
|
264
|
+
"commit-guard": {
|
|
265
|
+
"enabled": true,
|
|
266
|
+
"maxTestAge": 300
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
**동작:**
|
|
273
|
+
- `test-tracker`를 통해 테스트 실행 감지
|
|
274
|
+
- 조건: (현재 시간 - 마지막 테스트 실행 시간) > maxTestAge이면 커밋 차단
|
|
275
|
+
- 테스트 없는 코드 배포 방지
|
|
276
|
+
|
|
277
|
+
### debug-loop
|
|
278
|
+
|
|
279
|
+
같은 파일을 연속으로 편집할 때 경고 (3회), 차단 (5회). 무한 디버깅 루프 감지.
|
|
280
|
+
|
|
281
|
+
```json
|
|
282
|
+
{
|
|
283
|
+
"hooks": {
|
|
284
|
+
"debug-loop": {
|
|
285
|
+
"enabled": true,
|
|
286
|
+
"warnAt": 3,
|
|
287
|
+
"blockAt": 5
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
**동작:**
|
|
294
|
+
- 세션 내 같은 파일의 연속 편집 추적
|
|
295
|
+
- 3회 편집: 경고 "문제를 이해하기 위해 한 발 물러나세요"
|
|
296
|
+
- 5회 편집: 차단 후 재평가 강제
|
|
297
|
+
|
|
298
|
+
### test-tracker
|
|
299
|
+
|
|
300
|
+
테스트 커맨드 실행을 감지하고 타임스탐프와 성공/실패 상태를 기록합니다. `commit-guard`가 최근 테스트 실행을 확인하는 데 사용합니다.
|
|
301
|
+
|
|
302
|
+
**감지하는 테스트:**
|
|
303
|
+
- `npm test`, `npm run test`
|
|
304
|
+
- `jest`, `vitest`
|
|
305
|
+
- `node --test`
|
|
306
|
+
- `npx mocha`, `mocha`
|
|
307
|
+
- `pytest`
|
|
308
|
+
- `cargo test`
|
|
309
|
+
- `go test`
|
|
310
|
+
- `make test`
|
|
311
|
+
|
|
312
|
+
**설정:**
|
|
313
|
+
```json
|
|
314
|
+
{
|
|
315
|
+
"hooks": {
|
|
316
|
+
"test-tracker": {
|
|
317
|
+
"enabled": true
|
|
318
|
+
}
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
**동작:**
|
|
324
|
+
- 모든 Bash 커맨드에서 실행
|
|
325
|
+
- 커맨드가 테스트 패턴과 일치하면 타임스탐프 기록
|
|
326
|
+
- 결과 기록 (종료 코드 기반 성공/실패)
|
|
327
|
+
- `commit-guard`가 이 상태를 읽어 커밋 허용/차단
|
|
328
|
+
|
|
329
|
+
### scope-guard
|
|
330
|
+
|
|
331
|
+
세션당 수정된 고유 소스 파일을 추적합니다. 계획 없이 범위가 늘어나면 경고 (범위 크리프 감지). Agent 인식: OMC sub-agent는 더 높은 임계값을 받습니다.
|
|
332
|
+
|
|
333
|
+
```json
|
|
334
|
+
{
|
|
335
|
+
"hooks": {
|
|
336
|
+
"scope-guard": {
|
|
337
|
+
"enabled": true,
|
|
338
|
+
"warnAt": 4,
|
|
339
|
+
"blockAt": 7,
|
|
340
|
+
"agentWarnAt": 8,
|
|
341
|
+
"agentBlockAt": 12
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
**동작:**
|
|
348
|
+
- 고유 소스 파일 추적 (`.ts`, `.tsx`, `.js`, `.jsx`, `.py`, `.go`, `.rs`, `.java`, `.c`, `.cpp`, `.h`, `.svelte`, `.vue`)
|
|
349
|
+
- 테스트 파일 제외 (`.test.`, `.spec.`, `_test.`)
|
|
350
|
+
- 표준 임계값: 4개 파일에서 경고, 7개에서 차단
|
|
351
|
+
- Agent 임계값 (OMC sub-agent 실행 중): 8개에서 경고, 12개에서 차단
|
|
352
|
+
- 경고: "/claude-prism:prism을 실행하여 작업을 분해하는 것을 고려하세요"
|
|
353
|
+
- 차단: "/claude-prism:prism을 실행하여 계속 진행하기 전에 분해하세요"
|
|
354
|
+
|
|
355
|
+
## 설정
|
|
356
|
+
|
|
357
|
+
`.claude-prism.json`을 편집하여 동작 커스터마이즈:
|
|
358
|
+
|
|
359
|
+
```json
|
|
360
|
+
{
|
|
361
|
+
"language": "ko",
|
|
362
|
+
"hooks": {
|
|
363
|
+
"commit-guard": { "enabled": true, "maxTestAge": 300 },
|
|
364
|
+
"debug-loop": { "enabled": true, "warnAt": 3, "blockAt": 5 },
|
|
365
|
+
"test-tracker": { "enabled": true },
|
|
366
|
+
"scope-guard": { "enabled": true, "warnAt": 4, "blockAt": 7, "agentWarnAt": 8, "agentBlockAt": 12 }
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
**설정 항목:**
|
|
372
|
+
- `language` — 규칙 언어: `en` (영어), `ko` (한국어), `ja` (일본어), `zh` (중국어)
|
|
373
|
+
- `hooks.*` — 개별 hook 활성화/비활성화 또는 임계값 커스터마이즈
|
|
374
|
+
- `hooks.commit-guard.maxTestAge` — 테스트가 오래되었다고 간주되는 시간 (초, 기본값: 300)
|
|
375
|
+
- `hooks.debug-loop.warnAt/blockAt` — 경고/차단을 트리거하는 편집 횟수
|
|
376
|
+
- `hooks.scope-guard.warnAt/blockAt` — 표준 모드의 파일 개수
|
|
377
|
+
- `hooks.scope-guard.agentWarnAt/agentBlockAt` — OMC agent 모드의 파일 개수
|
|
378
|
+
|
|
379
|
+
## OMC (oh-my-claudecode) 통합
|
|
380
|
+
|
|
381
|
+
Prism은 환경에 [oh-my-claudecode](https://github.com/raidenppl/oh-my-claudecode)가 설치되어 있는지 자동으로 감지합니다. OMC가 있으면:
|
|
382
|
+
|
|
383
|
+
- **Agent용 높은 범위 임계값** — Sub-agent는 표준 `warnAt: 4, blockAt: 7` 대신 `agentWarnAt: 8, agentBlockAt: 12` 적용
|
|
384
|
+
- **상태 커맨드에 표시** — `prism stats`와 `prism doctor`에 OMC 감지 버전 표시
|
|
385
|
+
- **별도 설정 불필요** — 자동으로 감지
|
|
386
|
+
|
|
387
|
+
OMC 상태 확인:
|
|
388
|
+
|
|
389
|
+
```bash
|
|
390
|
+
prism stats # "OMC: ✅ v4.1.1" 또는 "OMC: ⏭️ not detected" 표시
|
|
391
|
+
prism doctor # 진단 정보에 OMC 감지 표시
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
이를 통해 OMC agent (executor, architect 등)가 태스크당 더 많은 파일을 수정할 수 있으며, 조직화된 멀티 agent 작업은 단일 agent 개발과 다른 제약 조건을 가짐을 인식합니다.
|
|
395
|
+
|
|
396
|
+
## 기술 사양
|
|
397
|
+
|
|
398
|
+
- **패키지명**: `claude-prism`
|
|
399
|
+
- **버전**: 0.1.0
|
|
400
|
+
- **CLI 커맨드**: `prism`
|
|
401
|
+
- **Node 버전**: >= 18
|
|
402
|
+
- **의존성**: 0 (순수 ESM 모듈)
|
|
403
|
+
- **라이선스**: MIT
|
|
404
|
+
- **저자**: lazysaturday91
|
|
405
|
+
|
|
406
|
+
## 프리즘 은유
|
|
407
|
+
|
|
408
|
+
백색광(복잡한 문제)이 프리즘에 들어가면 스펙트럼(구성요소)으로 분해된다. 각 색깔(단위)을 하나씩 다루고, 다시 합치면 완성된 것.
|
|
409
|
+
|
|
410
|
+
## 프레임워크 상세
|
|
411
|
+
|
|
412
|
+
전체 UDEC 프레임워크 문서는 설치 후 프로젝트의 `CLAUDE.md` 내 `PRISM:START` ~ `PRISM:END` 섹션을 참고하세요.
|
|
413
|
+
|
|
414
|
+
핵심 규칙:
|
|
415
|
+
|
|
416
|
+
1. **정보 충분성 판별** — 요청이 명확한가? 질문이 필요한가?
|
|
417
|
+
2. **최대 3라운드 질문** — 한 번에 하나씩, 객관식 우선
|
|
418
|
+
3. **분해 5원칙** — 단위 크기, 테스트 선행, 독립 검증, 파일 명시, 의존성 명시
|
|
419
|
+
4. **배치 + 체크포인트** — 3-4개 태스크씩 실행, 배치마다 보고
|
|
420
|
+
5. **TDD Iron Law** — 실패 테스트 먼저, 테스트 없이 커밋 금지
|
|
421
|
+
6. **자기 교정** — 같은 파일 3회 편집 시 멈추고 재검토
|
|
422
|
+
|
|
423
|
+
## 라이선스
|
|
424
|
+
|
|
425
|
+
MIT
|
|
426
|
+
|
|
427
|
+
## Repository
|
|
428
|
+
|
|
429
|
+
https://github.com/lazysaturday91/claude-prism
|