@su-record/vibe 2.9.2 → 2.9.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/CLAUDE.md +30 -10
- package/README.ko.md +90 -25
- package/README.md +139 -25
- package/agents/teams/figma/figma-builder.md +29 -1
- package/agents/teams/review-debate-team.md +1 -1
- package/commands/vibe.analyze.md +324 -170
- package/commands/vibe.figma.md +549 -34
- package/commands/vibe.harness.md +177 -0
- package/commands/vibe.run.md +44 -27
- package/commands/vibe.scaffold.md +195 -0
- package/commands/vibe.spec.md +375 -947
- package/commands/vibe.trace.md +17 -0
- package/commands/vibe.verify.md +19 -10
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +29 -1
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +4 -2
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/postinstall/constants.d.ts +1 -1
- package/dist/cli/postinstall/constants.d.ts.map +1 -1
- package/dist/cli/postinstall/constants.js +6 -1
- package/dist/cli/postinstall/constants.js.map +1 -1
- package/dist/cli/setup/ProjectSetup.d.ts +12 -1
- package/dist/cli/setup/ProjectSetup.d.ts.map +1 -1
- package/dist/cli/setup/ProjectSetup.js +259 -72
- package/dist/cli/setup/ProjectSetup.js.map +1 -1
- package/dist/cli/setup.d.ts +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +1 -1
- package/dist/cli/setup.js.map +1 -1
- package/hooks/scripts/figma-guard.js +220 -0
- package/package.json +1 -1
- package/skills/arch-guard/SKILL.md +1 -1
- package/skills/capability-loop/SKILL.md +106 -2
- package/skills/chub-usage/SKILL.md +43 -43
- package/skills/claude-md-guide/SKILL.md +175 -175
- package/skills/design-teach/SKILL.md +33 -33
- package/skills/devlog/SKILL.md +38 -38
- package/skills/event-comms/SKILL.md +23 -13
- package/skills/event-ops/SKILL.md +28 -19
- package/skills/event-planning/SKILL.md +13 -1
- package/skills/priority-todos/SKILL.md +1 -1
- package/skills/vibe.figma/SKILL.md +234 -154
- package/skills/vibe.figma.convert/SKILL.md +123 -112
- package/skills/vibe.figma.extract/SKILL.md +141 -129
- package/skills/vibe.interview/SKILL.md +358 -0
- package/skills/vibe.interview/checklists/api.md +101 -0
- package/skills/vibe.interview/checklists/feature.md +88 -0
- package/skills/vibe.interview/checklists/library.md +95 -0
- package/skills/vibe.interview/checklists/mobile.md +89 -0
- package/skills/vibe.interview/checklists/webapp.md +97 -0
- package/skills/vibe.interview/checklists/website.md +99 -0
- package/skills/vibe.plan/SKILL.md +216 -0
- package/skills/vibe.spec/SKILL.md +1155 -0
- package/{commands/vibe.spec.review.md → skills/vibe.spec.review/SKILL.md} +269 -108
- package/vibe/templates/claudemd-template.md +74 -0
- package/vibe/templates/constitution-template.md +15 -0
- package/vibe/templates/plan-template.md +194 -0
package/CLAUDE.md
CHANGED
|
@@ -38,12 +38,13 @@
|
|
|
38
38
|
- No `@ts-ignore` — fix type issues at root
|
|
39
39
|
- Explicit return types on all functions
|
|
40
40
|
|
|
41
|
-
### Convergence Principle (
|
|
41
|
+
### Convergence Principle (Quality-First, No Round Cap)
|
|
42
42
|
|
|
43
|
-
- **
|
|
44
|
-
- **
|
|
45
|
-
- **
|
|
46
|
-
- **
|
|
43
|
+
- **Loop until quality = 100** — no hard round cap on review/auto-fix loops
|
|
44
|
+
- **P1 = 0 AND no new findings** → done (the natural termination signal)
|
|
45
|
+
- **Narrowing scope per round (noise reduction)** — Round 1: full scope, Round 2: P1+P2, Round 3+: P1 only — keeps looping until P1=0
|
|
46
|
+
- **Stuck detection → ask the user** — Same findings (or same score) as previous round means auto-fixer hit a wall. Prompt the user to fill in values, explicitly approve sub-100, or abort. Never silently proceed with sub-100 quality.
|
|
47
|
+
- **ultrawork exception** — In `ultrawork` mode, skip the user prompt and record remaining gaps as TODO to keep the loop non-interactive.
|
|
47
48
|
- **Changed files only** — Never scan the entire project
|
|
48
49
|
|
|
49
50
|
### Forbidden Patterns
|
|
@@ -106,13 +107,29 @@
|
|
|
106
107
|
## Workflow
|
|
107
108
|
|
|
108
109
|
```text
|
|
109
|
-
/vibe.spec →
|
|
110
|
+
/vibe.spec → vibe.interview (skill) → vibe.plan (skill) → vibe.spec (skill) → vibe.spec.review (skill) → ┬→ /vibe.run → /vibe.verify → /vibe.trace → Done
|
|
111
|
+
│ (Logic Track)
|
|
112
|
+
└→ /vibe.figma → FE UI 코드
|
|
113
|
+
(UI Track — type ∈ {website,webapp,mobile}만)
|
|
110
114
|
```
|
|
111
115
|
|
|
116
|
+
**단일 진입점**: `/vibe.spec`은 "무엇을 개발할지" 질문으로 시작해서 전체 흐름을 오케스트레이션한다. 사용자는 `/vibe.*` 커맨드 이름을 외울 필요 없음. **Smart Resume**: 기존 interview/plan/spec 파일 존재 여부로 어느 단계부터 시작할지 자동 판단.
|
|
117
|
+
|
|
118
|
+
**커맨드 `/vibe.spec` vs 스킬 `vibe.spec`**: 커맨드는 **전체 워크플로 오케스트레이터**, 스킬은 그 안의 **SPEC 작성 단계**. `/vibe.figma` 커맨드와 `vibe.figma` 스킬 관계와 동일한 패턴.
|
|
119
|
+
|
|
120
|
+
**스킬 기반 workflow**:
|
|
121
|
+
- `vibe.interview` — 반복 인터뷰로 요구사항 수집 (사용자 "그만"까지). 타입별 체크리스트(`skills/vibe.interview/checklists/{type}.md`).
|
|
122
|
+
- `vibe.plan` — interview → 마크다운 기획서 정제 (`.claude/vibe/plans/{feature}.md`).
|
|
123
|
+
- `vibe.spec` — 기획서 → PTCF SPEC + Feature(BDD) 파일.
|
|
124
|
+
- `vibe.spec.review` — GPT/Gemini Race Review + 품질 게이트.
|
|
125
|
+
- 모두 자연어 트리거(만들자/개발하자/신규/아이디어)로도 자동 활성화.
|
|
126
|
+
|
|
127
|
+
**UI/Logic 분기**: 기획서의 `type` 필드로 자동 판단. UI 포함 프로젝트(website/webapp/mobile)는 Logic + UI 트랙 병렬, 비-UI(api/library)는 Logic만.
|
|
128
|
+
|
|
112
129
|
| Task Size | Approach |
|
|
113
130
|
|-----------|----------|
|
|
114
131
|
| 1-2 files | Plan Mode |
|
|
115
|
-
| 3+ files | `/vibe.spec` |
|
|
132
|
+
| 3+ files | `/vibe.spec` (전체 워크플로 오케스트레이션) |
|
|
116
133
|
|
|
117
134
|
## Magic Keywords
|
|
118
135
|
|
|
@@ -130,7 +147,7 @@ Skills are classified into 3 tiers to prevent context overload (Curse of Instruc
|
|
|
130
147
|
|
|
131
148
|
| Tier | Loading | Purpose | Count |
|
|
132
149
|
|------|---------|---------|-------|
|
|
133
|
-
| **core** | Always active | Bug/mistake prevention
|
|
150
|
+
| **core** | Always active | Bug/mistake prevention + workflow entry (interview/plan) | ~11 |
|
|
134
151
|
| **standard** | Project setup selects | Workflow support by stack/capability | ~21 |
|
|
135
152
|
| **optional** | Explicit `/skill` only | Reference/wrapper — not auto-loaded | ~4 |
|
|
136
153
|
|
|
@@ -142,7 +159,10 @@ When the user's context matches a pattern below, suggest the relevant skill **on
|
|
|
142
159
|
|
|
143
160
|
| User Context | Suggested Skill | Tier | Signal |
|
|
144
161
|
|-------------|-----------------|------|--------|
|
|
145
|
-
|
|
|
162
|
+
| New project/feature idea, no plan yet | `/vibe.spec` | command | "만들자", "개발하자", "신규", "아이디어", "무엇을 만들", "let's build", "new feature" |
|
|
163
|
+
| Interview 완료, 기획서 필요 | `/vibe.spec` | command | `.claude/vibe/interviews/*.md` 존재, 기획서 없음 (Smart Resume으로 Phase 2부터) |
|
|
164
|
+
| 전체 워크플로 진입 | `/vibe.spec` | command | "어디서부터 시작", "전체 워크플로", 커맨드 이름 모를 때 |
|
|
165
|
+
| 기획서 → 코드 명세 | `/vibe.spec` | command | `.claude/vibe/plans/*.md` 존재, SPEC 없음 (Smart Resume으로 Phase 3부터) |
|
|
146
166
|
| SPEC exists, ready to implement | `/vibe.run` | core | SPEC file present, no implementation started |
|
|
147
167
|
| Implementation done, verifying | `/vibe.trace` | core | Code changes match SPEC phases |
|
|
148
168
|
| Technical debt accumulating | `/techdebt` | core | Multiple `any` types, console.log, unused imports |
|
|
@@ -163,7 +183,7 @@ When the user's context matches a pattern below, suggest the relevant skill **on
|
|
|
163
183
|
|
|
164
184
|
## Git Commit Rules
|
|
165
185
|
|
|
166
|
-
**Must include:** `.claude/vibe/specs/`, `.claude/vibe/features/`, `.claude/vibe/todos/`, `.claude/vibe/config.json`, `CLAUDE.md`
|
|
186
|
+
**Must include:** `.claude/vibe/plans/`, `.claude/vibe/specs/`, `.claude/vibe/features/`, `.claude/vibe/todos/`, `.claude/vibe/config.json`, `CLAUDE.md`
|
|
167
187
|
|
|
168
188
|
**Exclude:** `~/.claude/vibe/rules/`, `~/.claude/commands/`, `~/.claude/agents/`, `~/.claude/skills/`, `.claude/settings.local.json`
|
|
169
189
|
|
package/README.ko.md
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# VIBE
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
**바이브 코딩은 쉽게. 최소 품질은 보장.**
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@su-record/vibe)
|
|
6
6
|
[](https://www.npmjs.com/package/@su-record/vibe)
|
|
7
7
|
[](https://nodejs.org/)
|
|
8
8
|
[](LICENSE)
|
|
9
9
|
|
|
10
|
-
Vibe는 AI 코딩 도구를 위한 품질 하네스입니다. Claude Code, Codex, Cursor, Gemini CLI를 감싸고, 타입 안전성, 코드 품질, 보안을 자동으로 강제합니다.
|
|
10
|
+
Vibe는 AI 코딩 도구를 위한 품질 하네스입니다. Claude Code, Codex, Cursor, Gemini CLI를 감싸고, 타입 안전성, 코드 품질, 보안을 자동으로 강제합니다. 빠르게 바이브 코딩하되, 엉망인 코드가 나가지 않게.
|
|
11
11
|
|
|
12
12
|
```bash
|
|
13
13
|
npm install -g @su-record/vibe
|
|
@@ -16,61 +16,114 @@ vibe init
|
|
|
16
16
|
|
|
17
17
|
---
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## 워크플로우
|
|
20
20
|
|
|
21
|
+
진입점 하나. 나머지는 자동.
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
/vibe.spec "커피 브랜드 랜딩 페이지"
|
|
25
|
+
|
|
|
26
|
+
v
|
|
27
|
+
인터뷰 ─── "타깃은 누구?" "어떤 섹션?" "다크 모드?" ───
|
|
28
|
+
| (사용자가 "그만"할 때까지 반복)
|
|
29
|
+
v
|
|
30
|
+
기획서 ─── 구조화된 마크다운 기획서 (.claude/vibe/plans/)
|
|
31
|
+
|
|
|
32
|
+
v
|
|
33
|
+
SPEC ─── PTCF 명세 + BDD 피처, GPT+Gemini 병렬 리서치
|
|
34
|
+
|
|
|
35
|
+
v
|
|
36
|
+
리뷰 ─── Race Review (GPT vs Gemini), 품질 게이트 (100점, 수렴까지 루프)
|
|
37
|
+
|
|
|
38
|
+
+──────────────────────────────┐
|
|
39
|
+
v v
|
|
40
|
+
/vibe.run (로직) /vibe.figma (UI)
|
|
41
|
+
SPEC 기반 구현 Figma 디자인 ↔ 코드
|
|
42
|
+
12개 에이전트 리뷰 읽기 또는 쓰기
|
|
43
|
+
| |
|
|
44
|
+
v v
|
|
45
|
+
/vibe.verify ──── /vibe.trace ──── 완료
|
|
21
46
|
```
|
|
22
|
-
사용자: "사용자 인증 추가해줘"
|
|
23
47
|
|
|
24
|
-
|
|
25
|
-
/vibe.run → SPEC 기반 구현 → 12개 에이전트 병렬 리뷰
|
|
26
|
-
품질 게이트 → any 타입 차단, 긴 함수 차단, 위험한 명령 차단
|
|
27
|
-
완료 → 리뷰 통과된 타입 안전 코드만 남음
|
|
48
|
+
**Smart Resume** — 아무 단계에서나 멈추고, 세션을 닫고, 나중에 돌아오세요. `/vibe.spec`이 중단된 위치를 자동 감지하고 이어서 진행합니다. feature 이름을 외울 필요 없음.
|
|
28
49
|
|
|
29
|
-
|
|
30
|
-
```
|
|
50
|
+
**ultrawork** — 어느 명령이든 `ultrawork`를 붙이면 모든 확인 게이트를 건너뛰고 전체 파이프라인을 자동 실행합니다.
|
|
31
51
|
|
|
32
52
|
---
|
|
33
53
|
|
|
34
54
|
## 빠른 시작
|
|
35
55
|
|
|
36
56
|
```bash
|
|
37
|
-
#
|
|
57
|
+
# 설치
|
|
38
58
|
npm install -g @su-record/vibe
|
|
39
59
|
|
|
40
|
-
#
|
|
60
|
+
# 프로젝트 초기화 (스택 자동 감지)
|
|
41
61
|
cd your-project
|
|
42
62
|
vibe init
|
|
43
63
|
|
|
44
|
-
#
|
|
45
|
-
claude
|
|
46
|
-
# 또는 codex, cursor, gemini — 모두 지원
|
|
64
|
+
# AI 코딩 도구 시작
|
|
65
|
+
claude
|
|
47
66
|
|
|
48
|
-
#
|
|
49
|
-
/vibe.spec "사용자 인증 추가"
|
|
50
|
-
/vibe.run # SPEC 기반 구현
|
|
67
|
+
# 워크플로우 실행
|
|
68
|
+
/vibe.spec "사용자 인증 추가"
|
|
51
69
|
```
|
|
52
70
|
|
|
53
|
-
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Figma ↔ 코드
|
|
74
|
+
|
|
75
|
+
양방향. Figma에서 디자인을 읽거나, 기획서에서 Figma에 디자인을 쓰거나.
|
|
54
76
|
|
|
55
77
|
```bash
|
|
56
|
-
|
|
78
|
+
# READ — 기존 프로젝트에 UI 추가 (프로젝트 컨벤션 준수)
|
|
79
|
+
/vibe.figma <figma-url> <figma-url>
|
|
80
|
+
|
|
81
|
+
# READ — 신규 독립 페이지 (독립 스타일)
|
|
82
|
+
/vibe.figma --new <figma-url>
|
|
83
|
+
|
|
84
|
+
# WRITE — 기획서에서 Figma 디자인 생성
|
|
85
|
+
/vibe.figma plan.md --create # Full (와이어 + 비주얼 디자인)
|
|
86
|
+
/vibe.figma plan.md --create-storyboard # 와이어만
|
|
87
|
+
/vibe.figma plan.md --create-design # 비주얼 디자인만
|
|
57
88
|
```
|
|
58
89
|
|
|
90
|
+
**READ 동작**: Figma REST API로 노드 트리 + 30개 CSS 속성 추출. Auto Layout → Flexbox 1:1 기계적 매핑. 스크린샷은 검증용 — 트리가 원천.
|
|
91
|
+
|
|
92
|
+
**WRITE 동작**: 기획서의 Look & Feel, 레이아웃, 반응형 전략 섹션을 파싱하여 와이어프레임을 먼저 그리고 (구조 검토), 그 위에 디자인 시스템 컴포넌트로 비주얼 적용. 멱등성 보장 — 기획서 수정 후 재실행하면 변경된 섹션만 갱신.
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## 품질 게이트
|
|
97
|
+
|
|
98
|
+
모든 도구 호출마다 3계층 방어:
|
|
99
|
+
|
|
100
|
+
| 계층 | 차단 대상 |
|
|
101
|
+
|------|----------|
|
|
102
|
+
| Pre-commit 훅 | `any` 타입, `@ts-ignore`, `console.log`, 50줄 초과 함수 |
|
|
103
|
+
| 리뷰 에이전트 | 12개 전문 리뷰어 병렬 실행 (보안, 성능, 접근성, 복잡도, ...) |
|
|
104
|
+
| 수렴 루프 | 리뷰 findings P1=0까지 루프. 라운드 캡 없음. Stuck이면 사용자에게 질문, 절대 조용히 넘어가지 않음. |
|
|
105
|
+
|
|
59
106
|
---
|
|
60
107
|
|
|
61
108
|
## 주요 기능
|
|
62
109
|
|
|
63
|
-
|
|
110
|
+
**40+ 에이전트** — 탐색, 구현, 아키텍처, 병렬 코드 리뷰, UI/UX 분석, 보안 감사, Figma 분석/빌드.
|
|
111
|
+
|
|
112
|
+
**44개 스킬** — 한 번에 다 로드되지 않음. 3-tier 시스템으로 컨텍스트 과부하 방지:
|
|
64
113
|
|
|
65
|
-
|
|
114
|
+
| 티어 | 로드 시점 | 용도 | 예시 |
|
|
115
|
+
|------|----------|------|------|
|
|
116
|
+
| **Core** | 항상 활성 | 버그 방지, 워크플로 진입 | 품질 게이트, 인터뷰, 기획 |
|
|
117
|
+
| **Standard** | `vibe init`이 스택별 선택 | 스택/역할 지원 | figma, design-audit, techdebt |
|
|
118
|
+
| **Optional** | 명시적 `/skill` 호출만 | 레퍼런스, 래퍼 | chub-usage, context7 |
|
|
66
119
|
|
|
67
120
|
**멀티 LLM** — Claude가 오케스트레이션, GPT가 추론, Gemini가 리서치. 가용 모델에 따라 자동 라우팅. 기본값은 Claude 단독.
|
|
68
121
|
|
|
69
|
-
|
|
122
|
+
**스택 감지** — 24개 프레임워크 자동 감지 (Next.js, Django, Rails, Go, Rust, Flutter 등) 후 프레임워크별 규칙과 스킬 적용.
|
|
70
123
|
|
|
71
|
-
|
|
124
|
+
**세션 메모리** — 결정, 제약, 목표가 SQLite + FTS5 검색으로 세션 간 유지.
|
|
72
125
|
|
|
73
|
-
**
|
|
126
|
+
**Smart Resume** — `.last-feature` 포인터가 마지막 작업을 추적. 인자 없이 `/vibe.spec`을 호출하면 중단된 위치를 보여주거나 진행 중 feature 목록을 제시.
|
|
74
127
|
|
|
75
128
|
---
|
|
76
129
|
|
|
@@ -85,6 +138,18 @@ claude # Claude Code
|
|
|
85
138
|
|
|
86
139
|
---
|
|
87
140
|
|
|
141
|
+
## 명령어
|
|
142
|
+
|
|
143
|
+
| 명령어 | 용도 |
|
|
144
|
+
|--------|------|
|
|
145
|
+
| `/vibe.spec` | 단일 진입점 — 인터뷰, 기획, SPEC, 리뷰, 그리고 구현까지 |
|
|
146
|
+
| `/vibe.run` | SPEC 기반 구현 |
|
|
147
|
+
| `/vibe.figma` | Figma ↔ 코드 (읽기 또는 쓰기, 3가지 모드) |
|
|
148
|
+
| `/vibe.verify` | 구현이 SPEC에 맞는지 검증 |
|
|
149
|
+
| `/vibe.trace` | 요구사항 추적 매트릭스 |
|
|
150
|
+
|
|
151
|
+
---
|
|
152
|
+
|
|
88
153
|
## 문서
|
|
89
154
|
|
|
90
155
|
상세 가이드, 스킬 레퍼런스, 설정 방법은 [Wiki](https://github.com/su-record/vibe/wiki)를 참고하세요.
|
package/README.md
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
# VIBE
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**Easy vibe coding. Minimum quality guaranteed.**
|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/@su-record/vibe)
|
|
6
6
|
[](https://www.npmjs.com/package/@su-record/vibe)
|
|
7
7
|
[](https://nodejs.org/)
|
|
8
8
|
[](LICENSE)
|
|
9
9
|
|
|
10
|
-
Vibe is a quality harness for AI coding tools. It wraps around Claude Code, Codex, Cursor, or Gemini CLI and automatically enforces type safety, code quality, and security —
|
|
10
|
+
Vibe is a quality harness for AI coding tools. It wraps around Claude Code, Codex, Cursor, or Gemini CLI and automatically enforces type safety, code quality, and security — so you can vibe-code fast without shipping garbage.
|
|
11
11
|
|
|
12
12
|
```bash
|
|
13
13
|
npm install -g @su-record/vibe
|
|
@@ -16,61 +16,159 @@ vibe init
|
|
|
16
16
|
|
|
17
17
|
---
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## The Workflow
|
|
20
20
|
|
|
21
|
+
One entry point. Everything else is automatic.
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
/vibe.spec "coffee brand landing page"
|
|
25
|
+
|
|
|
26
|
+
v
|
|
27
|
+
Interview ─── "Who's the audience?" "What sections?" "Dark mode?" ───
|
|
28
|
+
| (loops until you say stop)
|
|
29
|
+
v
|
|
30
|
+
Plan ─── Structured planning document (.claude/vibe/plans/)
|
|
31
|
+
|
|
|
32
|
+
v
|
|
33
|
+
SPEC ─── PTCF spec + BDD features, GPT+Gemini parallel research
|
|
34
|
+
|
|
|
35
|
+
v
|
|
36
|
+
Review ─── Race review (GPT vs Gemini), quality gate (100-point, loop until perfect)
|
|
37
|
+
|
|
|
38
|
+
+──────────────────────────────┐
|
|
39
|
+
v v
|
|
40
|
+
/vibe.run (Logic) /vibe.figma (UI)
|
|
41
|
+
Implement from SPEC Figma design ↔ Code
|
|
42
|
+
12 agents review Read or Write
|
|
43
|
+
| |
|
|
44
|
+
v v
|
|
45
|
+
/vibe.verify ──── /vibe.trace ──── Done
|
|
21
46
|
```
|
|
22
|
-
You: "Add user authentication"
|
|
23
47
|
|
|
24
|
-
|
|
25
|
-
/vibe.run → Implement from SPEC → 12 agents review in parallel
|
|
26
|
-
Quality gates → Block any types, long functions, dangerous commands
|
|
27
|
-
Done → Only reviewed, type-safe code remains
|
|
48
|
+
**Smart Resume** — Stop at any step, close the session, come back later. `/vibe.spec` auto-detects where you left off and picks up from there. No need to remember feature names.
|
|
28
49
|
|
|
29
|
-
|
|
30
|
-
```
|
|
50
|
+
**ultrawork** — Add `ultrawork` to skip all confirmation gates and run the full pipeline hands-free.
|
|
31
51
|
|
|
32
52
|
---
|
|
33
53
|
|
|
34
54
|
## Quick Start
|
|
35
55
|
|
|
36
56
|
```bash
|
|
37
|
-
#
|
|
57
|
+
# Install
|
|
38
58
|
npm install -g @su-record/vibe
|
|
39
59
|
|
|
40
|
-
#
|
|
60
|
+
# Initialize (auto-detects your stack, generates project-aware CLAUDE.md)
|
|
41
61
|
cd your-project
|
|
42
62
|
vibe init
|
|
43
63
|
|
|
44
|
-
#
|
|
45
|
-
claude
|
|
46
|
-
|
|
64
|
+
# Start your AI coding tool
|
|
65
|
+
claude
|
|
66
|
+
|
|
67
|
+
# Run the workflow
|
|
68
|
+
/vibe.spec "add user authentication"
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Harness Engineering
|
|
74
|
+
|
|
75
|
+
Vibe is built on the [Harness Engineering](https://anthropic.com/engineering/harness-design) principle — designing the working environment so AI operates effectively on its own.
|
|
76
|
+
|
|
77
|
+
### The 6 Axes
|
|
78
|
+
|
|
79
|
+
| Axis | What it covers | Vibe implementation |
|
|
80
|
+
|------|---------------|---------------------|
|
|
81
|
+
| **Scaffolding** | Project structure, tools, boundaries | `/vibe.scaffold` generates optimized folder structure (docs/, .dev/, layered src/) |
|
|
82
|
+
| **Context** | What AI knows | `vibe init` generates project-aware CLAUDE.md from actual structure analysis |
|
|
83
|
+
| **Planning** | What to build | `/vibe.spec` → interview → plan → SPEC → review pipeline |
|
|
84
|
+
| **Orchestration** | How to execute | 40+ agents, 12 teams, skill-based dispatch |
|
|
85
|
+
| **Verification** | How to trust | Hooks, convergence loops, RTM traceability |
|
|
86
|
+
| **Compounding** | How to improve | Evolution engine, session memory, auto-generated skills |
|
|
87
|
+
|
|
88
|
+
### Diagnose Your Project
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
/vibe.harness # Score your project across all 6 axes (0-100)
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Produces a detailed report with per-axis scores, grade (S/A/B/C/D), and auto-fixable improvement suggestions. Detects project type (app vs package/library) and adjusts scoring accordingly.
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
## Analyze Anything
|
|
99
|
+
|
|
100
|
+
`/vibe.analyze` works on more than just source code:
|
|
47
101
|
|
|
48
|
-
|
|
49
|
-
/vibe.
|
|
50
|
-
/vibe.
|
|
102
|
+
```bash
|
|
103
|
+
/vibe.analyze "login" # Feature/module code exploration
|
|
104
|
+
/vibe.analyze --code # Code quality analysis
|
|
105
|
+
/vibe.analyze report.pdf # Document analysis (PDF, slides, markdown)
|
|
106
|
+
/vibe.analyze https://example.com # Website analysis (UX, tech, SEO, a11y)
|
|
107
|
+
/vibe.analyze https://figma.com/… # Figma design analysis
|
|
51
108
|
```
|
|
52
109
|
|
|
53
|
-
|
|
110
|
+
Auto-detects input type (file extension → URL pattern → flag → string) and routes to the appropriate analysis mode with mode-specific quality gates.
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
## Figma ↔ Code
|
|
115
|
+
|
|
116
|
+
Bidirectional. Read designs from Figma, or write designs to Figma from a plan.
|
|
54
117
|
|
|
55
118
|
```bash
|
|
56
|
-
|
|
119
|
+
# READ — Add UI to existing project (follows project conventions)
|
|
120
|
+
/vibe.figma <figma-url> <figma-url>
|
|
121
|
+
|
|
122
|
+
# READ — New standalone page (independent styles)
|
|
123
|
+
/vibe.figma --new <figma-url>
|
|
124
|
+
|
|
125
|
+
# WRITE — Create Figma design from plan document
|
|
126
|
+
/vibe.figma plan.md --create # Full (wireframe + visual design)
|
|
127
|
+
/vibe.figma plan.md --create-storyboard # Wireframe only
|
|
128
|
+
/vibe.figma plan.md --create-design # Visual design only
|
|
57
129
|
```
|
|
58
130
|
|
|
131
|
+
**How READ works**: Extracts the Figma node tree + 30 CSS properties via REST API, maps Auto Layout to Flexbox 1:1, generates responsive SCSS. Screenshot is for verification only — the tree is the source of truth.
|
|
132
|
+
|
|
133
|
+
**How WRITE works**: Parses plan document sections (Look & Feel, layout, responsive strategy), builds wireframe first for structure review, then applies visual design with design system components. Idempotent — re-run after editing the plan and only changed sections update.
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## Quality Gates
|
|
138
|
+
|
|
139
|
+
Three layers of defense on every tool call:
|
|
140
|
+
|
|
141
|
+
| Layer | What it blocks |
|
|
142
|
+
|-------|----------------|
|
|
143
|
+
| Pre-commit hooks | `any` types, `@ts-ignore`, `console.log`, functions > 50 lines |
|
|
144
|
+
| Review agents | 12 specialized reviewers run in parallel (security, performance, a11y, complexity, ...) |
|
|
145
|
+
| Convergence loop | Review findings loop until P1 = 0. No round cap. Stuck = ask user, never silently proceed. |
|
|
146
|
+
|
|
59
147
|
---
|
|
60
148
|
|
|
61
|
-
##
|
|
149
|
+
## Key Features
|
|
150
|
+
|
|
151
|
+
**40+ agents** — Exploration, implementation, architecture, parallel code review, UI/UX analysis, security audit, Figma analysis/building.
|
|
62
152
|
|
|
63
|
-
**
|
|
153
|
+
**44 skills** — Not all loaded at once. 3-tier system prevents context overload:
|
|
64
154
|
|
|
65
|
-
|
|
155
|
+
| Tier | When loaded | Purpose | Examples |
|
|
156
|
+
|------|-------------|---------|----------|
|
|
157
|
+
| **Core** | Always active | Bug prevention, workflow entry | quality gates, interview, plan |
|
|
158
|
+
| **Standard** | `vibe init` selects by stack | Stack/capability support | figma, design-audit, techdebt |
|
|
159
|
+
| **Optional** | Explicit `/skill` only | Reference, wrappers | chub-usage, context7 |
|
|
66
160
|
|
|
67
161
|
**Multi-LLM** — Claude orchestrates, GPT reasons, Gemini researches. Auto-routes by availability. Works Claude-only by default.
|
|
68
162
|
|
|
163
|
+
**Stack detection** — Auto-detects 24 frameworks (Next.js, Django, Rails, Go, Rust, Flutter, and more) and applies framework-specific rules and skills.
|
|
164
|
+
|
|
165
|
+
**Project-aware CLAUDE.md** — `vibe init` and `vibe update` analyze your project's actual structure (folders, tech stack, build commands) and generate a tailored CLAUDE.md — not a static template.
|
|
166
|
+
|
|
69
167
|
**Session memory** — Decisions, constraints, and goals persist across sessions via SQLite + FTS5 hybrid search.
|
|
70
168
|
|
|
71
|
-
**
|
|
169
|
+
**Smart Resume** — `.last-feature` pointer tracks your latest work. `/vibe.spec` without arguments shows where you left off or lists all in-progress features.
|
|
72
170
|
|
|
73
|
-
**
|
|
171
|
+
**Self-repair** — Skills include error recovery tables. `/vibe.harness` diagnoses gaps and chains to `/vibe.scaffold` → `vibe update` for automated fixes.
|
|
74
172
|
|
|
75
173
|
---
|
|
76
174
|
|
|
@@ -85,6 +183,22 @@ Add `ultrawork` to any command for full automation:
|
|
|
85
183
|
|
|
86
184
|
---
|
|
87
185
|
|
|
186
|
+
## Commands
|
|
187
|
+
|
|
188
|
+
| Command | Purpose |
|
|
189
|
+
|---------|---------|
|
|
190
|
+
| `/vibe.spec` | Single entry point — interview, plan, spec, review, then run |
|
|
191
|
+
| `/vibe.run` | Implement from SPEC |
|
|
192
|
+
| `/vibe.figma` | Figma ↔ Code (read or write, 3 modes) |
|
|
193
|
+
| `/vibe.verify` | Verify implementation against SPEC |
|
|
194
|
+
| `/vibe.trace` | Requirements traceability matrix |
|
|
195
|
+
| `/vibe.analyze` | Analyze any target — code, documents, websites, Figma |
|
|
196
|
+
| `/vibe.scaffold` | Generate or audit project folder structure |
|
|
197
|
+
| `/vibe.harness` | Diagnose Harness Engineering maturity (6-axis scoring) |
|
|
198
|
+
| `/vibe.docs` | Generate project documentation |
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
88
202
|
## Documentation
|
|
89
203
|
|
|
90
204
|
Full guides, skill reference, and configuration details are in the [Wiki](https://github.com/su-record/vibe/wiki).
|
|
@@ -37,12 +37,25 @@ BP별 스태틱 코드 구현 전문 에이전트.
|
|
|
37
37
|
## ⛔ 불변 규칙
|
|
38
38
|
|
|
39
39
|
```
|
|
40
|
+
0. SCSS는 절대 직접 작성하지 않는다 (가장 중요)
|
|
41
|
+
⛔ figma-to-scss.js 호출 없이 SCSS 파일 생성 절대 금지
|
|
42
|
+
⛔ Vue/React 파일의 <style> 블록에 CSS 값 작성 금지 (@import만 허용)
|
|
43
|
+
⛔ 자체 정제/생성 스크립트 작성 절대 금지:
|
|
44
|
+
❌ refine-sections.mjs, refine.js, refine.mjs
|
|
45
|
+
❌ to-scss.mjs, generate-scss.js
|
|
46
|
+
❌ analyze-tree.mjs, analyze-section.mjs
|
|
47
|
+
❌ Python/Node로 sections.json 또는 SCSS 직접 생성
|
|
48
|
+
⛔ "스킬 규칙을 읽고 직접 구현" 금지 — 스킬은 figma-*.js 호출을 명시함
|
|
49
|
+
✅ Bash로 figma-refine.js, figma-to-scss.js, figma-validate.js만 호출
|
|
50
|
+
✅ 스크립트 결과가 마음에 안 들면 ~/.vibe/hooks/scripts/figma-*.js 자체를 수정 요청
|
|
51
|
+
|
|
40
52
|
1. SCSS CSS 값 수정 금지
|
|
41
53
|
❌ figma-to-scss.js 출력값 변경
|
|
42
54
|
❌ 커스텀 함수/믹스인 생성 (wp-fluid, wp-bg-layer 등)
|
|
43
55
|
❌ aspect-ratio 등 tree.json에 없는 CSS 속성
|
|
44
56
|
❌ vw 변환, clamp, @media (스태틱 구현이므로)
|
|
45
|
-
|
|
57
|
+
❌ 프로젝트 토큰 ($pw-blue, $wp-radius 등) 사용 금지 — figma-to-scss.js가 자체 토큰 생성
|
|
58
|
+
✅ figma-to-scss.js 출력 그대로 @import / @use
|
|
46
59
|
|
|
47
60
|
2. CSS 값은 Figma 원본 px 그대로
|
|
48
61
|
✅ width: 720px; height: 1280px;
|
|
@@ -63,6 +76,19 @@ BP별 스태틱 코드 구현 전문 에이전트.
|
|
|
63
76
|
❌ <img> 태그로 BG 처리
|
|
64
77
|
```
|
|
65
78
|
|
|
79
|
+
## ⛔ 자가 점검 (각 작업 전 필수)
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
[ ] /tmp/{feature}/{bp}-main/sections.json이 존재하는가?
|
|
83
|
+
→ 없으면 figma-refine.js 먼저 실행 (자체 작성 금지)
|
|
84
|
+
[ ] assets/scss/{feature}/_*.scss 파일이 figma-to-scss.js로 생성되었는가?
|
|
85
|
+
→ Bash 히스토리에 figma-to-scss.js 호출 흔적 있어야 함
|
|
86
|
+
[ ] Vue/React 파일의 <style> 블록이 비어있거나 @import만 있는가?
|
|
87
|
+
→ CSS 값 직접 작성 금지
|
|
88
|
+
[ ] /tmp/{feature}/ 하위에 .mjs/.js 자체 작성 스크립트가 없는가?
|
|
89
|
+
→ 발견 즉시 삭제, ~/.vibe/hooks/scripts/figma-*.js만 사용
|
|
90
|
+
```
|
|
91
|
+
|
|
66
92
|
## 자가 검증 (각 섹션 완료 후)
|
|
67
93
|
|
|
68
94
|
- [ ] figma-validate.js PASS
|
|
@@ -70,3 +96,5 @@ BP별 스태틱 코드 구현 전문 에이전트.
|
|
|
70
96
|
- [ ] 모든 img src가 static/에 실제 존재
|
|
71
97
|
- [ ] SCSS에 @function/@mixin 자체 정의 없음
|
|
72
98
|
- [ ] tree.json에 없는 CSS 속성 없음
|
|
99
|
+
- [ ] Vue/React `<style>` 블록에 CSS 값 직접 작성 없음 (@import만)
|
|
100
|
+
- [ ] /tmp/{feature}/ 하위에 자체 작성 .mjs/.js 없음
|