@hivehub/rulebook 5.4.1 → 5.5.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 (418) 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/README.md +394 -393
  26. package/dist/core/generator.d.ts +1 -1
  27. package/dist/core/generator.d.ts.map +1 -1
  28. package/dist/core/generator.js +1 -0
  29. package/dist/core/generator.js.map +1 -1
  30. package/dist/hooks/terse-activate.d.ts +59 -0
  31. package/dist/hooks/terse-activate.d.ts.map +1 -0
  32. package/dist/hooks/terse-activate.js +149 -0
  33. package/dist/hooks/terse-activate.js.map +1 -0
  34. package/dist/hooks/terse-config.d.ts +51 -0
  35. package/dist/hooks/terse-config.d.ts.map +1 -0
  36. package/dist/hooks/terse-config.js +130 -0
  37. package/dist/hooks/terse-config.js.map +1 -0
  38. package/dist/hooks/terse-mode-tracker.d.ts +78 -0
  39. package/dist/hooks/terse-mode-tracker.d.ts.map +1 -0
  40. package/dist/hooks/terse-mode-tracker.js +213 -0
  41. package/dist/hooks/terse-mode-tracker.js.map +1 -0
  42. package/dist/index.js +0 -0
  43. package/dist/mcp/rulebook-server.js +0 -0
  44. package/package.json +21 -22
  45. package/templates/agents/accessibility-reviewer.md +43 -43
  46. package/templates/agents/api-designer.md +42 -42
  47. package/templates/agents/architect.md +51 -51
  48. package/templates/agents/build-engineer.md +36 -36
  49. package/templates/agents/code-reviewer.md +47 -47
  50. package/templates/agents/compiler/codegen-debugger.md +34 -34
  51. package/templates/agents/compiler/stdlib-engineer.md +28 -28
  52. package/templates/agents/compiler/test-coverage-guardian.md +31 -31
  53. package/templates/agents/context-intelligence.md +52 -52
  54. package/templates/agents/database-architect.md +41 -41
  55. package/templates/agents/devops-engineer.md +42 -42
  56. package/templates/agents/docs-writer.md +38 -38
  57. package/templates/agents/game-engine/cpp-core-expert.md +35 -35
  58. package/templates/agents/game-engine/render-engineer.md +22 -22
  59. package/templates/agents/game-engine/shader-engineer.md +38 -38
  60. package/templates/agents/game-engine/systems-integration.md +43 -43
  61. package/templates/agents/generic/code-reviewer.md +41 -41
  62. package/templates/agents/generic/docs-writer.md +25 -25
  63. package/templates/agents/generic/project-manager.md +36 -36
  64. package/templates/agents/generic/researcher.md +34 -34
  65. package/templates/agents/generic/test-engineer.md +41 -41
  66. package/templates/agents/i18n-engineer.md +42 -42
  67. package/templates/agents/implementer.md +42 -42
  68. package/templates/agents/migration-engineer.md +42 -42
  69. package/templates/agents/mobile/platform-specialist.md +22 -22
  70. package/templates/agents/mobile/ui-engineer.md +22 -22
  71. package/templates/agents/performance-engineer.md +49 -49
  72. package/templates/agents/refactoring-agent.md +41 -41
  73. package/templates/agents/researcher.md +38 -38
  74. package/templates/agents/security-reviewer.md +40 -40
  75. package/templates/agents/team-lead.md +37 -37
  76. package/templates/agents/tester.md +48 -48
  77. package/templates/agents/ux-reviewer.md +43 -43
  78. package/templates/agents/web-app/api-designer.md +22 -22
  79. package/templates/agents/web-app/backend-engineer.md +30 -30
  80. package/templates/agents/web-app/database-engineer.md +22 -22
  81. package/templates/agents/web-app/frontend-engineer.md +29 -29
  82. package/templates/agents/web-app/security-reviewer.md +32 -32
  83. package/templates/ci/rulebook-review.yml +26 -26
  84. package/templates/cli/AIDER.md +49 -49
  85. package/templates/cli/AMAZON_Q.md +25 -25
  86. package/templates/cli/AUGGIE.md +32 -32
  87. package/templates/cli/CLAUDE.md +117 -117
  88. package/templates/cli/CLINE.md +99 -99
  89. package/templates/cli/CODEBUDDY.md +20 -20
  90. package/templates/cli/CODEIUM.md +20 -20
  91. package/templates/cli/CODEX.md +21 -21
  92. package/templates/cli/CONTINUE.md +34 -34
  93. package/templates/cli/CURSOR_CLI.md +62 -62
  94. package/templates/cli/FACTORY.md +18 -18
  95. package/templates/cli/GEMINI.md +35 -35
  96. package/templates/cli/KILOCODE.md +18 -18
  97. package/templates/cli/OPENCODE.md +18 -18
  98. package/templates/cli/_GENERIC_TEMPLATE.md +29 -29
  99. package/templates/commands/rulebook-decision-create.md +55 -55
  100. package/templates/commands/rulebook-decision-list.md +15 -15
  101. package/templates/commands/rulebook-knowledge-add.md +41 -41
  102. package/templates/commands/rulebook-knowledge-list.md +15 -15
  103. package/templates/commands/rulebook-learn-capture.md +48 -48
  104. package/templates/commands/rulebook-learn-list.md +13 -13
  105. package/templates/commands/rulebook-memory-save.md +48 -48
  106. package/templates/commands/rulebook-memory-search.md +47 -47
  107. package/templates/commands/rulebook-task-apply.md +67 -67
  108. package/templates/commands/rulebook-task-archive.md +94 -94
  109. package/templates/commands/rulebook-task-create.md +93 -93
  110. package/templates/commands/rulebook-task-list.md +42 -42
  111. package/templates/commands/rulebook-task-show.md +52 -52
  112. package/templates/commands/rulebook-task-validate.md +53 -53
  113. package/templates/compact-context/_default.md +23 -23
  114. package/templates/compact-context/cpp.md +26 -26
  115. package/templates/compact-context/go.md +26 -26
  116. package/templates/compact-context/python.md +26 -26
  117. package/templates/compact-context/rust.md +28 -28
  118. package/templates/compact-context/typescript.md +29 -29
  119. package/templates/core/AGENTS_LEAN.md +26 -1
  120. package/templates/core/AGENTS_OVERRIDE.md +16 -16
  121. package/templates/core/AGENT_AUTOMATION.md +296 -296
  122. package/templates/core/CLAUDE_MD_v2.md +90 -71
  123. package/templates/core/DAG.md +304 -304
  124. package/templates/core/DECISIONS.md +38 -38
  125. package/templates/core/DOCUMENTATION_RULES.md +36 -36
  126. package/templates/core/KNOWLEDGE.md +49 -49
  127. package/templates/core/MULTI_AGENT.md +74 -74
  128. package/templates/core/PLANS.md +28 -28
  129. package/templates/core/QUALITY_ENFORCEMENT.md +68 -68
  130. package/templates/core/RALPH.md +471 -471
  131. package/templates/core/RULEBOOK.md +1947 -1947
  132. package/templates/core/TIER1_PROHIBITIONS.md +154 -154
  133. package/templates/core/TOKEN_OPTIMIZATION.md +49 -49
  134. package/templates/frameworks/ANGULAR.md +36 -36
  135. package/templates/frameworks/DJANGO.md +83 -83
  136. package/templates/frameworks/ELECTRON.md +147 -147
  137. package/templates/frameworks/FLASK.md +38 -38
  138. package/templates/frameworks/FLUTTER.md +55 -55
  139. package/templates/frameworks/JQUERY.md +32 -32
  140. package/templates/frameworks/LARAVEL.md +38 -38
  141. package/templates/frameworks/NESTJS.md +43 -43
  142. package/templates/frameworks/NEXTJS.md +127 -127
  143. package/templates/frameworks/NUXT.md +40 -40
  144. package/templates/frameworks/RAILS.md +66 -66
  145. package/templates/frameworks/REACT.md +38 -38
  146. package/templates/frameworks/REACT_NATIVE.md +47 -47
  147. package/templates/frameworks/SPRING.md +39 -39
  148. package/templates/frameworks/SYMFONY.md +36 -36
  149. package/templates/frameworks/VUE.md +36 -36
  150. package/templates/frameworks/ZEND.md +35 -35
  151. package/templates/git/CI_CD_PATTERNS.md +661 -661
  152. package/templates/git/GITHUB_ACTIONS.md +728 -728
  153. package/templates/git/GITLAB_CI.md +730 -730
  154. package/templates/git/GIT_WORKFLOW.md +1192 -1192
  155. package/templates/git/SECRETS_MANAGEMENT.md +585 -585
  156. package/templates/hooks/COMMIT_MSG.md +530 -530
  157. package/templates/hooks/POST_CHECKOUT.md +546 -546
  158. package/templates/hooks/PREPARE_COMMIT_MSG.md +619 -619
  159. package/templates/hooks/PRE_COMMIT.md +414 -414
  160. package/templates/hooks/PRE_PUSH.md +601 -601
  161. package/templates/hooks/check-context-and-handoff.ps1 +58 -58
  162. package/templates/hooks/check-context-and-handoff.sh +76 -76
  163. package/templates/hooks/enforce-team-for-background-agents.ps1 +63 -63
  164. package/templates/hooks/enforce-team-for-background-agents.sh +55 -55
  165. package/templates/hooks/on-compact-reinject.sh +34 -34
  166. package/templates/hooks/resume-from-handoff.ps1 +40 -40
  167. package/templates/hooks/resume-from-handoff.sh +61 -61
  168. package/templates/hooks/terse-activate.ps1 +143 -143
  169. package/templates/hooks/terse-activate.sh +197 -197
  170. package/templates/hooks/terse-mode-tracker.ps1 +153 -153
  171. package/templates/hooks/terse-mode-tracker.sh +187 -187
  172. package/templates/ides/CONTINUE_RULES.md +16 -16
  173. package/templates/ides/COPILOT.md +37 -37
  174. package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
  175. package/templates/ides/CURSOR.md +43 -43
  176. package/templates/ides/GEMINI_RULES.md +17 -17
  177. package/templates/ides/JETBRAINS_AI.md +35 -35
  178. package/templates/ides/REPLIT.md +36 -36
  179. package/templates/ides/TABNINE.md +29 -29
  180. package/templates/ides/VSCODE.md +40 -40
  181. package/templates/ides/WINDSURF.md +36 -36
  182. package/templates/ides/WINDSURF_RULES.md +14 -14
  183. package/templates/ides/ZED.md +32 -32
  184. package/templates/ides/cursor-mdc/go.mdc +24 -24
  185. package/templates/ides/cursor-mdc/python.mdc +24 -24
  186. package/templates/ides/cursor-mdc/quality.mdc +25 -25
  187. package/templates/ides/cursor-mdc/ralph.mdc +39 -39
  188. package/templates/ides/cursor-mdc/rulebook.mdc +38 -38
  189. package/templates/ides/cursor-mdc/rust.mdc +24 -24
  190. package/templates/ides/cursor-mdc/typescript.mdc +25 -25
  191. package/templates/languages/C.md +333 -333
  192. package/templates/languages/CPP.md +743 -743
  193. package/templates/languages/CSHARP.md +417 -417
  194. package/templates/languages/ELIXIR.md +454 -454
  195. package/templates/languages/ERLANG.md +361 -361
  196. package/templates/languages/GO.md +645 -645
  197. package/templates/languages/HASKELL.md +177 -177
  198. package/templates/languages/JAVA.md +607 -607
  199. package/templates/languages/JAVASCRIPT.md +631 -631
  200. package/templates/languages/JULIA.md +97 -97
  201. package/templates/languages/KOTLIN.md +511 -511
  202. package/templates/languages/LISP.md +100 -100
  203. package/templates/languages/LUA.md +74 -74
  204. package/templates/languages/OBJECTIVEC.md +90 -90
  205. package/templates/languages/PHP.md +416 -416
  206. package/templates/languages/PYTHON.md +682 -682
  207. package/templates/languages/RUBY.md +421 -421
  208. package/templates/languages/RUST.md +477 -477
  209. package/templates/languages/SAS.md +73 -73
  210. package/templates/languages/SCALA.md +348 -348
  211. package/templates/languages/SOLIDITY.md +580 -580
  212. package/templates/languages/SQL.md +137 -137
  213. package/templates/languages/SWIFT.md +466 -466
  214. package/templates/languages/TYPESCRIPT.md +591 -591
  215. package/templates/languages/ZIG.md +265 -265
  216. package/templates/modules/ATLASSIAN.md +255 -255
  217. package/templates/modules/CONTEXT7.md +54 -54
  218. package/templates/modules/FIGMA.md +267 -267
  219. package/templates/modules/GITHUB_MCP.md +64 -64
  220. package/templates/modules/GRAFANA.md +328 -328
  221. package/templates/modules/MEMORY.md +126 -126
  222. package/templates/modules/NOTION.md +247 -247
  223. package/templates/modules/PLAYWRIGHT.md +90 -90
  224. package/templates/modules/RULEBOOK_MCP.md +208 -208
  225. package/templates/modules/SERENA.md +337 -337
  226. package/templates/modules/SUPABASE.md +223 -223
  227. package/templates/modules/SYNAP.md +69 -69
  228. package/templates/modules/VECTORIZER.md +63 -63
  229. package/templates/modules/sequential-thinking.md +42 -42
  230. package/templates/ralph/ralph-history.bat +4 -4
  231. package/templates/ralph/ralph-history.sh +5 -5
  232. package/templates/ralph/ralph-init.bat +5 -5
  233. package/templates/ralph/ralph-init.sh +5 -5
  234. package/templates/ralph/ralph-pause.bat +5 -5
  235. package/templates/ralph/ralph-pause.sh +5 -5
  236. package/templates/ralph/ralph-run.bat +5 -5
  237. package/templates/ralph/ralph-run.sh +5 -5
  238. package/templates/ralph/ralph-status.bat +4 -4
  239. package/templates/ralph/ralph-status.sh +5 -5
  240. package/templates/rules/consult-analysis-before-implementing.md +23 -23
  241. package/templates/rules/cpp.md +46 -46
  242. package/templates/rules/csharp.md +44 -44
  243. package/templates/rules/diagnostic-first.md +39 -39
  244. package/templates/rules/fail-twice-escalate.md +46 -46
  245. package/templates/rules/follow-task-sequence.md +36 -36
  246. package/templates/rules/git-safety.md +29 -29
  247. package/templates/rules/go.md +40 -40
  248. package/templates/rules/incremental-implementation.md +56 -56
  249. package/templates/rules/incremental-tests.md +29 -29
  250. package/templates/rules/java.md +43 -43
  251. package/templates/rules/javascript.md +39 -39
  252. package/templates/rules/knowledge-base-usage.md +41 -41
  253. package/templates/rules/multi-agent-teams.md +75 -75
  254. package/templates/rules/no-deferred.md +31 -31
  255. package/templates/rules/no-shortcuts.md +30 -30
  256. package/templates/rules/python.md +43 -43
  257. package/templates/rules/research-first.md +30 -30
  258. package/templates/rules/respect-handoff-trigger.md +41 -41
  259. package/templates/rules/rust.md +40 -40
  260. package/templates/rules/sequential-editing.md +21 -21
  261. package/templates/rules/session-workflow.md +24 -24
  262. package/templates/rules/task-decomposition.md +32 -32
  263. package/templates/rules/typescript.md +40 -40
  264. package/templates/services/AZURE_BLOB.md +184 -184
  265. package/templates/services/CASSANDRA.md +239 -239
  266. package/templates/services/DATADOG.md +26 -26
  267. package/templates/services/DOCKER.md +124 -124
  268. package/templates/services/DOCKER_COMPOSE.md +168 -168
  269. package/templates/services/DYNAMODB.md +308 -308
  270. package/templates/services/ELASTICSEARCH.md +347 -347
  271. package/templates/services/GCS.md +178 -178
  272. package/templates/services/HELM.md +194 -194
  273. package/templates/services/INFLUXDB.md +265 -265
  274. package/templates/services/KAFKA.md +341 -341
  275. package/templates/services/KUBERNETES.md +208 -208
  276. package/templates/services/MARIADB.md +183 -183
  277. package/templates/services/MEMCACHED.md +242 -242
  278. package/templates/services/MINIO.md +201 -201
  279. package/templates/services/MONGODB.md +268 -268
  280. package/templates/services/MYSQL.md +358 -358
  281. package/templates/services/NEO4J.md +247 -247
  282. package/templates/services/OPENTELEMETRY.md +25 -25
  283. package/templates/services/ORACLE.md +290 -290
  284. package/templates/services/PINO.md +24 -24
  285. package/templates/services/POSTGRESQL.md +326 -326
  286. package/templates/services/PROMETHEUS.md +33 -33
  287. package/templates/services/RABBITMQ.md +286 -286
  288. package/templates/services/REDIS.md +292 -292
  289. package/templates/services/S3.md +298 -298
  290. package/templates/services/SENTRY.md +23 -23
  291. package/templates/services/SQLITE.md +294 -294
  292. package/templates/services/SQLSERVER.md +294 -294
  293. package/templates/services/WINSTON.md +30 -30
  294. package/templates/skills/cli/aider/SKILL.md +59 -59
  295. package/templates/skills/cli/amazon-q/SKILL.md +35 -35
  296. package/templates/skills/cli/auggie/SKILL.md +42 -42
  297. package/templates/skills/cli/claude/SKILL.md +42 -42
  298. package/templates/skills/cli/cline/SKILL.md +42 -42
  299. package/templates/skills/cli/codebuddy/SKILL.md +30 -30
  300. package/templates/skills/cli/codeium/SKILL.md +30 -30
  301. package/templates/skills/cli/codex/SKILL.md +31 -31
  302. package/templates/skills/cli/continue/SKILL.md +44 -44
  303. package/templates/skills/cli/cursor-cli/SKILL.md +38 -38
  304. package/templates/skills/cli/factory/SKILL.md +28 -28
  305. package/templates/skills/cli/gemini/SKILL.md +45 -45
  306. package/templates/skills/cli/kilocode/SKILL.md +28 -28
  307. package/templates/skills/cli/opencode/SKILL.md +28 -28
  308. package/templates/skills/core/agent-automation/SKILL.md +194 -194
  309. package/templates/skills/core/dag/SKILL.md +314 -314
  310. package/templates/skills/core/documentation-rules/SKILL.md +46 -46
  311. package/templates/skills/core/karpathy-guidelines/SKILL.md +93 -0
  312. package/templates/skills/core/quality-enforcement/SKILL.md +78 -78
  313. package/templates/skills/core/rulebook/SKILL.md +176 -176
  314. package/templates/skills/core/rulebook-terse/SKILL.md +116 -116
  315. package/templates/skills/core/rulebook-terse-commit/SKILL.md +96 -96
  316. package/templates/skills/core/rulebook-terse-review/SKILL.md +112 -112
  317. package/templates/skills/dev/accessibility/SKILL.md +17 -17
  318. package/templates/skills/dev/analysis/SKILL.md +19 -19
  319. package/templates/skills/dev/api-design/SKILL.md +15 -15
  320. package/templates/skills/dev/architect/SKILL.md +17 -17
  321. package/templates/skills/dev/build-fix/SKILL.md +17 -17
  322. package/templates/skills/dev/db-design/SKILL.md +15 -15
  323. package/templates/skills/dev/debug/SKILL.md +16 -16
  324. package/templates/skills/dev/deploy/SKILL.md +17 -17
  325. package/templates/skills/dev/docs/SKILL.md +17 -17
  326. package/templates/skills/dev/handoff/SKILL.md +27 -27
  327. package/templates/skills/dev/migrate/SKILL.md +15 -15
  328. package/templates/skills/dev/perf/SKILL.md +17 -17
  329. package/templates/skills/dev/refactor/SKILL.md +17 -17
  330. package/templates/skills/dev/research/SKILL.md +14 -14
  331. package/templates/skills/dev/review/SKILL.md +18 -18
  332. package/templates/skills/dev/security-audit/SKILL.md +17 -17
  333. package/templates/skills/frameworks/angular/SKILL.md +46 -46
  334. package/templates/skills/frameworks/django/SKILL.md +93 -93
  335. package/templates/skills/frameworks/electron/SKILL.md +157 -157
  336. package/templates/skills/frameworks/flask/SKILL.md +48 -48
  337. package/templates/skills/frameworks/flutter/SKILL.md +65 -65
  338. package/templates/skills/frameworks/jquery/SKILL.md +42 -42
  339. package/templates/skills/frameworks/laravel/SKILL.md +48 -48
  340. package/templates/skills/frameworks/nestjs/SKILL.md +53 -53
  341. package/templates/skills/frameworks/nextjs/SKILL.md +137 -137
  342. package/templates/skills/frameworks/nuxt/SKILL.md +50 -50
  343. package/templates/skills/frameworks/rails/SKILL.md +76 -76
  344. package/templates/skills/frameworks/react/SKILL.md +48 -48
  345. package/templates/skills/frameworks/react-native/SKILL.md +57 -57
  346. package/templates/skills/frameworks/spring/SKILL.md +49 -49
  347. package/templates/skills/frameworks/symfony/SKILL.md +46 -46
  348. package/templates/skills/frameworks/vue/SKILL.md +46 -46
  349. package/templates/skills/frameworks/zend/SKILL.md +45 -45
  350. package/templates/skills/ides/copilot/SKILL.md +47 -47
  351. package/templates/skills/ides/cursor/SKILL.md +53 -53
  352. package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -45
  353. package/templates/skills/ides/replit/SKILL.md +46 -46
  354. package/templates/skills/ides/tabnine/SKILL.md +39 -39
  355. package/templates/skills/ides/vscode/SKILL.md +50 -50
  356. package/templates/skills/ides/windsurf/SKILL.md +46 -46
  357. package/templates/skills/ides/zed/SKILL.md +42 -42
  358. package/templates/skills/languages/c/SKILL.md +343 -343
  359. package/templates/skills/languages/cpp/SKILL.md +753 -753
  360. package/templates/skills/languages/csharp/SKILL.md +427 -427
  361. package/templates/skills/languages/elixir/SKILL.md +464 -464
  362. package/templates/skills/languages/erlang/SKILL.md +371 -371
  363. package/templates/skills/languages/go/SKILL.md +655 -655
  364. package/templates/skills/languages/haskell/SKILL.md +187 -187
  365. package/templates/skills/languages/java/SKILL.md +617 -617
  366. package/templates/skills/languages/javascript/SKILL.md +641 -641
  367. package/templates/skills/languages/julia/SKILL.md +107 -107
  368. package/templates/skills/languages/kotlin/SKILL.md +521 -521
  369. package/templates/skills/languages/lisp/SKILL.md +110 -110
  370. package/templates/skills/languages/lua/SKILL.md +84 -84
  371. package/templates/skills/languages/objectivec/SKILL.md +100 -100
  372. package/templates/skills/languages/php/SKILL.md +426 -426
  373. package/templates/skills/languages/python/SKILL.md +692 -692
  374. package/templates/skills/languages/ruby/SKILL.md +431 -431
  375. package/templates/skills/languages/rust/SKILL.md +487 -487
  376. package/templates/skills/languages/sas/SKILL.md +83 -83
  377. package/templates/skills/languages/scala/SKILL.md +358 -358
  378. package/templates/skills/languages/solidity/SKILL.md +590 -590
  379. package/templates/skills/languages/sql/SKILL.md +147 -147
  380. package/templates/skills/languages/swift/SKILL.md +476 -476
  381. package/templates/skills/languages/typescript/SKILL.md +302 -302
  382. package/templates/skills/languages/zig/SKILL.md +275 -275
  383. package/templates/skills/modules/atlassian/SKILL.md +265 -265
  384. package/templates/skills/modules/context7/SKILL.md +64 -64
  385. package/templates/skills/modules/figma/SKILL.md +277 -277
  386. package/templates/skills/modules/github-mcp/SKILL.md +74 -74
  387. package/templates/skills/modules/grafana/SKILL.md +338 -338
  388. package/templates/skills/modules/memory/SKILL.md +73 -73
  389. package/templates/skills/modules/notion/SKILL.md +257 -257
  390. package/templates/skills/modules/playwright/SKILL.md +100 -100
  391. package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -166
  392. package/templates/skills/modules/serena/SKILL.md +347 -347
  393. package/templates/skills/modules/supabase/SKILL.md +233 -233
  394. package/templates/skills/modules/synap/SKILL.md +79 -79
  395. package/templates/skills/modules/vectorizer/SKILL.md +73 -73
  396. package/templates/skills/services/azure-blob/SKILL.md +194 -194
  397. package/templates/skills/services/cassandra/SKILL.md +249 -249
  398. package/templates/skills/services/dynamodb/SKILL.md +318 -318
  399. package/templates/skills/services/elasticsearch/SKILL.md +357 -357
  400. package/templates/skills/services/gcs/SKILL.md +188 -188
  401. package/templates/skills/services/influxdb/SKILL.md +275 -275
  402. package/templates/skills/services/kafka/SKILL.md +351 -351
  403. package/templates/skills/services/mariadb/SKILL.md +193 -193
  404. package/templates/skills/services/memcached/SKILL.md +252 -252
  405. package/templates/skills/services/minio/SKILL.md +211 -211
  406. package/templates/skills/services/mongodb/SKILL.md +278 -278
  407. package/templates/skills/services/mysql/SKILL.md +368 -368
  408. package/templates/skills/services/neo4j/SKILL.md +257 -257
  409. package/templates/skills/services/oracle/SKILL.md +300 -300
  410. package/templates/skills/services/postgresql/SKILL.md +336 -336
  411. package/templates/skills/services/rabbitmq/SKILL.md +296 -296
  412. package/templates/skills/services/redis/SKILL.md +302 -302
  413. package/templates/skills/services/s3/SKILL.md +308 -308
  414. package/templates/skills/services/sqlite/SKILL.md +304 -304
  415. package/templates/skills/services/sqlserver/SKILL.md +304 -304
  416. package/templates/skills/workflows/ralph/SKILL.md +309 -309
  417. package/templates/skills/workflows/ralph/install.sh +87 -87
  418. package/templates/skills/workflows/ralph/manifest.json +158 -158
