@hivehub/rulebook 5.4.0 → 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 (454) 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 +393 -393
  27. package/dist/index.js +0 -0
  28. package/dist/mcp/rulebook-server.js +0 -0
  29. package/package.json +22 -21
  30. package/templates/agents/accessibility-reviewer.md +43 -43
  31. package/templates/agents/api-designer.md +42 -42
  32. package/templates/agents/architect.md +51 -51
  33. package/templates/agents/build-engineer.md +36 -36
  34. package/templates/agents/code-reviewer.md +47 -47
  35. package/templates/agents/compiler/codegen-debugger.md +34 -34
  36. package/templates/agents/compiler/stdlib-engineer.md +28 -28
  37. package/templates/agents/compiler/test-coverage-guardian.md +31 -31
  38. package/templates/agents/context-intelligence.md +52 -52
  39. package/templates/agents/database-architect.md +41 -41
  40. package/templates/agents/devops-engineer.md +42 -42
  41. package/templates/agents/docs-writer.md +38 -38
  42. package/templates/agents/game-engine/cpp-core-expert.md +35 -35
  43. package/templates/agents/game-engine/render-engineer.md +22 -22
  44. package/templates/agents/game-engine/shader-engineer.md +38 -38
  45. package/templates/agents/game-engine/systems-integration.md +43 -43
  46. package/templates/agents/generic/code-reviewer.md +41 -41
  47. package/templates/agents/generic/docs-writer.md +25 -25
  48. package/templates/agents/generic/project-manager.md +36 -36
  49. package/templates/agents/generic/researcher.md +34 -34
  50. package/templates/agents/generic/test-engineer.md +41 -41
  51. package/templates/agents/i18n-engineer.md +42 -42
  52. package/templates/agents/implementer.md +42 -42
  53. package/templates/agents/migration-engineer.md +42 -42
  54. package/templates/agents/mobile/platform-specialist.md +22 -22
  55. package/templates/agents/mobile/ui-engineer.md +22 -22
  56. package/templates/agents/performance-engineer.md +49 -49
  57. package/templates/agents/refactoring-agent.md +41 -41
  58. package/templates/agents/researcher.md +38 -38
  59. package/templates/agents/security-reviewer.md +40 -40
  60. package/templates/agents/team-lead.md +37 -37
  61. package/templates/agents/tester.md +48 -48
  62. package/templates/agents/ux-reviewer.md +43 -43
  63. package/templates/agents/web-app/api-designer.md +22 -22
  64. package/templates/agents/web-app/backend-engineer.md +30 -30
  65. package/templates/agents/web-app/database-engineer.md +22 -22
  66. package/templates/agents/web-app/frontend-engineer.md +29 -29
  67. package/templates/agents/web-app/security-reviewer.md +32 -32
  68. package/templates/ci/rulebook-review.yml +26 -26
  69. package/templates/cli/AIDER.md +49 -49
  70. package/templates/cli/AMAZON_Q.md +25 -25
  71. package/templates/cli/AUGGIE.md +32 -32
  72. package/templates/cli/CLAUDE.md +117 -117
  73. package/templates/cli/CLINE.md +99 -99
  74. package/templates/cli/CODEBUDDY.md +20 -20
  75. package/templates/cli/CODEIUM.md +20 -20
  76. package/templates/cli/CODEX.md +21 -21
  77. package/templates/cli/CONTINUE.md +34 -34
  78. package/templates/cli/CURSOR_CLI.md +62 -62
  79. package/templates/cli/FACTORY.md +18 -18
  80. package/templates/cli/GEMINI.md +35 -35
  81. package/templates/cli/KILOCODE.md +18 -18
  82. package/templates/cli/OPENCODE.md +18 -18
  83. package/templates/cli/_GENERIC_TEMPLATE.md +29 -29
  84. package/templates/cli/gemini-extension.json +77 -77
  85. package/templates/commands/rulebook-decision-create.md +55 -55
  86. package/templates/commands/rulebook-decision-list.md +15 -15
  87. package/templates/commands/rulebook-knowledge-add.md +41 -41
  88. package/templates/commands/rulebook-knowledge-list.md +15 -15
  89. package/templates/commands/rulebook-learn-capture.md +48 -48
  90. package/templates/commands/rulebook-learn-list.md +13 -13
  91. package/templates/commands/rulebook-memory-save.md +48 -48
  92. package/templates/commands/rulebook-memory-search.md +47 -47
  93. package/templates/commands/rulebook-task-apply.md +67 -67
  94. package/templates/commands/rulebook-task-archive.md +94 -94
  95. package/templates/commands/rulebook-task-create.md +93 -93
  96. package/templates/commands/rulebook-task-list.md +42 -42
  97. package/templates/commands/rulebook-task-show.md +52 -52
  98. package/templates/commands/rulebook-task-validate.md +53 -53
  99. package/templates/compact-context/_default.md +23 -23
  100. package/templates/compact-context/cpp.md +26 -26
  101. package/templates/compact-context/go.md +26 -26
  102. package/templates/compact-context/python.md +26 -26
  103. package/templates/compact-context/rust.md +28 -28
  104. package/templates/compact-context/typescript.md +29 -29
  105. package/templates/core/AGENTS_OVERRIDE.md +16 -16
  106. package/templates/core/AGENT_AUTOMATION.md +296 -296
  107. package/templates/core/CLAUDE_MD_v2.md +71 -71
  108. package/templates/core/DAG.md +304 -304
  109. package/templates/core/DECISIONS.md +38 -38
  110. package/templates/core/DOCUMENTATION_RULES.md +36 -36
  111. package/templates/core/KNOWLEDGE.md +49 -49
  112. package/templates/core/MULTI_AGENT.md +74 -74
  113. package/templates/core/PLANS.md +28 -28
  114. package/templates/core/QUALITY_ENFORCEMENT.md +68 -68
  115. package/templates/core/RALPH.md +471 -471
  116. package/templates/core/RULEBOOK.md +1947 -1947
  117. package/templates/core/TIER1_PROHIBITIONS.md +154 -154
  118. package/templates/core/TOKEN_OPTIMIZATION.md +49 -49
  119. package/templates/core/WORKSPACE.md +69 -69
  120. package/templates/frameworks/ANGULAR.md +36 -36
  121. package/templates/frameworks/DJANGO.md +83 -83
  122. package/templates/frameworks/ELECTRON.md +147 -147
  123. package/templates/frameworks/FLASK.md +38 -38
  124. package/templates/frameworks/FLUTTER.md +55 -55
  125. package/templates/frameworks/JQUERY.md +32 -32
  126. package/templates/frameworks/LARAVEL.md +38 -38
  127. package/templates/frameworks/NESTJS.md +43 -43
  128. package/templates/frameworks/NEXTJS.md +127 -127
  129. package/templates/frameworks/NUXT.md +40 -40
  130. package/templates/frameworks/RAILS.md +66 -66
  131. package/templates/frameworks/REACT.md +38 -38
  132. package/templates/frameworks/REACT_NATIVE.md +47 -47
  133. package/templates/frameworks/SPRING.md +39 -39
  134. package/templates/frameworks/SYMFONY.md +36 -36
  135. package/templates/frameworks/VUE.md +36 -36
  136. package/templates/frameworks/ZEND.md +35 -35
  137. package/templates/git/CI_CD_PATTERNS.md +661 -661
  138. package/templates/git/GITHUB_ACTIONS.md +728 -728
  139. package/templates/git/GITLAB_CI.md +730 -730
  140. package/templates/git/GIT_WORKFLOW.md +1192 -1192
  141. package/templates/git/SECRETS_MANAGEMENT.md +585 -585
  142. package/templates/hooks/COMMIT_MSG.md +530 -530
  143. package/templates/hooks/POST_CHECKOUT.md +546 -546
  144. package/templates/hooks/PREPARE_COMMIT_MSG.md +619 -619
  145. package/templates/hooks/PRE_COMMIT.md +414 -414
  146. package/templates/hooks/PRE_PUSH.md +601 -601
  147. package/templates/hooks/check-context-and-handoff.ps1 +58 -58
  148. package/templates/hooks/check-context-and-handoff.sh +76 -76
  149. package/templates/hooks/enforce-team-for-background-agents.ps1 +63 -63
  150. package/templates/hooks/enforce-team-for-background-agents.sh +55 -55
  151. package/templates/hooks/on-compact-reinject.sh +34 -34
  152. package/templates/hooks/resume-from-handoff.ps1 +40 -40
  153. package/templates/hooks/resume-from-handoff.sh +61 -61
  154. package/templates/hooks/terse-activate.ps1 +143 -143
  155. package/templates/hooks/terse-activate.sh +197 -197
  156. package/templates/hooks/terse-mode-tracker.ps1 +153 -153
  157. package/templates/hooks/terse-mode-tracker.sh +187 -187
  158. package/templates/ides/CONTINUE_RULES.md +16 -16
  159. package/templates/ides/COPILOT.md +37 -37
  160. package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
  161. package/templates/ides/CURSOR.md +43 -43
  162. package/templates/ides/GEMINI_RULES.md +17 -17
  163. package/templates/ides/JETBRAINS_AI.md +35 -35
  164. package/templates/ides/REPLIT.md +36 -36
  165. package/templates/ides/TABNINE.md +29 -29
  166. package/templates/ides/VSCODE.md +40 -40
  167. package/templates/ides/WINDSURF.md +36 -36
  168. package/templates/ides/WINDSURF_RULES.md +14 -14
  169. package/templates/ides/ZED.md +32 -32
  170. package/templates/ides/cursor-mdc/go.mdc +24 -24
  171. package/templates/ides/cursor-mdc/python.mdc +24 -24
  172. package/templates/ides/cursor-mdc/quality.mdc +25 -25
  173. package/templates/ides/cursor-mdc/ralph.mdc +39 -39
  174. package/templates/ides/cursor-mdc/rulebook.mdc +38 -38
  175. package/templates/ides/cursor-mdc/rust.mdc +24 -24
  176. package/templates/ides/cursor-mdc/typescript.mdc +25 -25
  177. package/templates/languages/C.md +333 -333
  178. package/templates/languages/CPP.md +743 -743
  179. package/templates/languages/CSHARP.md +417 -417
  180. package/templates/languages/ELIXIR.md +454 -454
  181. package/templates/languages/ERLANG.md +361 -361
  182. package/templates/languages/GO.md +645 -645
  183. package/templates/languages/HASKELL.md +177 -177
  184. package/templates/languages/JAVA.md +607 -607
  185. package/templates/languages/JAVASCRIPT.md +631 -631
  186. package/templates/languages/JULIA.md +97 -97
  187. package/templates/languages/KOTLIN.md +511 -511
  188. package/templates/languages/LISP.md +100 -100
  189. package/templates/languages/LUA.md +74 -74
  190. package/templates/languages/OBJECTIVEC.md +90 -90
  191. package/templates/languages/PHP.md +416 -416
  192. package/templates/languages/PYTHON.md +682 -682
  193. package/templates/languages/RUBY.md +421 -421
  194. package/templates/languages/RUST.md +477 -477
  195. package/templates/languages/SAS.md +73 -73
  196. package/templates/languages/SCALA.md +348 -348
  197. package/templates/languages/SOLIDITY.md +580 -580
  198. package/templates/languages/SQL.md +137 -137
  199. package/templates/languages/SWIFT.md +466 -466
  200. package/templates/languages/TYPESCRIPT.md +591 -591
  201. package/templates/languages/ZIG.md +265 -265
  202. package/templates/modules/ATLASSIAN.md +255 -255
  203. package/templates/modules/CONTEXT7.md +54 -54
  204. package/templates/modules/FIGMA.md +267 -267
  205. package/templates/modules/GITHUB_MCP.md +64 -64
  206. package/templates/modules/GRAFANA.md +328 -328
  207. package/templates/modules/MEMORY.md +126 -126
  208. package/templates/modules/NOTION.md +247 -247
  209. package/templates/modules/PLAYWRIGHT.md +90 -90
  210. package/templates/modules/RULEBOOK_MCP.md +208 -208
  211. package/templates/modules/SERENA.md +337 -337
  212. package/templates/modules/SUPABASE.md +223 -223
  213. package/templates/modules/SYNAP.md +69 -69
  214. package/templates/modules/VECTORIZER.md +63 -63
  215. package/templates/modules/sequential-thinking.md +42 -42
  216. package/templates/ralph/ralph-history.bat +4 -4
  217. package/templates/ralph/ralph-history.sh +5 -5
  218. package/templates/ralph/ralph-init.bat +5 -5
  219. package/templates/ralph/ralph-init.sh +5 -5
  220. package/templates/ralph/ralph-pause.bat +5 -5
  221. package/templates/ralph/ralph-pause.sh +5 -5
  222. package/templates/ralph/ralph-run.bat +5 -5
  223. package/templates/ralph/ralph-run.sh +5 -5
  224. package/templates/ralph/ralph-status.bat +4 -4
  225. package/templates/ralph/ralph-status.sh +5 -5
  226. package/templates/rules/consult-analysis-before-implementing.md +23 -23
  227. package/templates/rules/cpp.md +46 -46
  228. package/templates/rules/csharp.md +44 -44
  229. package/templates/rules/diagnostic-first.md +39 -39
  230. package/templates/rules/fail-twice-escalate.md +46 -46
  231. package/templates/rules/follow-task-sequence.md +36 -36
  232. package/templates/rules/git-safety.md +29 -29
  233. package/templates/rules/go.md +40 -40
  234. package/templates/rules/incremental-implementation.md +56 -56
  235. package/templates/rules/incremental-tests.md +29 -29
  236. package/templates/rules/java.md +43 -43
  237. package/templates/rules/javascript.md +39 -39
  238. package/templates/rules/knowledge-base-usage.md +41 -41
  239. package/templates/rules/multi-agent-teams.md +75 -75
  240. package/templates/rules/no-deferred.md +31 -31
  241. package/templates/rules/no-shortcuts.md +30 -30
  242. package/templates/rules/python.md +43 -43
  243. package/templates/rules/research-first.md +30 -30
  244. package/templates/rules/respect-handoff-trigger.md +41 -41
  245. package/templates/rules/rust.md +40 -40
  246. package/templates/rules/sequential-editing.md +21 -21
  247. package/templates/rules/session-workflow.md +24 -24
  248. package/templates/rules/task-decomposition.md +32 -32
  249. package/templates/rules/typescript.md +40 -40
  250. package/templates/services/AZURE_BLOB.md +184 -184
  251. package/templates/services/CASSANDRA.md +239 -239
  252. package/templates/services/DATADOG.md +26 -26
  253. package/templates/services/DOCKER.md +124 -124
  254. package/templates/services/DOCKER_COMPOSE.md +168 -168
  255. package/templates/services/DYNAMODB.md +308 -308
  256. package/templates/services/ELASTICSEARCH.md +347 -347
  257. package/templates/services/GCS.md +178 -178
  258. package/templates/services/HELM.md +194 -194
  259. package/templates/services/INFLUXDB.md +265 -265
  260. package/templates/services/KAFKA.md +341 -341
  261. package/templates/services/KUBERNETES.md +208 -208
  262. package/templates/services/MARIADB.md +183 -183
  263. package/templates/services/MEMCACHED.md +242 -242
  264. package/templates/services/MINIO.md +201 -201
  265. package/templates/services/MONGODB.md +268 -268
  266. package/templates/services/MYSQL.md +358 -358
  267. package/templates/services/NEO4J.md +247 -247
  268. package/templates/services/OPENTELEMETRY.md +25 -25
  269. package/templates/services/ORACLE.md +290 -290
  270. package/templates/services/PINO.md +24 -24
  271. package/templates/services/POSTGRESQL.md +326 -326
  272. package/templates/services/PROMETHEUS.md +33 -33
  273. package/templates/services/RABBITMQ.md +286 -286
  274. package/templates/services/REDIS.md +292 -292
  275. package/templates/services/S3.md +298 -298
  276. package/templates/services/SENTRY.md +23 -23
  277. package/templates/services/SQLITE.md +294 -294
  278. package/templates/services/SQLSERVER.md +294 -294
  279. package/templates/services/WINSTON.md +30 -30
  280. package/templates/skills/cli/aider/SKILL.md +59 -59
  281. package/templates/skills/cli/amazon-q/SKILL.md +35 -35
  282. package/templates/skills/cli/auggie/SKILL.md +42 -42
  283. package/templates/skills/cli/claude/SKILL.md +42 -42
  284. package/templates/skills/cli/cline/SKILL.md +42 -42
  285. package/templates/skills/cli/codebuddy/SKILL.md +30 -30
  286. package/templates/skills/cli/codeium/SKILL.md +30 -30
  287. package/templates/skills/cli/codex/SKILL.md +31 -31
  288. package/templates/skills/cli/continue/SKILL.md +44 -44
  289. package/templates/skills/cli/cursor-cli/SKILL.md +38 -38
  290. package/templates/skills/cli/factory/SKILL.md +28 -28
  291. package/templates/skills/cli/gemini/SKILL.md +45 -45
  292. package/templates/skills/cli/kilocode/SKILL.md +28 -28
  293. package/templates/skills/cli/opencode/SKILL.md +28 -28
  294. package/templates/skills/core/agent-automation/SKILL.md +194 -194
  295. package/templates/skills/core/dag/SKILL.md +314 -314
  296. package/templates/skills/core/documentation-rules/SKILL.md +46 -46
  297. package/templates/skills/core/quality-enforcement/SKILL.md +78 -78
  298. package/templates/skills/core/rulebook/SKILL.md +176 -176
  299. package/templates/skills/core/rulebook-terse/SKILL.md +116 -116
  300. package/templates/skills/core/rulebook-terse-commit/SKILL.md +96 -96
  301. package/templates/skills/core/rulebook-terse-review/SKILL.md +112 -112
  302. package/templates/skills/dev/accessibility/SKILL.md +17 -17
  303. package/templates/skills/dev/analysis/SKILL.md +19 -19
  304. package/templates/skills/dev/api-design/SKILL.md +15 -15
  305. package/templates/skills/dev/architect/SKILL.md +17 -17
  306. package/templates/skills/dev/build-fix/SKILL.md +17 -17
  307. package/templates/skills/dev/db-design/SKILL.md +15 -15
  308. package/templates/skills/dev/debug/SKILL.md +16 -16
  309. package/templates/skills/dev/deploy/SKILL.md +17 -17
  310. package/templates/skills/dev/docs/SKILL.md +17 -17
  311. package/templates/skills/dev/handoff/SKILL.md +27 -27
  312. package/templates/skills/dev/migrate/SKILL.md +15 -15
  313. package/templates/skills/dev/perf/SKILL.md +17 -17
  314. package/templates/skills/dev/refactor/SKILL.md +17 -17
  315. package/templates/skills/dev/research/SKILL.md +14 -14
  316. package/templates/skills/dev/review/SKILL.md +18 -18
  317. package/templates/skills/dev/security-audit/SKILL.md +17 -17
  318. package/templates/skills/frameworks/angular/SKILL.md +46 -46
  319. package/templates/skills/frameworks/django/SKILL.md +93 -93
  320. package/templates/skills/frameworks/electron/SKILL.md +157 -157
  321. package/templates/skills/frameworks/flask/SKILL.md +48 -48
  322. package/templates/skills/frameworks/flutter/SKILL.md +65 -65
  323. package/templates/skills/frameworks/jquery/SKILL.md +42 -42
  324. package/templates/skills/frameworks/laravel/SKILL.md +48 -48
  325. package/templates/skills/frameworks/nestjs/SKILL.md +53 -53
  326. package/templates/skills/frameworks/nextjs/SKILL.md +137 -137
  327. package/templates/skills/frameworks/nuxt/SKILL.md +50 -50
  328. package/templates/skills/frameworks/rails/SKILL.md +76 -76
  329. package/templates/skills/frameworks/react/SKILL.md +48 -48
  330. package/templates/skills/frameworks/react-native/SKILL.md +57 -57
  331. package/templates/skills/frameworks/spring/SKILL.md +49 -49
  332. package/templates/skills/frameworks/symfony/SKILL.md +46 -46
  333. package/templates/skills/frameworks/vue/SKILL.md +46 -46
  334. package/templates/skills/frameworks/zend/SKILL.md +45 -45
  335. package/templates/skills/ides/copilot/SKILL.md +47 -47
  336. package/templates/skills/ides/cursor/SKILL.md +53 -53
  337. package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -45
  338. package/templates/skills/ides/replit/SKILL.md +46 -46
  339. package/templates/skills/ides/tabnine/SKILL.md +39 -39
  340. package/templates/skills/ides/vscode/SKILL.md +50 -50
  341. package/templates/skills/ides/windsurf/SKILL.md +46 -46
  342. package/templates/skills/ides/zed/SKILL.md +42 -42
  343. package/templates/skills/languages/c/SKILL.md +343 -343
  344. package/templates/skills/languages/cpp/SKILL.md +753 -753
  345. package/templates/skills/languages/csharp/SKILL.md +427 -427
  346. package/templates/skills/languages/elixir/SKILL.md +464 -464
  347. package/templates/skills/languages/erlang/SKILL.md +371 -371
  348. package/templates/skills/languages/go/SKILL.md +655 -655
  349. package/templates/skills/languages/haskell/SKILL.md +187 -187
  350. package/templates/skills/languages/java/SKILL.md +617 -617
  351. package/templates/skills/languages/javascript/SKILL.md +641 -641
  352. package/templates/skills/languages/julia/SKILL.md +107 -107
  353. package/templates/skills/languages/kotlin/SKILL.md +521 -521
  354. package/templates/skills/languages/lisp/SKILL.md +110 -110
  355. package/templates/skills/languages/lua/SKILL.md +84 -84
  356. package/templates/skills/languages/objectivec/SKILL.md +100 -100
  357. package/templates/skills/languages/php/SKILL.md +426 -426
  358. package/templates/skills/languages/python/SKILL.md +692 -692
  359. package/templates/skills/languages/ruby/SKILL.md +431 -431
  360. package/templates/skills/languages/rust/SKILL.md +487 -487
  361. package/templates/skills/languages/sas/SKILL.md +83 -83
  362. package/templates/skills/languages/scala/SKILL.md +358 -358
  363. package/templates/skills/languages/solidity/SKILL.md +590 -590
  364. package/templates/skills/languages/sql/SKILL.md +147 -147
  365. package/templates/skills/languages/swift/SKILL.md +476 -476
  366. package/templates/skills/languages/typescript/SKILL.md +302 -302
  367. package/templates/skills/languages/zig/SKILL.md +275 -275
  368. package/templates/skills/modules/atlassian/SKILL.md +265 -265
  369. package/templates/skills/modules/context7/SKILL.md +64 -64
  370. package/templates/skills/modules/figma/SKILL.md +277 -277
  371. package/templates/skills/modules/github-mcp/SKILL.md +74 -74
  372. package/templates/skills/modules/grafana/SKILL.md +338 -338
  373. package/templates/skills/modules/memory/SKILL.md +73 -73
  374. package/templates/skills/modules/notion/SKILL.md +257 -257
  375. package/templates/skills/modules/playwright/SKILL.md +100 -100
  376. package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -166
  377. package/templates/skills/modules/serena/SKILL.md +347 -347
  378. package/templates/skills/modules/supabase/SKILL.md +233 -233
  379. package/templates/skills/modules/synap/SKILL.md +79 -79
  380. package/templates/skills/modules/vectorizer/SKILL.md +73 -73
  381. package/templates/skills/services/azure-blob/SKILL.md +194 -194
  382. package/templates/skills/services/cassandra/SKILL.md +249 -249
  383. package/templates/skills/services/dynamodb/SKILL.md +318 -318
  384. package/templates/skills/services/elasticsearch/SKILL.md +357 -357
  385. package/templates/skills/services/gcs/SKILL.md +188 -188
  386. package/templates/skills/services/influxdb/SKILL.md +275 -275
  387. package/templates/skills/services/kafka/SKILL.md +351 -351
  388. package/templates/skills/services/mariadb/SKILL.md +193 -193
  389. package/templates/skills/services/memcached/SKILL.md +252 -252
  390. package/templates/skills/services/minio/SKILL.md +211 -211
  391. package/templates/skills/services/mongodb/SKILL.md +278 -278
  392. package/templates/skills/services/mysql/SKILL.md +368 -368
  393. package/templates/skills/services/neo4j/SKILL.md +257 -257
  394. package/templates/skills/services/oracle/SKILL.md +300 -300
  395. package/templates/skills/services/postgresql/SKILL.md +336 -336
  396. package/templates/skills/services/rabbitmq/SKILL.md +296 -296
  397. package/templates/skills/services/redis/SKILL.md +302 -302
  398. package/templates/skills/services/s3/SKILL.md +308 -308
  399. package/templates/skills/services/sqlite/SKILL.md +304 -304
  400. package/templates/skills/services/sqlserver/SKILL.md +304 -304
  401. package/templates/skills/workflows/ralph/SKILL.md +309 -309
  402. package/templates/skills/workflows/ralph/install.sh +87 -87
  403. package/templates/skills/workflows/ralph/manifest.json +158 -158
  404. package/templates/workflows/codespell.yml +31 -31
  405. package/templates/workflows/cpp-lint.yml +47 -47
  406. package/templates/workflows/cpp-publish.yml +119 -119
  407. package/templates/workflows/cpp-test.yml +77 -77
  408. package/templates/workflows/dotnet-lint.yml +29 -29
  409. package/templates/workflows/dotnet-publish.yml +40 -40
  410. package/templates/workflows/dotnet-test.yml +41 -41
  411. package/templates/workflows/elixir-lint.yml +45 -45
  412. package/templates/workflows/elixir-publish.yml +49 -49
  413. package/templates/workflows/elixir-test.yml +54 -54
  414. package/templates/workflows/erlang-lint.yml +47 -47
  415. package/templates/workflows/erlang-test.yml +62 -62
  416. package/templates/workflows/go-lint.yml +39 -39
  417. package/templates/workflows/go-publish.yml +95 -95
  418. package/templates/workflows/go-test.yml +59 -59
  419. package/templates/workflows/java-lint.yml +60 -60
  420. package/templates/workflows/java-publish.yml +120 -120
  421. package/templates/workflows/java-test.yml +85 -85
  422. package/templates/workflows/kotlin-lint.yml +34 -34
  423. package/templates/workflows/kotlin-publish.yml +56 -56
  424. package/templates/workflows/kotlin-test.yml +48 -48
  425. package/templates/workflows/php-lint.yml +39 -39
  426. package/templates/workflows/php-publish.yml +50 -50
  427. package/templates/workflows/php-test.yml +54 -54
  428. package/templates/workflows/python-lint.yml +47 -47
  429. package/templates/workflows/python-publish.yml +91 -91
  430. package/templates/workflows/python-test.yml +59 -59
  431. package/templates/workflows/rust-lint.yml +54 -54
  432. package/templates/workflows/rust-publish.yml +66 -66
  433. package/templates/workflows/rust-test.yml +75 -75
  434. package/templates/workflows/solidity-lint.yml +41 -41
  435. package/templates/workflows/solidity-test.yml +47 -47
  436. package/templates/workflows/swift-lint.yml +32 -32
  437. package/templates/workflows/swift-publish.yml +58 -58
  438. package/templates/workflows/swift-test.yml +44 -44
  439. package/templates/workflows/typescript-publish.yml +60 -60
  440. package/templates/workflows/typescript-test.yml +73 -73
  441. package/templates/workflows/zig-lint.yml +27 -27
  442. package/templates/workflows/zig-test.yml +40 -40
  443. package/dist/hooks/terse-activate.d.ts +0 -59
  444. package/dist/hooks/terse-activate.d.ts.map +0 -1
  445. package/dist/hooks/terse-activate.js +0 -149
  446. package/dist/hooks/terse-activate.js.map +0 -1
  447. package/dist/hooks/terse-config.d.ts +0 -51
  448. package/dist/hooks/terse-config.d.ts.map +0 -1
  449. package/dist/hooks/terse-config.js +0 -130
  450. package/dist/hooks/terse-config.js.map +0 -1
  451. package/dist/hooks/terse-mode-tracker.d.ts +0 -78
  452. package/dist/hooks/terse-mode-tracker.d.ts.map +0 -1
  453. package/dist/hooks/terse-mode-tracker.js +0 -213
  454. package/dist/hooks/terse-mode-tracker.js.map +0 -1
