@su-record/vibe 2.9.15 → 2.9.16

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.
Files changed (41) hide show
  1. package/CLAUDE.md +101 -190
  2. package/README.ko.md +171 -171
  3. package/README.md +220 -220
  4. package/commands/vibe.docs.md +3 -2
  5. package/dist/cli/auth.d.ts.map +1 -1
  6. package/dist/cli/auth.js +3 -1
  7. package/dist/cli/auth.js.map +1 -1
  8. package/dist/cli/commands/info.d.ts.map +1 -1
  9. package/dist/cli/commands/info.js +7 -2
  10. package/dist/cli/commands/info.js.map +1 -1
  11. package/dist/cli/commands/init.d.ts +0 -10
  12. package/dist/cli/commands/init.d.ts.map +1 -1
  13. package/dist/cli/commands/init.js +6 -77
  14. package/dist/cli/commands/init.js.map +1 -1
  15. package/dist/cli/commands/update.d.ts.map +1 -1
  16. package/dist/cli/commands/update.js +6 -15
  17. package/dist/cli/commands/update.js.map +1 -1
  18. package/dist/cli/postinstall/index.d.ts +0 -4
  19. package/dist/cli/postinstall/index.d.ts.map +1 -1
  20. package/dist/cli/postinstall/index.js +0 -4
  21. package/dist/cli/postinstall/index.js.map +1 -1
  22. package/dist/cli/postinstall/main.d.ts.map +1 -1
  23. package/dist/cli/postinstall/main.js +2 -32
  24. package/dist/cli/postinstall/main.js.map +1 -1
  25. package/dist/cli/postinstall.d.ts +1 -1
  26. package/dist/cli/postinstall.d.ts.map +1 -1
  27. package/dist/cli/postinstall.js +1 -1
  28. package/dist/cli/postinstall.js.map +1 -1
  29. package/dist/cli/setup/ProjectSetup.d.ts +1 -16
  30. package/dist/cli/setup/ProjectSetup.d.ts.map +1 -1
  31. package/dist/cli/setup/ProjectSetup.js +8 -161
  32. package/dist/cli/setup/ProjectSetup.js.map +1 -1
  33. package/dist/cli/setup.d.ts +1 -1
  34. package/dist/cli/setup.d.ts.map +1 -1
  35. package/dist/cli/setup.js +1 -1
  36. package/dist/cli/setup.js.map +1 -1
  37. package/dist/cli/utils/cli-detector.d.ts +1 -1
  38. package/dist/cli/utils/cli-detector.js +1 -1
  39. package/package.json +1 -1
  40. package/skills/vibe-docs/SKILL.md +232 -171
  41. package/skills/vibe-docs/templates/behavioral-principles.md +47 -0
