@hivehub/rulebook 5.4.1 → 5.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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 +9 -0
  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 +80 -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,184 +1,184 @@
1
- <!-- AZURE_BLOB:START -->
2
- # Azure Blob Storage Instructions
3
-
4
- **CRITICAL**: Use Azure Blob Storage for object storage, file uploads, static assets, and backup storage in Azure cloud.
5
-
6
- ## Core Features
7
-
8
- ### Connection
9
- ```typescript
10
- // Using @azure/storage-blob
11
- import { BlobServiceClient, StorageSharedKeyCredential } from '@azure/storage-blob'
12
-
13
- const accountName = process.env.AZURE_STORAGE_ACCOUNT_NAME || ''
14
- const accountKey = process.env.AZURE_STORAGE_ACCOUNT_KEY || ''
15
-
16
- const sharedKeyCredential = new StorageSharedKeyCredential(accountName, accountKey)
17
- const blobServiceClient = new BlobServiceClient(
18
- `https://${accountName}.blob.core.windows.net`,
19
- sharedKeyCredential
20
- )
21
-
22
- const containerClient = blobServiceClient.getContainerClient(
23
- process.env.AZURE_CONTAINER_NAME || 'mycontainer'
24
- )
25
- ```
26
-
27
- ### Basic Operations
28
- ```typescript
29
- // Create container
30
- await containerClient.createIfNotExists({
31
- access: 'blob', // 'blob', 'container', or 'private'
32
- })
33
-
34
- // Upload blob
35
- const blockBlobClient = containerClient.getBlockBlobClient('path/to/file.jpg')
36
- await blockBlobClient.upload(fileBuffer, fileBuffer.length, {
37
- blobHTTPHeaders: {
38
- blobContentType: 'image/jpeg',
39
- },
40
- metadata: {
41
- userId: '123',
42
- originalName: 'photo.jpg',
43
- },
44
- })
45
-
46
- // Download blob
47
- const downloadResponse = await blockBlobClient.download()
48
- const fileContent = await streamToBuffer(downloadResponse.readableStreamBody)
49
-
50
- // Delete blob
51
- await blockBlobClient.delete()
52
-
53
- // List blobs
54
- for await (const blob of containerClient.listBlobsFlat()) {
55
- console.log(blob.name, blob.properties.contentLength)
56
- }
57
- ```
58
-
59
- ### Advanced Features
60
- ```typescript
61
- // Generate SAS URL
62
- import { generateBlobSASQueryParameters, BlobSASPermissions, StorageSharedKeyCredential } from '@azure/storage-blob'
63
-
64
- const sasToken = generateBlobSASQueryParameters(
65
- {
66
- containerName: 'mycontainer',
67
- blobName: 'path/to/file.jpg',
68
- permissions: BlobSASPermissions.parse('r'), // read
69
- startsOn: new Date(),
70
- expiresOn: new Date(new Date().valueOf() + 3600 * 1000), // 1 hour
71
- },
72
- sharedKeyCredential
73
- ).toString()
74
-
75
- const sasUrl = `https://${accountName}.blob.core.windows.net/mycontainer/path/to/file.jpg?${sasToken}`
76
-
77
- // Copy blob
78
- const sourceBlobClient = containerClient.getBlockBlobClient('source/file.jpg')
79
- const destBlobClient = containerClient.getBlockBlobClient('dest/file.jpg')
80
- await destBlobClient.beginCopyFromURL(sourceBlobClient.url)
81
-
82
- // Set blob metadata
83
- await blockBlobClient.setMetadata({
84
- category: 'profile',
85
- uploadedBy: 'user-123',
86
- })
87
-
88
- // Get blob properties
89
- const properties = await blockBlobClient.getProperties()
90
- console.log(properties.contentType, properties.contentLength, properties.metadata)
91
- ```
92
-
93
- ## Common Patterns
94
-
95
- ### File Upload Handler
96
- ```typescript
97
- async function uploadFile(file: Buffer, filename: string, userId: string) {
98
- const blobName = `users/${userId}/${Date.now()}-${filename}`
99
- const blobClient = containerClient.getBlockBlobClient(blobName)
100
-
101
- await blobClient.upload(file, file.length, {
102
- blobHTTPHeaders: {
103
- blobContentType: getContentType(filename),
104
- },
105
- metadata: {
106
- userId,
107
- originalName: filename,
108
- uploadedAt: new Date().toISOString(),
109
- },
110
- })
111
-
112
- return {
113
- blobName,
114
- url: blobClient.url,
115
- }
116
- }
117
- ```
118
-
119
- ### Temporary Access URL
120
- ```typescript
121
- async function generateTemporaryUrl(blobName: string, expiresInMinutes: number = 60) {
122
- const blobClient = containerClient.getBlockBlobClient(blobName)
123
- const sasToken = generateBlobSASQueryParameters(
124
- {
125
- containerName: containerClient.containerName,
126
- blobName,
127
- permissions: BlobSASPermissions.parse('r'),
128
- expiresOn: new Date(Date.now() + expiresInMinutes * 60 * 1000),
129
- },
130
- sharedKeyCredential
131
- ).toString()
132
-
133
- return `${blobClient.url}?${sasToken}`
134
- }
135
- ```
136
-
137
- ## Best Practices
138
-
139
- ✅ **DO:**
140
- - Use appropriate access tiers (Hot, Cool, Archive)
141
- - Set blob metadata for organization
142
- - Use SAS tokens for temporary access
143
- - Implement proper error handling
144
- - Use appropriate content types
145
- - Enable soft delete for important data
146
- - Monitor storage usage and costs
147
- - Use lifecycle management policies
148
- - Implement retry logic
149
- - Use connection strings or managed identity
150
-
151
- ❌ **DON'T:**
152
- - Store sensitive data without encryption
153
- - Use public access unnecessarily
154
- - Hardcode credentials
155
- - Ignore error handling
156
- - Skip content-type validation
157
- - Ignore lifecycle policies
158
- - Skip access logging
159
- - Use default access levels
160
- - Ignore cost optimization
161
- - Store large files without chunking
162
-
163
- ## Configuration
164
-
165
- ### Environment Variables
166
- ```bash
167
- AZURE_STORAGE_ACCOUNT_NAME=myaccount
168
- AZURE_STORAGE_ACCOUNT_KEY=your-account-key
169
- AZURE_CONTAINER_NAME=mycontainer
170
- AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;AccountName=...
171
- ```
172
-
173
- ### Managed Identity (Recommended)
174
- ```typescript
175
- import { DefaultAzureCredential } from '@azure/identity'
176
-
177
- const blobServiceClient = new BlobServiceClient(
178
- `https://${accountName}.blob.core.windows.net`,
179
- new DefaultAzureCredential()
180
- )
181
- ```
182
-
183
- <!-- AZURE_BLOB:END -->
184
-
1
+ <!-- AZURE_BLOB:START -->
2
+ # Azure Blob Storage Instructions
3
+
4
+ **CRITICAL**: Use Azure Blob Storage for object storage, file uploads, static assets, and backup storage in Azure cloud.
5
+
6
+ ## Core Features
7
+
8
+ ### Connection
9
+ ```typescript
10
+ // Using @azure/storage-blob
11
+ import { BlobServiceClient, StorageSharedKeyCredential } from '@azure/storage-blob'
12
+
13
+ const accountName = process.env.AZURE_STORAGE_ACCOUNT_NAME || ''
14
+ const accountKey = process.env.AZURE_STORAGE_ACCOUNT_KEY || ''
15
+
16
+ const sharedKeyCredential = new StorageSharedKeyCredential(accountName, accountKey)
17
+ const blobServiceClient = new BlobServiceClient(
18
+ `https://${accountName}.blob.core.windows.net`,
19
+ sharedKeyCredential
20
+ )
21
+
22
+ const containerClient = blobServiceClient.getContainerClient(
23
+ process.env.AZURE_CONTAINER_NAME || 'mycontainer'
24
+ )
25
+ ```
26
+
27
+ ### Basic Operations
28
+ ```typescript
29
+ // Create container
30
+ await containerClient.createIfNotExists({
31
+ access: 'blob', // 'blob', 'container', or 'private'
32
+ })
33
+
34
+ // Upload blob
35
+ const blockBlobClient = containerClient.getBlockBlobClient('path/to/file.jpg')
36
+ await blockBlobClient.upload(fileBuffer, fileBuffer.length, {
37
+ blobHTTPHeaders: {
38
+ blobContentType: 'image/jpeg',
39
+ },
40
+ metadata: {
41
+ userId: '123',
42
+ originalName: 'photo.jpg',
43
+ },
44
+ })
45
+
46
+ // Download blob
47
+ const downloadResponse = await blockBlobClient.download()
48
+ const fileContent = await streamToBuffer(downloadResponse.readableStreamBody)
49
+
50
+ // Delete blob
51
+ await blockBlobClient.delete()
52
+
53
+ // List blobs
54
+ for await (const blob of containerClient.listBlobsFlat()) {
55
+ console.log(blob.name, blob.properties.contentLength)
56
+ }
57
+ ```
58
+
59
+ ### Advanced Features
60
+ ```typescript
61
+ // Generate SAS URL
62
+ import { generateBlobSASQueryParameters, BlobSASPermissions, StorageSharedKeyCredential } from '@azure/storage-blob'
63
+
64
+ const sasToken = generateBlobSASQueryParameters(
65
+ {
66
+ containerName: 'mycontainer',
67
+ blobName: 'path/to/file.jpg',
68
+ permissions: BlobSASPermissions.parse('r'), // read
69
+ startsOn: new Date(),
70
+ expiresOn: new Date(new Date().valueOf() + 3600 * 1000), // 1 hour
71
+ },
72
+ sharedKeyCredential
73
+ ).toString()
74
+
75
+ const sasUrl = `https://${accountName}.blob.core.windows.net/mycontainer/path/to/file.jpg?${sasToken}`
76
+
77
+ // Copy blob
78
+ const sourceBlobClient = containerClient.getBlockBlobClient('source/file.jpg')
79
+ const destBlobClient = containerClient.getBlockBlobClient('dest/file.jpg')
80
+ await destBlobClient.beginCopyFromURL(sourceBlobClient.url)
81
+
82
+ // Set blob metadata
83
+ await blockBlobClient.setMetadata({
84
+ category: 'profile',
85
+ uploadedBy: 'user-123',
86
+ })
87
+
88
+ // Get blob properties
89
+ const properties = await blockBlobClient.getProperties()
90
+ console.log(properties.contentType, properties.contentLength, properties.metadata)
91
+ ```
92
+
93
+ ## Common Patterns
94
+
95
+ ### File Upload Handler
96
+ ```typescript
97
+ async function uploadFile(file: Buffer, filename: string, userId: string) {
98
+ const blobName = `users/${userId}/${Date.now()}-${filename}`
99
+ const blobClient = containerClient.getBlockBlobClient(blobName)
100
+
101
+ await blobClient.upload(file, file.length, {
102
+ blobHTTPHeaders: {
103
+ blobContentType: getContentType(filename),
104
+ },
105
+ metadata: {
106
+ userId,
107
+ originalName: filename,
108
+ uploadedAt: new Date().toISOString(),
109
+ },
110
+ })
111
+
112
+ return {
113
+ blobName,
114
+ url: blobClient.url,
115
+ }
116
+ }
117
+ ```
118
+
119
+ ### Temporary Access URL
120
+ ```typescript
121
+ async function generateTemporaryUrl(blobName: string, expiresInMinutes: number = 60) {
122
+ const blobClient = containerClient.getBlockBlobClient(blobName)
123
+ const sasToken = generateBlobSASQueryParameters(
124
+ {
125
+ containerName: containerClient.containerName,
126
+ blobName,
127
+ permissions: BlobSASPermissions.parse('r'),
128
+ expiresOn: new Date(Date.now() + expiresInMinutes * 60 * 1000),
129
+ },
130
+ sharedKeyCredential
131
+ ).toString()
132
+
133
+ return `${blobClient.url}?${sasToken}`
134
+ }
135
+ ```
136
+
137
+ ## Best Practices
138
+
139
+ ✅ **DO:**
140
+ - Use appropriate access tiers (Hot, Cool, Archive)
141
+ - Set blob metadata for organization
142
+ - Use SAS tokens for temporary access
143
+ - Implement proper error handling
144
+ - Use appropriate content types
145
+ - Enable soft delete for important data
146
+ - Monitor storage usage and costs
147
+ - Use lifecycle management policies
148
+ - Implement retry logic
149
+ - Use connection strings or managed identity
150
+
151
+ ❌ **DON'T:**
152
+ - Store sensitive data without encryption
153
+ - Use public access unnecessarily
154
+ - Hardcode credentials
155
+ - Ignore error handling
156
+ - Skip content-type validation
157
+ - Ignore lifecycle policies
158
+ - Skip access logging
159
+ - Use default access levels
160
+ - Ignore cost optimization
161
+ - Store large files without chunking
162
+
163
+ ## Configuration
164
+
165
+ ### Environment Variables
166
+ ```bash
167
+ AZURE_STORAGE_ACCOUNT_NAME=myaccount
168
+ AZURE_STORAGE_ACCOUNT_KEY=your-account-key
169
+ AZURE_CONTAINER_NAME=mycontainer
170
+ AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=https;AccountName=...
171
+ ```
172
+
173
+ ### Managed Identity (Recommended)
174
+ ```typescript
175
+ import { DefaultAzureCredential } from '@azure/identity'
176
+
177
+ const blobServiceClient = new BlobServiceClient(
178
+ `https://${accountName}.blob.core.windows.net`,
179
+ new DefaultAzureCredential()
180
+ )
181
+ ```
182
+
183
+ <!-- AZURE_BLOB:END -->
184
+