@hivehub/rulebook 5.3.3 → 5.4.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.
Files changed (492) hide show
  1. package/.claude/commands/analysis.md +35 -35
  2. package/.claude/commands/continue.md +33 -33
  3. package/.claude/commands/ralph-config.md +112 -112
  4. package/.claude/commands/ralph-history.md +110 -110
  5. package/.claude/commands/ralph-init.md +72 -72
  6. package/.claude/commands/ralph-pause-resume.md +105 -105
  7. package/.claude/commands/ralph-run.md +101 -101
  8. package/.claude/commands/ralph-status.md +76 -76
  9. package/.claude/commands/rulebook-decision-create.md +55 -55
  10. package/.claude/commands/rulebook-decision-list.md +15 -15
  11. package/.claude/commands/rulebook-knowledge-add.md +41 -41
  12. package/.claude/commands/rulebook-knowledge-list.md +15 -15
  13. package/.claude/commands/rulebook-learn-capture.md +48 -48
  14. package/.claude/commands/rulebook-learn-list.md +13 -13
  15. package/.claude/commands/rulebook-memory-save.md +48 -48
  16. package/.claude/commands/rulebook-memory-search.md +47 -47
  17. package/.claude/commands/rulebook-task-apply.md +67 -67
  18. package/.claude/commands/rulebook-task-archive.md +94 -94
  19. package/.claude/commands/rulebook-task-create.md +93 -93
  20. package/.claude/commands/rulebook-task-list.md +42 -42
  21. package/.claude/commands/rulebook-task-show.md +52 -52
  22. package/.claude/commands/rulebook-task-validate.md +53 -53
  23. package/.claude-plugin/marketplace.json +28 -28
  24. package/.claude-plugin/plugin.json +8 -8
  25. package/LICENSE +191 -191
  26. package/README.md +42 -3
  27. package/dist/cli/commands/compress.d.ts +18 -0
  28. package/dist/cli/commands/compress.d.ts.map +1 -0
  29. package/dist/cli/commands/compress.js +100 -0
  30. package/dist/cli/commands/compress.js.map +1 -0
  31. package/dist/cli/commands/index.d.ts +1 -0
  32. package/dist/cli/commands/index.d.ts.map +1 -1
  33. package/dist/cli/commands/index.js +1 -0
  34. package/dist/cli/commands/index.js.map +1 -1
  35. package/dist/cli/commands/init.d.ts.map +1 -1
  36. package/dist/cli/commands/init.js +2 -0
  37. package/dist/cli/commands/init.js.map +1 -1
  38. package/dist/cli/commands/update.d.ts.map +1 -1
  39. package/dist/cli/commands/update.js +2 -0
  40. package/dist/cli/commands/update.js.map +1 -1
  41. package/dist/core/claude-settings-manager.d.ts +7 -0
  42. package/dist/core/claude-settings-manager.d.ts.map +1 -1
  43. package/dist/core/claude-settings-manager.js +31 -14
  44. package/dist/core/claude-settings-manager.js.map +1 -1
  45. package/dist/core/compress/compressor.d.ts +60 -0
  46. package/dist/core/compress/compressor.d.ts.map +1 -0
  47. package/dist/core/compress/compressor.js +232 -0
  48. package/dist/core/compress/compressor.js.map +1 -0
  49. package/dist/core/compress/discover.d.ts +19 -0
  50. package/dist/core/compress/discover.d.ts.map +1 -0
  51. package/dist/core/compress/discover.js +100 -0
  52. package/dist/core/compress/discover.js.map +1 -0
  53. package/dist/core/compress/validator.d.ts +47 -0
  54. package/dist/core/compress/validator.d.ts.map +1 -0
  55. package/dist/core/compress/validator.js +131 -0
  56. package/dist/core/compress/validator.js.map +1 -0
  57. package/dist/core/doctor.d.ts.map +1 -1
  58. package/dist/core/doctor.js +66 -0
  59. package/dist/core/doctor.js.map +1 -1
  60. package/dist/core/generator.d.ts +16 -0
  61. package/dist/core/generator.d.ts.map +1 -1
  62. package/dist/core/generator.js +36 -11
  63. package/dist/core/generator.js.map +1 -1
  64. package/dist/hooks/safe-flag-io.d.ts +77 -0
  65. package/dist/hooks/safe-flag-io.d.ts.map +1 -0
  66. package/dist/hooks/safe-flag-io.js +169 -0
  67. package/dist/hooks/safe-flag-io.js.map +1 -0
  68. package/dist/index.js +11 -1
  69. package/dist/index.js.map +1 -1
  70. package/dist/mcp/rulebook-server.d.ts.map +1 -1
  71. package/dist/mcp/rulebook-server.js +236 -0
  72. package/dist/mcp/rulebook-server.js.map +1 -1
  73. package/dist/types.d.ts +4 -0
  74. package/dist/types.d.ts.map +1 -1
  75. package/package.json +23 -21
  76. package/templates/agents/accessibility-reviewer.md +43 -43
  77. package/templates/agents/api-designer.md +42 -42
  78. package/templates/agents/architect.md +51 -51
  79. package/templates/agents/build-engineer.md +36 -36
  80. package/templates/agents/code-reviewer.md +47 -47
  81. package/templates/agents/compiler/codegen-debugger.md +34 -34
  82. package/templates/agents/compiler/stdlib-engineer.md +28 -28
  83. package/templates/agents/compiler/test-coverage-guardian.md +31 -31
  84. package/templates/agents/context-intelligence.md +52 -52
  85. package/templates/agents/database-architect.md +41 -41
  86. package/templates/agents/devops-engineer.md +42 -42
  87. package/templates/agents/docs-writer.md +38 -38
  88. package/templates/agents/game-engine/cpp-core-expert.md +35 -35
  89. package/templates/agents/game-engine/render-engineer.md +22 -22
  90. package/templates/agents/game-engine/shader-engineer.md +38 -38
  91. package/templates/agents/game-engine/systems-integration.md +43 -43
  92. package/templates/agents/generic/code-reviewer.md +41 -41
  93. package/templates/agents/generic/docs-writer.md +25 -25
  94. package/templates/agents/generic/project-manager.md +36 -36
  95. package/templates/agents/generic/researcher.md +34 -34
  96. package/templates/agents/generic/test-engineer.md +41 -41
  97. package/templates/agents/i18n-engineer.md +42 -42
  98. package/templates/agents/implementer.md +42 -42
  99. package/templates/agents/migration-engineer.md +42 -42
  100. package/templates/agents/mobile/platform-specialist.md +22 -22
  101. package/templates/agents/mobile/ui-engineer.md +22 -22
  102. package/templates/agents/performance-engineer.md +49 -49
  103. package/templates/agents/refactoring-agent.md +41 -41
  104. package/templates/agents/researcher.md +38 -38
  105. package/templates/agents/security-reviewer.md +40 -40
  106. package/templates/agents/team-lead.md +37 -37
  107. package/templates/agents/tester.md +48 -48
  108. package/templates/agents/ux-reviewer.md +43 -43
  109. package/templates/agents/web-app/api-designer.md +22 -22
  110. package/templates/agents/web-app/backend-engineer.md +30 -30
  111. package/templates/agents/web-app/database-engineer.md +22 -22
  112. package/templates/agents/web-app/frontend-engineer.md +29 -29
  113. package/templates/agents/web-app/security-reviewer.md +32 -32
  114. package/templates/ci/rulebook-review.yml +26 -26
  115. package/templates/cli/AIDER.md +49 -49
  116. package/templates/cli/AMAZON_Q.md +25 -25
  117. package/templates/cli/AUGGIE.md +32 -32
  118. package/templates/cli/CLAUDE.md +117 -117
  119. package/templates/cli/CLINE.md +99 -99
  120. package/templates/cli/CODEBUDDY.md +20 -20
  121. package/templates/cli/CODEIUM.md +20 -20
  122. package/templates/cli/CODEX.md +21 -21
  123. package/templates/cli/CONTINUE.md +34 -34
  124. package/templates/cli/CURSOR_CLI.md +62 -62
  125. package/templates/cli/FACTORY.md +18 -18
  126. package/templates/cli/GEMINI.md +35 -35
  127. package/templates/cli/KILOCODE.md +18 -18
  128. package/templates/cli/OPENCODE.md +18 -18
  129. package/templates/cli/_GENERIC_TEMPLATE.md +29 -29
  130. package/templates/cli/gemini-extension.json +77 -77
  131. package/templates/commands/rulebook-decision-create.md +55 -55
  132. package/templates/commands/rulebook-decision-list.md +15 -15
  133. package/templates/commands/rulebook-knowledge-add.md +41 -41
  134. package/templates/commands/rulebook-knowledge-list.md +15 -15
  135. package/templates/commands/rulebook-learn-capture.md +48 -48
  136. package/templates/commands/rulebook-learn-list.md +13 -13
  137. package/templates/commands/rulebook-memory-save.md +48 -48
  138. package/templates/commands/rulebook-memory-search.md +47 -47
  139. package/templates/commands/rulebook-task-apply.md +67 -67
  140. package/templates/commands/rulebook-task-archive.md +94 -94
  141. package/templates/commands/rulebook-task-create.md +93 -93
  142. package/templates/commands/rulebook-task-list.md +42 -42
  143. package/templates/commands/rulebook-task-show.md +52 -52
  144. package/templates/commands/rulebook-task-validate.md +53 -53
  145. package/templates/compact-context/_default.md +23 -23
  146. package/templates/compact-context/cpp.md +26 -26
  147. package/templates/compact-context/go.md +26 -26
  148. package/templates/compact-context/python.md +26 -26
  149. package/templates/compact-context/rust.md +28 -28
  150. package/templates/compact-context/typescript.md +29 -29
  151. package/templates/core/AGENTS_OVERRIDE.md +16 -16
  152. package/templates/core/AGENT_AUTOMATION.md +296 -296
  153. package/templates/core/CLAUDE_MD_v2.md +71 -71
  154. package/templates/core/DAG.md +304 -304
  155. package/templates/core/DECISIONS.md +38 -38
  156. package/templates/core/DOCUMENTATION_RULES.md +36 -36
  157. package/templates/core/KNOWLEDGE.md +49 -49
  158. package/templates/core/MULTI_AGENT.md +74 -74
  159. package/templates/core/PLANS.md +28 -28
  160. package/templates/core/QUALITY_ENFORCEMENT.md +68 -68
  161. package/templates/core/RALPH.md +471 -471
  162. package/templates/core/RULEBOOK.md +1947 -1947
  163. package/templates/core/TIER1_PROHIBITIONS.md +154 -154
  164. package/templates/core/TOKEN_OPTIMIZATION.md +49 -49
  165. package/templates/core/WORKSPACE.md +69 -69
  166. package/templates/frameworks/ANGULAR.md +36 -36
  167. package/templates/frameworks/DJANGO.md +83 -83
  168. package/templates/frameworks/ELECTRON.md +147 -147
  169. package/templates/frameworks/FLASK.md +38 -38
  170. package/templates/frameworks/FLUTTER.md +55 -55
  171. package/templates/frameworks/JQUERY.md +32 -32
  172. package/templates/frameworks/LARAVEL.md +38 -38
  173. package/templates/frameworks/NESTJS.md +43 -43
  174. package/templates/frameworks/NEXTJS.md +127 -127
  175. package/templates/frameworks/NUXT.md +40 -40
  176. package/templates/frameworks/RAILS.md +66 -66
  177. package/templates/frameworks/REACT.md +38 -38
  178. package/templates/frameworks/REACT_NATIVE.md +47 -47
  179. package/templates/frameworks/SPRING.md +39 -39
  180. package/templates/frameworks/SYMFONY.md +36 -36
  181. package/templates/frameworks/VUE.md +36 -36
  182. package/templates/frameworks/ZEND.md +35 -35
  183. package/templates/git/CI_CD_PATTERNS.md +661 -661
  184. package/templates/git/GITHUB_ACTIONS.md +728 -728
  185. package/templates/git/GITLAB_CI.md +730 -730
  186. package/templates/git/GIT_WORKFLOW.md +1192 -1192
  187. package/templates/git/SECRETS_MANAGEMENT.md +585 -585
  188. package/templates/hooks/COMMIT_MSG.md +530 -530
  189. package/templates/hooks/POST_CHECKOUT.md +546 -546
  190. package/templates/hooks/PREPARE_COMMIT_MSG.md +619 -619
  191. package/templates/hooks/PRE_COMMIT.md +414 -414
  192. package/templates/hooks/PRE_PUSH.md +601 -601
  193. package/templates/hooks/check-context-and-handoff.ps1 +58 -58
  194. package/templates/hooks/check-context-and-handoff.sh +76 -76
  195. package/templates/hooks/enforce-team-for-background-agents.ps1 +63 -63
  196. package/templates/hooks/enforce-team-for-background-agents.sh +55 -55
  197. package/templates/hooks/on-compact-reinject.sh +34 -34
  198. package/templates/hooks/resume-from-handoff.ps1 +40 -40
  199. package/templates/hooks/resume-from-handoff.sh +61 -61
  200. package/templates/hooks/terse-activate.ps1 +143 -0
  201. package/templates/hooks/terse-activate.sh +197 -0
  202. package/templates/hooks/terse-mode-tracker.ps1 +153 -0
  203. package/templates/hooks/terse-mode-tracker.sh +187 -0
  204. package/templates/ides/CONTINUE_RULES.md +16 -16
  205. package/templates/ides/COPILOT.md +37 -37
  206. package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
  207. package/templates/ides/CURSOR.md +43 -43
  208. package/templates/ides/GEMINI_RULES.md +17 -17
  209. package/templates/ides/JETBRAINS_AI.md +35 -35
  210. package/templates/ides/REPLIT.md +36 -36
  211. package/templates/ides/TABNINE.md +29 -29
  212. package/templates/ides/VSCODE.md +40 -40
  213. package/templates/ides/WINDSURF.md +36 -36
  214. package/templates/ides/WINDSURF_RULES.md +14 -14
  215. package/templates/ides/ZED.md +32 -32
  216. package/templates/ides/cursor-mdc/go.mdc +24 -24
  217. package/templates/ides/cursor-mdc/python.mdc +24 -24
  218. package/templates/ides/cursor-mdc/quality.mdc +25 -25
  219. package/templates/ides/cursor-mdc/ralph.mdc +39 -39
  220. package/templates/ides/cursor-mdc/rulebook.mdc +38 -38
  221. package/templates/ides/cursor-mdc/rust.mdc +24 -24
  222. package/templates/ides/cursor-mdc/typescript.mdc +25 -25
  223. package/templates/languages/C.md +333 -333
  224. package/templates/languages/CPP.md +743 -743
  225. package/templates/languages/CSHARP.md +417 -417
  226. package/templates/languages/ELIXIR.md +454 -454
  227. package/templates/languages/ERLANG.md +361 -361
  228. package/templates/languages/GO.md +645 -645
  229. package/templates/languages/HASKELL.md +177 -177
  230. package/templates/languages/JAVA.md +607 -607
  231. package/templates/languages/JAVASCRIPT.md +631 -631
  232. package/templates/languages/JULIA.md +97 -97
  233. package/templates/languages/KOTLIN.md +511 -511
  234. package/templates/languages/LISP.md +100 -100
  235. package/templates/languages/LUA.md +74 -74
  236. package/templates/languages/OBJECTIVEC.md +90 -90
  237. package/templates/languages/PHP.md +416 -416
  238. package/templates/languages/PYTHON.md +682 -682
  239. package/templates/languages/RUBY.md +421 -421
  240. package/templates/languages/RUST.md +477 -477
  241. package/templates/languages/SAS.md +73 -73
  242. package/templates/languages/SCALA.md +348 -348
  243. package/templates/languages/SOLIDITY.md +580 -580
  244. package/templates/languages/SQL.md +137 -137
  245. package/templates/languages/SWIFT.md +466 -466
  246. package/templates/languages/TYPESCRIPT.md +591 -591
  247. package/templates/languages/ZIG.md +265 -265
  248. package/templates/modules/ATLASSIAN.md +255 -255
  249. package/templates/modules/CONTEXT7.md +54 -54
  250. package/templates/modules/FIGMA.md +267 -267
  251. package/templates/modules/GITHUB_MCP.md +64 -64
  252. package/templates/modules/GRAFANA.md +328 -328
  253. package/templates/modules/MEMORY.md +126 -126
  254. package/templates/modules/NOTION.md +247 -247
  255. package/templates/modules/PLAYWRIGHT.md +90 -90
  256. package/templates/modules/RULEBOOK_MCP.md +208 -156
  257. package/templates/modules/SERENA.md +337 -337
  258. package/templates/modules/SUPABASE.md +223 -223
  259. package/templates/modules/SYNAP.md +69 -69
  260. package/templates/modules/VECTORIZER.md +63 -63
  261. package/templates/modules/sequential-thinking.md +42 -42
  262. package/templates/ralph/ralph-history.bat +4 -4
  263. package/templates/ralph/ralph-history.sh +5 -5
  264. package/templates/ralph/ralph-init.bat +5 -5
  265. package/templates/ralph/ralph-init.sh +5 -5
  266. package/templates/ralph/ralph-pause.bat +5 -5
  267. package/templates/ralph/ralph-pause.sh +5 -5
  268. package/templates/ralph/ralph-run.bat +5 -5
  269. package/templates/ralph/ralph-run.sh +5 -5
  270. package/templates/ralph/ralph-status.bat +4 -4
  271. package/templates/ralph/ralph-status.sh +5 -5
  272. package/templates/rules/consult-analysis-before-implementing.md +23 -23
  273. package/templates/rules/cpp.md +46 -46
  274. package/templates/rules/csharp.md +44 -44
  275. package/templates/rules/diagnostic-first.md +39 -39
  276. package/templates/rules/fail-twice-escalate.md +46 -46
  277. package/templates/rules/follow-task-sequence.md +36 -36
  278. package/templates/rules/git-safety.md +29 -29
  279. package/templates/rules/go.md +40 -40
  280. package/templates/rules/incremental-implementation.md +56 -56
  281. package/templates/rules/incremental-tests.md +29 -29
  282. package/templates/rules/java.md +43 -43
  283. package/templates/rules/javascript.md +39 -39
  284. package/templates/rules/knowledge-base-usage.md +41 -41
  285. package/templates/rules/multi-agent-teams.md +75 -75
  286. package/templates/rules/no-deferred.md +31 -31
  287. package/templates/rules/no-shortcuts.md +30 -30
  288. package/templates/rules/python.md +43 -43
  289. package/templates/rules/research-first.md +30 -30
  290. package/templates/rules/respect-handoff-trigger.md +41 -41
  291. package/templates/rules/rust.md +40 -40
  292. package/templates/rules/sequential-editing.md +21 -21
  293. package/templates/rules/session-workflow.md +24 -24
  294. package/templates/rules/task-decomposition.md +32 -32
  295. package/templates/rules/typescript.md +40 -40
  296. package/templates/services/AZURE_BLOB.md +184 -184
  297. package/templates/services/CASSANDRA.md +239 -239
  298. package/templates/services/DATADOG.md +26 -26
  299. package/templates/services/DOCKER.md +124 -124
  300. package/templates/services/DOCKER_COMPOSE.md +168 -168
  301. package/templates/services/DYNAMODB.md +308 -308
  302. package/templates/services/ELASTICSEARCH.md +347 -347
  303. package/templates/services/GCS.md +178 -178
  304. package/templates/services/HELM.md +194 -194
  305. package/templates/services/INFLUXDB.md +265 -265
  306. package/templates/services/KAFKA.md +341 -341
  307. package/templates/services/KUBERNETES.md +208 -208
  308. package/templates/services/MARIADB.md +183 -183
  309. package/templates/services/MEMCACHED.md +242 -242
  310. package/templates/services/MINIO.md +201 -201
  311. package/templates/services/MONGODB.md +268 -268
  312. package/templates/services/MYSQL.md +358 -358
  313. package/templates/services/NEO4J.md +247 -247
  314. package/templates/services/OPENTELEMETRY.md +25 -25
  315. package/templates/services/ORACLE.md +290 -290
  316. package/templates/services/PINO.md +24 -24
  317. package/templates/services/POSTGRESQL.md +326 -326
  318. package/templates/services/PROMETHEUS.md +33 -33
  319. package/templates/services/RABBITMQ.md +286 -286
  320. package/templates/services/REDIS.md +292 -292
  321. package/templates/services/S3.md +298 -298
  322. package/templates/services/SENTRY.md +23 -23
  323. package/templates/services/SQLITE.md +294 -294
  324. package/templates/services/SQLSERVER.md +294 -294
  325. package/templates/services/WINSTON.md +30 -30
  326. package/templates/skills/cli/aider/SKILL.md +59 -59
  327. package/templates/skills/cli/amazon-q/SKILL.md +35 -35
  328. package/templates/skills/cli/auggie/SKILL.md +42 -42
  329. package/templates/skills/cli/claude/SKILL.md +42 -42
  330. package/templates/skills/cli/cline/SKILL.md +42 -42
  331. package/templates/skills/cli/codebuddy/SKILL.md +30 -30
  332. package/templates/skills/cli/codeium/SKILL.md +30 -30
  333. package/templates/skills/cli/codex/SKILL.md +31 -31
  334. package/templates/skills/cli/continue/SKILL.md +44 -44
  335. package/templates/skills/cli/cursor-cli/SKILL.md +38 -38
  336. package/templates/skills/cli/factory/SKILL.md +28 -28
  337. package/templates/skills/cli/gemini/SKILL.md +45 -45
  338. package/templates/skills/cli/kilocode/SKILL.md +28 -28
  339. package/templates/skills/cli/opencode/SKILL.md +28 -28
  340. package/templates/skills/core/agent-automation/SKILL.md +194 -194
  341. package/templates/skills/core/dag/SKILL.md +314 -314
  342. package/templates/skills/core/documentation-rules/SKILL.md +46 -46
  343. package/templates/skills/core/quality-enforcement/SKILL.md +78 -78
  344. package/templates/skills/core/rulebook/SKILL.md +176 -176
  345. package/templates/skills/core/rulebook-terse/SKILL.md +116 -0
  346. package/templates/skills/core/rulebook-terse-commit/SKILL.md +96 -0
  347. package/templates/skills/core/rulebook-terse-review/SKILL.md +112 -0
  348. package/templates/skills/dev/accessibility/SKILL.md +17 -17
  349. package/templates/skills/dev/analysis/SKILL.md +19 -19
  350. package/templates/skills/dev/api-design/SKILL.md +15 -15
  351. package/templates/skills/dev/architect/SKILL.md +17 -17
  352. package/templates/skills/dev/build-fix/SKILL.md +17 -17
  353. package/templates/skills/dev/db-design/SKILL.md +15 -15
  354. package/templates/skills/dev/debug/SKILL.md +16 -16
  355. package/templates/skills/dev/deploy/SKILL.md +17 -17
  356. package/templates/skills/dev/docs/SKILL.md +17 -17
  357. package/templates/skills/dev/handoff/SKILL.md +27 -27
  358. package/templates/skills/dev/migrate/SKILL.md +15 -15
  359. package/templates/skills/dev/perf/SKILL.md +17 -17
  360. package/templates/skills/dev/refactor/SKILL.md +17 -17
  361. package/templates/skills/dev/research/SKILL.md +14 -14
  362. package/templates/skills/dev/review/SKILL.md +18 -18
  363. package/templates/skills/dev/security-audit/SKILL.md +17 -17
  364. package/templates/skills/frameworks/angular/SKILL.md +46 -46
  365. package/templates/skills/frameworks/django/SKILL.md +93 -93
  366. package/templates/skills/frameworks/electron/SKILL.md +157 -157
  367. package/templates/skills/frameworks/flask/SKILL.md +48 -48
  368. package/templates/skills/frameworks/flutter/SKILL.md +65 -65
  369. package/templates/skills/frameworks/jquery/SKILL.md +42 -42
  370. package/templates/skills/frameworks/laravel/SKILL.md +48 -48
  371. package/templates/skills/frameworks/nestjs/SKILL.md +53 -53
  372. package/templates/skills/frameworks/nextjs/SKILL.md +137 -137
  373. package/templates/skills/frameworks/nuxt/SKILL.md +50 -50
  374. package/templates/skills/frameworks/rails/SKILL.md +76 -76
  375. package/templates/skills/frameworks/react/SKILL.md +48 -48
  376. package/templates/skills/frameworks/react-native/SKILL.md +57 -57
  377. package/templates/skills/frameworks/spring/SKILL.md +49 -49
  378. package/templates/skills/frameworks/symfony/SKILL.md +46 -46
  379. package/templates/skills/frameworks/vue/SKILL.md +46 -46
  380. package/templates/skills/frameworks/zend/SKILL.md +45 -45
  381. package/templates/skills/ides/copilot/SKILL.md +47 -47
  382. package/templates/skills/ides/cursor/SKILL.md +53 -53
  383. package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -45
  384. package/templates/skills/ides/replit/SKILL.md +46 -46
  385. package/templates/skills/ides/tabnine/SKILL.md +39 -39
  386. package/templates/skills/ides/vscode/SKILL.md +50 -50
  387. package/templates/skills/ides/windsurf/SKILL.md +46 -46
  388. package/templates/skills/ides/zed/SKILL.md +42 -42
  389. package/templates/skills/languages/c/SKILL.md +343 -343
  390. package/templates/skills/languages/cpp/SKILL.md +753 -753
  391. package/templates/skills/languages/csharp/SKILL.md +427 -427
  392. package/templates/skills/languages/elixir/SKILL.md +464 -464
  393. package/templates/skills/languages/erlang/SKILL.md +371 -371
  394. package/templates/skills/languages/go/SKILL.md +655 -655
  395. package/templates/skills/languages/haskell/SKILL.md +187 -187
  396. package/templates/skills/languages/java/SKILL.md +617 -617
  397. package/templates/skills/languages/javascript/SKILL.md +641 -641
  398. package/templates/skills/languages/julia/SKILL.md +107 -107
  399. package/templates/skills/languages/kotlin/SKILL.md +521 -521
  400. package/templates/skills/languages/lisp/SKILL.md +110 -110
  401. package/templates/skills/languages/lua/SKILL.md +84 -84
  402. package/templates/skills/languages/objectivec/SKILL.md +100 -100
  403. package/templates/skills/languages/php/SKILL.md +426 -426
  404. package/templates/skills/languages/python/SKILL.md +692 -692
  405. package/templates/skills/languages/ruby/SKILL.md +431 -431
  406. package/templates/skills/languages/rust/SKILL.md +487 -487
  407. package/templates/skills/languages/sas/SKILL.md +83 -83
  408. package/templates/skills/languages/scala/SKILL.md +358 -358
  409. package/templates/skills/languages/solidity/SKILL.md +590 -590
  410. package/templates/skills/languages/sql/SKILL.md +147 -147
  411. package/templates/skills/languages/swift/SKILL.md +476 -476
  412. package/templates/skills/languages/typescript/SKILL.md +302 -302
  413. package/templates/skills/languages/zig/SKILL.md +275 -275
  414. package/templates/skills/modules/atlassian/SKILL.md +265 -265
  415. package/templates/skills/modules/context7/SKILL.md +64 -64
  416. package/templates/skills/modules/figma/SKILL.md +277 -277
  417. package/templates/skills/modules/github-mcp/SKILL.md +74 -74
  418. package/templates/skills/modules/grafana/SKILL.md +338 -338
  419. package/templates/skills/modules/memory/SKILL.md +73 -73
  420. package/templates/skills/modules/notion/SKILL.md +257 -257
  421. package/templates/skills/modules/playwright/SKILL.md +100 -100
  422. package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -166
  423. package/templates/skills/modules/serena/SKILL.md +347 -347
  424. package/templates/skills/modules/supabase/SKILL.md +233 -233
  425. package/templates/skills/modules/synap/SKILL.md +79 -79
  426. package/templates/skills/modules/vectorizer/SKILL.md +73 -73
  427. package/templates/skills/services/azure-blob/SKILL.md +194 -194
  428. package/templates/skills/services/cassandra/SKILL.md +249 -249
  429. package/templates/skills/services/dynamodb/SKILL.md +318 -318
  430. package/templates/skills/services/elasticsearch/SKILL.md +357 -357
  431. package/templates/skills/services/gcs/SKILL.md +188 -188
  432. package/templates/skills/services/influxdb/SKILL.md +275 -275
  433. package/templates/skills/services/kafka/SKILL.md +351 -351
  434. package/templates/skills/services/mariadb/SKILL.md +193 -193
  435. package/templates/skills/services/memcached/SKILL.md +252 -252
  436. package/templates/skills/services/minio/SKILL.md +211 -211
  437. package/templates/skills/services/mongodb/SKILL.md +278 -278
  438. package/templates/skills/services/mysql/SKILL.md +368 -368
  439. package/templates/skills/services/neo4j/SKILL.md +257 -257
  440. package/templates/skills/services/oracle/SKILL.md +300 -300
  441. package/templates/skills/services/postgresql/SKILL.md +336 -336
  442. package/templates/skills/services/rabbitmq/SKILL.md +296 -296
  443. package/templates/skills/services/redis/SKILL.md +302 -302
  444. package/templates/skills/services/s3/SKILL.md +308 -308
  445. package/templates/skills/services/sqlite/SKILL.md +304 -304
  446. package/templates/skills/services/sqlserver/SKILL.md +304 -304
  447. package/templates/skills/workflows/ralph/SKILL.md +309 -309
  448. package/templates/skills/workflows/ralph/install.sh +87 -87
  449. package/templates/skills/workflows/ralph/manifest.json +158 -158
  450. package/templates/workflows/codespell.yml +31 -31
  451. package/templates/workflows/cpp-lint.yml +47 -47
  452. package/templates/workflows/cpp-publish.yml +119 -119
  453. package/templates/workflows/cpp-test.yml +77 -77
  454. package/templates/workflows/dotnet-lint.yml +29 -29
  455. package/templates/workflows/dotnet-publish.yml +40 -40
  456. package/templates/workflows/dotnet-test.yml +41 -41
  457. package/templates/workflows/elixir-lint.yml +45 -45
  458. package/templates/workflows/elixir-publish.yml +49 -49
  459. package/templates/workflows/elixir-test.yml +54 -54
  460. package/templates/workflows/erlang-lint.yml +47 -47
  461. package/templates/workflows/erlang-test.yml +62 -62
  462. package/templates/workflows/go-lint.yml +39 -39
  463. package/templates/workflows/go-publish.yml +95 -95
  464. package/templates/workflows/go-test.yml +59 -59
  465. package/templates/workflows/java-lint.yml +60 -60
  466. package/templates/workflows/java-publish.yml +120 -120
  467. package/templates/workflows/java-test.yml +85 -85
  468. package/templates/workflows/kotlin-lint.yml +34 -34
  469. package/templates/workflows/kotlin-publish.yml +56 -56
  470. package/templates/workflows/kotlin-test.yml +48 -48
  471. package/templates/workflows/php-lint.yml +39 -39
  472. package/templates/workflows/php-publish.yml +50 -50
  473. package/templates/workflows/php-test.yml +54 -54
  474. package/templates/workflows/python-lint.yml +47 -47
  475. package/templates/workflows/python-publish.yml +91 -91
  476. package/templates/workflows/python-test.yml +59 -59
  477. package/templates/workflows/rust-lint.yml +54 -54
  478. package/templates/workflows/rust-publish.yml +66 -66
  479. package/templates/workflows/rust-test.yml +75 -75
  480. package/templates/workflows/solidity-lint.yml +41 -41
  481. package/templates/workflows/solidity-test.yml +47 -47
  482. package/templates/workflows/swift-lint.yml +32 -32
  483. package/templates/workflows/swift-publish.yml +58 -58
  484. package/templates/workflows/swift-test.yml +44 -44
  485. package/templates/workflows/typescript-publish.yml +60 -60
  486. package/templates/workflows/typescript-test.yml +73 -73
  487. package/templates/workflows/zig-lint.yml +27 -27
  488. package/templates/workflows/zig-test.yml +40 -40
  489. package/dist/cli/commands.d.ts +0 -225
  490. package/dist/cli/commands.d.ts.map +0 -1
  491. package/dist/cli/commands.js +0 -3984
  492. package/dist/cli/commands.js.map +0 -1
