minimal-vibe-coding-kit 0.3.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.
Files changed (223) hide show
  1. package/.agents/skills/agentshield-security-review/SKILL.md +75 -0
  2. package/.agents/skills/agentshield-security-review/agents/openai.yaml +5 -0
  3. package/.agents/skills/agentshield-security-review/references/native-install.md +97 -0
  4. package/.agents/skills/agentshield-security-review/references/report-template.md +54 -0
  5. package/.agents/skills/agentshield-security-review/references/review-checklist.md +45 -0
  6. package/.agents/skills/agentshield-security-review/scripts/agentshield_repo_probe.py +110 -0
  7. package/.agents/skills/autoresearch-coding/README.md +15 -0
  8. package/.agents/skills/autoresearch-coding/SKILL.md +101 -0
  9. package/.agents/skills/autoresearch-coding/references/experiment-contract.md +13 -0
  10. package/.agents/skills/autoresearch-coding/references/metric-extraction.md +8 -0
  11. package/.agents/skills/autoresearch-coding/references/result-ledger.md +15 -0
  12. package/.agents/skills/autoresearch-coding/scripts/log_result.py +24 -0
  13. package/.agents/skills/autoresearch-coding/scripts/run_logged.py +30 -0
  14. package/.agents/skills/clearthought/SKILL.md +100 -0
  15. package/.agents/skills/clearthought/examples/decision-framework.md +441 -0
  16. package/.agents/skills/clearthought/examples/metagame-examples.md +536 -0
  17. package/.agents/skills/clearthought/examples/sequential-thinking.md +380 -0
  18. package/.agents/skills/clearthought/references/output-schemas.md +494 -0
  19. package/.agents/skills/clearthought/references/parameter-reference.md +482 -0
  20. package/.agents/skills/coding-level/SKILL.md +27 -0
  21. package/.agents/skills/coding-level/references/level-0.md +131 -0
  22. package/.agents/skills/coding-level/references/level-1.md +118 -0
  23. package/.agents/skills/coding-level/references/level-2.md +140 -0
  24. package/.agents/skills/coding-level/references/level-3.md +142 -0
  25. package/.agents/skills/coding-level/references/level-4.md +152 -0
  26. package/.agents/skills/coding-level/references/level-5.md +84 -0
  27. package/.agents/skills/daily-workflow-curator/SKILL.md +52 -0
  28. package/.agents/skills/memento/SKILL.md +36 -0
  29. package/.agents/skills/reviewing-4p-priorities/SKILL.md +72 -0
  30. package/.agents/skills/reviewing-4p-priorities/examples.md +298 -0
  31. package/.agents/skills/sequential-thinking/SKILL.md +106 -0
  32. package/.agents/skills/sequential-thinking/examples/adaptive-depth.md +542 -0
  33. package/.agents/skills/sequential-thinking/examples/branching-exploration.md +474 -0
  34. package/.agents/skills/sequential-thinking/examples/linear-reasoning.md +210 -0
  35. package/.agents/skills/sequential-thinking/examples/revision-pattern.md +304 -0
  36. package/.agents/skills/sequential-thinking/references/output-schema.md +483 -0
  37. package/.agents/skills/sequential-thinking/references/parameters.md +463 -0
  38. package/.agents/skills/sequential-thinking/references/patterns.md +666 -0
  39. package/.agents/skills/vibekit-init/SKILL.md +52 -0
  40. package/.agents/skills/visual-design-loop/SKILL.md +103 -0
  41. package/.agents/skills/visual-design-loop/agents/openai.yaml +4 -0
  42. package/.claude/agents/code-reviewer.md +11 -0
  43. package/.claude/agents/context-architect.md +11 -0
  44. package/.claude/agents/debug-fixer.md +11 -0
  45. package/.claude/agents/hypothesis-planner.md +11 -0
  46. package/.claude/agents/implementation-hacker.md +11 -0
  47. package/.claude/agents/research-coordinator.md +11 -0
  48. package/.claude/agents/results-analyst.md +11 -0
  49. package/.claude/agents/security-reviewer.md +11 -0
  50. package/.claude/agents/test-runner.md +11 -0
  51. package/.claude/agents/workflow-curator.md +11 -0
  52. package/.claude/commands/autoresearch-coding.md +15 -0
  53. package/.claude/commands/council.md +7 -0
  54. package/.claude/commands/daily-enhance.md +7 -0
  55. package/.claude/commands/init-vibe.md +7 -0
  56. package/.claude/commands/security-scan.md +7 -0
  57. package/.claude/commands/vibe-finalize.md +7 -0
  58. package/.claude/rules/autoresearch.md +3 -0
  59. package/.claude/rules/security.md +3 -0
  60. package/.claude/rules/tooling.md +6 -0
  61. package/.claude/rules/vibe-core.md +8 -0
  62. package/.claude/settings.json +22 -0
  63. package/.claude/skills/agentshield-security-review/SKILL.md +75 -0
  64. package/.claude/skills/agentshield-security-review/agents/openai.yaml +5 -0
  65. package/.claude/skills/agentshield-security-review/references/native-install.md +97 -0
  66. package/.claude/skills/agentshield-security-review/references/report-template.md +54 -0
  67. package/.claude/skills/agentshield-security-review/references/review-checklist.md +45 -0
  68. package/.claude/skills/agentshield-security-review/scripts/agentshield_repo_probe.py +110 -0
  69. package/.claude/skills/autoresearch-coding/README.md +15 -0
  70. package/.claude/skills/autoresearch-coding/SKILL.md +101 -0
  71. package/.claude/skills/autoresearch-coding/references/experiment-contract.md +13 -0
  72. package/.claude/skills/autoresearch-coding/references/metric-extraction.md +8 -0
  73. package/.claude/skills/autoresearch-coding/references/result-ledger.md +15 -0
  74. package/.claude/skills/autoresearch-coding/scripts/log_result.py +24 -0
  75. package/.claude/skills/autoresearch-coding/scripts/run_logged.py +30 -0
  76. package/.claude/skills/clearthought/SKILL.md +100 -0
  77. package/.claude/skills/clearthought/examples/decision-framework.md +441 -0
  78. package/.claude/skills/clearthought/examples/metagame-examples.md +536 -0
  79. package/.claude/skills/clearthought/examples/sequential-thinking.md +380 -0
  80. package/.claude/skills/clearthought/references/output-schemas.md +494 -0
  81. package/.claude/skills/clearthought/references/parameter-reference.md +482 -0
  82. package/.claude/skills/coding-level/SKILL.md +27 -0
  83. package/.claude/skills/coding-level/references/level-0.md +131 -0
  84. package/.claude/skills/coding-level/references/level-1.md +118 -0
  85. package/.claude/skills/coding-level/references/level-2.md +140 -0
  86. package/.claude/skills/coding-level/references/level-3.md +142 -0
  87. package/.claude/skills/coding-level/references/level-4.md +152 -0
  88. package/.claude/skills/coding-level/references/level-5.md +84 -0
  89. package/.claude/skills/daily-workflow-curator/SKILL.md +52 -0
  90. package/.claude/skills/memento/SKILL.md +36 -0
  91. package/.claude/skills/reviewing-4p-priorities/SKILL.md +72 -0
  92. package/.claude/skills/reviewing-4p-priorities/examples.md +298 -0
  93. package/.claude/skills/sequential-thinking/SKILL.md +106 -0
  94. package/.claude/skills/sequential-thinking/examples/adaptive-depth.md +542 -0
  95. package/.claude/skills/sequential-thinking/examples/branching-exploration.md +474 -0
  96. package/.claude/skills/sequential-thinking/examples/linear-reasoning.md +210 -0
  97. package/.claude/skills/sequential-thinking/examples/revision-pattern.md +304 -0
  98. package/.claude/skills/sequential-thinking/references/output-schema.md +483 -0
  99. package/.claude/skills/sequential-thinking/references/parameters.md +463 -0
  100. package/.claude/skills/sequential-thinking/references/patterns.md +666 -0
  101. package/.claude/skills/vibekit-init/SKILL.md +52 -0
  102. package/.claude/skills/visual-design-loop/SKILL.md +103 -0
  103. package/.claude/skills/visual-design-loop/agents/openai.yaml +4 -0
  104. package/.codex/README.md +11 -0
  105. package/.codex/config.example.toml +8 -0
  106. package/.codex-plugin/plugin.json +10 -0
  107. package/.cursor/commands/autoresearch-coding.md +11 -0
  108. package/.cursor/commands/council.md +3 -0
  109. package/.cursor/commands/daily-enhance.md +3 -0
  110. package/.cursor/commands/init-vibe.md +3 -0
  111. package/.cursor/commands/security-scan.md +3 -0
  112. package/.cursor/commands/vibe-finalize.md +3 -0
  113. package/.cursor/rules/001-vibe-core.mdc +6 -0
  114. package/.cursor/rules/010-init.mdc +7 -0
  115. package/.cursor/rules/020-security-agentshield.mdc +7 -0
  116. package/.cursor/rules/030-autoresearch-loop.mdc +7 -0
  117. package/.cursor/settings.json +22 -0
  118. package/.cursor/skills/clearthought/SKILL.md +100 -0
  119. package/.cursor/skills/clearthought/examples/decision-framework.md +441 -0
  120. package/.cursor/skills/clearthought/examples/metagame-examples.md +536 -0
  121. package/.cursor/skills/clearthought/examples/sequential-thinking.md +380 -0
  122. package/.cursor/skills/clearthought/references/output-schemas.md +494 -0
  123. package/.cursor/skills/clearthought/references/parameter-reference.md +482 -0
  124. package/.cursor/skills/coding-level/SKILL.md +27 -0
  125. package/.cursor/skills/coding-level/references/level-0.md +131 -0
  126. package/.cursor/skills/coding-level/references/level-1.md +118 -0
  127. package/.cursor/skills/coding-level/references/level-2.md +140 -0
  128. package/.cursor/skills/coding-level/references/level-3.md +142 -0
  129. package/.cursor/skills/coding-level/references/level-4.md +152 -0
  130. package/.cursor/skills/coding-level/references/level-5.md +84 -0
  131. package/.cursor/skills/memento/SKILL.md +36 -0
  132. package/.cursor/skills/reviewing-4p-priorities/SKILL.md +72 -0
  133. package/.cursor/skills/reviewing-4p-priorities/examples.md +298 -0
  134. package/.cursor/skills/sequential-thinking/SKILL.md +106 -0
  135. package/.cursor/skills/sequential-thinking/examples/adaptive-depth.md +542 -0
  136. package/.cursor/skills/sequential-thinking/examples/branching-exploration.md +474 -0
  137. package/.cursor/skills/sequential-thinking/examples/linear-reasoning.md +210 -0
  138. package/.cursor/skills/sequential-thinking/examples/revision-pattern.md +304 -0
  139. package/.cursor/skills/sequential-thinking/references/output-schema.md +483 -0
  140. package/.cursor/skills/sequential-thinking/references/parameters.md +463 -0
  141. package/.cursor/skills/sequential-thinking/references/patterns.md +666 -0
  142. package/.vbkit-commands/autoresearch-coding.md +11 -0
  143. package/.vbkit-commands/council.md +3 -0
  144. package/.vbkit-commands/daily-enhance.md +3 -0
  145. package/.vbkit-commands/init-vibe.md +3 -0
  146. package/.vbkit-commands/security-scan.md +3 -0
  147. package/.vbkit-commands/vibe-finalize.md +3 -0
  148. package/.vbkit-docs/AUTORESEARCH_LEDGER.md +11 -0
  149. package/.vbkit-docs/BACKBONE_REFERENCE.md +59 -0
  150. package/.vbkit-docs/INSTALL.md +120 -0
  151. package/.vbkit-docs/RESEARCH_NOTES.md +22 -0
  152. package/.vbkit-docs/SECURITY_MODEL.md +40 -0
  153. package/.vbkit-docs/TOOLING_GUIDE.md +22 -0
  154. package/.vbkit-docs/backbone.schema.json +110 -0
  155. package/.vbkit-docs/templates/CONTEXT_TEMPLATE.md +47 -0
  156. package/.vbkit-docs/templates/PRD_TEMPLATE.md +48 -0
  157. package/.vbkit-scripts/agentshield-probe.mjs +22 -0
  158. package/.vbkit-scripts/daily-enhance.mjs +62 -0
  159. package/.vbkit-scripts/doctor.mjs +323 -0
  160. package/.vbkit-scripts/init-backbone.mjs +628 -0
  161. package/.vbkit-scripts/mvck.mjs +444 -0
  162. package/.vbkit-scripts/pack-dry-run.mjs +16 -0
  163. package/.vbkit-scripts/test-install.mjs +118 -0
  164. package/.vbkit-scripts/validate-kit.mjs +419 -0
  165. package/.vbkit-scripts/vibekit-finalize.mjs +185 -0
  166. package/AGENTS.md +60 -0
  167. package/CHANGELOG.md +34 -0
  168. package/CLAUDE-template.md +52 -0
  169. package/CODE_OF_CONDUCT.md +18 -0
  170. package/CONTRIBUTING.md +28 -0
  171. package/FIRST_PROMPT.md +54 -0
  172. package/FIRST_TIME_INIT.md +165 -0
  173. package/LICENSE +21 -0
  174. package/README.md +493 -0
  175. package/README.vi.md +431 -0
  176. package/SECURITY.md +28 -0
  177. package/backbone.yml +103 -0
  178. package/bin/mvck.js +2 -0
  179. package/bin/vibe-kit.js +2 -0
  180. package/install.ps1 +14 -0
  181. package/install.sh +8 -0
  182. package/package.json +92 -0
  183. package/skills/agentshield-security-review/SKILL.md +75 -0
  184. package/skills/agentshield-security-review/agents/openai.yaml +5 -0
  185. package/skills/agentshield-security-review/references/native-install.md +97 -0
  186. package/skills/agentshield-security-review/references/report-template.md +54 -0
  187. package/skills/agentshield-security-review/references/review-checklist.md +45 -0
  188. package/skills/agentshield-security-review/scripts/agentshield_repo_probe.py +110 -0
  189. package/skills/autoresearch-coding/README.md +15 -0
  190. package/skills/autoresearch-coding/SKILL.md +101 -0
  191. package/skills/autoresearch-coding/references/experiment-contract.md +13 -0
  192. package/skills/autoresearch-coding/references/metric-extraction.md +8 -0
  193. package/skills/autoresearch-coding/references/result-ledger.md +15 -0
  194. package/skills/autoresearch-coding/scripts/log_result.py +24 -0
  195. package/skills/autoresearch-coding/scripts/run_logged.py +30 -0
  196. package/skills/clearthought/SKILL.md +100 -0
  197. package/skills/clearthought/examples/decision-framework.md +441 -0
  198. package/skills/clearthought/examples/metagame-examples.md +536 -0
  199. package/skills/clearthought/examples/sequential-thinking.md +380 -0
  200. package/skills/clearthought/references/output-schemas.md +494 -0
  201. package/skills/clearthought/references/parameter-reference.md +482 -0
  202. package/skills/coding-level/SKILL.md +27 -0
  203. package/skills/coding-level/references/level-0.md +131 -0
  204. package/skills/coding-level/references/level-1.md +118 -0
  205. package/skills/coding-level/references/level-2.md +140 -0
  206. package/skills/coding-level/references/level-3.md +142 -0
  207. package/skills/coding-level/references/level-4.md +152 -0
  208. package/skills/coding-level/references/level-5.md +84 -0
  209. package/skills/daily-workflow-curator/SKILL.md +52 -0
  210. package/skills/memento/SKILL.md +36 -0
  211. package/skills/reviewing-4p-priorities/SKILL.md +72 -0
  212. package/skills/reviewing-4p-priorities/examples.md +298 -0
  213. package/skills/sequential-thinking/SKILL.md +106 -0
  214. package/skills/sequential-thinking/examples/adaptive-depth.md +542 -0
  215. package/skills/sequential-thinking/examples/branching-exploration.md +474 -0
  216. package/skills/sequential-thinking/examples/linear-reasoning.md +210 -0
  217. package/skills/sequential-thinking/examples/revision-pattern.md +304 -0
  218. package/skills/sequential-thinking/references/output-schema.md +483 -0
  219. package/skills/sequential-thinking/references/parameters.md +463 -0
  220. package/skills/sequential-thinking/references/patterns.md +666 -0
  221. package/skills/vibekit-init/SKILL.md +52 -0
  222. package/skills/visual-design-loop/SKILL.md +103 -0
  223. package/skills/visual-design-loop/agents/openai.yaml +4 -0