@@ -1,171 +1,232 @@
1
- ---
2
- name: vibe-docs
3
- tier: standard
4
- description: "Generate project documentation — README, architecture docs, user guide, release notes. Activates on docs, readme, documentation keywords."
5
- triggers: [vibe-docs, docs, documentation, readme, release notes, architecture doc]
6
- priority: 50
7
- ---
8
-
9
- # vibe.docs — Project Documentation Generator
10
-
11
- Generate or update project documentation by analyzing the actual codebase.
12
-
13
- ## Subcommands
14
-
15
- ### `/vibe.docs readme` — README Generation
16
-
17
- Analyze the codebase and generate a complete README.md:
18
-
19
- 1. **Detect project nature**: Read package.json, CLAUDE.md, existing README
20
- 2. **Extract key info**: Tech stack, installation, usage, API surface
21
- 3. **Generate sections**:
22
-
23
- ```markdown
24
- # Project Name
25
- > One-line description from package.json
26
-
27
- ## What is this?
28
- [2-3 sentences explaining the problem and solution]
29
-
30
- ## Quick Start
31
- [Installation + minimal usage example]
32
-
33
- ## Features
34
- [Auto-detected from codebase — exported functions, CLI commands, API endpoints]
35
-
36
- ## Architecture
37
- [High-level module diagram if 5+ source directories]
38
-
39
- ## Configuration
40
- [Detected config files and their purposes]
41
-
42
- ## Development
43
- [Build, test, lint commands from package.json scripts]
44
-
45
- ## License
46
- ```
47
-
48
- **Analysis approach:**
49
- ```
50
- Read: package.json → name, description, scripts, dependencies
51
- Glob: src/**/*.ts → module structure
52
- Grep: pattern="export (function|class|const)" → public API surface
53
- Grep: pattern="(app|router)\.(get|post|put|delete)" → API endpoints
54
- Read: CLAUDE.md → project conventions
55
- ```
56
-
57
- ### `/vibe.docs guide` — User Guide
58
-
59
- Generate a step-by-step user guide:
60
-
61
- 1. **Installation**: Detect package manager, prerequisites
62
- 2. **Configuration**: Find all config files, document each option
63
- 3. **Usage**: Extract CLI commands or API usage patterns
64
- 4. **FAQ**: Common issues from error handling patterns
65
- 5. **Troubleshooting**: Known edge cases from test files
66
-
67
- Output: `docs/GUIDE.md`
68
-
69
- **Analysis approach:**
70
- ```
71
- Read: package.json → bin, scripts, peerDependencies
72
- Glob: src/cli/commands/*.ts → CLI command list
73
- Grep: pattern="throw new|Error\(" → common error scenarios
74
- Grep: pattern="(process\.env|config)\.\w+" → configuration options
75
- ```
76
-
77
- ### `/vibe.docs arch` — Architecture Documentation
78
-
79
- Generate architecture overview with diagrams:
80
-
81
- 1. **Module map**: Directory structure → responsibility mapping
82
- 2. **Dependency graph**: Import analysis → Mermaid diagram
83
- 3. **Data flow**: Entry points → processing → output
84
- 4. **Key decisions**: Extract from CLAUDE.md and code comments
85
-
86
- Output: `docs/ARCHITECTURE.md`
87
-
88
- **Mermaid diagram generation:**
89
- ```
90
- Glob: src/**/ → module list
91
- Grep: pattern="^import .+ from" → dependency edges
92
- Read: CLAUDE.md → architecture notes
93
-
94
- Generate:
95
- graph TD
96
- CLI[CLI Commands] --> Core[Core Logic]
97
- Core --> Infra[Infrastructure]
98
- Infra --> DB[(Database)]
99
- Infra --> API[External APIs]
100
- ```
101
-
102
- ### `/vibe.docs release` — Release Notes
103
-
104
- Generate release notes from git history:
105
-
106
- 1. **Collect**: `git log` since last tag
107
- 2. **Classify**: feat/fix/refactor/docs/chore from commit messages
108
- 3. **Group**: By category with breaking changes highlighted
109
- 4. **Format**: Semantic versioning suggestion
110
-
111
- Output: `RELEASE_NOTES.md` or append to `CHANGELOG.md`
112
-
113
- **Output format:**
114
- ```markdown
115
- ## [x.y.z] - YYYY-MM-DD
116
-
117
- ### Breaking Changes
118
- - ...
119
-
120
- ### Features
121
- - feat: description (#PR)
122
-
123
- ### Bug Fixes
124
- - fix: description (#PR)
125
-
126
- ### Other
127
- - refactor/docs/chore items
128
- ```
129
-
130
- ## Pipeline Integration
131
-
132
- `/vibe.docs` completes the development pipeline:
133
-
134
- ```
135
- /vibe.spec → Design (what to build)
136
- /vibe.run → Implement (build it)
137
- /vibe.trace → Verify (prove it works)
138
- /vibe.docs → Document (explain it)
139
- ```
140
-
141
- ### Auto-trigger after `/vibe.trace`
142
-
143
- When `/vibe.trace` completes with all scenarios passing, suggest:
144
- > "All scenarios verified. Run `/vibe.docs readme` to update documentation?"
145
-
146
- ## Guidelines
147
-
148
- ### DO
149
- - Read the actual codebase before generating never guess
150
- - Preserve existing documentation that's still accurate
151
- - Include concrete code examples from the actual project
152
- - Keep language consistent with project (Korean/English based on CLAUDE.md)
153
- - Use changelog-writer agent for `/vibe.docs release`
154
- - Use api-documenter agent for API-heavy projects
155
- - Use diagrammer agent for `/vibe.docs arch` Mermaid generation
156
-
157
- ### DON'T
158
- - Don't generate placeholder text ("Lorem ipsum", "TODO: fill in")
159
- - Don't document internal implementation details in user-facing docs
160
- - Don't create files without reading existing ones first
161
- - Don't assume features — verify by reading code
162
-
163
- ## Quality Checklist
164
-
165
- Before finalizing any document:
166
-
167
- - [ ] All code examples are runnable (copy-paste ready)
168
- - [ ] Installation steps tested against package.json
169
- - [ ] Links and paths are valid
170
- - [ ] No placeholder text remaining
171
- - [ ] Consistent with project language (Korean/English)
1
+ ---
2
+ name: vibe-docs
3
+ tier: standard
4
+ description: "Generate project documentation — README, architecture docs, user guide, release notes. Activates on docs, readme, documentation keywords."
5
+ triggers: [vibe-docs, docs, documentation, readme, release notes, architecture doc]
6
+ priority: 50
7
+ ---
8
+
9
+ # vibe.docs — Project Documentation Generator
10
+
11
+ Generate or update project documentation by analyzing the actual codebase.
12
+
13
+ ## Subcommands
14
+
15
+ ### `/vibe.docs readme` — README Generation
16
+
17
+ Analyze the codebase and generate a complete README.md:
18
+
19
+ 1. **Detect project nature**: Read package.json, CLAUDE.md, existing README
20
+ 2. **Extract key info**: Tech stack, installation, usage, API surface
21
+ 3. **Generate sections**:
22
+
23
+ ```markdown
24
+ # Project Name
25
+ > One-line description from package.json
26
+
27
+ ## What is this?
28
+ [2-3 sentences explaining the problem and solution]
29
+
30
+ ## Quick Start
31
+ [Installation + minimal usage example]
32
+
33
+ ## Features
34
+ [Auto-detected from codebase — exported functions, CLI commands, API endpoints]
35
+
36
+ ## Architecture
37
+ [High-level module diagram if 5+ source directories]
38
+
39
+ ## Configuration
40
+ [Detected config files and their purposes]
41
+
42
+ ## Development
43
+ [Build, test, lint commands from package.json scripts]
44
+
45
+ ## License
46
+ ```
47
+
48
+ **Analysis approach:**
49
+ ```
50
+ Read: package.json → name, description, scripts, dependencies
51
+ Glob: src/**/*.ts → module structure
52
+ Grep: pattern="export (function|class|const)" → public API surface
53
+ Grep: pattern="(app|router)\.(get|post|put|delete)" → API endpoints
54
+ Read: CLAUDE.md → project conventions
55
+ ```
56
+
57
+ ### `/vibe.docs guide` — User Guide
58
+
59
+ Generate a step-by-step user guide:
60
+
61
+ 1. **Installation**: Detect package manager, prerequisites
62
+ 2. **Configuration**: Find all config files, document each option
63
+ 3. **Usage**: Extract CLI commands or API usage patterns
64
+ 4. **FAQ**: Common issues from error handling patterns
65
+ 5. **Troubleshooting**: Known edge cases from test files
66
+
67
+ Output: `docs/GUIDE.md`
68
+
69
+ **Analysis approach:**
70
+ ```
71
+ Read: package.json → bin, scripts, peerDependencies
72
+ Glob: src/cli/commands/*.ts → CLI command list
73
+ Grep: pattern="throw new|Error\(" → common error scenarios
74
+ Grep: pattern="(process\.env|config)\.\w+" → configuration options
75
+ ```
76
+
77
+ ### `/vibe.docs arch` — Architecture Documentation
78
+
79
+ Generate architecture overview with diagrams:
80
+
81
+ 1. **Module map**: Directory structure → responsibility mapping
82
+ 2. **Dependency graph**: Import analysis → Mermaid diagram
83
+ 3. **Data flow**: Entry points → processing → output
84
+ 4. **Key decisions**: Extract from CLAUDE.md and code comments
85
+
86
+ Output: `docs/ARCHITECTURE.md`
87
+
88
+ **Mermaid diagram generation:**
89
+ ```
90
+ Glob: src/**/ → module list
91
+ Grep: pattern="^import .+ from" → dependency edges
92
+ Read: CLAUDE.md → architecture notes
93
+
94
+ Generate:
95
+ graph TD
96
+ CLI[CLI Commands] --> Core[Core Logic]
97
+ Core --> Infra[Infrastructure]
98
+ Infra --> DB[(Database)]
99
+ Infra --> API[External APIs]
100
+ ```
101
+
102
+ ### `/vibe.docs agent` — Agent Instruction Files (CLAUDE.md / AGENTS.md / GEMINI.md)
103
+
104
+ **CLI file mapping:**
105
+
106
+ | CLI | File | Support |
107
+ |---|---|---|
108
+ | Claude Code | `CLAUDE.md` | 100% (Primary) |
109
+ | coco | `AGENTS.md` | 100% (Primary) |
110
+ | Codex CLI | `AGENTS.md` (shared with coco) | Best-effort |
111
+ | Gemini CLI | `GEMINI.md` | Best-effort |
112
+ | Cursor | (none yet) | Best-effort |
113
+
114
+ Note: `AGENTS.md` is coco's **primary** file AND Codex's compat file — treat edits with coco-level care.
115
+
116
+ **Source of truth:**
117
+ - **`CLAUDE.md` is the content SSOT.** Always edit it first; `AGENTS.md` and `GEMINI.md` are regenerated derivatives.
118
+ - Behavioral block: `skills/vibe-docs/templates/behavioral-principles.md` (4 Karpathy principles, wrapped in `<!-- VIBE-BEHAVIORAL:START/END -->` markers).
119
+
120
+ **Procedure (applies to both creation and modification):**
121
+
122
+ 1. **Detect state** — enumerate which of `CLAUDE.md` / `AGENTS.md` / `GEMINI.md` exist in project root. **`CLAUDE.md` is always the SSOT**; if missing, create it first (never derive from AGENTS.md/GEMINI.md).
123
+ 2. **Per derivative file (`AGENTS.md`, `GEMINI.md`)**:
124
+ - **If missing** → create by cloning `CLAUDE.md` + applying CLI substitution (below).
125
+ - **If exists** → regenerate from current `CLAUDE.md` + substitution, preserving user-specific additions outside the VIBE block.
126
+ - Each derivative must include a **compatibility-file notice** in the header stating that `CLAUDE.md` is the SSOT and this CLI is best-effort (not 100% supported).
127
+ 3. **CLI substitution (apply to derived copies, not the SSOT)**:
128
+
129
+ | Target | Swap |
130
+ |---|---|
131
+ | `AGENTS.md` (Codex) | `Claude Code` → `Codex CLI` · `~/.claude/` → `~/.codex/` · `.claude/` → `.codex/` · `CLAUDE.md` → `AGENTS.md` |
132
+ | `GEMINI.md` (Gemini) | `Claude Code` → `Gemini CLI` · `~/.claude/` → `~/.gemini/` · `.claude/` → `.gemini/` · `CLAUDE.md` → `GEMINI.md` · `PreToolUse`→`BeforeTool` · `PostToolUse`→`AfterTool` · `UserPromptSubmit`→`BeforeAgent` |
133
+ | `CLAUDE.md` | no substitution |
134
+
135
+ 4. **Validate every touched file (whether newly created or modified)** via the `claude-md-guide` → `agents-md` skill chain — see validation block below. **Never write or save without running this step.**
136
+ 5. Report per file: created / updated / skipped / validation warnings.
137
+
138
+ **Idempotent:** Re-running re-syncs the behavioral block and re-applies substitutions without duplication.
139
+
140
+ **Mandatory validation (every create & every update) — invoke `claude-md-guide` → `agents-md`:**
141
+
142
+ 1. **`claude-md-guide`**:
143
+ - Size target 60–150 lines (Optimal). Warn at 200+, force split/trim at 300+.
144
+ - 4-question check per line (outside `VIBE-BEHAVIORAL` block):
145
+ - Would the agent make a mistake without this? (No → delete)
146
+ - Needed every session? (No → move to SPEC/plan)
147
+ - Can a linter/hook replace it? (Yes → move)
148
+ - Discoverable from code? (Yes → delete)
149
+ - Lost-in-the-Middle: critical rules at top, frequently-violated rules at bottom.
150
+ 2. **`agents-md`**:
151
+ - Addy Osmani test: "Can the agent discover this by reading the code?" → Yes = delete.
152
+ - Strip tech-stack name-drops already stated in `package.json`.
153
+
154
+ Report line ranges to trim per file. Do not auto-delete; surface findings for user approval before finalizing.
155
+
156
+ **When to run:**
157
+ - After `vibe init` / `vibe update` if any of the three files are missing or out of sync.
158
+ - After upgrading `@su-record/vibe` when the behavioral template changes.
159
+ - Whenever the SSOT file is edited — re-sync derivatives.
160
+ - User explicitly asks to refresh agent instructions.
161
+
162
+ ### `/vibe.docs release` — Release Notes
163
+
164
+ Generate release notes from git history:
165
+
166
+ 1. **Collect**: `git log` since last tag
167
+ 2. **Classify**: feat/fix/refactor/docs/chore from commit messages
168
+ 3. **Group**: By category with breaking changes highlighted
169
+ 4. **Format**: Semantic versioning suggestion
170
+
171
+ Output: `RELEASE_NOTES.md` or append to `CHANGELOG.md`
172
+
173
+ **Output format:**
174
+ ```markdown
175
+ ## [x.y.z] - YYYY-MM-DD
176
+
177
+ ### Breaking Changes
178
+ - ...
179
+
180
+ ### Features
181
+ - feat: description (#PR)
182
+
183
+ ### Bug Fixes
184
+ - fix: description (#PR)
185
+
186
+ ### Other
187
+ - refactor/docs/chore items
188
+ ```
189
+
190
+ ## Pipeline Integration
191
+
192
+ `/vibe.docs` completes the development pipeline:
193
+
194
+ ```
195
+ /vibe.spec → Design (what to build)
196
+ /vibe.run → Implement (build it)
197
+ /vibe.trace → Verify (prove it works)
198
+ /vibe.docs → Document (explain it)
199
+ ```
200
+
201
+ ### Auto-trigger after `/vibe.trace`
202
+
203
+ When `/vibe.trace` completes with all scenarios passing, suggest:
204
+ > "All scenarios verified. Run `/vibe.docs readme` to update documentation?"
205
+
206
+ ## Guidelines
207
+
208
+ ### DO
209
+ - Read the actual codebase before generating — never guess
210
+ - Preserve existing documentation that's still accurate
211
+ - Include concrete code examples from the actual project
212
+ - Keep language consistent with project (Korean/English based on CLAUDE.md)
213
+ - Use changelog-writer agent for `/vibe.docs release`
214
+ - Use api-documenter agent for API-heavy projects
215
+ - Use diagrammer agent for `/vibe.docs arch` Mermaid generation
216
+ - Use `claude-md-guide` → `agents-md` chain for `/vibe.docs agent` — applies equally to CLAUDE.md, AGENTS.md, GEMINI.md
217
+
218
+ ### DON'T
219
+ - Don't generate placeholder text ("Lorem ipsum", "TODO: fill in")
220
+ - Don't document internal implementation details in user-facing docs
221
+ - Don't create files without reading existing ones first
222
+ - Don't assume features — verify by reading code
223
+
224
+ ## Quality Checklist
225
+
226
+ Before finalizing any document:
227
+
228
+ - [ ] All code examples are runnable (copy-paste ready)
229
+ - [ ] Installation steps tested against package.json
230
+ - [ ] Links and paths are valid
231
+ - [ ] No placeholder text remaining
232
+ - [ ] Consistent with project language (Korean/English)
@@ -0,0 +1,47 @@
1
+ <!-- VIBE-BEHAVIORAL:START -->
2
+ ## Behavioral Principles (Karpathy-Inspired)
3
+
4
+ Derived from Andrej Karpathy's observations on LLM coding pitfalls.
5
+ Source: https://github.com/forrestchang/andrej-karpathy-skills
6
+
7
+ ### Think Before Coding
8
+
9
+ **Don't assume. Don't hide confusion. Surface tradeoffs.**
10
+
11
+ - State assumptions explicitly. If uncertain, ask rather than guess.
12
+ - Present multiple interpretations — don't pick silently when ambiguity exists.
13
+ - Push back when a simpler approach exists.
14
+ - Stop when confused. Name what's unclear. Ask.
15
+
16
+ ### Simplicity First
17
+
18
+ **Minimum code that solves the problem. Nothing speculative.**
19
+
20
+ - No features beyond what was asked.
21
+ - No abstractions for single-use code.
22
+ - No flexibility or configurability that wasn't requested.
23
+ - No error handling for impossible scenarios.
24
+ - If 200 lines could be 50, rewrite it.
25
+
26
+ ### Surgical Changes
27
+
28
+ **Touch only what you must. Clean up only your own mess.**
29
+
30
+ - Don't improve adjacent code, comments, or formatting.
31
+ - Don't refactor things that aren't broken.
32
+ - Match existing style, even if you'd do it differently.
33
+ - Remove orphans YOUR changes created — leave pre-existing dead code alone.
34
+ - Every changed line should trace to the user's request.
35
+
36
+ ### Goal-Driven Execution
37
+
38
+ **Define success criteria. Loop until verified.**
39
+
40
+ | Instead of | Transform to |
41
+ |------------|--------------|
42
+ | "Add validation" | "Write tests for invalid inputs, then make them pass" |
43
+ | "Fix the bug" | "Write a test that reproduces it, then make it pass" |
44
+ | "Refactor X" | "Ensure tests pass before and after" |
45
+
46
+ Strong success criteria enable independent looping. Weak criteria ("make it work") require constant clarification.
47
+ <!-- VIBE-BEHAVIORAL:END -->