@su-record/vibe 3.1.0 → 3.2.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/CLAUDE.md +2 -2
- package/README.en.md +9 -6
- package/README.md +9 -4
- package/dist/__tests__/wiring-integrity.test.d.ts +2 -0
- package/dist/__tests__/wiring-integrity.test.d.ts.map +1 -0
- package/dist/__tests__/wiring-integrity.test.js +160 -0
- package/dist/__tests__/wiring-integrity.test.js.map +1 -0
- package/dist/cli/commands/info.d.ts.map +1 -1
- package/dist/cli/commands/info.js +2 -1
- package/dist/cli/commands/info.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +4 -2
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/design/design-md-parser.test.js +2 -2
- package/dist/cli/design/design-md-parser.test.js.map +1 -1
- package/dist/cli/index.js +102 -128
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/postinstall/claude-agents.d.ts.map +1 -1
- package/dist/cli/postinstall/claude-agents.js +0 -5
- package/dist/cli/postinstall/claude-agents.js.map +1 -1
- package/dist/cli/postinstall/constants.d.ts +6 -0
- package/dist/cli/postinstall/constants.d.ts.map +1 -1
- package/dist/cli/postinstall/constants.js +42 -60
- package/dist/cli/postinstall/constants.js.map +1 -1
- package/dist/cli/postinstall/inline-skills.js +2 -2
- package/dist/cli/postinstall/inline-skills.js.map +1 -1
- package/dist/cli/postinstall/main.d.ts.map +1 -1
- package/dist/cli/postinstall/main.js +2 -0
- package/dist/cli/postinstall/main.js.map +1 -1
- package/dist/cli/postinstall.d.ts +6 -1
- package/dist/cli/postinstall.d.ts.map +1 -1
- package/dist/cli/postinstall.js +6 -1
- package/dist/cli/postinstall.js.map +1 -1
- package/dist/cli/setup/GlobalInstaller.d.ts +1 -15
- package/dist/cli/setup/GlobalInstaller.d.ts.map +1 -1
- package/dist/cli/setup/GlobalInstaller.js +16 -115
- package/dist/cli/setup/GlobalInstaller.js.map +1 -1
- package/dist/cli/setup/GlobalInstaller.test.d.ts +2 -0
- package/dist/cli/setup/GlobalInstaller.test.d.ts.map +1 -0
- package/dist/cli/setup/GlobalInstaller.test.js +16 -0
- package/dist/cli/setup/GlobalInstaller.test.js.map +1 -0
- package/dist/cli/setup/ProjectSetup.js +2 -2
- package/dist/cli/setup/ProjectSetup.js.map +1 -1
- package/dist/cli/setup/Provisioner.d.ts.map +1 -1
- package/dist/cli/setup/Provisioner.js +23 -7
- package/dist/cli/setup/Provisioner.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/dist/cli/utils/cli-detector.d.ts +3 -3
- package/dist/cli/utils/cli-detector.d.ts.map +1 -1
- package/dist/cli/utils/cli-detector.js +7 -27
- package/dist/cli/utils/cli-detector.js.map +1 -1
- package/dist/cli/utils/cli-detector.test.js +3 -2
- package/dist/cli/utils/cli-detector.test.js.map +1 -1
- package/dist/infra/lib/SkillRepository.js +1 -1
- package/dist/infra/lib/evolution/__tests__/integration.test.js +0 -42
- package/dist/infra/lib/evolution/__tests__/integration.test.js.map +1 -1
- package/dist/infra/lib/llm-availability.d.ts.map +1 -1
- package/dist/infra/lib/llm-availability.js +2 -10
- package/dist/infra/lib/llm-availability.js.map +1 -1
- package/dist/infra/lib/llm-availability.test.js +3 -2
- package/dist/infra/lib/llm-availability.test.js.map +1 -1
- package/dist/infra/lib/utils.d.ts +6 -0
- package/dist/infra/lib/utils.d.ts.map +1 -1
- package/dist/infra/lib/utils.js +33 -0
- package/dist/infra/lib/utils.js.map +1 -1
- package/dist/tools/convention/validateCodeQuality.d.ts +1 -0
- package/dist/tools/convention/validateCodeQuality.d.ts.map +1 -1
- package/dist/tools/convention/validateCodeQuality.js +3 -2
- package/dist/tools/convention/validateCodeQuality.js.map +1 -1
- package/dist/tools/index.d.ts +2 -2
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/spec/executionPacket.d.ts +101 -0
- package/dist/tools/spec/executionPacket.d.ts.map +1 -0
- package/dist/tools/spec/executionPacket.js +394 -0
- package/dist/tools/spec/executionPacket.js.map +1 -0
- package/dist/tools/spec/executionPacket.test.d.ts +2 -0
- package/dist/tools/spec/executionPacket.test.d.ts.map +1 -0
- package/dist/tools/spec/executionPacket.test.js +360 -0
- package/dist/tools/spec/executionPacket.test.js.map +1 -0
- package/dist/tools/spec/index.d.ts +2 -0
- package/dist/tools/spec/index.d.ts.map +1 -1
- package/dist/tools/spec/index.js +2 -0
- package/dist/tools/spec/index.js.map +1 -1
- package/dist/tools/spec/specGenerator.d.ts +12 -0
- package/dist/tools/spec/specGenerator.d.ts.map +1 -1
- package/dist/tools/spec/specGenerator.js +96 -14
- package/dist/tools/spec/specGenerator.js.map +1 -1
- package/dist/tools/spec/specGenerator.test.d.ts +2 -0
- package/dist/tools/spec/specGenerator.test.d.ts.map +1 -0
- package/dist/tools/spec/specGenerator.test.js +130 -0
- package/dist/tools/spec/specGenerator.test.js.map +1 -0
- package/hooks/scripts/__tests__/.vibe/command-log.txt +3 -3
- package/hooks/scripts/__tests__/clone-behaviors.test.js +33 -1
- package/hooks/scripts/__tests__/code-check-memory-write.test.js +81 -0
- package/hooks/scripts/__tests__/llm-orchestrate-antigravity.test.js +5 -2
- package/hooks/scripts/__tests__/run-ledger-verify-required.test.js +7 -2
- package/hooks/scripts/__tests__/run-ledger.test.js +161 -10
- package/hooks/scripts/__tests__/step-counter.test.js +21 -0
- package/hooks/scripts/__tests__/utils-npm-root.test.js +5 -4
- package/hooks/scripts/auto-format.js +2 -11
- package/hooks/scripts/auto-test.js +2 -11
- package/hooks/scripts/clone-extract.js +146 -10
- package/hooks/scripts/code-check.js +27 -55
- package/hooks/scripts/lib/glob.js +32 -0
- package/hooks/scripts/lib/hook-context.js +19 -2
- package/hooks/scripts/lib/run-ledger.js +123 -21
- package/hooks/scripts/post-edit.js +2 -3
- package/hooks/scripts/prompt-dispatcher.js +1 -1
- package/hooks/scripts/scope-guard.js +3 -42
- package/hooks/scripts/sentinel-guard.js +5 -20
- package/hooks/scripts/session-start.js +2 -2
- package/hooks/scripts/step-counter.js +35 -57
- package/hooks/scripts/verify-ledger.js +23 -3
- package/package.json +2 -3
- package/skills/clone/SKILL.md +10 -216
- package/skills/clone/references/capture-rules.md +48 -0
- package/skills/clone/references/legal-and-error-recovery.md +40 -0
- package/skills/clone/references/refine-rules.md +61 -0
- package/skills/clone/references/scaffold-phases.md +59 -0
- package/skills/clone/references/setup-and-layout.md +30 -0
- package/skills/docs/SKILL.md +39 -4
- package/skills/docs/references/api-docs-changelog.md +34 -0
- package/skills/docs/references/codemaps-output.md +23 -0
- package/{agents/diagrammer.md → skills/docs/references/diagram-spec.md} +2 -15
- package/skills/exec-plan/SKILL.md +1 -1
- package/skills/exec-plan/templates/plan.md +1 -1
- package/skills/handoff/SKILL.md +3 -3
- package/skills/handoff/templates/handoff.md +1 -1
- package/skills/spec/SKILL.md +7 -0
- package/skills/vibe/SKILL.md +3 -2
- package/skills/vibe.analyze/SKILL.md +12 -249
- package/skills/vibe.analyze/references/output-templates.md +188 -0
- package/skills/vibe.analyze/references/quality-gate.md +93 -0
- package/skills/vibe.clone/SKILL.md +14 -1
- package/skills/vibe.continue/SKILL.md +32 -0
- package/skills/vibe.design/SKILL.md +23 -1
- package/skills/vibe.design/references/ui-preview.md +20 -0
- package/skills/vibe.docs/SKILL.md +4 -2
- package/skills/vibe.figma/SKILL.md +33 -260
- package/skills/vibe.figma/references/branch-phases.md +113 -0
- package/skills/vibe.figma/references/state-schema.md +42 -0
- package/skills/vibe.figma/references/step-algorithms.md +204 -0
- package/skills/vibe.image/SKILL.md +62 -0
- package/skills/vibe.image/references/image-generation-examples.md +39 -0
- package/skills/vibe.reason/SKILL.md +3 -183
- package/skills/vibe.reason/references/output-format-template.md +57 -0
- package/skills/vibe.reason/references/quality-rubrics.md +94 -0
- package/skills/vibe.reason/references/worked-example.md +45 -0
- package/skills/vibe.review/SKILL.md +13 -348
- package/skills/vibe.review/references/boundary-check.md +25 -0
- package/skills/vibe.review/references/output-template.md +74 -0
- package/skills/vibe.review/references/quality-gate.md +84 -0
- package/skills/vibe.review/references/race-mode.md +117 -0
- package/skills/vibe.review/references/worked-examples.md +94 -0
- package/skills/vibe.run/SKILL.md +29 -6
- package/skills/vibe.trace/SKILL.md +3 -3
- package/skills/vibe.verify/SKILL.md +10 -4
- package/vibe/rules/loop-contract.md +7 -3
- package/vibe/templates/claudemd-template.md +1 -1
- package/vibe/templates/spec-template.md +32 -5
- package/agents/acceptance-tester.md +0 -56
- package/agents/documenter.md +0 -43
- package/agents/figma/figma-engineer.md +0 -76
- package/dist/cli/postinstall/index.d.ts +0 -23
- package/dist/cli/postinstall/index.d.ts.map +0 -1
- package/dist/cli/postinstall/index.js +0 -23
- package/dist/cli/postinstall/index.js.map +0 -1
- package/dist/cli/setup/index.d.ts +0 -9
- package/dist/cli/setup/index.d.ts.map +0 -1
- package/dist/cli/setup/index.js +0 -12
- package/dist/cli/setup/index.js.map +0 -1
- package/hooks/scripts/__tests__/.vibe/memories/memories.db +0 -0
- package/hooks/scripts/__tests__/.vibe/memories/memories.db-shm +0 -0
- package/hooks/scripts/__tests__/.vibe/memories/memories.db-wal +0 -0
- package/hooks/scripts/evolution-engine.js +0 -91
- package/hooks/scripts/hud-status.js +0 -321
- package/hooks/scripts/skill-injector.js +0 -83
- package/skills/vibe.utils/SKILL.md +0 -415
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Clone — Phase 3A/3B/3C Builder Contract
|
|
2
|
+
|
|
3
|
+
> Loaded by vibe.clone SKILL.md Phase 3 (Scaffold) — full prep/dispatch/merge steps for MO/PC scaffold, the 150-line split rule, framework mapping, Phase 3C's import-switch/selector-review steps, and Claude's role checklist. Phase headers, Input lines, and script invocation commands stay in SKILL.md; this file covers the supporting detail only.
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
Prep (sequential, once):
|
|
7
|
+
a. Step 0: clone-spec.js → emit _specs/mo/{Section}.spec.md for every section
|
|
8
|
+
b. Step A: clone-to-scss.js → SCSS draft in styles/{feature}/mo/ (computed values)
|
|
9
|
+
c. Orchestrator resolves every spec TODO BEFORE dispatch:
|
|
10
|
+
├─ Confirm the interaction model (spec.interaction is a heuristic guess;
|
|
11
|
+
│ the spec's active-capture "Dynamic behaviors" block overrides it on conflict)
|
|
12
|
+
├─ List the states to implement (spec.states + Dynamic behaviors)
|
|
13
|
+
├─ Mark copyrighted text for placeholder replacement (skip with --real-content)
|
|
14
|
+
└─ Map component candidates against component-index.json (reuse vs create)
|
|
15
|
+
d. 150-line split rule (mechanical — wc -l, don't override with "but it's related"):
|
|
16
|
+
a completed spec over 150 lines means the section is too big for one builder →
|
|
17
|
+
split into sub-component specs (one per card variant / repeated pattern) + one
|
|
18
|
+
wrapper spec that imports them.
|
|
19
|
+
Dispatch (parallel):
|
|
20
|
+
⛔ Every builder prompt embeds the FULL spec text INLINE — never "go read the file".
|
|
21
|
+
The spec file stays on disk as the audit trail; the prompt must be self-sufficient.
|
|
22
|
+
⛔ Builders that write files in parallel run in worktree isolation; sub-component
|
|
23
|
+
builders complete before their wrapper builder starts.
|
|
24
|
+
Builder contract (each agent):
|
|
25
|
+
1. Build HTML structure + semantic tags + framework-specific component file
|
|
26
|
+
⛔ No CSS in <style> blocks — only @import/@use of styles/{feature}/mo/
|
|
27
|
+
⛔ Build for the CONFIRMED interaction model in the spec; wire every state
|
|
28
|
+
Framework mapping:
|
|
29
|
+
- React/Next → .tsx with CSS Modules or styled-components per stack
|
|
30
|
+
- Vue/Nuxt → .vue with scoped <style lang="scss"> @import only
|
|
31
|
+
- Svelte → .svelte with <style> @import only
|
|
32
|
+
- Vanilla → .html + linked .scss
|
|
33
|
+
2. Asset references → public/images/{feature}/ (already populated in Phase 1)
|
|
34
|
+
3. SCSS edits per Immutable Rule 1 (evidence-cited only)
|
|
35
|
+
4. Verify compile (tsc --noEmit or stack equivalent) before finishing
|
|
36
|
+
Merge (orchestrator, as builders complete):
|
|
37
|
+
5. Merge worktrees; resolve conflicts (you have full context on every spec)
|
|
38
|
+
6. clone-validate.js per section — Step B
|
|
39
|
+
├─ PASS → section done
|
|
40
|
+
└─ FAIL → fix discrepancies → re-run step 6 (loop until P1=0, no round cap)
|
|
41
|
+
|
|
42
|
+
2. Switch component style imports from styles/{feature}/{bp}/index.scss to the merged
|
|
43
|
+
styles/{feature}/index.scss
|
|
44
|
+
3. Review pc-only/mo-only selectors in the merge report — hide/show them with the
|
|
45
|
+
media query if the original does (evidence: the two sections.json trees)
|
|
46
|
+
|
|
47
|
+
Claude's role:
|
|
48
|
+
✅ Component candidates: decide which patterns become reusable components
|
|
49
|
+
✅ HTML semantics: section/h1/p/button/nav tag selection
|
|
50
|
+
✅ Text replacement: substitute copyrighted copy with placeholders or user-supplied text
|
|
51
|
+
✅ Interaction model: confirm the spec's heuristic guess, then build for the real model
|
|
52
|
+
✅ Interactions: implement every state in the spec (hover/focus/active/open), click handlers
|
|
53
|
+
✅ SCSS value edits WITH cited evidence (computed.json/states.json/behaviors.json) —
|
|
54
|
+
clone-validate.js PASS is the judge
|
|
55
|
+
❌ Do NOT invent CSS values without extraction evidence
|
|
56
|
+
❌ Do NOT write CSS directly in <style> blocks
|
|
57
|
+
❌ Do NOT hand-write vw/clamp/@media in Phase 3A/3B (responsive comes from Phase 3C merge)
|
|
58
|
+
❌ Do NOT hotlink remote URLs — all assets must use local public/images/ paths
|
|
59
|
+
```
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Clone — Setup Steps & Output Layout
|
|
2
|
+
|
|
3
|
+
> Loaded by vibe.clone SKILL.md Full Flow / Phase 0 (Setup) — working-directory + code-output layout and the full Phase 0 setup steps.
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
Working directory:
|
|
7
|
+
/tmp/{feature}/
|
|
8
|
+
├── mo/ (375×812) — rendered.html, computed.json, screenshot.png, assets/, sections.json
|
|
9
|
+
├── pc/ (1440×900) — rendered.html, computed.json, screenshot.png, assets/, sections.json
|
|
10
|
+
└── tokens.json — extracted design tokens (colors/fonts/spacing)
|
|
11
|
+
|
|
12
|
+
Code output: placed directly in the project directory per detected stack
|
|
13
|
+
components/{feature}/, components/{feature}/_specs/{mo,pc}/,
|
|
14
|
+
styles/{feature}/{mo,pc}/ (per-BP drafts) → styles/{feature}/ (Phase 3C merged),
|
|
15
|
+
public/images/{feature}/, public/ (favicons/OG from assets/seo/)
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
1. Stack detection:
|
|
20
|
+
- .vibe/config.json → stack (react/vue/next/svelte/vanilla, scss/tailwind/css-modules)
|
|
21
|
+
- Fallback: package.json deps
|
|
22
|
+
2. Feature name: URL hostname → kebab-case (e.g. stripe.com → stripe-clone)
|
|
23
|
+
- User may override with --name=<custom>
|
|
24
|
+
3. Directories:
|
|
25
|
+
- components/{feature}/, styles/{feature}/, public/images/{feature}/
|
|
26
|
+
4. Component indexing → /tmp/{feature}/component-index.json
|
|
27
|
+
(scan up to 50 existing components, extract props/slots/classes, within 2 minutes)
|
|
28
|
+
5. Design token scan → /tmp/{feature}/project-tokens.json
|
|
29
|
+
(SCSS > CSS Variables > Tailwind > CSS-in-JS)
|
|
30
|
+
```
|
package/skills/docs/SKILL.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: docs
|
|
3
|
-
description: 프로젝트 문서 생성 본체 — README / 아키텍처 / 사용자 가이드 / 릴리즈
|
|
3
|
+
description: 프로젝트 문서 생성 본체 — README / 아키텍처 / 사용자 가이드 / 릴리즈 노트 / Mermaid 다이어그램 / codemaps.
|
|
4
4
|
when_to_use: /vibe.docs 진입점에서 체인 호출. 직접 호출 금지.
|
|
5
5
|
user-invocable: false
|
|
6
6
|
tier: standard
|
|
@@ -179,6 +179,41 @@ Output: `RELEASE_NOTES.md` or append to `CHANGELOG.md`
|
|
|
179
179
|
- refactor/docs/chore items
|
|
180
180
|
```
|
|
181
181
|
|
|
182
|
+
### `/vibe.docs diagram` — Diagram Generation
|
|
183
|
+
|
|
184
|
+
Generate Mermaid diagrams for architecture, ERD, flowchart, or sequence
|
|
185
|
+
visualization directly (native capability — no dedicated agent). Ground the
|
|
186
|
+
diagram in sources first: folder structure and imports for architecture;
|
|
187
|
+
`models/`, `migrations/`, `schema.*`, ORM definitions for ERDs; the real
|
|
188
|
+
branch/return structure of the code for flowcharts.
|
|
189
|
+
|
|
190
|
+
**Options:**
|
|
191
|
+
- `/vibe.docs diagram` (default): Architecture overview
|
|
192
|
+
- `/vibe.docs diagram --er`: Entity-Relationship Diagram
|
|
193
|
+
- `/vibe.docs diagram --flow`: Flowchart
|
|
194
|
+
- `/vibe.docs diagram --seq`: Sequence Diagram
|
|
195
|
+
|
|
196
|
+
> Read `references/diagram-spec.md` for the full output conventions (Mermaid syntax per diagram type, save location, accuracy constraints).
|
|
197
|
+
|
|
198
|
+
**Example:**
|
|
199
|
+
```
|
|
200
|
+
/vibe.docs diagram --er
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
### `/vibe.docs codemaps` — Codemaps Generation
|
|
204
|
+
|
|
205
|
+
Generate auto-documentation from codebase structure directly (native
|
|
206
|
+
capability — no dedicated agent).
|
|
207
|
+
|
|
208
|
+
**Output Location:** `docs/CODEMAPS/`
|
|
209
|
+
|
|
210
|
+
> Read `references/codemaps-output.md` for the full generated-files tree, per-file contents, and tools used.
|
|
211
|
+
|
|
212
|
+
**Example:**
|
|
213
|
+
```
|
|
214
|
+
/vibe.docs codemaps
|
|
215
|
+
```
|
|
216
|
+
|
|
182
217
|
## Pipeline Integration
|
|
183
218
|
|
|
184
219
|
`/vibe.docs` completes the development pipeline:
|
|
@@ -202,9 +237,9 @@ When `/vibe.trace` completes with all scenarios passing, suggest:
|
|
|
202
237
|
- Preserve existing documentation that's still accurate
|
|
203
238
|
- Include concrete code examples from the actual project
|
|
204
239
|
- Keep language consistent with project (Korean/English based on CLAUDE.md)
|
|
205
|
-
-
|
|
206
|
-
-
|
|
207
|
-
-
|
|
240
|
+
- For `/vibe.docs release` (changelog mode), follow `references/api-docs-changelog.md` natively — no dedicated agent
|
|
241
|
+
- For API-heavy projects (api-docs mode), follow `references/api-docs-changelog.md` natively
|
|
242
|
+
- For `/vibe.docs arch` and `/vibe.docs diagram` Mermaid generation, follow `references/diagram-spec.md` natively
|
|
208
243
|
- Use the `agents-md` skill for `/vibe.docs agent` — applies equally to CLAUDE.md and AGENTS.md
|
|
209
244
|
|
|
210
245
|
### DON'T
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# docs — API Docs & Changelog Spec
|
|
2
|
+
|
|
3
|
+
> Loaded by docs SKILL.md for `/vibe.docs release` (changelog mode) and API-heavy projects (api-docs mode) — documentation rules for the two artifacts that go stale fastest: API docs and changelogs.
|
|
4
|
+
|
|
5
|
+
## API Mode
|
|
6
|
+
|
|
7
|
+
Walk the route handlers/controllers in the given scope and document each
|
|
8
|
+
endpoint: method + path, auth requirement, parameters (path/query/body with
|
|
9
|
+
types, required vs optional, enum values), success and error responses (all
|
|
10
|
+
status codes actually returned), and a runnable example (curl or fetch). List
|
|
11
|
+
endpoints that exist in code but lack documentation — the gap list is as
|
|
12
|
+
valuable as the docs.
|
|
13
|
+
|
|
14
|
+
## Changelog Mode
|
|
15
|
+
|
|
16
|
+
From `git diff` and `git log`, classify changes as breaking / added /
|
|
17
|
+
changed / fixed / performance / internal / dependencies. Recommend the
|
|
18
|
+
semantic version bump with a one-line reason. Every breaking change gets
|
|
19
|
+
migration steps; every fix states old vs new behavior.
|
|
20
|
+
|
|
21
|
+
## Constraints
|
|
22
|
+
|
|
23
|
+
Return documentation as text output only — never create or write files; the
|
|
24
|
+
calling command decides where content lands. Descriptions are user-facing:
|
|
25
|
+
what changed for the consumer, not which internal function was refactored
|
|
26
|
+
(pure refactors go under Internal, briefly). Document what the code actually
|
|
27
|
+
does, not what comments claim — when they disagree, flag the discrepancy
|
|
28
|
+
rather than picking one silently.
|
|
29
|
+
|
|
30
|
+
## Done
|
|
31
|
+
|
|
32
|
+
- API mode: every endpoint in scope documented or explicitly listed as an undocumented gap
|
|
33
|
+
- Changelog mode: all changes classified, version bump recommended with reason, breaking changes have migration steps
|
|
34
|
+
- Output is paste-ready text; zero files created
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# docs — Codemaps: Generated Files & Contents
|
|
2
|
+
|
|
3
|
+
> Loaded by docs SKILL.md `codemaps` mode — full generated-files tree, per-file contents, and tools used.
|
|
4
|
+
|
|
5
|
+
**Generated Files:**
|
|
6
|
+
```
|
|
7
|
+
docs/CODEMAPS/
|
|
8
|
+
├── INDEX.md # Overview of all areas
|
|
9
|
+
├── frontend.md # Frontend structure
|
|
10
|
+
├── backend.md # API/backend structure
|
|
11
|
+
├── database.md # Schema documentation
|
|
12
|
+
└── integrations.md # External services
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
**Each file contains:**
|
|
16
|
+
- Module table (name, path, description)
|
|
17
|
+
- Data flow diagram (Mermaid)
|
|
18
|
+
- Dependencies list
|
|
19
|
+
- Related areas
|
|
20
|
+
|
|
21
|
+
**Tools Used:**
|
|
22
|
+
- ts-morph (TypeScript AST)
|
|
23
|
+
- madge (dependency graph)
|
|
@@ -1,19 +1,6 @@
|
|
|
1
|
-
#
|
|
1
|
+
# docs — Diagram Generation Spec
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
as Mermaid.
|
|
5
|
-
|
|
6
|
-
## Role
|
|
7
|
-
|
|
8
|
-
- Architecture diagrams from project structure and dependencies
|
|
9
|
-
- ERD from database schemas and model definitions
|
|
10
|
-
- Flowcharts of business logic and user flows
|
|
11
|
-
|
|
12
|
-
## Model
|
|
13
|
-
|
|
14
|
-
**Haiku** — fast, structured output
|
|
15
|
-
|
|
16
|
-
## Goal
|
|
3
|
+
> Loaded by docs SKILL.md `diagram` mode — Mermaid diagram generation rules (architecture, ERD, flowcharts, sequence).
|
|
17
4
|
|
|
18
5
|
Produce a Mermaid diagram that reflects the actual code, not a generic
|
|
19
6
|
picture. Ground it in sources first: folder structure and imports for
|
package/skills/handoff/SKILL.md
CHANGED
|
@@ -16,9 +16,9 @@ Record work status before session end so the next session can pick up immediatel
|
|
|
16
16
|
|
|
17
17
|
A file that records the current work status before context reset. Reading this file in a new session allows immediate continuation.
|
|
18
18
|
|
|
19
|
-
### Difference from `/vibe.
|
|
19
|
+
### Difference from `/vibe.continue`
|
|
20
20
|
|
|
21
|
-
| Item | `/vibe.
|
|
21
|
+
| Item | `/vibe.continue` | Handoff |
|
|
22
22
|
|------|--------------------------|---------|
|
|
23
23
|
| Method | Automatic session context restore | Manual handover document |
|
|
24
24
|
| Includes | Memory + session state | Work progress + notes + file list |
|
|
@@ -98,7 +98,7 @@ Read HANDOFF.md and continue working
|
|
|
98
98
|
Or use alongside VIBE auto-restore:
|
|
99
99
|
|
|
100
100
|
```
|
|
101
|
-
/vibe.
|
|
101
|
+
/vibe.continue
|
|
102
102
|
```
|
|
103
103
|
|
|
104
104
|
In this case, saved decisions are also restored via `core_recall_memory`.
|
package/skills/spec/SKILL.md
CHANGED
|
@@ -54,10 +54,15 @@ Task(subagent_type="Explore",
|
|
|
54
54
|
`vibe/templates/spec-template.md` 구조로 `.vibe/specs/{feature-name}.md` 를 작성한다. 핵심 요건:
|
|
55
55
|
|
|
56
56
|
- **Overview / Goal** — 무엇을, 왜. 1-3 문장.
|
|
57
|
+
- **Context Sources** — 입력으로 사용한 파일·문서·URL·관측 상태. 출처 없는 추정은 Assumptions 로 분리.
|
|
58
|
+
- **Requirements** — `REQ-{feature}-NNN` ID와 연결된 Done Criteria를 표로 명시.
|
|
57
59
|
- **Done Criteria** — 결정론적 게이트만. 각 항목은 "명령/관찰로 pass·fail 판정 가능"해야 한다 (테스트 exit code, 빌드 성공, 특정 동작 관찰). "잘 동작한다" 류 서술 금지 — 이것이 루프의 JUDGE 입력이 된다.
|
|
60
|
+
- **Evidence Required** — Done 을 증명할 명령 결과·테스트 리포트·로그·스크린샷·코드 위치.
|
|
61
|
+
- **Human Taste (Non-Blocking)** — UX·브랜드·제품 감각처럼 release 시 사람이 판단할 기준. 완료 게이트로 쓰지 않는다.
|
|
58
62
|
- **Scenarios** — Given-When-Then. Happy path + 주요 edge case. 각 시나리오는 Done Criteria 중 하나에 매핑.
|
|
59
63
|
- **Out of Scope** — 이번에 하지 않는 것을 명시 (비어 있으면 스코프 팽창 신호).
|
|
60
64
|
- **Assumptions** — 3단계에서 채택한 기본값 전부.
|
|
65
|
+
- **Constraints** — 구현·보안·호환성 경계. execution packet으로 압축돼도 반드시 보존한다.
|
|
61
66
|
- **API Contract** (해당 시에만) — 엔드포인트/요청/응답 형태. 이 섹션이 있으면 이후 `/vibe.contract` 가 drift 를 검사한다.
|
|
62
67
|
|
|
63
68
|
이어서 `.vibe/features/{feature-name}.feature` 를 생성한다: 시나리오 섹션을 gherkin 으로 변환 (Done Criteria ↔ Scenario 매핑 유지). `/vibe.run` 이 이 파일을 구현·검증 단위로 사용한다.
|
|
@@ -71,6 +76,8 @@ Task(subagent_type="Explore",
|
|
|
71
76
|
작성 직후, 아래 체크리스트로 자기 SPEC 을 **1회** 점검하고 걸리는 항목을 즉시 고친다. 외부 LLM 리뷰 없음, 수렴 루프 없음 — 한 번 고치면 끝.
|
|
72
77
|
|
|
73
78
|
- [ ] 모든 Done Criteria 가 명령/관찰로 판정 가능한가 (모델 자기 보고가 아닌)
|
|
79
|
+
- [ ] Context Sources 와 Assumptions 가 분리됐고, 각 Done Criteria 의 Evidence Required 가 있는가
|
|
80
|
+
- [ ] Human Taste 가 결정론적 완료 게이트에 섞이지 않았는가
|
|
74
81
|
- [ ] 모든 시나리오가 Done Criteria 에 매핑되는가 (고아 시나리오 없음)
|
|
75
82
|
- [ ] 수치가 필요한 곳에 수치가 있는가 (제한·타임아웃·크기 — 없으면 기본값 + Assumptions)
|
|
76
83
|
- [ ] Out of Scope 가 비어 있지 않은가
|
package/skills/vibe/SKILL.md
CHANGED
|
@@ -64,13 +64,14 @@ user-invocable: true
|
|
|
64
64
|
| **regression fix** | "회귀", "테스트 깨졌", "다시 통과" | regress → run → verify |
|
|
65
65
|
| **contract drift** | "API 변경", "계약 깨졌", "스펙 불일치" | contract → regress (P1만) |
|
|
66
66
|
| **scaffold** | "프로젝트 만들기", "셋업", "초기 구조" | scaffold |
|
|
67
|
-
| **docs sync** | "문서 갱신", "README", "AGENTS.md" | docs |
|
|
67
|
+
| **docs sync** | "문서 갱신", "README", "AGENTS.md", "다이어그램", "코드맵" | docs (diagram/codemaps 의도 포함) |
|
|
68
68
|
| **analyze** | "분석", "조사", "이건 뭐야" + 파일/URL | analyze |
|
|
69
69
|
| **reason** | "추론", "깊게 생각", "트레이드오프", "어떻게 접근" 등 복잡한 사고 요청 | reason |
|
|
70
70
|
| **event** | "이벤트", "커뮤니티", "D-Day", "행사 자동화" | event |
|
|
71
71
|
| **harness check** | "하네스", "환경 점검" | harness |
|
|
72
72
|
| **test self** | "vibe 테스트", "CC ↔ Codex 비교" | test |
|
|
73
|
-
| **
|
|
73
|
+
| **session continue** | "이어서", "메모리", "체크포인트" | continue |
|
|
74
|
+
| **image generation** | "이미지 생성", "아이콘", "배너", "목업 이미지" | image |
|
|
74
75
|
|
|
75
76
|
복수 의도면 우선순위: resume > figma-driven > new feature > 기타.
|
|
76
77
|
|
|
@@ -75,15 +75,9 @@ Extract keywords from the user request:
|
|
|
75
75
|
|
|
76
76
|
#### 2. Understand Project Structure
|
|
77
77
|
|
|
78
|
-
Read `CLAUDE.md`, `package.json`, `pyproject.toml`, etc. to identify tech stack
|
|
78
|
+
Read `CLAUDE.md`, `package.json`, `pyproject.toml`, etc. to identify tech stack.
|
|
79
79
|
|
|
80
|
-
|
|
81
|
-
- FastAPI/Django: `app/api/`, `app/services/`, `app/models/`
|
|
82
|
-
- Express/NestJS: `src/controllers/`, `src/services/`, `src/models/`
|
|
83
|
-
|
|
84
|
-
**Frontend:**
|
|
85
|
-
- React/Next.js: `src/components/`, `src/pages/`, `src/hooks/`
|
|
86
|
-
- Flutter: `lib/screens/`, `lib/services/`, `lib/providers/`
|
|
80
|
+
> Read `references/output-templates.md` for the full backend/frontend stack → directory mapping.
|
|
87
81
|
|
|
88
82
|
#### 3. Explore Related Code (Parallel Sub-Agents)
|
|
89
83
|
|
|
@@ -105,15 +99,7 @@ Agent(subagent_type="Explore", model="haiku",
|
|
|
105
99
|
prompt="Find all [FEATURE] related data models, schemas, and database queries. Document relationships and key fields.")
|
|
106
100
|
```
|
|
107
101
|
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
```text
|
|
111
|
-
Agent(subagent_type="Explore", model="haiku",
|
|
112
|
-
prompt="Find all test files related to [FEATURE]. Identify tested vs untested paths.")
|
|
113
|
-
|
|
114
|
-
Agent(subagent_type="Explore", model="haiku",
|
|
115
|
-
prompt="Analyze [FEATURE] configuration, environment variables, and external integrations.")
|
|
116
|
-
```
|
|
102
|
+
> Read `references/output-templates.md` for the additional "Scale for large projects (6+ related files)" agent prompts.
|
|
117
103
|
|
|
118
104
|
**After all agents return:**
|
|
119
105
|
- Synthesize results → proceed to Flow Analysis
|
|
@@ -138,62 +124,13 @@ Agent(subagent_type="Explore", model="haiku",
|
|
|
138
124
|
|
|
139
125
|
#### 5. Output
|
|
140
126
|
|
|
141
|
-
|
|
142
|
-
## [feature-name] Analysis Results
|
|
143
|
-
|
|
144
|
-
### Overview
|
|
145
|
-
- **Feature**: [one-line summary]
|
|
146
|
-
- **Status**: [Complete / In progress / Not implemented]
|
|
147
|
-
- **Files**: N related files
|
|
148
|
-
|
|
149
|
-
### Structure
|
|
150
|
-
|
|
151
|
-
#### API Endpoints
|
|
152
|
-
| Method | Path | Description | Auth |
|
|
153
|
-
|--------|------|-------------|------|
|
|
154
|
-
| POST | /api/v1/auth/login | User login | None |
|
|
155
|
-
|
|
156
|
-
#### Core Services
|
|
157
|
-
- `auth_service.py`: Authentication logic
|
|
158
|
-
- `login()`: Processes login
|
|
159
|
-
- `verify_token()`: Validates JWT
|
|
160
|
-
|
|
161
|
-
#### Data Models
|
|
162
|
-
- `User`: User table
|
|
163
|
-
- Key fields: id, email, password_hash
|
|
164
|
-
- Relationships: Session (1:N)
|
|
165
|
-
|
|
166
|
-
### Reference Files
|
|
167
|
-
- src/api/auth/router.py:L10-50
|
|
168
|
-
- src/services/auth_service.py:L1-100
|
|
169
|
-
```
|
|
127
|
+
> Read `references/output-templates.md` for the full Mode 1 output format.
|
|
170
128
|
|
|
171
129
|
#### 6. Next Steps
|
|
172
130
|
|
|
173
|
-
After analysis, suggest mode-specific follow-up actions
|
|
174
|
-
|
|
175
|
-
**After code/feature analysis:**
|
|
176
|
-
|
|
177
|
-
| Task Scope | Approach |
|
|
178
|
-
|------------|----------|
|
|
179
|
-
| Simple fix (1-2 files) | Plan Mode |
|
|
180
|
-
| Complex feature (3+ files) | `/vibe.spec` |
|
|
181
|
-
|
|
182
|
-
**After document analysis:**
|
|
183
|
-
|
|
184
|
-
| Goal | Approach |
|
|
185
|
-
|------|----------|
|
|
186
|
-
| Apply findings to project | `/vibe.spec "feature-name"` |
|
|
187
|
-
| Derive improvement direction | Plan Mode |
|
|
188
|
-
| Compare with another source | `/vibe.analyze [other target]` |
|
|
131
|
+
After analysis, suggest mode-specific follow-up actions.
|
|
189
132
|
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
| Goal | Approach |
|
|
193
|
-
|------|----------|
|
|
194
|
-
| Build similar product | `/vibe.spec` |
|
|
195
|
-
| Improve existing UI | `/vibe.figma` |
|
|
196
|
-
| Compare with another site | `/vibe.analyze [other URL]` |
|
|
133
|
+
> Read `references/output-templates.md` for the full Next Steps decision tables (code/feature, document, website).
|
|
197
134
|
|
|
198
135
|
Wait for user's choice before proceeding.
|
|
199
136
|
|
|
@@ -218,13 +155,7 @@ Analyze document **structure, key content, quality, and applicability** to:
|
|
|
218
155
|
|
|
219
156
|
#### 2. Classify Document Type
|
|
220
157
|
|
|
221
|
-
|
|
222
|
-
|------|---------------|
|
|
223
|
-
| Technical spec | API definitions, data models, sequence diagrams |
|
|
224
|
-
| Presentation/slides | Key claims, frameworks, case studies |
|
|
225
|
-
| PRD/requirements | User stories, acceptance criteria, scope |
|
|
226
|
-
| Business document | Strategy, decision points, action items |
|
|
227
|
-
| Research/academic | Methodology, conclusions, applicability |
|
|
158
|
+
> Read `references/output-templates.md` for the full document-type → analysis-focus table.
|
|
228
159
|
|
|
229
160
|
#### 3. Analyze Content (Parallel Sub-Agents)
|
|
230
161
|
|
|
@@ -244,33 +175,7 @@ Agent(subagent_type="general-purpose", model="haiku",
|
|
|
244
175
|
|
|
245
176
|
#### 5. Output
|
|
246
177
|
|
|
247
|
-
|
|
248
|
-
## [Document Name] Analysis
|
|
249
|
-
|
|
250
|
-
### Overview
|
|
251
|
-
- **Type**: [Presentation / Technical spec / PRD / ...]
|
|
252
|
-
- **Topic**: [one-line summary]
|
|
253
|
-
- **Pages/Sections**: N
|
|
254
|
-
- **Audience**: [Developers / PMs / Executives / ...]
|
|
255
|
-
|
|
256
|
-
### Key Content
|
|
257
|
-
1. **[Concept 1]**: Description
|
|
258
|
-
2. **[Concept 2]**: Description
|
|
259
|
-
|
|
260
|
-
### Frameworks/Models (if any)
|
|
261
|
-
- [Systematic structure presented in the document]
|
|
262
|
-
|
|
263
|
-
### Project Relevance
|
|
264
|
-
| Recommendation | Current State | Gap |
|
|
265
|
-
|----------------|---------------|-----|
|
|
266
|
-
| ... | ... | ... |
|
|
267
|
-
|
|
268
|
-
### Key Insights
|
|
269
|
-
- [Most important takeaway]
|
|
270
|
-
|
|
271
|
-
### Suggested Actions
|
|
272
|
-
1. ...
|
|
273
|
-
```
|
|
178
|
+
> Read `references/output-templates.md` for the full Mode 2 output format.
|
|
274
179
|
|
|
275
180
|
#### Fallback
|
|
276
181
|
|
|
@@ -319,40 +224,7 @@ If a Figma URL is detected, switch to **Figma-specific analysis**:
|
|
|
319
224
|
|
|
320
225
|
#### 4. Output
|
|
321
226
|
|
|
322
|
-
|
|
323
|
-
## [URL] Analysis
|
|
324
|
-
|
|
325
|
-
### Overview
|
|
326
|
-
- **Site type**: [SaaS / E-commerce / Portfolio / ...]
|
|
327
|
-
- **Tech stack**: [Next.js, Tailwind, ...]
|
|
328
|
-
- **Overall score**: N/100
|
|
329
|
-
|
|
330
|
-
### Technical Analysis
|
|
331
|
-
| Area | Detection | Details |
|
|
332
|
-
|------|-----------|---------|
|
|
333
|
-
| Framework | React/Next.js | SSR enabled |
|
|
334
|
-
| CSS | Tailwind CSS | v3.4 |
|
|
335
|
-
|
|
336
|
-
### UX/UI Analysis
|
|
337
|
-
- **Navigation**: [assessment]
|
|
338
|
-
- **CTA placement**: [assessment]
|
|
339
|
-
- **Responsive design**: [assessment]
|
|
340
|
-
|
|
341
|
-
### SEO Analysis (N/100)
|
|
342
|
-
| Element | Status | Recommendation |
|
|
343
|
-
|---------|--------|----------------|
|
|
344
|
-
| Title | Present | Appropriate length |
|
|
345
|
-
| Meta Description | Missing | Add description |
|
|
346
|
-
|
|
347
|
-
### Accessibility (WCAG 2.1 AA)
|
|
348
|
-
- **Semantic HTML**: [assessment]
|
|
349
|
-
- **Keyboard navigation**: [assessment]
|
|
350
|
-
- **Screen reader support**: [assessment]
|
|
351
|
-
|
|
352
|
-
### Improvement Suggestions
|
|
353
|
-
1. [highest priority]
|
|
354
|
-
2. ...
|
|
355
|
-
```
|
|
227
|
+
> Read `references/output-templates.md` for the full Mode 3 output format.
|
|
356
228
|
|
|
357
229
|
#### Fallback
|
|
358
230
|
|
|
@@ -393,30 +265,7 @@ If `WebFetch` fails:
|
|
|
393
265
|
|
|
394
266
|
Save to `.vibe/reports/analysis-{date}.md`:
|
|
395
267
|
|
|
396
|
-
|
|
397
|
-
# Project Analysis Report
|
|
398
|
-
|
|
399
|
-
## Overview
|
|
400
|
-
- Analysis date: YYYY-MM-DD HH:MM
|
|
401
|
-
- Scope: Full / Code / Deps / Arch
|
|
402
|
-
|
|
403
|
-
## Code Quality (N/100)
|
|
404
|
-
- Average complexity: N (good/warning/critical)
|
|
405
|
-
- High complexity files: N
|
|
406
|
-
|
|
407
|
-
## Dependencies (N/100)
|
|
408
|
-
- Total packages: N
|
|
409
|
-
- Updates needed: N
|
|
410
|
-
- Security issues: N
|
|
411
|
-
|
|
412
|
-
## Architecture (N/100)
|
|
413
|
-
- Circular dependencies: N found
|
|
414
|
-
- Layer violations: N
|
|
415
|
-
|
|
416
|
-
## Improvement Suggestions
|
|
417
|
-
1. ...
|
|
418
|
-
2. ...
|
|
419
|
-
```
|
|
268
|
+
> Read `references/output-templates.md` for the full Mode 4 report format.
|
|
420
269
|
|
|
421
270
|
## Core Tools (Semantic Analysis)
|
|
422
271
|
|
|
@@ -438,95 +287,9 @@ node -e "import('{{VIBE_PATH_URL}}/node_modules/@su-record/vibe/dist/tools/index
|
|
|
438
287
|
|
|
439
288
|
## Quality Gate (Mandatory)
|
|
440
289
|
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
**Code/Feature Analysis:**
|
|
444
|
-
|
|
445
|
-
| Category | Check Item | Weight |
|
|
446
|
-
|----------|------------|--------|
|
|
447
|
-
| Completeness | All related files identified | 20% |
|
|
448
|
-
| Completeness | All API endpoints documented | 15% |
|
|
449
|
-
| Completeness | All data models mapped | 15% |
|
|
450
|
-
| Accuracy | File paths verified to exist | 10% |
|
|
451
|
-
| Accuracy | Line numbers accurate | 10% |
|
|
452
|
-
| Depth | Business logic explained | 10% |
|
|
453
|
-
| Depth | Dependencies mapped | 10% |
|
|
454
|
-
| Actionability | Next steps clearly defined | 10% |
|
|
455
|
-
|
|
456
|
-
**Document Analysis:**
|
|
457
|
-
|
|
458
|
-
| Category | Check Item | Weight |
|
|
459
|
-
|----------|------------|--------|
|
|
460
|
-
| Completeness | Full document read | 20% |
|
|
461
|
-
| Completeness | All key concepts extracted | 20% |
|
|
462
|
-
| Structure | Section structure identified | 15% |
|
|
463
|
-
| Depth | Project relevance analyzed | 15% |
|
|
464
|
-
| Depth | Gap analysis performed | 15% |
|
|
465
|
-
| Actionability | Specific follow-up actions suggested | 15% |
|
|
466
|
-
|
|
467
|
-
**Website Analysis:**
|
|
468
|
-
|
|
469
|
-
| Category | Check Item | Weight |
|
|
470
|
-
|----------|------------|--------|
|
|
471
|
-
| Completeness | HTML fetched and parsed | 15% |
|
|
472
|
-
| Tech | Tech stack identified | 15% |
|
|
473
|
-
| UX | UX/UI patterns analyzed | 15% |
|
|
474
|
-
| SEO | SEO elements inspected | 15% |
|
|
475
|
-
| A11y | Accessibility checked | 15% |
|
|
476
|
-
| Performance | Performance hints analyzed | 10% |
|
|
477
|
-
| Actionability | Improvements suggested | 15% |
|
|
478
|
-
|
|
479
|
-
### Score Calculation
|
|
480
|
-
|
|
481
|
-
```
|
|
482
|
-
Score = sum(checked items * weight) / 100
|
|
483
|
-
|
|
484
|
-
Grades:
|
|
485
|
-
- 95-100: EXCELLENT — comprehensive analysis
|
|
486
|
-
- 90-94: GOOD — minor gaps, additional exploration recommended
|
|
487
|
-
- 80-89: FAIR — needs deeper exploration
|
|
488
|
-
- 0-79: POOR — incomplete, re-analyze
|
|
489
|
-
```
|
|
490
|
-
|
|
491
|
-
### Depth Levels
|
|
492
|
-
|
|
493
|
-
| Level | Scope | Output |
|
|
494
|
-
|-------|-------|--------|
|
|
495
|
-
| L1: Surface | File names, basic structure | File list |
|
|
496
|
-
| L2: Structure | Functions, classes, imports | Structure map |
|
|
497
|
-
| L3: Logic | Business logic, data flow | Flow analysis |
|
|
498
|
-
| L4: Deep | Edge cases, dependencies, risks | Full analysis |
|
|
499
|
-
|
|
500
|
-
**Minimum**: L3 for feature analysis, L2 for project overview.
|
|
501
|
-
|
|
502
|
-
### Forbidden Patterns
|
|
503
|
-
|
|
504
|
-
| Pattern | Problem | Fix |
|
|
505
|
-
|---------|---------|-----|
|
|
506
|
-
| "and more..." | Incomplete | List all items |
|
|
507
|
-
| "etc." | Vague | Be specific |
|
|
508
|
-
| "related files" without paths | Missing detail | Provide file paths |
|
|
509
|
-
| Missing line numbers | Hard to navigate | Use `:L10-50` format |
|
|
510
|
-
| No auth info on endpoints | Security gap | Always specify auth |
|
|
511
|
-
|
|
512
|
-
### Quality Thresholds
|
|
513
|
-
|
|
514
|
-
**Code (`--code`):**
|
|
515
|
-
|
|
516
|
-
| Metric | Good | Warning | Critical |
|
|
517
|
-
|--------|------|---------|----------|
|
|
518
|
-
| Avg Complexity | ≤10 | 11-15 | >15 |
|
|
519
|
-
| Max Function Length | ≤30 | 31-50 | >50 |
|
|
520
|
-
| High Complexity Files | 0 | 1-3 | >3 |
|
|
521
|
-
| Circular Dependencies | 0 | 1 | >1 |
|
|
522
|
-
|
|
523
|
-
**Dependencies (`--deps`):**
|
|
290
|
+
Each mode has a weighted completeness checklist. Score = sum(checked items × weight) / 100. **Minimum depth: L3 for feature analysis, L2 for project overview.**
|
|
524
291
|
|
|
525
|
-
|
|
526
|
-
|--------|------|---------|----------|
|
|
527
|
-
| Outdated Packages | 0-3 | 4-10 | >10 |
|
|
528
|
-
| Security Vulnerabilities | 0 | 1-2 (low) | Any high/critical |
|
|
529
|
-
| Major Version Behind | 0 | 1-2 | >2 |
|
|
292
|
+
> Read `references/quality-gate.md` for the full mode-specific weighted checklists, score grades, depth-level table, forbidden-patterns table, and quality thresholds (code/deps).
|
|
530
293
|
|
|
531
294
|
---
|
|
532
295
|
|