@@ -1,116 +1,116 @@
1
- ---
2
- name: "Rulebook Terse"
3
- description: "Output-verbosity compression. Cuts response tokens ~40-70% without losing technical accuracy. Four intensity levels (off/brief/terse/ultra) aligned with Rulebook's agent-tier system. Use when user says 'terse mode', 'be terse', 'less tokens please', or invokes /rulebook-terse. Auto-activates via SessionStart hook with tier-aware default."
4
- version: "1.0.0"
5
- category: "core"
6
- author: "Rulebook"
7
- tags: ["core", "output", "tokens", "compression"]
8
- dependencies: []
9
- conflicts: []
10
- ---
11
- <!-- RULEBOOK_TERSE:START -->
12
- # Rulebook Terse — Output Compression
13
-
14
- Respond tersely. All technical substance stays. Only fluff dies.
15
-
16
- ## Persistence
17
-
18
- ACTIVE EVERY RESPONSE once set. No revert after many turns. No filler drift. Still active if unsure.
19
-
20
- Off only via: `/rulebook-terse off` · "normal mode" · "stop terse" · session end.
21
-
22
- Default intensity resolves from: `RULEBOOK_TERSE_MODE` env → `.rulebook/rulebook.json` `terse.defaultMode` → active agent tier → `terse`.
23
-
24
- ## Rules
25
-
26
- **Drop**:
27
- - Articles (`a`, `an`, `the`) — level-dependent, see intensity table
28
- - Filler (`just`, `really`, `basically`, `actually`, `simply`, `essentially`)
29
- - Pleasantries (`sure`, `certainly`, `of course`, `happy to`, `great question`, `I'd recommend`)
30
- - Hedging (`it might be worth`, `you could consider`, `perhaps`, `I think`)
31
- - Preamble + restating the question
32
-
33
- **Keep exact**:
34
- - Technical terms (library names, API names, protocols, algorithms)
35
- - Code blocks (fenced and inline) — byte-for-byte pass-through
36
- - File paths (`/src/foo.ts`, `./config.yaml`, `E:\project\file`)
37
- - URLs + links
38
- - Commands (`npm test`, `git commit`)
39
- - Error messages (quoted)
40
- - Version numbers + dates
41
- - Proper nouns
42
-
43
- **Pattern**:
44
-
45
- ```
46
- [thing] [action] [reason]. [next step].
47
- ```
48
-
49
- **Example**:
50
-
51
- ❌ "Sure! I'd be happy to help. The issue you're experiencing is most likely caused by the authentication middleware not properly validating token expiry. Let me take a look."
52
-
53
- ✅ "Bug in auth middleware. Token expiry check uses `<` not `<=`. Fix:"
54
-
55
- ## Intensity
56
-
57
- | Level | What changes |
58
- |-------|-------------|
59
- | **off** | No compression. Full prose. Full reasoning welcome. Default for Core tier (opus). |
60
- | **brief** | Drop filler + hedging + pleasantries. Keep articles + full sentences. Default for Standard tier (sonnet). |
61
- | **terse** | Drop articles. Fragments OK. Short synonyms (`fix` not "implement a solution for", `big` not "extensive"). Default for Research tier (haiku). |
62
- | **ultra** | Abbreviate (DB/auth/config/req/res/fn/impl). Strip conjunctions. Arrows for causality (`X → Y`). One word when one word suffices. |
63
-
64
- ### Example — "Why does my React component re-render?"
65
-
66
- - **off**: "Your component re-renders because you're creating a new object reference on every render. When you pass an inline object as a prop, React's shallow comparison sees it as a different object each time. Wrap it in `useMemo` to stabilize the reference."
67
- - **brief**: "Component re-renders because you create a new object reference each render. Inline object prop fails shallow comparison. Wrap it in `useMemo`."
68
- - **terse**: "New object ref each render. Inline object prop = new ref = re-render. Wrap in `useMemo`."
69
- - **ultra**: "Inline obj prop → new ref → re-render. `useMemo`."
70
-
71
- ### Example — "Explain database connection pooling."
72
-
73
- - **off**: "Connection pooling reuses a set of pre-opened database connections instead of creating a new connection for each request. This avoids the overhead of establishing a new TCP handshake and authenticating every time."
74
- - **brief**: "Connection pooling reuses open connections instead of creating new ones per request. Avoids repeated handshake + auth overhead."
75
- - **terse**: "Pool reuses open DB connections. No new connection per request. Skip handshake overhead."
76
- - **ultra**: "Pool = reuse DB conn. Skip handshake → fast under load."
77
-
78
- ## Auto-Clarity (mandatory escape hatch)
79
-
80
- Compression is suspended — for the affected turn only — when ANY of the following applies. Full prose is restored. Compression resumes on the next turn.
81
-
82
- 1. **Security warnings** — CVE-class findings, credential exposure, permission-elevation warnings.
83
- 2. **Destructive-op confirmations** — `rm -rf`, `git reset --hard`, `DROP TABLE`, `rulebook_task_delete`, irreversible file deletion.
84
- 3. **Quality-gate failures** — type-check errors, lint failures, failing tests, coverage below threshold, hook-emitted deny messages from `enforce-no-deferred` / `enforce-no-shortcuts` / `enforce-mcp-for-tasks`.
85
- 4. **Multi-step sequences** where fragment ambiguity risks misread (migration steps, ordered deploys, multi-service restarts).
86
- 5. **User confusion** — explicit "I don't understand", "explain again", or repeat of the same question.
87
-
88
- ### Example — destructive op
89
-
90
- > **Warning**: This will permanently delete all rows in the `users` table and cannot be undone.
91
- >
92
- > ```sql
93
- > DROP TABLE users;
94
- > ```
95
- >
96
- > Verify a backup exists before proceeding. After confirmation, terse resumes.
97
-
98
- ## Boundaries
99
-
100
- - **Code blocks**: byte-for-byte unchanged. Never compressed, never abbreviated, never reordered.
101
- - **Commit messages**: handled by the separate `rulebook-terse-commit` skill. Base skill does nothing to commits.
102
- - **PR reviews**: handled by `rulebook-terse-review`. Base skill does nothing to reviews.
103
- - **Specs** (`.rulebook/specs/**`, `proposal.md`, `spec.md`): unchanged.
104
- - **Test assertions + error strings**: verbatim.
105
-
106
- ## Activation surface
107
-
108
- | Surface | Example |
109
- |---------|---------|
110
- | Slash command | `/rulebook-terse`, `/rulebook-terse brief\|terse\|ultra\|off` |
111
- | Natural language (on) | "be terse", "less tokens please", "terse mode", "activate rulebook-terse" |
112
- | Natural language (off) | "normal mode", "stop terse", "disable terse" |
113
- | Model inference | Any trigger phrase in this skill's `description` frontmatter |
114
- | Automatic | SessionStart hook, tier-aware default |
115
-
116
- <!-- RULEBOOK_TERSE:END -->
1
+ ---
2
+ name: "Rulebook Terse"
3
+ description: "Output-verbosity compression. Cuts response tokens ~40-70% without losing technical accuracy. Four intensity levels (off/brief/terse/ultra) aligned with Rulebook's agent-tier system. Use when user says 'terse mode', 'be terse', 'less tokens please', or invokes /rulebook-terse. Auto-activates via SessionStart hook with tier-aware default."
4
+ version: "1.0.0"
5
+ category: "core"
6
+ author: "Rulebook"
7
+ tags: ["core", "output", "tokens", "compression"]
8
+ dependencies: []
9
+ conflicts: []
10
+ ---
11
+ <!-- RULEBOOK_TERSE:START -->
12
+ # Rulebook Terse — Output Compression
13
+
14
+ Respond tersely. All technical substance stays. Only fluff dies.
15
+
16
+ ## Persistence
17
+
18
+ ACTIVE EVERY RESPONSE once set. No revert after many turns. No filler drift. Still active if unsure.
19
+
20
+ Off only via: `/rulebook-terse off` · "normal mode" · "stop terse" · session end.
21
+
22
+ Default intensity resolves from: `RULEBOOK_TERSE_MODE` env → `.rulebook/rulebook.json` `terse.defaultMode` → active agent tier → `terse`.
23
+
24
+ ## Rules
25
+
26
+ **Drop**:
27
+ - Articles (`a`, `an`, `the`) — level-dependent, see intensity table
28
+ - Filler (`just`, `really`, `basically`, `actually`, `simply`, `essentially`)
29
+ - Pleasantries (`sure`, `certainly`, `of course`, `happy to`, `great question`, `I'd recommend`)
30
+ - Hedging (`it might be worth`, `you could consider`, `perhaps`, `I think`)
31
+ - Preamble + restating the question
32
+
33
+ **Keep exact**:
34
+ - Technical terms (library names, API names, protocols, algorithms)
35
+ - Code blocks (fenced and inline) — byte-for-byte pass-through
36
+ - File paths (`/src/foo.ts`, `./config.yaml`, `E:\project\file`)
37
+ - URLs + links
38
+ - Commands (`npm test`, `git commit`)
39
+ - Error messages (quoted)
40
+ - Version numbers + dates
41
+ - Proper nouns
42
+
43
+ **Pattern**:
44
+
45
+ ```
46
+ [thing] [action] [reason]. [next step].
47
+ ```
48
+
49
+ **Example**:
50
+
51
+ ❌ "Sure! I'd be happy to help. The issue you're experiencing is most likely caused by the authentication middleware not properly validating token expiry. Let me take a look."
52
+
53
+ ✅ "Bug in auth middleware. Token expiry check uses `<` not `<=`. Fix:"
54
+
55
+ ## Intensity
56
+
57
+ | Level | What changes |
58
+ |-------|-------------|
59
+ | **off** | No compression. Full prose. Full reasoning welcome. Default for Core tier (opus). |
60
+ | **brief** | Drop filler + hedging + pleasantries. Keep articles + full sentences. Default for Standard tier (sonnet). |
61
+ | **terse** | Drop articles. Fragments OK. Short synonyms (`fix` not "implement a solution for", `big` not "extensive"). Default for Research tier (haiku). |
62
+ | **ultra** | Abbreviate (DB/auth/config/req/res/fn/impl). Strip conjunctions. Arrows for causality (`X → Y`). One word when one word suffices. |
63
+
64
+ ### Example — "Why does my React component re-render?"
65
+
66
+ - **off**: "Your component re-renders because you're creating a new object reference on every render. When you pass an inline object as a prop, React's shallow comparison sees it as a different object each time. Wrap it in `useMemo` to stabilize the reference."
67
+ - **brief**: "Component re-renders because you create a new object reference each render. Inline object prop fails shallow comparison. Wrap it in `useMemo`."
68
+ - **terse**: "New object ref each render. Inline object prop = new ref = re-render. Wrap in `useMemo`."
69
+ - **ultra**: "Inline obj prop → new ref → re-render. `useMemo`."
70
+
71
+ ### Example — "Explain database connection pooling."
72
+
73
+ - **off**: "Connection pooling reuses a set of pre-opened database connections instead of creating a new connection for each request. This avoids the overhead of establishing a new TCP handshake and authenticating every time."
74
+ - **brief**: "Connection pooling reuses open connections instead of creating new ones per request. Avoids repeated handshake + auth overhead."
75
+ - **terse**: "Pool reuses open DB connections. No new connection per request. Skip handshake overhead."
76
+ - **ultra**: "Pool = reuse DB conn. Skip handshake → fast under load."
77
+
78
+ ## Auto-Clarity (mandatory escape hatch)
79
+
80
+ Compression is suspended — for the affected turn only — when ANY of the following applies. Full prose is restored. Compression resumes on the next turn.
81
+
82
+ 1. **Security warnings** — CVE-class findings, credential exposure, permission-elevation warnings.
83
+ 2. **Destructive-op confirmations** — `rm -rf`, `git reset --hard`, `DROP TABLE`, `rulebook_task_delete`, irreversible file deletion.
84
+ 3. **Quality-gate failures** — type-check errors, lint failures, failing tests, coverage below threshold, hook-emitted deny messages from `enforce-no-deferred` / `enforce-no-shortcuts` / `enforce-mcp-for-tasks`.
85
+ 4. **Multi-step sequences** where fragment ambiguity risks misread (migration steps, ordered deploys, multi-service restarts).
86
+ 5. **User confusion** — explicit "I don't understand", "explain again", or repeat of the same question.
87
+
88
+ ### Example — destructive op
89
+
90
+ > **Warning**: This will permanently delete all rows in the `users` table and cannot be undone.
91
+ >
92
+ > ```sql
93
+ > DROP TABLE users;
94
+ > ```
95
+ >
96
+ > Verify a backup exists before proceeding. After confirmation, terse resumes.
97
+
98
+ ## Boundaries
99
+
100
+ - **Code blocks**: byte-for-byte unchanged. Never compressed, never abbreviated, never reordered.
101
+ - **Commit messages**: handled by the separate `rulebook-terse-commit` skill. Base skill does nothing to commits.
102
+ - **PR reviews**: handled by `rulebook-terse-review`. Base skill does nothing to reviews.
103
+ - **Specs** (`.rulebook/specs/**`, `proposal.md`, `spec.md`): unchanged.
104
+ - **Test assertions + error strings**: verbatim.
105
+
106
+ ## Activation surface
107
+
108
+ | Surface | Example |
109
+ |---------|---------|
110
+ | Slash command | `/rulebook-terse`, `/rulebook-terse brief\|terse\|ultra\|off` |
111
+ | Natural language (on) | "be terse", "less tokens please", "terse mode", "activate rulebook-terse" |
112
+ | Natural language (off) | "normal mode", "stop terse", "disable terse" |
113
+ | Model inference | Any trigger phrase in this skill's `description` frontmatter |
114
+ | Automatic | SessionStart hook, tier-aware default |
115
+
116
+ <!-- RULEBOOK_TERSE:END -->
@@ -1,96 +1,96 @@
1
- ---
2
- name: "Rulebook Terse Commit"
3
- description: "Terse Conventional Commits generator. Subject ≤50 chars (hard cap 72), body only when 'why' isn't obvious, no filler. Use when user says 'write a commit', 'generate commit', 'commit message', or invokes /rulebook-terse-commit. Independent of the base rulebook-terse mode."
4
- version: "1.0.0"
5
- category: "core"
6
- author: "Rulebook"
7
- tags: ["core", "git", "commits", "tokens"]
8
- dependencies: []
9
- conflicts: []
10
- ---
11
- <!-- RULEBOOK_TERSE_COMMIT:START -->
12
- # Rulebook Terse Commit
13
-
14
- Write commit messages terse and exact. Conventional Commits format. Why over what.
15
-
16
- ## Subject line
17
-
18
- - Format: `<type>(<scope>): <imperative summary>` — `<scope>` optional.
19
- - Types: `feat`, `fix`, `refactor`, `perf`, `docs`, `test`, `chore`, `build`, `ci`, `style`, `revert`.
20
- - Imperative mood: "add", "fix", "remove" — not "added", "adds", "adding".
21
- - Target ≤50 chars. Hard cap 72.
22
- - No trailing period.
23
- - Match project capitalization convention after the colon (match the repo's existing history).
24
-
25
- ## Body
26
-
27
- - **Skip the body entirely** when the subject is self-explanatory.
28
- - Add a body ONLY for: non-obvious `why`, breaking changes, migration notes, linked issues.
29
- - Wrap at 72 chars.
30
- - Bullets use `-`, not `*`.
31
- - Reference issues/PRs at the end: `Closes #42`, `Refs #17`.
32
-
33
- ## Never include
34
-
35
- - "This commit does X", "I", "we", "now", "currently" — the diff says what.
36
- - "As requested by ..." — use the `Co-authored-by` trailer instead.
37
- - "Generated with Claude Code" or any AI attribution.
38
- - Emoji (unless project convention requires them).
39
- - Restating the file name when `<scope>` already identifies it.
40
-
41
- ## Auto-Clarity
42
-
43
- Always include a body for:
44
-
45
- - **Breaking changes** (`!` suffix on type, plus `BREAKING CHANGE:` footer).
46
- - **Security fixes** (CVE ID when applicable).
47
- - **Data migrations** that touch user data.
48
- - **Reverts** of a prior commit (reference the reverted SHA).
49
- - **Performance regressions fixed** (include before/after numbers when possible).
50
-
51
- Terseness is NEVER permitted to obscure these cases — future debuggers need the context.
52
-
53
- ## Examples
54
-
55
- ### New endpoint with non-obvious why
56
-
57
- ```
58
- feat(api): add GET /users/:id/profile
59
-
60
- Mobile client needs profile data without the full user payload to
61
- reduce LTE bandwidth on cold-launch screens.
62
-
63
- Closes #128
64
- ```
65
-
66
- ### Breaking API change
67
-
68
- ```
69
- feat(api)!: rename /v1/orders to /v1/checkout
70
-
71
- BREAKING CHANGE: clients on /v1/orders must migrate to /v1/checkout
72
- before 2026-06-01. Old route returns 410 after that date.
73
- ```
74
-
75
- ### Simple bug fix — subject only
76
-
77
- ```
78
- fix(auth): reject expired tokens on boundary second
79
- ```
80
-
81
- ### Revert
82
-
83
- ```
84
- revert: "feat(api): add GET /users/:id/profile"
85
-
86
- This reverts commit a1b2c3d. Endpoint caused 5% latency regression
87
- on the hot path; see incident INC-4219.
88
- ```
89
-
90
- ## Boundaries
91
-
92
- Only generates the commit message. Does NOT run `git commit`, does NOT stage files, does NOT amend. Output is a code block ready to paste.
93
-
94
- Override: `/rulebook-terse-commit off` or "stop terse commit" reverts to the model's default commit style.
95
-
96
- <!-- RULEBOOK_TERSE_COMMIT:END -->
1
+ ---
2
+ name: "Rulebook Terse Commit"
3
+ description: "Terse Conventional Commits generator. Subject ≤50 chars (hard cap 72), body only when 'why' isn't obvious, no filler. Use when user says 'write a commit', 'generate commit', 'commit message', or invokes /rulebook-terse-commit. Independent of the base rulebook-terse mode."
4
+ version: "1.0.0"
5
+ category: "core"
6
+ author: "Rulebook"
7
+ tags: ["core", "git", "commits", "tokens"]
8
+ dependencies: []
9
+ conflicts: []
10
+ ---
11
+ <!-- RULEBOOK_TERSE_COMMIT:START -->
12
+ # Rulebook Terse Commit
13
+
14
+ Write commit messages terse and exact. Conventional Commits format. Why over what.
15
+
16
+ ## Subject line
17
+
18
+ - Format: `<type>(<scope>): <imperative summary>` — `<scope>` optional.
19
+ - Types: `feat`, `fix`, `refactor`, `perf`, `docs`, `test`, `chore`, `build`, `ci`, `style`, `revert`.
20
+ - Imperative mood: "add", "fix", "remove" — not "added", "adds", "adding".
21
+ - Target ≤50 chars. Hard cap 72.
22
+ - No trailing period.
23
+ - Match project capitalization convention after the colon (match the repo's existing history).
24
+
25
+ ## Body
26
+
27
+ - **Skip the body entirely** when the subject is self-explanatory.
28
+ - Add a body ONLY for: non-obvious `why`, breaking changes, migration notes, linked issues.
29
+ - Wrap at 72 chars.
30
+ - Bullets use `-`, not `*`.
31
+ - Reference issues/PRs at the end: `Closes #42`, `Refs #17`.
32
+
33
+ ## Never include
34
+
35
+ - "This commit does X", "I", "we", "now", "currently" — the diff says what.
36
+ - "As requested by ..." — use the `Co-authored-by` trailer instead.
37
+ - "Generated with Claude Code" or any AI attribution.
38
+ - Emoji (unless project convention requires them).
39
+ - Restating the file name when `<scope>` already identifies it.
40
+
41
+ ## Auto-Clarity
42
+
43
+ Always include a body for:
44
+
45
+ - **Breaking changes** (`!` suffix on type, plus `BREAKING CHANGE:` footer).
46
+ - **Security fixes** (CVE ID when applicable).
47
+ - **Data migrations** that touch user data.
48
+ - **Reverts** of a prior commit (reference the reverted SHA).
49
+ - **Performance regressions fixed** (include before/after numbers when possible).
50
+
51
+ Terseness is NEVER permitted to obscure these cases — future debuggers need the context.
52
+
53
+ ## Examples
54
+
55
+ ### New endpoint with non-obvious why
56
+
57
+ ```
58
+ feat(api): add GET /users/:id/profile
59
+
60
+ Mobile client needs profile data without the full user payload to
61
+ reduce LTE bandwidth on cold-launch screens.
62
+
63
+ Closes #128
64
+ ```
65
+
66
+ ### Breaking API change
67
+
68
+ ```
69
+ feat(api)!: rename /v1/orders to /v1/checkout
70
+
71
+ BREAKING CHANGE: clients on /v1/orders must migrate to /v1/checkout
72
+ before 2026-06-01. Old route returns 410 after that date.
73
+ ```
74
+
75
+ ### Simple bug fix — subject only
76
+
77
+ ```
78
+ fix(auth): reject expired tokens on boundary second
79
+ ```
80
+
81
+ ### Revert
82
+
83
+ ```
84
+ revert: "feat(api): add GET /users/:id/profile"
85
+
86
+ This reverts commit a1b2c3d. Endpoint caused 5% latency regression
87
+ on the hot path; see incident INC-4219.
88
+ ```
89
+
90
+ ## Boundaries
91
+
92
+ Only generates the commit message. Does NOT run `git commit`, does NOT stage files, does NOT amend. Output is a code block ready to paste.
93
+
94
+ Override: `/rulebook-terse-commit off` or "stop terse commit" reverts to the model's default commit style.
95
+
96
+ <!-- RULEBOOK_TERSE_COMMIT:END -->
@@ -1,112 +1,112 @@
1
- ---
2
- name: "Rulebook Terse Review"
3
- description: "Ultra-compressed code review comments. One line per finding: location, problem, fix. Use when user says 'review this PR', 'code review', 'review the diff', or invokes /rulebook-terse-review. Independent of the base rulebook-terse mode."
4
- version: "1.0.0"
5
- category: "core"
6
- author: "Rulebook"
7
- tags: ["core", "review", "tokens"]
8
- dependencies: []
9
- conflicts: []
10
- ---
11
- <!-- RULEBOOK_TERSE_REVIEW:START -->
12
- # Rulebook Terse Review
13
-
14
- Write code-review comments terse and actionable. One line per finding. Location, problem, fix. No throat-clearing.
15
-
16
- ## Format
17
-
18
- ```
19
- L<line>: <severity> <problem>. <fix>.
20
- ```
21
-
22
- For multi-file diffs:
23
-
24
- ```
25
- <file>:L<line>: <severity> <problem>. <fix>.
26
- ```
27
-
28
- ## Severity prefixes
29
-
30
- Use when mixing severities in the same review. Optional when all findings are the same severity.
31
-
32
- | Prefix | Meaning |
33
- |--------|---------|
34
- | 🔴 `bug:` | Broken behavior; will cause an incident. |
35
- | 🟡 `risk:` | Works but fragile (race, missing null check, swallowed error, unvalidated input). |
36
- | 🔵 `nit:` | Style, naming, micro-optim. Author can ignore without consequence. |
37
- | ❓ `q:` | Genuine question, not a suggestion. |
38
-
39
- ## Drop
40
-
41
- - Throat-clearing: "I noticed that...", "It seems like...", "You might want to consider...".
42
- - Per-comment pleasantries: "Great work!", "Looks good overall but...". Say it once at the top of the review, not per comment.
43
- - Restating what the line does — the reviewer can read the diff.
44
- - Hedging: "perhaps", "maybe", "I think". If unsure, use `❓ q:`.
45
- - "This is just a suggestion but..." — use `🔵 nit:` instead.
46
-
47
- ## Keep
48
-
49
- - Exact line numbers.
50
- - Exact symbol, function, and variable names in backticks.
51
- - A concrete fix, not "consider refactoring this".
52
- - The `why` if the fix isn't obvious from the problem statement.
53
-
54
- ## Examples
55
-
56
- ### ❌ Verbose
57
-
58
- > "I noticed that on line 42 you're not checking if the user object is null before accessing the email property. This could potentially cause a crash if the user is not found in the database. You might want to add a null check here."
59
-
60
- ### ✅ Terse
61
-
62
- ```
63
- L42: 🔴 bug: user can be null after .find(). Add guard before .email.
64
- ```
65
-
66
- ---
67
-
68
- ### ❌ Verbose
69
-
70
- > "It looks like this function is doing a lot of things and might benefit from being broken up into smaller functions for readability."
71
-
72
- ### ✅ Terse
73
-
74
- ```
75
- L88-140: 🔵 nit: 50-line fn does 4 things. Extract validate/normalize/persist.
76
- ```
77
-
78
- ---
79
-
80
- ### ❌ Verbose
81
-
82
- > "Have you considered what happens if the API returns a 429? I think we should probably handle that case."
83
-
84
- ### ✅ Terse
85
-
86
- ```
87
- L23: 🟡 risk: no retry on 429. Wrap in withBackoff(3).
88
- ```
89
-
90
- ## Auto-Clarity
91
-
92
- Drop terse mode and write full prose for:
93
-
94
- - **Security findings** (CVE-class bugs, auth bypass, credential exposure) — need full explanation + CWE or CVE reference.
95
- - **Architectural disagreements** — need rationale, not a one-liner.
96
- - **Onboarding contexts** where the author is new to the codebase — they need the `why`, not just the `what`.
97
-
98
- In those cases, write a normal paragraph, then resume terse for the remaining comments.
99
-
100
- ## Boundaries
101
-
102
- Review-only. Does NOT:
103
-
104
- - Write the code fix.
105
- - Approve or request changes on the PR.
106
- - Run linters or tests.
107
-
108
- Output is the comment(s), ready to paste into the PR review UI.
109
-
110
- Override: `/rulebook-terse-review off` or "stop terse review" reverts to the model's default review style.
111
-
112
- <!-- RULEBOOK_TERSE_REVIEW:END -->
1
+ ---
2
+ name: "Rulebook Terse Review"
3
+ description: "Ultra-compressed code review comments. One line per finding: location, problem, fix. Use when user says 'review this PR', 'code review', 'review the diff', or invokes /rulebook-terse-review. Independent of the base rulebook-terse mode."
4
+ version: "1.0.0"
5
+ category: "core"
6
+ author: "Rulebook"
7
+ tags: ["core", "review", "tokens"]
8
+ dependencies: []
9
+ conflicts: []
10
+ ---
11
+ <!-- RULEBOOK_TERSE_REVIEW:START -->
12
+ # Rulebook Terse Review
13
+
14
+ Write code-review comments terse and actionable. One line per finding. Location, problem, fix. No throat-clearing.
15
+
16
+ ## Format
17
+
18
+ ```
19
+ L<line>: <severity> <problem>. <fix>.
20
+ ```
21
+
22
+ For multi-file diffs:
23
+
24
+ ```
25
+ <file>:L<line>: <severity> <problem>. <fix>.
26
+ ```
27
+
28
+ ## Severity prefixes
29
+
30
+ Use when mixing severities in the same review. Optional when all findings are the same severity.
31
+
32
+ | Prefix | Meaning |
33
+ |--------|---------|
34
+ | 🔴 `bug:` | Broken behavior; will cause an incident. |
35
+ | 🟡 `risk:` | Works but fragile (race, missing null check, swallowed error, unvalidated input). |
36
+ | 🔵 `nit:` | Style, naming, micro-optim. Author can ignore without consequence. |
37
+ | ❓ `q:` | Genuine question, not a suggestion. |
38
+
39
+ ## Drop
40
+
41
+ - Throat-clearing: "I noticed that...", "It seems like...", "You might want to consider...".
42
+ - Per-comment pleasantries: "Great work!", "Looks good overall but...". Say it once at the top of the review, not per comment.
43
+ - Restating what the line does — the reviewer can read the diff.
44
+ - Hedging: "perhaps", "maybe", "I think". If unsure, use `❓ q:`.
45
+ - "This is just a suggestion but..." — use `🔵 nit:` instead.
46
+
47
+ ## Keep
48
+
49
+ - Exact line numbers.
50
+ - Exact symbol, function, and variable names in backticks.
51
+ - A concrete fix, not "consider refactoring this".
52
+ - The `why` if the fix isn't obvious from the problem statement.
53
+
54
+ ## Examples
55
+
56
+ ### ❌ Verbose
57
+
58
+ > "I noticed that on line 42 you're not checking if the user object is null before accessing the email property. This could potentially cause a crash if the user is not found in the database. You might want to add a null check here."
59
+
60
+ ### ✅ Terse
61
+
62
+ ```
63
+ L42: 🔴 bug: user can be null after .find(). Add guard before .email.
64
+ ```
65
+
66
+ ---
67
+
68
+ ### ❌ Verbose
69
+
70
+ > "It looks like this function is doing a lot of things and might benefit from being broken up into smaller functions for readability."
71
+
72
+ ### ✅ Terse
73
+
74
+ ```
75
+ L88-140: 🔵 nit: 50-line fn does 4 things. Extract validate/normalize/persist.
76
+ ```
77
+
78
+ ---
79
+
80
+ ### ❌ Verbose
81
+
82
+ > "Have you considered what happens if the API returns a 429? I think we should probably handle that case."
83
+
84
+ ### ✅ Terse
85
+
86
+ ```
87
+ L23: 🟡 risk: no retry on 429. Wrap in withBackoff(3).
88
+ ```
89
+
90
+ ## Auto-Clarity
91
+
92
+ Drop terse mode and write full prose for:
93
+
94
+ - **Security findings** (CVE-class bugs, auth bypass, credential exposure) — need full explanation + CWE or CVE reference.
95
+ - **Architectural disagreements** — need rationale, not a one-liner.
96
+ - **Onboarding contexts** where the author is new to the codebase — they need the `why`, not just the `what`.
97
+
98
+ In those cases, write a normal paragraph, then resume terse for the remaining comments.
99
+
100
+ ## Boundaries
101
+
102
+ Review-only. Does NOT:
103
+
104
+ - Write the code fix.
105
+ - Approve or request changes on the PR.
106
+ - Run linters or tests.
107
+
108
+ Output is the comment(s), ready to paste into the PR review UI.
109
+
110
+ Override: `/rulebook-terse-review off` or "stop terse review" reverts to the model's default review style.
111
+
112
+ <!-- RULEBOOK_TERSE_REVIEW:END -->