@@ -0,0 +1,59 @@
1
+ # Backbone reference
2
+
3
+ `backbone.yml` is the project map. Keep it short enough that agents can read it every session.
4
+
5
+ ## Required sections
6
+
7
+ - `meta`: init status and schema version.
8
+ - `project`: name, description, repo type, primary language, package manager, `mode` (greenfield/brownfield), `prd` (path or `none`), `context` (glossary path or `none`).
9
+ - `paths`: code, tests, docs, and generated output.
10
+ - `conventions`: user-reviewed project rules inferred from existing code.
11
+ - `commands`: install, test, lint, typecheck, build, validate.
12
+ - `policy`: branch, commit, editable paths, protected paths.
13
+ - `agent_surfaces`: Claude, Cursor, Codex, shared skills, shared commands.
14
+ - `automation`: autoresearch, daily enhance, finalize (graduation cleanup), security.
15
+
16
+ ## Init status
17
+
18
+ `meta.template_status` is the durable init flag.
19
+
20
+ - `uninitialized`: agent must run `FIRST_TIME_INIT.md`.
21
+ - `initialized`: agent skips init and proceeds.
22
+
23
+ `.vibekit/INIT_DONE` is a local cache only. It helps prevent same-machine repeat init, but does not need to be committed.
24
+
25
+ ## Command selection
26
+
27
+ Use the most specific command the repo already supports.
28
+
29
+ Examples:
30
+
31
+ - Node: `pnpm test`, `npm test`, `npm run build`.
32
+ - Python: `pytest -q`, `ruff check .`, `pyright`.
33
+ - Go: `go test ./...`, `go build ./...`.
34
+ - Rust: `cargo test`, `cargo clippy --all-targets`.
35
+ - Java: `mvn test`, `gradle test`.
36
+
37
+ If no command is known, leave `validate` as a safe echo and ask the user to fill it.
38
+
39
+ ## Conventions
40
+
41
+ The `conventions` section is created during first-time init and must be reviewed before writing. It should capture repo-specific rules with evidence, not a fixed framework template.
42
+
43
+ Include:
44
+
45
+ - Naming style for files, directories, and symbols.
46
+ - Architecture or folder patterns, scoped per app/package when evidence differs.
47
+ - Resource access rules for assets, images, routes, API paths, config keys, design tokens, or generated definitions.
48
+ - Localization/message access rules when catalogs or generated accessors exist.
49
+ - Custom team rules confirmed by the user.
50
+
51
+ If the repo has an accessor such as `AppImages.logo`, an asset registry, generated routes, `.arb` localization, or a message helper, future work should use that pattern instead of hardcoded literals. If no convention exists and adding one would affect many files, ask before adding the abstraction.
52
+
53
+ ## Protected paths
54
+
55
+ Protect secrets, generated output, dependency folders, lockfiles, migrations, and infra by default. The user can explicitly approve a narrow exception.
56
+
57
+ ## Editable paths
58
+
59
+ For normal tasks, editable paths should be narrow. For an initial kit install, `.` is acceptable only until project-specific paths are detected.
@@ -0,0 +1,120 @@
1
+ # Install guide
2
+
3
+ ## Local install
4
+
5
+ ```bash
6
+ ./install.sh /path/to/project
7
+ ```
8
+
9
+ ## Node install
10
+
11
+ ```bash
12
+ node .vbkit-scripts/mvck.mjs install /path/to/project --profile all
13
+ ```
14
+
15
+ Profiles:
16
+
17
+ - `claude`: `CLAUDE.md`, `.claude/`, Claude skills, agents, commands, rules.
18
+ - `cursor`: `.cursor/rules`, `.cursor/commands`, Cursor skill entrypoints.
19
+ - `codex`: `AGENTS.md`, `.agents/skills`, `.codex-plugin`, `.codex` examples.
20
+ - `all`: every profile.
21
+
22
+ ## Safe behavior
23
+
24
+ The installer:
25
+
26
+ - skips existing files unless `--force` is passed;
27
+ - appends managed blocks instead of replacing existing `CLAUDE.md`, `AGENTS.md`, and `.gitignore`;
28
+ - does not mark `backbone.yml` initialized;
29
+ - does not run package scripts in the target project.
30
+
31
+ Preview without writing:
32
+
33
+ ```bash
34
+ node .vbkit-scripts/mvck.mjs install /path/to/project --profile all --dry-run
35
+ node .vbkit-scripts/mvck.mjs install /path/to/project --profile all --dry-run --json
36
+ ```
37
+
38
+ ## Update an existing project
39
+
40
+ When a newer kit version ships, refresh kit-owned files without touching user-owned ones:
41
+
42
+ ```bash
43
+ npx --yes minimal-vibe-coding-kit@latest update .
44
+ # or from a local kit clone:
45
+ node /path/to/kit/.vbkit-scripts/mvck.mjs update /path/to/project
46
+ ```
47
+
48
+ The updater:
49
+
50
+ - refreshes kit-owned surfaces (`skills/`, `.vbkit-commands/`, `.vbkit-scripts/`, `.vbkit-docs/`, and the `.claude/`, `.cursor/`, `.agents/`, `.codex*` mirrors) and adds any new kit skills;
51
+ - never overwrites `backbone.yml`, `CLAUDE.md`, `AGENTS.md` content outside the managed block, or `settings.json` files — those are seeded only if missing;
52
+ - backs up every replaced kit file to `.vibekit/update-backup/<timestamp>/` (disable with `--no-backup`);
53
+ - never deletes files you added, and skips re-seeding one-time files after `mvck finalize`;
54
+ - records the kit version in `.vibekit/KIT_VERSION` (shown by `mvck doctor`).
55
+
56
+ Preview without writing:
57
+
58
+ ```bash
59
+ npx --yes minimal-vibe-coding-kit@latest update . --dry-run
60
+ npx --yes minimal-vibe-coding-kit@latest update . --dry-run --json
61
+ ```
62
+
63
+ Note: run the updater from a newer kit (npx or a local clone), not via the project's own `.vbkit-scripts/mvck.mjs` copy — source and target would be the same files.
64
+
65
+ ## After install
66
+
67
+ Paste the universal prompt from `FIRST_PROMPT.md`, or run:
68
+
69
+ ```bash
70
+ node .vbkit-scripts/init-backbone.mjs . --propose
71
+ ```
72
+
73
+ Use a preset when you already know the target stack:
74
+
75
+ ```bash
76
+ node .vbkit-scripts/mvck.mjs init . --preset nextjs --propose
77
+ node .vbkit-scripts/mvck.mjs init . --preset wordpress --propose
78
+ node .vbkit-scripts/mvck.mjs init . --preset python --propose
79
+ node .vbkit-scripts/mvck.mjs init . --preset laravel --propose
80
+ node .vbkit-scripts/mvck.mjs init . --preset docker --propose
81
+ ```
82
+
83
+ Review the proposal. After approval:
84
+
85
+ ```bash
86
+ node .vbkit-scripts/init-backbone.mjs . --write --yes
87
+ ```
88
+
89
+ ## Doctor
90
+
91
+ Run a read-only health check after install:
92
+
93
+ ```bash
94
+ node .vbkit-scripts/mvck.mjs doctor .
95
+ ```
96
+
97
+ Generate a handoff report:
98
+
99
+ ```bash
100
+ node .vbkit-scripts/mvck.mjs doctor . --write-report
101
+ ```
102
+
103
+ ## Native reasoning skills
104
+
105
+ The installer includes three flexible custom reasoning skills across Claude, Codex, and Cursor. These install as full skill folders, including examples and references for progressive disclosure:
106
+
107
+ - `clearthought`: clarify ambiguous tasks and choose a reasoning mode.
108
+ - `sequential-thinking`: split complex work into ordered implementation steps.
109
+ - `reviewing-4p-priorities`: classify review findings or bugs as P0-P4 and choose fix order.
110
+
111
+ ## Visual design loop skill
112
+
113
+ The installer also includes `visual-design-loop` for Claude and Codex surfaces. Use it when a loop goal touches UI polish, screenshots, rendering, visual QA, or visible frontend behavior.
114
+
115
+ ## User-invoked utility skills
116
+
117
+ Two user-invoked skills install across Claude, Codex, and Cursor surfaces:
118
+
119
+ - `memento`: write a `MEMENTO.md` working note before closing a multi-day task (`/memento`), then resume from it in the next session (`/memento resume`).
120
+ - `coding-level`: set the explanation register from 0 (ELI5) to 5 (expert peer) with `/coding-level N`; stays active until reinvoked.
@@ -0,0 +1,22 @@
1
+ # Research notes used for this enhancement
2
+
3
+ The kit follows these design decisions:
4
+
5
+ 1. Keep always-loaded instruction files short.
6
+ 2. Move procedures into skills because skills load only when used.
7
+ 3. Provide tool-specific discovery paths instead of assuming one tool reads every folder.
8
+ 4. Use a canonical shared skill body plus thin harness shims to reduce drift.
9
+ 5. Run security review on agent surfaces, not only application source code.
10
+ 6. Make daily improvement propose-only by default.
11
+ 7. Use deterministic validation as the autoresearch metric for the kit itself.
12
+
13
+ ## Autoresearch metric for this repo
14
+
15
+ ```text
16
+ Goal: improve Minimal Vibe Coding Kit quality.
17
+ Metric command: node .vbkit-scripts/validate-kit.mjs .
18
+ Direction: higher pass count and zero failures.
19
+ Editable paths: docs, scripts, skills, commands, .claude, .cursor, .agents, .codex-plugin, .github, root templates.
20
+ Protected paths: .git, .env*, node_modules, vendor packages, secrets, lockfiles.
21
+ Budget: 3.
22
+ ```
@@ -0,0 +1,40 @@
1
+ # Security model
2
+
3
+ ## Agent surfaces
4
+
5
+ Review these before merging changes:
6
+
7
+ - `CLAUDE.md`, `AGENTS.md`, `.github/copilot-instructions.md`
8
+ - `.claude/**`, `.cursor/**`, `.agents/**`, `.codex-plugin/**`
9
+ - `skills/**`, `.vbkit-commands/**`, `.vbkit-scripts/**`, `hooks/**`
10
+ - `.mcp.json`, `mcp.json`, `mcp-configs/**`
11
+ - installer scripts and CI workflows
12
+
13
+ ## AgentShield workflow
14
+
15
+ Read-only probe:
16
+
17
+ ```bash
18
+ node .vbkit-scripts/agentshield-probe.mjs .
19
+ ```
20
+
21
+ Full scanner when available:
22
+
23
+ ```bash
24
+ npx ecc-agentshield scan --path . --format text --min-severity medium
25
+ ```
26
+
27
+ ## Findings labels
28
+
29
+ - `scanner-backed`: comes from AgentShield or deterministic probe output.
30
+ - `manual-confirmed`: verified by reading active repo files.
31
+ - `manual-suspected`: plausible risk that needs maintainer confirmation.
32
+
33
+ ## Do not do these silently
34
+
35
+ - Run untrusted hooks or MCP servers.
36
+ - Execute install scripts from remote sources.
37
+ - Deploy or run migrations.
38
+ - Rotate or print secrets.
39
+ - Relax tool permissions.
40
+ - Enable wildcard shell execution.
@@ -0,0 +1,22 @@
1
+ # Tooling guide
2
+
3
+ ## Claude Code
4
+
5
+ Use root `CLAUDE.md` plus project skills in `.claude/skills/`. Keep long instructions out of `CLAUDE.md` and in skills. The kit provides shims that point to canonical shared skills under `skills/`.
6
+
7
+ ## Cursor
8
+
9
+ Use `.cursor/rules/*.mdc`. The kit creates always-on core rules plus scoped rules for init, autoresearch, and security. Keep Cursor rules short; link to skills and docs for long procedures.
10
+
11
+ ## Codex
12
+
13
+ Use `AGENTS.md` for repo instructions and `.agents/skills/*/SKILL.md` for skills. The kit also includes `.codex-plugin/plugin.json` so the shared skills can be packaged as a plugin.
14
+
15
+ ## Shared skill strategy
16
+
17
+ Canonical skill bodies live in `skills/<skill-name>/`. Harness-specific folders contain small shims:
18
+
19
+ - `.claude/skills/<skill-name>/SKILL.md`
20
+ - `.agents/skills/<skill-name>/SKILL.md`
21
+
22
+ This reduces drift while still giving each tool the path it expects.
@@ -0,0 +1,110 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://github.com/giang6283623/minimal-vibe-coding-kit/backbone.schema.json",
4
+ "title": "Minimal Vibe Coding Kit backbone.yml",
5
+ "type": "object",
6
+ "required": [
7
+ "version",
8
+ "meta",
9
+ "project",
10
+ "conventions",
11
+ "commands",
12
+ "policy",
13
+ "agent_surfaces",
14
+ "automation"
15
+ ],
16
+ "properties": {
17
+ "version": {
18
+ "type": "integer",
19
+ "minimum": 1
20
+ },
21
+ "meta": {
22
+ "type": "object",
23
+ "required": ["template_status", "schema_version"],
24
+ "properties": {
25
+ "template_status": {
26
+ "type": "string",
27
+ "enum": ["uninitialized", "initialized"]
28
+ },
29
+ "schema_version": {
30
+ "type": "integer",
31
+ "minimum": 1
32
+ }
33
+ }
34
+ },
35
+ "project": {
36
+ "type": "object",
37
+ "required": ["name", "primary_language", "mode"],
38
+ "properties": {
39
+ "name": { "type": "string", "minLength": 1 },
40
+ "primary_language": { "type": "string", "minLength": 1 },
41
+ "mode": { "type": "string", "enum": ["greenfield", "brownfield"] },
42
+ "prd": { "type": "string" },
43
+ "context": { "type": "string" }
44
+ }
45
+ },
46
+ "conventions": {
47
+ "type": "object",
48
+ "required": ["review_required_before_write"],
49
+ "properties": {
50
+ "review_required_before_write": { "type": "boolean" },
51
+ "scope": { "type": "string" },
52
+ "naming": { "type": "object" },
53
+ "architecture": { "type": "object" },
54
+ "resources": { "type": "object" },
55
+ "localization": { "type": "object" },
56
+ "custom_rules": {
57
+ "type": "array",
58
+ "items": { "type": "string" }
59
+ }
60
+ }
61
+ },
62
+ "commands": {
63
+ "type": "object",
64
+ "required": ["validate"],
65
+ "properties": {
66
+ "validate": { "type": ["string", "null"] }
67
+ }
68
+ },
69
+ "policy": {
70
+ "type": "object",
71
+ "required": ["protected_paths"],
72
+ "properties": {
73
+ "protected_paths": {
74
+ "type": "array",
75
+ "items": { "type": "string" },
76
+ "minItems": 1
77
+ }
78
+ }
79
+ },
80
+ "agent_surfaces": {
81
+ "type": "object",
82
+ "minProperties": 1
83
+ },
84
+ "automation": {
85
+ "type": "object",
86
+ "required": ["finalize", "security"],
87
+ "properties": {
88
+ "finalize": {
89
+ "type": "object",
90
+ "required": ["cleanup_dir"],
91
+ "properties": {
92
+ "cleanup_dir": { "type": "string", "minLength": 1 },
93
+ "marker": { "type": "string" },
94
+ "one_time_files": {
95
+ "type": "array",
96
+ "items": { "type": "string" }
97
+ }
98
+ }
99
+ },
100
+ "security": {
101
+ "type": "object",
102
+ "required": ["probe"],
103
+ "properties": {
104
+ "probe": { "type": "string", "minLength": 1 }
105
+ }
106
+ }
107
+ }
108
+ }
109
+ }
110
+ }
@@ -0,0 +1,47 @@
1
+ # Project context
2
+
3
+ > Scaffolded by Minimal Vibe Coding Kit. A short, shared glossary and map so any
4
+ > agent (Claude, Cursor, Codex) navigates this project with less back-and-forth.
5
+ > Keep it current and terse — definitions, not prose.
6
+
7
+ ## Domain glossary
8
+
9
+ Terms, acronyms, and entities specific to this project. One line each.
10
+
11
+ - **<Term>** — <plain-language meaning, and where it lives in code if relevant>.
12
+ - **<Acronym>** — <expansion + what it refers to here>.
13
+
14
+ ## Key areas
15
+
16
+ Where the important things live, so agents jump straight to them.
17
+
18
+ - Entry point(s):
19
+ - Core domain logic:
20
+ - Configuration:
21
+ - Tests:
22
+ - Build/deploy:
23
+
24
+ ## Conventions in use
25
+
26
+ Pointers to the patterns this repo already follows (also captured in `backbone.yml` `conventions`).
27
+
28
+ - Naming:
29
+ - Architecture / folder layout:
30
+ - Shared resources (assets, routes, config, generated code) — accessor to use:
31
+ - User-facing copy / localization — accessor to use:
32
+
33
+ ## External systems & integrations
34
+
35
+ - Services, APIs, queues, or third parties this project talks to:
36
+ - Credentials/secrets location (names only, never values):
37
+
38
+ ## Gotchas
39
+
40
+ Non-obvious things that have surprised people. Save the next agent the debugging.
41
+
42
+ -
43
+
44
+ ---
45
+
46
+ Related: `.vbkit-docs/PRD.md` (intent and focus) and `backbone.yml` (project map, commands,
47
+ protected paths). Link `project.context` in `backbone.yml` to this file.
@@ -0,0 +1,48 @@
1
+ # <Project name> — Product Requirements
2
+
3
+ > Scaffolded by Minimal Vibe Coding Kit during init. Keep it short and current;
4
+ > agents read this to understand intent. Fill answers from the init interview.
5
+
6
+ ## 1. Summary
7
+
8
+ One or two sentences: what this project is and who it is for.
9
+
10
+ ## 2. Problem & goal
11
+
12
+ - Problem it solves:
13
+ - Primary goal / focus right now:
14
+ - Why now / motivation:
15
+
16
+ ## 3. Users & use cases
17
+
18
+ - Primary users:
19
+ - Top use cases (1–3):
20
+
21
+ ## 4. Success criteria
22
+
23
+ - What good looks like (outcomes or metrics):
24
+ - How we will know we shipped the right thing:
25
+
26
+ ## 5. Scope
27
+
28
+ - In scope (this iteration):
29
+ - Out of scope / non-goals:
30
+
31
+ ## 6. Constraints & assumptions
32
+
33
+ - Technical / platform constraints:
34
+ - Deadlines, budget, compliance, or other constraints:
35
+ - Assumptions to validate:
36
+
37
+ ## 7. Focus area (brownfield)
38
+
39
+ If existing code: which module, surface, or flow are we improving first, and why.
40
+
41
+ ## 8. Open questions
42
+
43
+ - Things still undecided that need an answer before building.
44
+
45
+ ---
46
+
47
+ Linked context: see `.vbkit-docs/CONTEXT.md` for domain terminology and `backbone.yml`
48
+ for the project map (`project.mode`, `project.prd`, conventions, commands).
@@ -0,0 +1,22 @@
1
+ #!/usr/bin/env node
2
+ import fs from 'node:fs';
3
+ import path from 'node:path';
4
+ import { spawnSync } from 'node:child_process';
5
+
6
+ const target = path.resolve(process.argv[2] || process.cwd());
7
+ const extra = process.argv.slice(3);
8
+ const probe = path.join(target, 'skills/agentshield-security-review/scripts/agentshield_repo_probe.py');
9
+
10
+ if (!fs.existsSync(probe)) {
11
+ console.error(`AgentShield probe not found: ${path.relative(target, probe)}`);
12
+ process.exit(1);
13
+ }
14
+
15
+ for (const python of ['python', 'python3', 'py']) {
16
+ const result = spawnSync(python, [probe, target, ...extra], { stdio: 'inherit' });
17
+ if (result.error?.code === 'ENOENT') continue;
18
+ process.exit(result.status ?? 1);
19
+ }
20
+
21
+ console.error('No Python executable found. Install Python 3 or run the probe manually.');
22
+ process.exit(1);
@@ -0,0 +1,62 @@
1
+ #!/usr/bin/env node
2
+ import fs from 'node:fs';
3
+ import path from 'node:path';
4
+ import { spawnSync } from 'node:child_process';
5
+
6
+ const args = process.argv.slice(2);
7
+ const target = path.resolve(args.find((a) => !a.startsWith('--')) || process.cwd());
8
+ const writeReport = args.includes('--write-report');
9
+ const now = new Date();
10
+
11
+ function exists(rel) { return fs.existsSync(path.join(target, rel)); }
12
+ function list(dir) {
13
+ const p = path.join(target, dir);
14
+ if (!fs.existsSync(p)) return [];
15
+ const out = [];
16
+ function walk(current) {
17
+ for (const entry of fs.readdirSync(current, { withFileTypes: true })) {
18
+ const child = path.join(current, entry.name);
19
+ if (entry.isDirectory()) walk(child);
20
+ else out.push(path.relative(target, child).replaceAll(path.sep, '/'));
21
+ }
22
+ }
23
+ walk(p);
24
+ return out;
25
+ }
26
+
27
+ const checks = [];
28
+ for (const rel of ['backbone.yml', 'AGENTS.md', 'FIRST_TIME_INIT.md', 'skills/autoresearch-coding/SKILL.md', 'skills/agentshield-security-review/SKILL.md']) {
29
+ checks.push(`- ${rel}: ${exists(rel) ? 'found' : 'missing'}`);
30
+ }
31
+
32
+ const skills = list('skills').filter((f) => f.endsWith('SKILL.md'));
33
+ const claudeSkills = list('.claude/skills').filter((f) => f.endsWith('SKILL.md'));
34
+ const codexSkills = list('.agents/skills').filter((f) => f.endsWith('SKILL.md'));
35
+ const cursorRules = list('.cursor/rules').filter((f) => f.endsWith('.mdc'));
36
+
37
+ let validation = 'not run';
38
+ const validator = path.join(target, '.vbkit-scripts/validate-kit.mjs');
39
+ if (fs.existsSync(validator)) {
40
+ const result = spawnSync(process.execPath, [validator, target], { encoding: 'utf8' });
41
+ validation = result.stdout.trim() || result.stderr.trim() || `exit ${result.status}`;
42
+ }
43
+
44
+ const suggestions = [];
45
+ if (!exists('.claude/skills/agentshield-security-review/SKILL.md')) suggestions.push('Add Claude AgentShield skill shim.');
46
+ if (!exists('.agents/skills/agentshield-security-review/SKILL.md')) suggestions.push('Add Codex AgentShield skill shim.');
47
+ if (!exists('.cursor/rules/020-security-agentshield.mdc')) suggestions.push('Add Cursor AgentShield security rule.');
48
+ if (skills.length > 12) suggestions.push('Review skill descriptions for progressive disclosure; keep trigger text concise.');
49
+ if (!exists('.github/workflows/vibekit-validate.yml')) suggestions.push('Add CI validation for agent surfaces.');
50
+ if (!suggestions.length) suggestions.push('No structural gaps found. Review docs for stale project-specific examples and run AgentShield full scan when npm is available.');
51
+
52
+ const report = `# Daily Minimal Vibe Coding Kit report\n\nGenerated: ${now.toISOString()}\n\n## Required files\n\n${checks.join('\n')}\n\n## Surface counts\n\n- Shared skills: ${skills.length}\n- Claude skill shims: ${claudeSkills.length}\n- Codex skill shims: ${codexSkills.length}\n- Cursor rules: ${cursorRules.length}\n\n## Validation output\n\n\`\`\`text\n${validation}\n\`\`\`\n\n## Suggested next improvements\n\n${suggestions.map((s) => `- ${s}`).join('\n')}\n\n## Write policy\n\nThis report is propose-only. An agent may turn suggestions into a diff, but must wait for explicit user approval before writing.\n`;
53
+
54
+ console.log(report);
55
+
56
+ if (writeReport) {
57
+ const dir = path.join(target, '.vibekit', 'reports');
58
+ fs.mkdirSync(dir, { recursive: true });
59
+ const name = `daily-${now.toISOString().slice(0, 10)}.md`;
60
+ fs.writeFileSync(path.join(dir, name), report);
61
+ console.log(`\nWrote ${path.relative(target, path.join(dir, name))}`);
62
+ }