@@ -1,17 +1,17 @@
1
- ---
2
- name: deploy
3
- description: Prepare deployment artifacts and verify CI/CD readiness
4
- model: sonnet
5
- context: fork
6
- agent: devops-engineer
7
- ---
8
- Prepare the project for deployment.
9
-
10
- If $ARGUMENTS is provided, focus on that specific deployment target or environment.
11
-
12
- Steps:
13
- 1. Verify the build succeeds with no errors
14
- 2. Check CI/CD pipeline configuration is valid
15
- 3. Validate environment variables and secrets are documented
16
- 4. Review Dockerfile or deployment configs if present
17
- 5. Generate a deployment checklist with any missing items
1
+ ---
2
+ name: deploy
3
+ description: Prepare deployment artifacts and verify CI/CD readiness
4
+ model: sonnet
5
+ context: fork
6
+ agent: devops-engineer
7
+ ---
8
+ Prepare the project for deployment.
9
+
10
+ If $ARGUMENTS is provided, focus on that specific deployment target or environment.
11
+
12
+ Steps:
13
+ 1. Verify the build succeeds with no errors
14
+ 2. Check CI/CD pipeline configuration is valid
15
+ 3. Validate environment variables and secrets are documented
16
+ 4. Review Dockerfile or deployment configs if present
17
+ 5. Generate a deployment checklist with any missing items
@@ -1,17 +1,17 @@
1
- ---
2
- name: docs
3
- description: Generate or update project documentation based on recent changes
4
- model: haiku
5
- context: fork
6
- agent: docs-writer
7
- ---
8
- Analyze recent code changes and update project documentation accordingly.
9
-
10
- If $ARGUMENTS is provided, focus documentation on that specific topic or file.
11
-
12
- Steps:
13
- 1. Run `git diff HEAD~5 --name-only` to find recently changed files
14
- 2. Read the changed files to understand what was modified
15
- 3. Check existing docs for sections that need updating
16
- 4. Update or create documentation to reflect the changes
17
- 5. Ensure code examples are accurate and up-to-date
1
+ ---
2
+ name: docs
3
+ description: Generate or update project documentation based on recent changes
4
+ model: haiku
5
+ context: fork
6
+ agent: docs-writer
7
+ ---
8
+ Analyze recent code changes and update project documentation accordingly.
9
+
10
+ If $ARGUMENTS is provided, focus documentation on that specific topic or file.
11
+
12
+ Steps:
13
+ 1. Run `git diff HEAD~5 --name-only` to find recently changed files
14
+ 2. Read the changed files to understand what was modified
15
+ 3. Check existing docs for sections that need updating
16
+ 4. Update or create documentation to reflect the changes
17
+ 5. Ensure code examples are accurate and up-to-date
@@ -1,27 +1,27 @@
1
- ---
2
- name: handoff
3
- description: Save session state to .rulebook/handoff/_pending.md for cross-session continuity
4
- model: sonnet
5
- context: fork
6
- agent: researcher
7
- ---
8
- Save a session handoff to `.rulebook/handoff/_pending.md`.
9
-
10
- The handoff file MUST contain:
11
-
12
- 1. **Active task**: current task ID + phase + which checklist items are done
13
- 2. **Decisions made this session**: architectural choices, trade-offs, rejected alternatives
14
- 3. **Files touched**: list of files modified with one-line reason each
15
- 4. **Next steps**: concrete, actionable items (not vague "continue working")
16
- 5. **Exact resume command**: what to tell the next session to do first
17
- 6. **Open questions / blockers**: anything unresolved that needs the user's input
18
-
19
- Write the file to `.rulebook/handoff/_pending.md` using the Write tool.
20
-
21
- After writing successfully, display this message prominently:
22
-
23
- >>> TYPE /clear NOW — your context will be auto-restored in the next session <<<
24
-
25
- If the file `.rulebook/handoff/.urgent` exists, skip any confirmations and write immediately.
26
-
27
- The SessionStart hook (`resume-from-handoff.sh`) will automatically inject the handoff content into the next session and archive the file.
1
+ ---
2
+ name: handoff
3
+ description: Save session state to .rulebook/handoff/_pending.md for cross-session continuity
4
+ model: sonnet
5
+ context: fork
6
+ agent: researcher
7
+ ---
8
+ Save a session handoff to `.rulebook/handoff/_pending.md`.
9
+
10
+ The handoff file MUST contain:
11
+
12
+ 1. **Active task**: current task ID + phase + which checklist items are done
13
+ 2. **Decisions made this session**: architectural choices, trade-offs, rejected alternatives
14
+ 3. **Files touched**: list of files modified with one-line reason each
15
+ 4. **Next steps**: concrete, actionable items (not vague "continue working")
16
+ 5. **Exact resume command**: what to tell the next session to do first
17
+ 6. **Open questions / blockers**: anything unresolved that needs the user's input
18
+
19
+ Write the file to `.rulebook/handoff/_pending.md` using the Write tool.
20
+
21
+ After writing successfully, display this message prominently:
22
+
23
+ >>> TYPE /clear NOW — your context will be auto-restored in the next session <<<
24
+
25
+ If the file `.rulebook/handoff/.urgent` exists, skip any confirmations and write immediately.
26
+
27
+ The SessionStart hook (`resume-from-handoff.sh`) will automatically inject the handoff content into the next session and archive the file.
@@ -1,15 +1,15 @@
1
- ---
2
- name: migrate
3
- description: Plan and execute migrations (database, API, framework)
4
- model: sonnet
5
- context: fork
6
- agent: migration-engineer
7
- ---
8
- Plan and execute migration for: $ARGUMENTS
9
-
10
- Steps:
11
- 1. Assess the scope and impact of the migration
12
- 2. Create a step-by-step migration plan with rollback strategy
13
- 3. Write migration scripts or code changes
14
- 4. Test the migration including rollback path
15
- 5. Document breaking changes and migration guide
1
+ ---
2
+ name: migrate
3
+ description: Plan and execute migrations (database, API, framework)
4
+ model: sonnet
5
+ context: fork
6
+ agent: migration-engineer
7
+ ---
8
+ Plan and execute migration for: $ARGUMENTS
9
+
10
+ Steps:
11
+ 1. Assess the scope and impact of the migration
12
+ 2. Create a step-by-step migration plan with rollback strategy
13
+ 3. Write migration scripts or code changes
14
+ 4. Test the migration including rollback path
15
+ 5. Document breaking changes and migration guide
@@ -1,17 +1,17 @@
1
- ---
2
- name: perf
3
- description: Performance analysis, profiling, and optimization
4
- model: sonnet
5
- context: fork
6
- agent: performance-engineer
7
- ---
8
- Analyze performance for: $ARGUMENTS
9
-
10
- If no arguments, do a general performance review of the project.
11
-
12
- Steps:
13
- 1. Identify the performance bottleneck or area of concern
14
- 2. Profile the code (check for N+1 queries, unnecessary allocations, blocking I/O)
15
- 3. Benchmark the current performance baseline
16
- 4. Propose optimizations with expected impact
17
- 5. Implement the optimization and measure improvement
1
+ ---
2
+ name: perf
3
+ description: Performance analysis, profiling, and optimization
4
+ model: sonnet
5
+ context: fork
6
+ agent: performance-engineer
7
+ ---
8
+ Analyze performance for: $ARGUMENTS
9
+
10
+ If no arguments, do a general performance review of the project.
11
+
12
+ Steps:
13
+ 1. Identify the performance bottleneck or area of concern
14
+ 2. Profile the code (check for N+1 queries, unnecessary allocations, blocking I/O)
15
+ 3. Benchmark the current performance baseline
16
+ 4. Propose optimizations with expected impact
17
+ 5. Implement the optimization and measure improvement
@@ -1,17 +1,17 @@
1
- ---
2
- name: refactor
3
- description: Identify code smells and execute safe refactorings
4
- model: sonnet
5
- context: fork
6
- agent: refactoring-agent
7
- ---
8
- Analyze and refactor the specified code.
9
-
10
- Target: $ARGUMENTS (file path, module, or area to refactor)
11
-
12
- Steps:
13
- 1. Read the target code and understand its purpose
14
- 2. Identify code smells (long functions, duplication, high complexity)
15
- 3. Propose specific refactorings with rationale
16
- 4. Implement refactorings one at a time, verifying tests pass after each
17
- 5. Report what was changed and why
1
+ ---
2
+ name: refactor
3
+ description: Identify code smells and execute safe refactorings
4
+ model: sonnet
5
+ context: fork
6
+ agent: refactoring-agent
7
+ ---
8
+ Analyze and refactor the specified code.
9
+
10
+ Target: $ARGUMENTS (file path, module, or area to refactor)
11
+
12
+ Steps:
13
+ 1. Read the target code and understand its purpose
14
+ 2. Identify code smells (long functions, duplication, high complexity)
15
+ 3. Propose specific refactorings with rationale
16
+ 4. Implement refactorings one at a time, verifying tests pass after each
17
+ 5. Report what was changed and why
@@ -1,14 +1,14 @@
1
- ---
2
- name: research
3
- description: Explore codebase and gather context about a topic or area
4
- model: haiku
5
- context: fork
6
- agent: researcher
7
- ---
8
- Research the following topic in this codebase: $ARGUMENTS
9
-
10
- Steps:
11
- 1. Search for relevant files, types, and patterns related to the topic
12
- 2. Read key files to understand the architecture and conventions
13
- 3. Identify dependencies and relationships between components
14
- 4. Report findings with file paths, key types, and patterns discovered
1
+ ---
2
+ name: research
3
+ description: Explore codebase and gather context about a topic or area
4
+ model: haiku
5
+ context: fork
6
+ agent: researcher
7
+ ---
8
+ Research the following topic in this codebase: $ARGUMENTS
9
+
10
+ Steps:
11
+ 1. Search for relevant files, types, and patterns related to the topic
12
+ 2. Read key files to understand the architecture and conventions
13
+ 3. Identify dependencies and relationships between components
14
+ 4. Report findings with file paths, key types, and patterns discovered
@@ -1,18 +1,18 @@
1
- ---
2
- name: review
3
- description: Deep code review of recent changes or specified files
4
- model: sonnet
5
- context: fork
6
- agent: code-reviewer
7
- ---
8
- Perform a thorough code review.
9
-
10
- If $ARGUMENTS is provided, review those specific files or the given PR/commit.
11
- Otherwise, review uncommitted changes via `git diff`.
12
-
13
- Steps:
14
- 1. Get the diff (git diff or specified files)
15
- 2. Review for correctness, bugs, and edge cases
16
- 3. Check adherence to project patterns and conventions
17
- 4. Identify security concerns
18
- 5. Report findings as: blocker / suggestion / nit with file:line references
1
+ ---
2
+ name: review
3
+ description: Deep code review of recent changes or specified files
4
+ model: sonnet
5
+ context: fork
6
+ agent: code-reviewer
7
+ ---
8
+ Perform a thorough code review.
9
+
10
+ If $ARGUMENTS is provided, review those specific files or the given PR/commit.
11
+ Otherwise, review uncommitted changes via `git diff`.
12
+
13
+ Steps:
14
+ 1. Get the diff (git diff or specified files)
15
+ 2. Review for correctness, bugs, and edge cases
16
+ 3. Check adherence to project patterns and conventions
17
+ 4. Identify security concerns
18
+ 5. Report findings as: blocker / suggestion / nit with file:line references
@@ -1,17 +1,17 @@
1
- ---
2
- name: security-audit
3
- description: Run a security audit on the project (dependencies, secrets, OWASP)
4
- model: haiku
5
- context: fork
6
- agent: security-reviewer
7
- ---
8
- Perform a comprehensive security audit of this project.
9
-
10
- If $ARGUMENTS is provided, focus the audit on that specific area.
11
-
12
- Steps:
13
- 1. Run dependency audit (npm audit, pip-audit, cargo audit, etc.)
14
- 2. Scan for hardcoded secrets, API keys, and credentials
15
- 3. Review authentication and authorization patterns
16
- 4. Check for OWASP Top 10 vulnerabilities in the codebase
17
- 5. Report findings categorized by severity (critical/high/medium/low)
1
+ ---
2
+ name: security-audit
3
+ description: Run a security audit on the project (dependencies, secrets, OWASP)
4
+ model: haiku
5
+ context: fork
6
+ agent: security-reviewer
7
+ ---
8
+ Perform a comprehensive security audit of this project.
9
+
10
+ If $ARGUMENTS is provided, focus the audit on that specific area.
11
+
12
+ Steps:
13
+ 1. Run dependency audit (npm audit, pip-audit, cargo audit, etc.)
14
+ 2. Scan for hardcoded secrets, API keys, and credentials
15
+ 3. Review authentication and authorization patterns
16
+ 4. Check for OWASP Top 10 vulnerabilities in the codebase
17
+ 5. Report findings categorized by severity (critical/high/medium/low)
@@ -1,46 +1,46 @@
1
- ---
2
- name: "Angular"
3
- description: "Angular projects must meet these standards before delivery."
4
- version: "1.0.0"
5
- category: "frameworks"
6
- author: "Rulebook"
7
- tags: ["frameworks", "framework"]
8
- dependencies: []
9
- conflicts: []
10
- ---
11
- <!-- ANGULAR:START -->
12
- # Angular Framework Rules
13
-
14
- **CRITICAL**: Angular projects must meet these standards before delivery.
15
-
16
- ## Quality Commands
17
- - Lint: `npm run lint`
18
- - Unit tests: `npm run test -- --watch=false --code-coverage`
19
- - e2e tests: `npm run e2e`
20
- - Build: `npm run build -- --configuration production`
21
-
22
- ## Project Structure
23
- - Colocate features inside `src/app/<feature>/`
24
- - Keep shared modules in `src/app/shared`
25
- - Avoid `providedIn: 'root'` unless service truly global
26
- - Leverage `OnPush` change detection for performance-critical components
27
-
28
- ## Implementation Guidelines
29
- - Define interfaces for component inputs/outputs
30
- - Use `HttpClient` interceptors for auth/logging
31
- - Isolate environment variables in `src/environments/`
32
- - Prefer Reactive Forms and RxJS operators over manual subscriptions
33
-
34
- ## Pre-Commit Sequence
35
- ```bash
36
- npm run lint
37
- npm run test -- --watch=false
38
- npm run build -- --configuration production
39
- ```
40
-
41
- ## Documentation
42
- - Update `/docs/angular-architecture.md` with new modules and routes
43
- - Record shared component APIs in Storybook or `/docs/ui-components.md`
44
- - Version major route changes in `/docs/roadmap.md`
45
-
46
- <!-- ANGULAR:END -->
1
+ ---
2
+ name: "Angular"
3
+ description: "Angular projects must meet these standards before delivery."
4
+ version: "1.0.0"
5
+ category: "frameworks"
6
+ author: "Rulebook"
7
+ tags: ["frameworks", "framework"]
8
+ dependencies: []
9
+ conflicts: []
10
+ ---
11
+ <!-- ANGULAR:START -->
12
+ # Angular Framework Rules
13
+
14
+ **CRITICAL**: Angular projects must meet these standards before delivery.
15
+
16
+ ## Quality Commands
17
+ - Lint: `npm run lint`
18
+ - Unit tests: `npm run test -- --watch=false --code-coverage`
19
+ - e2e tests: `npm run e2e`
20
+ - Build: `npm run build -- --configuration production`
21
+
22
+ ## Project Structure
23
+ - Colocate features inside `src/app/<feature>/`
24
+ - Keep shared modules in `src/app/shared`
25
+ - Avoid `providedIn: 'root'` unless service truly global
26
+ - Leverage `OnPush` change detection for performance-critical components
27
+
28
+ ## Implementation Guidelines
29
+ - Define interfaces for component inputs/outputs
30
+ - Use `HttpClient` interceptors for auth/logging
31
+ - Isolate environment variables in `src/environments/`
32
+ - Prefer Reactive Forms and RxJS operators over manual subscriptions
33
+
34
+ ## Pre-Commit Sequence
35
+ ```bash
36
+ npm run lint
37
+ npm run test -- --watch=false
38
+ npm run build -- --configuration production
39
+ ```
40
+
41
+ ## Documentation
42
+ - Update `/docs/angular-architecture.md` with new modules and routes
43
+ - Record shared component APIs in Storybook or `/docs/ui-components.md`
44
+ - Version major route changes in `/docs/roadmap.md`
45
+
46
+ <!-- ANGULAR:END -->
@@ -1,93 +1,93 @@
1
- ---
2
- name: "Django"
3
- description: "Language: Python"
4
- version: "1.0.0"
5
- category: "frameworks"
6
- author: "Rulebook"
7
- tags: ["frameworks", "framework"]
8
- dependencies: []
9
- conflicts: []
10
- ---
11
- <!-- DJANGO:START -->
12
- # Django Framework Rules
13
-
14
- **Language**: Python
15
- **Version**: Django 4.2+ (LTS) or 5.0+
16
-
17
- ## Setup & Configuration
18
-
19
- ```python
20
- # settings.py
21
- SECRET_KEY = env('SECRET_KEY') # Never hardcode
22
- DEBUG = env.bool('DEBUG', default=False)
23
- ALLOWED_HOSTS = env.list('ALLOWED_HOSTS')
24
-
25
- INSTALLED_APPS = [
26
- # Django apps
27
- 'django.contrib.admin',
28
- 'django.contrib.auth',
29
- # Third-party
30
- 'rest_framework',
31
- 'corsheaders',
32
- # Local apps
33
- 'apps.users',
34
- ]
35
-
36
- DATABASES = {
37
- 'default': env.db('DATABASE_URL') # Use django-environ
38
- }
39
- ```
40
-
41
- ## Quality Gates
42
-
43
- ```bash
44
- # Code quality
45
- black . # Format
46
- ruff check . # Lint
47
- mypy . # Type check
48
-
49
- # Tests
50
- python manage.py test # Run tests
51
- pytest --cov=apps --cov-report=html # With coverage
52
-
53
- # Security
54
- python manage.py check --deploy # Production checks
55
- bandit -r apps/ # Security scan
56
- ```
57
-
58
- ## Best Practices
59
-
60
- ✅ **DO:**
61
- - Use Class-Based Views (CBVs) or Django REST Framework ViewSets
62
- - Implement custom User model from start
63
- - Use Django ORM properly (select_related, prefetch_related)
64
- - Enable CSRF protection
65
- - Use environment variables for secrets
66
- - Write tests for views, models, and forms
67
-
68
- ❌ **DON'T:**
69
- - Use `DEBUG=True` in production
70
- - Store secrets in settings.py
71
- - Use raw SQL without parameterization
72
- - Skip migrations
73
- - Ignore security middleware
74
-
75
- ## Project Structure
76
-
77
- ```
78
- project/
79
- ├── manage.py
80
- ├── requirements.txt
81
- ├── apps/
82
- │ ├── users/
83
- │ ├── api/
84
- │ └── core/
85
- ├── config/
86
- │ ├── settings.py
87
- │ ├── urls.py
88
- │ └── wsgi.py
89
- └── tests/
90
- ```
91
-
92
- <!-- DJANGO:END -->
93
-
1
+ ---
2
+ name: "Django"
3
+ description: "Language: Python"
4
+ version: "1.0.0"
5
+ category: "frameworks"
6
+ author: "Rulebook"
7
+ tags: ["frameworks", "framework"]
8
+ dependencies: []
9
+ conflicts: []
10
+ ---
11
+ <!-- DJANGO:START -->
12
+ # Django Framework Rules
13
+
14
+ **Language**: Python
15
+ **Version**: Django 4.2+ (LTS) or 5.0+
16
+
17
+ ## Setup & Configuration
18
+
19
+ ```python
20
+ # settings.py
21
+ SECRET_KEY = env('SECRET_KEY') # Never hardcode
22
+ DEBUG = env.bool('DEBUG', default=False)
23
+ ALLOWED_HOSTS = env.list('ALLOWED_HOSTS')
24
+
25
+ INSTALLED_APPS = [
26
+ # Django apps
27
+ 'django.contrib.admin',
28
+ 'django.contrib.auth',
29
+ # Third-party
30
+ 'rest_framework',
31
+ 'corsheaders',
32
+ # Local apps
33
+ 'apps.users',
34
+ ]
35
+
36
+ DATABASES = {
37
+ 'default': env.db('DATABASE_URL') # Use django-environ
38
+ }
39
+ ```
40
+
41
+ ## Quality Gates
42
+
43
+ ```bash
44
+ # Code quality
45
+ black . # Format
46
+ ruff check . # Lint
47
+ mypy . # Type check
48
+
49
+ # Tests
50
+ python manage.py test # Run tests
51
+ pytest --cov=apps --cov-report=html # With coverage
52
+
53
+ # Security
54
+ python manage.py check --deploy # Production checks
55
+ bandit -r apps/ # Security scan
56
+ ```
57
+
58
+ ## Best Practices
59
+
60
+ ✅ **DO:**
61
+ - Use Class-Based Views (CBVs) or Django REST Framework ViewSets
62
+ - Implement custom User model from start
63
+ - Use Django ORM properly (select_related, prefetch_related)
64
+ - Enable CSRF protection
65
+ - Use environment variables for secrets
66
+ - Write tests for views, models, and forms
67
+
68
+ ❌ **DON'T:**
69
+ - Use `DEBUG=True` in production
70
+ - Store secrets in settings.py
71
+ - Use raw SQL without parameterization
72
+ - Skip migrations
73
+ - Ignore security middleware
74
+
75
+ ## Project Structure
76
+
77
+ ```
78
+ project/
79
+ ├── manage.py
80
+ ├── requirements.txt
81
+ ├── apps/
82
+ │ ├── users/
83
+ │ ├── api/
84
+ │ └── core/
85
+ ├── config/
86
+ │ ├── settings.py
87
+ │ ├── urls.py
88
+ │ └── wsgi.py
89
+ └── tests/
90
+ ```
91
+
92
+ <!-- DJANGO:END -->
93
+