@@ -1,46 +1,46 @@
1
- <!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
2
-
3
- # Fail twice → escalate
4
-
5
- If a fix attempt fails **twice with the same approach**, you MUST:
6
-
7
- 1. **Stop** — do not try a third variation of the same approach
8
- 2. **Analyze** what went wrong — identify root causes, not symptoms
9
- 3. **Escalate** — choose one:
10
- - Open a **Team** (`TeamCreate`) and bring in a specialist agent
11
- - **Research** the problem (read source code, search docs, use diagnostic tools)
12
- - **Ask the user** for guidance (only if research does not resolve it)
13
- 4. **Record** the failed approach as context so the next attempt is informed
14
-
15
- ## Why
16
-
17
- LLMs in agentic loops tend to retry the same approach with minor
18
- variations until the iteration limit is reached. This wastes cycles
19
- and produces cascading patches that are harder to debug than a clean
20
- restart. The "fail twice → escalate" pattern breaks the loop early.
21
-
22
- **Evidence**: UzEngine's "RULE -3" (FAIL TWICE → OPEN TEAM) has been
23
- field-validated across 30+ specialized sub-agents. The LLM-IR-debugging
24
- paper (§6) documents the same failure mode and confirms that structural
25
- escape mechanisms are effective.
26
-
27
- ## What counts as "the same approach"
28
-
29
- Two attempts are "the same approach" if:
30
- - They modify the same file(s) in the same function/block
31
- - They produce the same category of error (e.g. both fail the type-checker)
32
- - The second attempt is a small variation of the first (e.g. changing a
33
- parameter value, adding a cast, swapping an operator)
34
-
35
- Two attempts are "different approaches" if:
36
- - They target different root causes
37
- - They modify different subsystems
38
- - The second attempt was informed by new diagnostic information not
39
- available during the first
40
-
41
- ## Interaction with other rules
42
-
43
- - **incremental-implementation.md**: "spend more than 3 failed attempts"
44
- is the outer limit; this rule fires earlier (at 2)
45
- - **research-first.md**: escalation via research satisfies both rules
46
- - **git-safety.md**: never revert as an "escalation" — fix forward
1
+ <!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
2
+
3
+ # Fail twice → escalate
4
+
5
+ If a fix attempt fails **twice with the same approach**, you MUST:
6
+
7
+ 1. **Stop** — do not try a third variation of the same approach
8
+ 2. **Analyze** what went wrong — identify root causes, not symptoms
9
+ 3. **Escalate** — choose one:
10
+ - Open a **Team** (`TeamCreate`) and bring in a specialist agent
11
+ - **Research** the problem (read source code, search docs, use diagnostic tools)
12
+ - **Ask the user** for guidance (only if research does not resolve it)
13
+ 4. **Record** the failed approach as context so the next attempt is informed
14
+
15
+ ## Why
16
+
17
+ LLMs in agentic loops tend to retry the same approach with minor
18
+ variations until the iteration limit is reached. This wastes cycles
19
+ and produces cascading patches that are harder to debug than a clean
20
+ restart. The "fail twice → escalate" pattern breaks the loop early.
21
+
22
+ **Evidence**: UzEngine's "RULE -3" (FAIL TWICE → OPEN TEAM) has been
23
+ field-validated across 30+ specialized sub-agents. The LLM-IR-debugging
24
+ paper (§6) documents the same failure mode and confirms that structural
25
+ escape mechanisms are effective.
26
+
27
+ ## What counts as "the same approach"
28
+
29
+ Two attempts are "the same approach" if:
30
+ - They modify the same file(s) in the same function/block
31
+ - They produce the same category of error (e.g. both fail the type-checker)
32
+ - The second attempt is a small variation of the first (e.g. changing a
33
+ parameter value, adding a cast, swapping an operator)
34
+
35
+ Two attempts are "different approaches" if:
36
+ - They target different root causes
37
+ - They modify different subsystems
38
+ - The second attempt was informed by new diagnostic information not
39
+ available during the first
40
+
41
+ ## Interaction with other rules
42
+
43
+ - **incremental-implementation.md**: "spend more than 3 failed attempts"
44
+ is the outer limit; this rule fires earlier (at 2)
45
+ - **research-first.md**: escalation via research satisfies both rules
46
+ - **git-safety.md**: never revert as an "escalation" — fix forward
@@ -1,36 +1,36 @@
1
- ---
2
- name: follow-task-sequence
3
- tier: 1
4
- description: "Execute tasks in the exact order defined — no reordering, no cherry-picking"
5
- alwaysApply: true
6
- filePatterns: ["*"]
7
- tools: ["all"]
8
- ---
9
-
10
- # Follow Task Sequence — No Reordering, No Cherry-Picking
11
-
12
- When a `tasks.md` checklist defines a sequence, execute items in EXACTLY that order.
13
-
14
- ## Forbidden
15
-
16
- - Skipping ahead to "easier" or "more interesting" tasks
17
- - Reordering tasks because you think a different order is better
18
- - Cherry-picking tasks from the middle of a list
19
- - Deciding which tasks are "important enough" to do
20
- - Grouping or batching tasks in a different sequence
21
- - Starting Phase N+1 before Phase N is 100% complete
22
-
23
- ## Required Behavior
24
-
25
- 1. Read `tasks.md` from top to bottom
26
- 2. Find the FIRST unchecked item (`- [ ]`)
27
- 3. Implement THAT item — not the one you prefer
28
- 4. Mark it `[x]` with what was done
29
- 5. Move to the NEXT unchecked item
30
- 6. Repeat until all items are checked
31
-
32
- ## Why
33
-
34
- The human spent time defining the task sequence for a reason. The order reflects dependencies, priorities, and a deliberate implementation strategy. When AI agents skip around, dependencies break, progress tracking becomes unreliable, and work has to be redone.
35
-
36
- **The task list is an ORDER, not a MENU.**
1
+ ---
2
+ name: follow-task-sequence
3
+ tier: 1
4
+ description: "Execute tasks in the exact order defined — no reordering, no cherry-picking"
5
+ alwaysApply: true
6
+ filePatterns: ["*"]
7
+ tools: ["all"]
8
+ ---
9
+
10
+ # Follow Task Sequence — No Reordering, No Cherry-Picking
11
+
12
+ When a `tasks.md` checklist defines a sequence, execute items in EXACTLY that order.
13
+
14
+ ## Forbidden
15
+
16
+ - Skipping ahead to "easier" or "more interesting" tasks
17
+ - Reordering tasks because you think a different order is better
18
+ - Cherry-picking tasks from the middle of a list
19
+ - Deciding which tasks are "important enough" to do
20
+ - Grouping or batching tasks in a different sequence
21
+ - Starting Phase N+1 before Phase N is 100% complete
22
+
23
+ ## Required Behavior
24
+
25
+ 1. Read `tasks.md` from top to bottom
26
+ 2. Find the FIRST unchecked item (`- [ ]`)
27
+ 3. Implement THAT item — not the one you prefer
28
+ 4. Mark it `[x]` with what was done
29
+ 5. Move to the NEXT unchecked item
30
+ 6. Repeat until all items are checked
31
+
32
+ ## Why
33
+
34
+ The human spent time defining the task sequence for a reason. The order reflects dependencies, priorities, and a deliberate implementation strategy. When AI agents skip around, dependencies break, progress tracking becomes unreliable, and work has to be redone.
35
+
36
+ **The task list is an ORDER, not a MENU.**
@@ -1,29 +1,29 @@
1
- ---
2
- name: git-safety
3
- tier: 1
4
- description: "Git safety — explicit allow-list, forbidden destructive operations"
5
- alwaysApply: true
6
- filePatterns: ["*"]
7
- tools: ["all"]
8
- ---
9
-
10
- # Git Safety Rules
11
-
12
- ## Allowed (always safe)
13
- - `git status`, `git diff`, `git log`, `git blame`
14
- - `git add <files>`, `git commit` (after quality checks)
15
-
16
- ## Forbidden (require explicit user authorization)
17
- - `git stash` — hidden state gets forgotten
18
- - `git rebase` — rewrites history
19
- - `git reset --hard` — destroys uncommitted changes
20
- - `git checkout -- .` / `git restore .` — discards all changes
21
- - `git revert` — creates unexpected commits
22
- - `git cherry-pick` — can cause conflicts
23
- - `git merge` — requires human judgment
24
- - `git branch -D` — permanent branch deletion
25
- - `git push --force` — NEVER on main/master
26
- - `git clean -f` — permanently deletes untracked files
27
- - `git checkout <branch>` / `git switch` — breaks concurrent AI sessions
28
-
29
- Multiple AI sessions may share the same working tree. Branch switching or destructive operations affect ALL concurrent sessions.
1
+ ---
2
+ name: git-safety
3
+ tier: 1
4
+ description: "Git safety — explicit allow-list, forbidden destructive operations"
5
+ alwaysApply: true
6
+ filePatterns: ["*"]
7
+ tools: ["all"]
8
+ ---
9
+
10
+ # Git Safety Rules
11
+
12
+ ## Allowed (always safe)
13
+ - `git status`, `git diff`, `git log`, `git blame`
14
+ - `git add <files>`, `git commit` (after quality checks)
15
+
16
+ ## Forbidden (require explicit user authorization)
17
+ - `git stash` — hidden state gets forgotten
18
+ - `git rebase` — rewrites history
19
+ - `git reset --hard` — destroys uncommitted changes
20
+ - `git checkout -- .` / `git restore .` — discards all changes
21
+ - `git revert` — creates unexpected commits
22
+ - `git cherry-pick` — can cause conflicts
23
+ - `git merge` — requires human judgment
24
+ - `git branch -D` — permanent branch deletion
25
+ - `git push --force` — NEVER on main/master
26
+ - `git clean -f` — permanently deletes untracked files
27
+ - `git checkout <branch>` / `git switch` — breaks concurrent AI sessions
28
+
29
+ Multiple AI sessions may share the same working tree. Branch switching or destructive operations affect ALL concurrent sessions.
@@ -1,40 +1,40 @@
1
- ---
2
- paths:
3
- - "**/*.go"
4
- - "go.mod"
5
- - "go.sum"
6
- ---
7
- <!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
8
-
9
- # Go rules
10
-
11
- Loaded by Claude Code when touching Go sources.
12
-
13
- ## Non-negotiables
14
-
15
- 1. **`go vet ./...` before `go test ./...`.** Vet is near-instant and catches common issues before the slower test runner.
16
- 2. **`gofmt -s -w .` and `goimports -w .`** on every file you touch. There is no formatting debate in Go.
17
- 3. **Error handling is explicit.** Every `err` is either handled, wrapped with `fmt.Errorf("context: %w", err)`, or propagated up. Never `_ = err`.
18
- 4. **No naked returns in functions longer than 5 lines.** They obscure control flow.
19
- 5. **`context.Context` is the first parameter** for any function that does I/O or may block. Never store contexts in structs.
20
-
21
- ## Conventions
22
-
23
- - Package names are short, lowercase, and singular (`user`, not `users` or `userManager`).
24
- - Interfaces defined by the consumer, not the producer. Keep them small (1–3 methods).
25
- - Struct fields ordered: exported before unexported, grouped by logical purpose.
26
- - Use `any` instead of `interface{}` (Go 1.18+).
27
- - Prefer table-driven tests with `t.Run` subtests.
28
-
29
- ## Testing
30
-
31
- - Test files live in the same package, suffix `_test.go`.
32
- - `testify/require` or stdlib `testing` — pick one and stick with it.
33
- - Race detector on CI: `go test -race ./...`.
34
- - No test skipping without `t.Skip("reason: ...")`.
35
-
36
- ## Build & tooling
37
-
38
- - `go mod tidy` after adding imports; commit both `go.mod` and `go.sum`.
39
- - Never commit `vendor/` unless the project explicitly vendors.
40
- - Use `go build ./...` to catch packages you forgot to test.
1
+ ---
2
+ paths:
3
+ - "**/*.go"
4
+ - "go.mod"
5
+ - "go.sum"
6
+ ---
7
+ <!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
8
+
9
+ # Go rules
10
+
11
+ Loaded by Claude Code when touching Go sources.
12
+
13
+ ## Non-negotiables
14
+
15
+ 1. **`go vet ./...` before `go test ./...`.** Vet is near-instant and catches common issues before the slower test runner.
16
+ 2. **`gofmt -s -w .` and `goimports -w .`** on every file you touch. There is no formatting debate in Go.
17
+ 3. **Error handling is explicit.** Every `err` is either handled, wrapped with `fmt.Errorf("context: %w", err)`, or propagated up. Never `_ = err`.
18
+ 4. **No naked returns in functions longer than 5 lines.** They obscure control flow.
19
+ 5. **`context.Context` is the first parameter** for any function that does I/O or may block. Never store contexts in structs.
20
+
21
+ ## Conventions
22
+
23
+ - Package names are short, lowercase, and singular (`user`, not `users` or `userManager`).
24
+ - Interfaces defined by the consumer, not the producer. Keep them small (1–3 methods).
25
+ - Struct fields ordered: exported before unexported, grouped by logical purpose.
26
+ - Use `any` instead of `interface{}` (Go 1.18+).
27
+ - Prefer table-driven tests with `t.Run` subtests.
28
+
29
+ ## Testing
30
+
31
+ - Test files live in the same package, suffix `_test.go`.
32
+ - `testify/require` or stdlib `testing` — pick one and stick with it.
33
+ - Race detector on CI: `go test -race ./...`.
34
+ - No test skipping without `t.Skip("reason: ...")`.
35
+
36
+ ## Build & tooling
37
+
38
+ - `go mod tidy` after adding imports; commit both `go.mod` and `go.sum`.
39
+ - Never commit `vendor/` unless the project explicitly vendors.
40
+ - Use `go build ./...` to catch packages you forgot to test.
@@ -1,56 +1,56 @@
1
- ---
2
- name: incremental-implementation
3
- tier: 1
4
- description: "Implement step by step, test each step, restart from scratch if stuck"
5
- alwaysApply: true
6
- filePatterns: ["*"]
7
- tools: ["all"]
8
- ---
9
-
10
- # Incremental Implementation — Step by Step, Test Each Step
11
-
12
- NEVER implement everything at once. Build incrementally, verify at every step, and restart from scratch when stuck.
13
-
14
- ## Required Process
15
-
16
- 1. **Understand** the full scope before writing any code
17
- 2. **Decompose** into the smallest possible steps
18
- 3. **Implement ONE step** at a time
19
- 4. **Test/verify** that step immediately (compile, run, test)
20
- 5. **Fix any errors** before moving to the next step
21
- 6. **Record learnings** in the knowledge base after each significant discovery
22
- 7. **Repeat** until complete
23
-
24
- ## The Restart Rule
25
-
26
- If you have spent more than 3 failed attempts fixing the same error:
27
-
28
- 1. **STOP** — do not try a 4th variation of the same approach
29
- 2. **Analyze** what went wrong — write down root causes, not symptoms
30
- 3. **Record** the failed approach as an anti-pattern in the knowledge base
31
- 4. **Remove** the broken code completely — do not patch on top of patches
32
- 5. **Reimplementation from scratch** using a different approach informed by what you learned
33
- 6. **Test each step** of the new approach before proceeding
34
-
35
- ## Knowledge Base Integration
36
-
37
- After every significant implementation:
38
-
39
- 1. **Check existing knowledge** before starting: `rulebook knowledge list` or search `.rulebook/knowledge/`
40
- 2. **Record patterns** that worked: `rulebook knowledge add pattern "<title>" --category <cat>`
41
- 3. **Record anti-patterns** that failed: `rulebook knowledge add anti-pattern "<title>" --category <cat>`
42
- 4. **Capture learnings** from debugging: `rulebook learn capture --title "<title>" --content "<content>"`
43
-
44
- ## Forbidden
45
-
46
- - Implementing an entire feature in one pass without intermediate verification
47
- - Spending more than 3 attempts fixing the same error with the same approach
48
- - Patching broken code on top of broken code instead of restarting clean
49
- - Ignoring the knowledge base — check it BEFORE implementing, update it AFTER
50
- - Batching all tests to the end instead of testing each step
51
-
52
- ## Why
53
-
54
- AI agents that implement everything at once produce cascading errors. One early mistake propagates through the entire implementation, and debugging becomes exponentially harder. Step-by-step with immediate verification catches errors at the source. When stuck, restarting from scratch with new knowledge is always faster than patching endlessly. The line between persistence and stubbornness is thin.
55
-
56
- **"Slow is smooth, smooth is fast."**
1
+ ---
2
+ name: incremental-implementation
3
+ tier: 1
4
+ description: "Implement step by step, test each step, restart from scratch if stuck"
5
+ alwaysApply: true
6
+ filePatterns: ["*"]
7
+ tools: ["all"]
8
+ ---
9
+
10
+ # Incremental Implementation — Step by Step, Test Each Step
11
+
12
+ NEVER implement everything at once. Build incrementally, verify at every step, and restart from scratch when stuck.
13
+
14
+ ## Required Process
15
+
16
+ 1. **Understand** the full scope before writing any code
17
+ 2. **Decompose** into the smallest possible steps
18
+ 3. **Implement ONE step** at a time
19
+ 4. **Test/verify** that step immediately (compile, run, test)
20
+ 5. **Fix any errors** before moving to the next step
21
+ 6. **Record learnings** in the knowledge base after each significant discovery
22
+ 7. **Repeat** until complete
23
+
24
+ ## The Restart Rule
25
+
26
+ If you have spent more than 3 failed attempts fixing the same error:
27
+
28
+ 1. **STOP** — do not try a 4th variation of the same approach
29
+ 2. **Analyze** what went wrong — write down root causes, not symptoms
30
+ 3. **Record** the failed approach as an anti-pattern in the knowledge base
31
+ 4. **Remove** the broken code completely — do not patch on top of patches
32
+ 5. **Reimplementation from scratch** using a different approach informed by what you learned
33
+ 6. **Test each step** of the new approach before proceeding
34
+
35
+ ## Knowledge Base Integration
36
+
37
+ After every significant implementation:
38
+
39
+ 1. **Check existing knowledge** before starting: `rulebook knowledge list` or search `.rulebook/knowledge/`
40
+ 2. **Record patterns** that worked: `rulebook knowledge add pattern "<title>" --category <cat>`
41
+ 3. **Record anti-patterns** that failed: `rulebook knowledge add anti-pattern "<title>" --category <cat>`
42
+ 4. **Capture learnings** from debugging: `rulebook learn capture --title "<title>" --content "<content>"`
43
+
44
+ ## Forbidden
45
+
46
+ - Implementing an entire feature in one pass without intermediate verification
47
+ - Spending more than 3 attempts fixing the same error with the same approach
48
+ - Patching broken code on top of broken code instead of restarting clean
49
+ - Ignoring the knowledge base — check it BEFORE implementing, update it AFTER
50
+ - Batching all tests to the end instead of testing each step
51
+
52
+ ## Why
53
+
54
+ AI agents that implement everything at once produce cascading errors. One early mistake propagates through the entire implementation, and debugging becomes exponentially harder. Step-by-step with immediate verification catches errors at the source. When stuck, restarting from scratch with new knowledge is always faster than patching endlessly. The line between persistence and stubbornness is thin.
55
+
56
+ **"Slow is smooth, smooth is fast."**
@@ -1,29 +1,29 @@
1
- ---
2
- name: incremental-tests
3
- tier: 2
4
- description: "Write tests in small batches, verify immediately"
5
- alwaysApply: true
6
- filePatterns: ["*.test.*", "*.spec.*", "*_test.*"]
7
- tools: ["all"]
8
- ---
9
-
10
- # Incremental Test Development
11
-
12
- Write tests 1-3 at a time. Test immediately after writing. Fix errors before proceeding.
13
-
14
- ## Rules
15
-
16
- 1. **Write 1-3 tests** at a time, NOT entire test files at once
17
- 2. **Run immediately** after writing — use single-file test execution
18
- 3. **Fix errors** before writing more tests
19
- 4. **Never run full suite** while developing tests — use individual file execution
20
- 5. **Coverage updates** only after completing a block of tests
21
-
22
- ## Why
23
-
24
- Writing full test files at once leads to cascading failures. One early error invalidates all subsequent tests, creating debug fatigue and wasted time.
25
-
26
- ## Development Testing vs Validation Testing
27
-
28
- - **Development**: Run single test file (`vitest run tests/my.test.ts`)
29
- - **Validation**: Run full suite only when a batch of tests is complete
1
+ ---
2
+ name: incremental-tests
3
+ tier: 2
4
+ description: "Write tests in small batches, verify immediately"
5
+ alwaysApply: true
6
+ filePatterns: ["*.test.*", "*.spec.*", "*_test.*"]
7
+ tools: ["all"]
8
+ ---
9
+
10
+ # Incremental Test Development
11
+
12
+ Write tests 1-3 at a time. Test immediately after writing. Fix errors before proceeding.
13
+
14
+ ## Rules
15
+
16
+ 1. **Write 1-3 tests** at a time, NOT entire test files at once
17
+ 2. **Run immediately** after writing — use single-file test execution
18
+ 3. **Fix errors** before writing more tests
19
+ 4. **Never run full suite** while developing tests — use individual file execution
20
+ 5. **Coverage updates** only after completing a block of tests
21
+
22
+ ## Why
23
+
24
+ Writing full test files at once leads to cascading failures. One early error invalidates all subsequent tests, creating debug fatigue and wasted time.
25
+
26
+ ## Development Testing vs Validation Testing
27
+
28
+ - **Development**: Run single test file (`vitest run tests/my.test.ts`)
29
+ - **Validation**: Run full suite only when a batch of tests is complete
@@ -1,43 +1,43 @@
1
- ---
2
- paths:
3
- - "**/*.java"
4
- - "pom.xml"
5
- - "**/build.gradle"
6
- - "**/build.gradle.kts"
7
- - "**/settings.gradle"
8
- - "**/settings.gradle.kts"
9
- ---
10
- <!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
11
-
12
- # Java rules
13
-
14
- Loaded by Claude Code when touching Java sources or build files.
15
-
16
- ## Non-negotiables
17
-
18
- 1. **Compile before test.** `mvn compile` / `gradle classes` before running the test suite. Compilation errors are cheaper to fix than a broken test run.
19
- 2. **Static analysis enabled.** SpotBugs, ErrorProne, or Checkstyle per project config. Warnings count as failures.
20
- 3. **Null safety.** Use `Optional<T>` for values that may be absent at API boundaries. Annotate fields with `@Nullable` / `@NonNull` where the project uses JSR-305 / JSpecify.
21
- 4. **Immutability first.** `final` by default on fields, parameters, and local variables. Prefer records (Java 16+) for data carriers.
22
- 5. **Never swallow exceptions.** Every `catch` either handles, wraps (`throw new X("context", e)`), or logs with context.
23
-
24
- ## Conventions
25
-
26
- - Follow the project's Google Java Style or similar — formatter handles it.
27
- - Package names all lowercase, reverse-DNS (`com.hivehub.rulebook.foo`).
28
- - One public class per file; file name matches the class.
29
- - Prefer composition over inheritance; avoid deep hierarchies.
30
- - Use `java.time` (not `java.util.Date`) for dates and times.
31
-
32
- ## Testing
33
-
34
- - JUnit 5 is default; use the project's configured framework.
35
- - AssertJ or Hamcrest for readable assertions.
36
- - Mockito for mocks; avoid PowerMock unless strictly necessary.
37
- - One logical assertion per test; multiple mechanical ones allowed.
38
-
39
- ## Build & tooling
40
-
41
- - Commit `pom.xml` / `build.gradle`, never `target/` / `build/`.
42
- - Pin plugin versions; do not use ranges.
43
- - Java version declared in the build file, not assumed from the environment.
1
+ ---
2
+ paths:
3
+ - "**/*.java"
4
+ - "pom.xml"
5
+ - "**/build.gradle"
6
+ - "**/build.gradle.kts"
7
+ - "**/settings.gradle"
8
+ - "**/settings.gradle.kts"
9
+ ---
10
+ <!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
11
+
12
+ # Java rules
13
+
14
+ Loaded by Claude Code when touching Java sources or build files.
15
+
16
+ ## Non-negotiables
17
+
18
+ 1. **Compile before test.** `mvn compile` / `gradle classes` before running the test suite. Compilation errors are cheaper to fix than a broken test run.
19
+ 2. **Static analysis enabled.** SpotBugs, ErrorProne, or Checkstyle per project config. Warnings count as failures.
20
+ 3. **Null safety.** Use `Optional<T>` for values that may be absent at API boundaries. Annotate fields with `@Nullable` / `@NonNull` where the project uses JSR-305 / JSpecify.
21
+ 4. **Immutability first.** `final` by default on fields, parameters, and local variables. Prefer records (Java 16+) for data carriers.
22
+ 5. **Never swallow exceptions.** Every `catch` either handles, wraps (`throw new X("context", e)`), or logs with context.
23
+
24
+ ## Conventions
25
+
26
+ - Follow the project's Google Java Style or similar — formatter handles it.
27
+ - Package names all lowercase, reverse-DNS (`com.hivehub.rulebook.foo`).
28
+ - One public class per file; file name matches the class.
29
+ - Prefer composition over inheritance; avoid deep hierarchies.
30
+ - Use `java.time` (not `java.util.Date`) for dates and times.
31
+
32
+ ## Testing
33
+
34
+ - JUnit 5 is default; use the project's configured framework.
35
+ - AssertJ or Hamcrest for readable assertions.
36
+ - Mockito for mocks; avoid PowerMock unless strictly necessary.
37
+ - One logical assertion per test; multiple mechanical ones allowed.
38
+
39
+ ## Build & tooling
40
+
41
+ - Commit `pom.xml` / `build.gradle`, never `target/` / `build/`.
42
+ - Pin plugin versions; do not use ranges.
43
+ - Java version declared in the build file, not assumed from the environment.
@@ -1,39 +1,39 @@
1
- ---
2
- paths:
3
- - "**/*.js"
4
- - "**/*.jsx"
5
- - "**/*.mjs"
6
- - "**/*.cjs"
7
- - "package.json"
8
- ---
9
- <!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
10
-
11
- # JavaScript rules
12
-
13
- Loaded by Claude Code when touching JavaScript files.
14
-
15
- ## Non-negotiables
16
-
17
- 1. **Lint before test.** Run the project's linter (ESLint / Biome) before the test suite. Lint errors are cheaper to surface than test failures.
18
- 2. **No `var`.** Use `const` by default, `let` only when reassignment is necessary.
19
- 3. **Strict equality.** Always `===` and `!==`, never `==` / `!=`.
20
- 4. **No implicit globals.** Every file that modifies state at the top level should explicitly export it.
21
- 5. **Module type matches the project.** If the project is ESM (`"type": "module"` in package.json), use `import`/`export`; if CommonJS, use `require`/`module.exports`. Do not mix without a clear boundary.
22
-
23
- ## Conventions
24
-
25
- - Prefer arrow functions for callbacks; named `function` declarations for top-level or hoisted functions.
26
- - `async`/`await` over raw Promise chains.
27
- - Destructure function arguments when there are 3+ parameters.
28
- - Never rely on falsy checks for "value exists" — use explicit `=== undefined` / `!= null` where the distinction matters.
29
-
30
- ## Testing
31
-
32
- - Use the project's configured test runner. Do not add a new one.
33
- - Mock external boundaries (network, filesystem, time).
34
- - No `describe.skip` / `it.skip` left behind in committed code.
35
-
36
- ## Dependencies
37
-
38
- - Check `package.json` before adding imports. Do not install new dependencies without explicit authorization.
39
- - Pin `peerDependencies` carefully; they affect consumers of the package.
1
+ ---
2
+ paths:
3
+ - "**/*.js"
4
+ - "**/*.jsx"
5
+ - "**/*.mjs"
6
+ - "**/*.cjs"
7
+ - "package.json"
8
+ ---
9
+ <!-- Generated by @hivehub/rulebook v5.3.0 — delete this comment to prevent regeneration on `rulebook update` -->
10
+
11
+ # JavaScript rules
12
+
13
+ Loaded by Claude Code when touching JavaScript files.
14
+
15
+ ## Non-negotiables
16
+
17
+ 1. **Lint before test.** Run the project's linter (ESLint / Biome) before the test suite. Lint errors are cheaper to surface than test failures.
18
+ 2. **No `var`.** Use `const` by default, `let` only when reassignment is necessary.
19
+ 3. **Strict equality.** Always `===` and `!==`, never `==` / `!=`.
20
+ 4. **No implicit globals.** Every file that modifies state at the top level should explicitly export it.
21
+ 5. **Module type matches the project.** If the project is ESM (`"type": "module"` in package.json), use `import`/`export`; if CommonJS, use `require`/`module.exports`. Do not mix without a clear boundary.
22
+
23
+ ## Conventions
24
+
25
+ - Prefer arrow functions for callbacks; named `function` declarations for top-level or hoisted functions.
26
+ - `async`/`await` over raw Promise chains.
27
+ - Destructure function arguments when there are 3+ parameters.
28
+ - Never rely on falsy checks for "value exists" — use explicit `=== undefined` / `!= null` where the distinction matters.
29
+
30
+ ## Testing
31
+
32
+ - Use the project's configured test runner. Do not add a new one.
33
+ - Mock external boundaries (network, filesystem, time).
34
+ - No `describe.skip` / `it.skip` left behind in committed code.
35
+
36
+ ## Dependencies
37
+
38
+ - Check `package.json` before adding imports. Do not install new dependencies without explicit authorization.
39
+ - Pin `peerDependencies` carefully; they affect consumers of the package.