@hivehub/rulebook 5.1.3 → 5.2.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 (374) hide show
  1. package/.claude/commands/continue.md +33 -33
  2. package/.claude/commands/ralph-config.md +112 -112
  3. package/.claude/commands/ralph-history.md +110 -110
  4. package/.claude/commands/ralph-init.md +72 -72
  5. package/.claude/commands/ralph-pause-resume.md +105 -105
  6. package/.claude/commands/ralph-run.md +101 -101
  7. package/.claude/commands/ralph-status.md +76 -76
  8. package/.claude/commands/rulebook-decision-create.md +55 -55
  9. package/.claude/commands/rulebook-decision-list.md +15 -15
  10. package/.claude/commands/rulebook-knowledge-add.md +41 -41
  11. package/.claude/commands/rulebook-knowledge-list.md +15 -15
  12. package/.claude/commands/rulebook-learn-capture.md +48 -48
  13. package/.claude/commands/rulebook-learn-list.md +13 -13
  14. package/.claude/commands/rulebook-memory-save.md +48 -48
  15. package/.claude/commands/rulebook-memory-search.md +47 -47
  16. package/.claude/commands/rulebook-task-apply.md +85 -67
  17. package/.claude/commands/rulebook-task-archive.md +103 -94
  18. package/.claude/commands/rulebook-task-create.md +93 -93
  19. package/.claude/commands/rulebook-task-list.md +42 -42
  20. package/.claude/commands/rulebook-task-show.md +52 -52
  21. package/.claude/commands/rulebook-task-validate.md +53 -53
  22. package/.claude-plugin/marketplace.json +28 -28
  23. package/.claude-plugin/plugin.json +8 -8
  24. package/README.md +25 -43
  25. package/dist/cli/commands.d.ts.map +1 -1
  26. package/dist/cli/commands.js +11 -0
  27. package/dist/cli/commands.js.map +1 -1
  28. package/dist/core/agent-template-engine.js +28 -28
  29. package/dist/core/generator.js +28 -28
  30. package/dist/core/task-manager.d.ts +23 -0
  31. package/dist/core/task-manager.d.ts.map +1 -1
  32. package/dist/core/task-manager.js +161 -27
  33. package/dist/core/task-manager.js.map +1 -1
  34. package/dist/index.js +0 -0
  35. package/dist/mcp/rulebook-server.js +3 -3
  36. package/dist/mcp/rulebook-server.js.map +1 -1
  37. package/dist/memory/memory-store.js +91 -91
  38. package/package.json +21 -22
  39. package/templates/agents/accessibility-reviewer.md +43 -43
  40. package/templates/agents/api-designer.md +42 -42
  41. package/templates/agents/architect.md +51 -51
  42. package/templates/agents/build-engineer.md +36 -36
  43. package/templates/agents/code-reviewer.md +47 -47
  44. package/templates/agents/compiler/codegen-debugger.md +34 -34
  45. package/templates/agents/compiler/stdlib-engineer.md +28 -28
  46. package/templates/agents/compiler/test-coverage-guardian.md +31 -31
  47. package/templates/agents/context-intelligence.md +52 -52
  48. package/templates/agents/database-architect.md +41 -41
  49. package/templates/agents/devops-engineer.md +42 -42
  50. package/templates/agents/docs-writer.md +38 -38
  51. package/templates/agents/game-engine/cpp-core-expert.md +35 -35
  52. package/templates/agents/game-engine/render-engineer.md +22 -22
  53. package/templates/agents/game-engine/shader-engineer.md +38 -38
  54. package/templates/agents/game-engine/systems-integration.md +43 -43
  55. package/templates/agents/generic/code-reviewer.md +41 -41
  56. package/templates/agents/generic/docs-writer.md +25 -25
  57. package/templates/agents/generic/project-manager.md +36 -36
  58. package/templates/agents/generic/researcher.md +34 -34
  59. package/templates/agents/generic/test-engineer.md +41 -41
  60. package/templates/agents/i18n-engineer.md +42 -42
  61. package/templates/agents/implementer.md +42 -42
  62. package/templates/agents/migration-engineer.md +42 -42
  63. package/templates/agents/mobile/platform-specialist.md +22 -22
  64. package/templates/agents/mobile/ui-engineer.md +22 -22
  65. package/templates/agents/performance-engineer.md +49 -49
  66. package/templates/agents/refactoring-agent.md +41 -41
  67. package/templates/agents/researcher.md +38 -38
  68. package/templates/agents/security-reviewer.md +40 -40
  69. package/templates/agents/team-lead.md +37 -37
  70. package/templates/agents/tester.md +48 -48
  71. package/templates/agents/ux-reviewer.md +43 -43
  72. package/templates/agents/web-app/api-designer.md +22 -22
  73. package/templates/agents/web-app/backend-engineer.md +30 -30
  74. package/templates/agents/web-app/database-engineer.md +22 -22
  75. package/templates/agents/web-app/frontend-engineer.md +29 -29
  76. package/templates/agents/web-app/security-reviewer.md +32 -32
  77. package/templates/ci/rulebook-review.yml +26 -26
  78. package/templates/cli/AIDER.md +49 -49
  79. package/templates/cli/AMAZON_Q.md +25 -25
  80. package/templates/cli/AUGGIE.md +32 -32
  81. package/templates/cli/CLAUDE.md +117 -117
  82. package/templates/cli/CLINE.md +99 -99
  83. package/templates/cli/CODEBUDDY.md +20 -20
  84. package/templates/cli/CODEIUM.md +20 -20
  85. package/templates/cli/CODEX.md +21 -21
  86. package/templates/cli/CONTINUE.md +34 -34
  87. package/templates/cli/CURSOR_CLI.md +62 -62
  88. package/templates/cli/FACTORY.md +18 -18
  89. package/templates/cli/GEMINI.md +35 -35
  90. package/templates/cli/KILOCODE.md +18 -18
  91. package/templates/cli/OPENCODE.md +18 -18
  92. package/templates/cli/_GENERIC_TEMPLATE.md +29 -29
  93. package/templates/commands/rulebook-decision-create.md +55 -55
  94. package/templates/commands/rulebook-decision-list.md +15 -15
  95. package/templates/commands/rulebook-knowledge-add.md +41 -41
  96. package/templates/commands/rulebook-knowledge-list.md +15 -15
  97. package/templates/commands/rulebook-learn-capture.md +48 -48
  98. package/templates/commands/rulebook-learn-list.md +13 -13
  99. package/templates/commands/rulebook-memory-save.md +48 -48
  100. package/templates/commands/rulebook-memory-search.md +47 -47
  101. package/templates/commands/rulebook-task-apply.md +67 -67
  102. package/templates/commands/rulebook-task-archive.md +94 -94
  103. package/templates/commands/rulebook-task-create.md +93 -93
  104. package/templates/commands/rulebook-task-list.md +42 -42
  105. package/templates/commands/rulebook-task-show.md +52 -52
  106. package/templates/commands/rulebook-task-validate.md +53 -53
  107. package/templates/core/AGENTS_LEAN.md +25 -25
  108. package/templates/core/AGENTS_OVERRIDE.md +16 -16
  109. package/templates/core/AGENT_AUTOMATION.md +296 -296
  110. package/templates/core/DAG.md +304 -304
  111. package/templates/core/DECISIONS.md +38 -38
  112. package/templates/core/DOCUMENTATION_RULES.md +36 -36
  113. package/templates/core/KNOWLEDGE.md +49 -49
  114. package/templates/core/MULTI_AGENT.md +74 -74
  115. package/templates/core/PLANS.md +28 -28
  116. package/templates/core/QUALITY_ENFORCEMENT.md +68 -68
  117. package/templates/core/RALPH.md +471 -471
  118. package/templates/core/RULEBOOK.md +1947 -1947
  119. package/templates/core/TIER1_PROHIBITIONS.md +154 -154
  120. package/templates/core/TOKEN_OPTIMIZATION.md +49 -49
  121. package/templates/frameworks/ANGULAR.md +36 -36
  122. package/templates/frameworks/DJANGO.md +83 -83
  123. package/templates/frameworks/ELECTRON.md +147 -147
  124. package/templates/frameworks/FLASK.md +38 -38
  125. package/templates/frameworks/FLUTTER.md +55 -55
  126. package/templates/frameworks/JQUERY.md +32 -32
  127. package/templates/frameworks/LARAVEL.md +38 -38
  128. package/templates/frameworks/NESTJS.md +43 -43
  129. package/templates/frameworks/NEXTJS.md +127 -127
  130. package/templates/frameworks/NUXT.md +40 -40
  131. package/templates/frameworks/RAILS.md +66 -66
  132. package/templates/frameworks/REACT.md +38 -38
  133. package/templates/frameworks/REACT_NATIVE.md +47 -47
  134. package/templates/frameworks/SPRING.md +39 -39
  135. package/templates/frameworks/SYMFONY.md +36 -36
  136. package/templates/frameworks/VUE.md +36 -36
  137. package/templates/frameworks/ZEND.md +35 -35
  138. package/templates/git/CI_CD_PATTERNS.md +661 -661
  139. package/templates/git/GITHUB_ACTIONS.md +728 -728
  140. package/templates/git/GITLAB_CI.md +730 -730
  141. package/templates/git/GIT_WORKFLOW.md +1192 -1192
  142. package/templates/git/SECRETS_MANAGEMENT.md +585 -585
  143. package/templates/hooks/COMMIT_MSG.md +530 -530
  144. package/templates/hooks/POST_CHECKOUT.md +546 -546
  145. package/templates/hooks/PREPARE_COMMIT_MSG.md +619 -619
  146. package/templates/hooks/PRE_COMMIT.md +414 -414
  147. package/templates/hooks/PRE_PUSH.md +601 -601
  148. package/templates/ides/CONTINUE_RULES.md +16 -16
  149. package/templates/ides/COPILOT.md +37 -37
  150. package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
  151. package/templates/ides/CURSOR.md +43 -43
  152. package/templates/ides/GEMINI_RULES.md +17 -17
  153. package/templates/ides/JETBRAINS_AI.md +35 -35
  154. package/templates/ides/REPLIT.md +36 -36
  155. package/templates/ides/TABNINE.md +29 -29
  156. package/templates/ides/VSCODE.md +40 -40
  157. package/templates/ides/WINDSURF.md +36 -36
  158. package/templates/ides/WINDSURF_RULES.md +14 -14
  159. package/templates/ides/ZED.md +32 -32
  160. package/templates/ides/cursor-mdc/go.mdc +24 -24
  161. package/templates/ides/cursor-mdc/python.mdc +24 -24
  162. package/templates/ides/cursor-mdc/quality.mdc +25 -25
  163. package/templates/ides/cursor-mdc/ralph.mdc +39 -39
  164. package/templates/ides/cursor-mdc/rulebook.mdc +38 -38
  165. package/templates/ides/cursor-mdc/rust.mdc +24 -24
  166. package/templates/ides/cursor-mdc/typescript.mdc +25 -25
  167. package/templates/languages/C.md +333 -333
  168. package/templates/languages/CPP.md +743 -743
  169. package/templates/languages/CSHARP.md +417 -417
  170. package/templates/languages/ELIXIR.md +454 -454
  171. package/templates/languages/ERLANG.md +361 -361
  172. package/templates/languages/GO.md +645 -645
  173. package/templates/languages/HASKELL.md +177 -177
  174. package/templates/languages/JAVA.md +607 -607
  175. package/templates/languages/JAVASCRIPT.md +631 -631
  176. package/templates/languages/JULIA.md +97 -97
  177. package/templates/languages/KOTLIN.md +511 -511
  178. package/templates/languages/LISP.md +100 -100
  179. package/templates/languages/LUA.md +74 -74
  180. package/templates/languages/OBJECTIVEC.md +90 -90
  181. package/templates/languages/PHP.md +416 -416
  182. package/templates/languages/PYTHON.md +682 -682
  183. package/templates/languages/RUBY.md +421 -421
  184. package/templates/languages/RUST.md +477 -477
  185. package/templates/languages/SAS.md +73 -73
  186. package/templates/languages/SCALA.md +348 -348
  187. package/templates/languages/SOLIDITY.md +580 -580
  188. package/templates/languages/SQL.md +137 -137
  189. package/templates/languages/SWIFT.md +466 -466
  190. package/templates/languages/TYPESCRIPT.md +591 -591
  191. package/templates/languages/ZIG.md +265 -265
  192. package/templates/modules/ATLASSIAN.md +255 -255
  193. package/templates/modules/CONTEXT7.md +54 -54
  194. package/templates/modules/FIGMA.md +267 -267
  195. package/templates/modules/GITHUB_MCP.md +64 -64
  196. package/templates/modules/GRAFANA.md +328 -328
  197. package/templates/modules/MEMORY.md +126 -126
  198. package/templates/modules/NOTION.md +247 -247
  199. package/templates/modules/PLAYWRIGHT.md +90 -90
  200. package/templates/modules/RULEBOOK_MCP.md +156 -156
  201. package/templates/modules/SERENA.md +337 -337
  202. package/templates/modules/SUPABASE.md +223 -223
  203. package/templates/modules/SYNAP.md +69 -69
  204. package/templates/modules/VECTORIZER.md +63 -63
  205. package/templates/modules/sequential-thinking.md +42 -42
  206. package/templates/ralph/ralph-history.bat +4 -4
  207. package/templates/ralph/ralph-history.sh +5 -5
  208. package/templates/ralph/ralph-init.bat +5 -5
  209. package/templates/ralph/ralph-init.sh +5 -5
  210. package/templates/ralph/ralph-pause.bat +5 -5
  211. package/templates/ralph/ralph-pause.sh +5 -5
  212. package/templates/ralph/ralph-run.bat +5 -5
  213. package/templates/ralph/ralph-run.sh +5 -5
  214. package/templates/ralph/ralph-status.bat +4 -4
  215. package/templates/ralph/ralph-status.sh +5 -5
  216. package/templates/rules/follow-task-sequence.md +36 -36
  217. package/templates/rules/git-safety.md +29 -29
  218. package/templates/rules/incremental-tests.md +29 -29
  219. package/templates/rules/knowledge-base-usage.md +41 -0
  220. package/templates/rules/no-deferred.md +31 -31
  221. package/templates/rules/no-shortcuts.md +30 -30
  222. package/templates/rules/research-first.md +30 -30
  223. package/templates/rules/sequential-editing.md +21 -21
  224. package/templates/rules/session-workflow.md +24 -24
  225. package/templates/rules/task-decomposition.md +32 -32
  226. package/templates/services/AZURE_BLOB.md +184 -184
  227. package/templates/services/CASSANDRA.md +239 -239
  228. package/templates/services/DATADOG.md +26 -26
  229. package/templates/services/DOCKER.md +124 -124
  230. package/templates/services/DOCKER_COMPOSE.md +168 -168
  231. package/templates/services/DYNAMODB.md +308 -308
  232. package/templates/services/ELASTICSEARCH.md +347 -347
  233. package/templates/services/GCS.md +178 -178
  234. package/templates/services/HELM.md +194 -194
  235. package/templates/services/INFLUXDB.md +265 -265
  236. package/templates/services/KAFKA.md +341 -341
  237. package/templates/services/KUBERNETES.md +208 -208
  238. package/templates/services/MARIADB.md +183 -183
  239. package/templates/services/MEMCACHED.md +242 -242
  240. package/templates/services/MINIO.md +201 -201
  241. package/templates/services/MONGODB.md +268 -268
  242. package/templates/services/MYSQL.md +358 -358
  243. package/templates/services/NEO4J.md +247 -247
  244. package/templates/services/OPENTELEMETRY.md +25 -25
  245. package/templates/services/ORACLE.md +290 -290
  246. package/templates/services/PINO.md +24 -24
  247. package/templates/services/POSTGRESQL.md +326 -326
  248. package/templates/services/PROMETHEUS.md +33 -33
  249. package/templates/services/RABBITMQ.md +286 -286
  250. package/templates/services/REDIS.md +292 -292
  251. package/templates/services/S3.md +298 -298
  252. package/templates/services/SENTRY.md +23 -23
  253. package/templates/services/SQLITE.md +294 -294
  254. package/templates/services/SQLSERVER.md +294 -294
  255. package/templates/services/WINSTON.md +30 -30
  256. package/templates/skills/cli/aider/SKILL.md +59 -59
  257. package/templates/skills/cli/amazon-q/SKILL.md +35 -35
  258. package/templates/skills/cli/auggie/SKILL.md +42 -42
  259. package/templates/skills/cli/claude/SKILL.md +42 -42
  260. package/templates/skills/cli/cline/SKILL.md +42 -42
  261. package/templates/skills/cli/codebuddy/SKILL.md +30 -30
  262. package/templates/skills/cli/codeium/SKILL.md +30 -30
  263. package/templates/skills/cli/codex/SKILL.md +31 -31
  264. package/templates/skills/cli/continue/SKILL.md +44 -44
  265. package/templates/skills/cli/cursor-cli/SKILL.md +38 -38
  266. package/templates/skills/cli/factory/SKILL.md +28 -28
  267. package/templates/skills/cli/gemini/SKILL.md +45 -45
  268. package/templates/skills/cli/kilocode/SKILL.md +28 -28
  269. package/templates/skills/cli/opencode/SKILL.md +28 -28
  270. package/templates/skills/core/agent-automation/SKILL.md +194 -194
  271. package/templates/skills/core/dag/SKILL.md +314 -314
  272. package/templates/skills/core/documentation-rules/SKILL.md +46 -46
  273. package/templates/skills/core/quality-enforcement/SKILL.md +78 -78
  274. package/templates/skills/core/rulebook/SKILL.md +176 -176
  275. package/templates/skills/dev/accessibility/SKILL.md +17 -17
  276. package/templates/skills/dev/api-design/SKILL.md +15 -15
  277. package/templates/skills/dev/architect/SKILL.md +17 -17
  278. package/templates/skills/dev/build-fix/SKILL.md +17 -17
  279. package/templates/skills/dev/db-design/SKILL.md +15 -15
  280. package/templates/skills/dev/debug/SKILL.md +16 -16
  281. package/templates/skills/dev/deploy/SKILL.md +17 -17
  282. package/templates/skills/dev/docs/SKILL.md +17 -17
  283. package/templates/skills/dev/migrate/SKILL.md +15 -15
  284. package/templates/skills/dev/perf/SKILL.md +17 -17
  285. package/templates/skills/dev/refactor/SKILL.md +17 -17
  286. package/templates/skills/dev/research/SKILL.md +14 -14
  287. package/templates/skills/dev/review/SKILL.md +18 -18
  288. package/templates/skills/dev/security-audit/SKILL.md +17 -17
  289. package/templates/skills/frameworks/angular/SKILL.md +46 -46
  290. package/templates/skills/frameworks/django/SKILL.md +93 -93
  291. package/templates/skills/frameworks/electron/SKILL.md +157 -157
  292. package/templates/skills/frameworks/flask/SKILL.md +48 -48
  293. package/templates/skills/frameworks/flutter/SKILL.md +65 -65
  294. package/templates/skills/frameworks/jquery/SKILL.md +42 -42
  295. package/templates/skills/frameworks/laravel/SKILL.md +48 -48
  296. package/templates/skills/frameworks/nestjs/SKILL.md +53 -53
  297. package/templates/skills/frameworks/nextjs/SKILL.md +137 -137
  298. package/templates/skills/frameworks/nuxt/SKILL.md +50 -50
  299. package/templates/skills/frameworks/rails/SKILL.md +76 -76
  300. package/templates/skills/frameworks/react/SKILL.md +48 -48
  301. package/templates/skills/frameworks/react-native/SKILL.md +57 -57
  302. package/templates/skills/frameworks/spring/SKILL.md +49 -49
  303. package/templates/skills/frameworks/symfony/SKILL.md +46 -46
  304. package/templates/skills/frameworks/vue/SKILL.md +46 -46
  305. package/templates/skills/frameworks/zend/SKILL.md +45 -45
  306. package/templates/skills/ides/copilot/SKILL.md +47 -47
  307. package/templates/skills/ides/cursor/SKILL.md +53 -53
  308. package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -45
  309. package/templates/skills/ides/replit/SKILL.md +46 -46
  310. package/templates/skills/ides/tabnine/SKILL.md +39 -39
  311. package/templates/skills/ides/vscode/SKILL.md +50 -50
  312. package/templates/skills/ides/windsurf/SKILL.md +46 -46
  313. package/templates/skills/ides/zed/SKILL.md +42 -42
  314. package/templates/skills/languages/c/SKILL.md +343 -343
  315. package/templates/skills/languages/cpp/SKILL.md +753 -753
  316. package/templates/skills/languages/csharp/SKILL.md +427 -427
  317. package/templates/skills/languages/elixir/SKILL.md +464 -464
  318. package/templates/skills/languages/erlang/SKILL.md +371 -371
  319. package/templates/skills/languages/go/SKILL.md +655 -655
  320. package/templates/skills/languages/haskell/SKILL.md +187 -187
  321. package/templates/skills/languages/java/SKILL.md +617 -617
  322. package/templates/skills/languages/javascript/SKILL.md +641 -641
  323. package/templates/skills/languages/julia/SKILL.md +107 -107
  324. package/templates/skills/languages/kotlin/SKILL.md +521 -521
  325. package/templates/skills/languages/lisp/SKILL.md +110 -110
  326. package/templates/skills/languages/lua/SKILL.md +84 -84
  327. package/templates/skills/languages/objectivec/SKILL.md +100 -100
  328. package/templates/skills/languages/php/SKILL.md +426 -426
  329. package/templates/skills/languages/python/SKILL.md +692 -692
  330. package/templates/skills/languages/ruby/SKILL.md +431 -431
  331. package/templates/skills/languages/rust/SKILL.md +487 -487
  332. package/templates/skills/languages/sas/SKILL.md +83 -83
  333. package/templates/skills/languages/scala/SKILL.md +358 -358
  334. package/templates/skills/languages/solidity/SKILL.md +590 -590
  335. package/templates/skills/languages/sql/SKILL.md +147 -147
  336. package/templates/skills/languages/swift/SKILL.md +476 -476
  337. package/templates/skills/languages/typescript/SKILL.md +302 -302
  338. package/templates/skills/languages/zig/SKILL.md +275 -275
  339. package/templates/skills/modules/atlassian/SKILL.md +265 -265
  340. package/templates/skills/modules/context7/SKILL.md +64 -64
  341. package/templates/skills/modules/figma/SKILL.md +277 -277
  342. package/templates/skills/modules/github-mcp/SKILL.md +74 -74
  343. package/templates/skills/modules/grafana/SKILL.md +338 -338
  344. package/templates/skills/modules/memory/SKILL.md +73 -73
  345. package/templates/skills/modules/notion/SKILL.md +257 -257
  346. package/templates/skills/modules/playwright/SKILL.md +100 -100
  347. package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -166
  348. package/templates/skills/modules/serena/SKILL.md +347 -347
  349. package/templates/skills/modules/supabase/SKILL.md +233 -233
  350. package/templates/skills/modules/synap/SKILL.md +79 -79
  351. package/templates/skills/modules/vectorizer/SKILL.md +73 -73
  352. package/templates/skills/services/azure-blob/SKILL.md +194 -194
  353. package/templates/skills/services/cassandra/SKILL.md +249 -249
  354. package/templates/skills/services/dynamodb/SKILL.md +318 -318
  355. package/templates/skills/services/elasticsearch/SKILL.md +357 -357
  356. package/templates/skills/services/gcs/SKILL.md +188 -188
  357. package/templates/skills/services/influxdb/SKILL.md +275 -275
  358. package/templates/skills/services/kafka/SKILL.md +351 -351
  359. package/templates/skills/services/mariadb/SKILL.md +193 -193
  360. package/templates/skills/services/memcached/SKILL.md +252 -252
  361. package/templates/skills/services/minio/SKILL.md +211 -211
  362. package/templates/skills/services/mongodb/SKILL.md +278 -278
  363. package/templates/skills/services/mysql/SKILL.md +368 -368
  364. package/templates/skills/services/neo4j/SKILL.md +257 -257
  365. package/templates/skills/services/oracle/SKILL.md +300 -300
  366. package/templates/skills/services/postgresql/SKILL.md +336 -336
  367. package/templates/skills/services/rabbitmq/SKILL.md +296 -296
  368. package/templates/skills/services/redis/SKILL.md +302 -302
  369. package/templates/skills/services/s3/SKILL.md +308 -308
  370. package/templates/skills/services/sqlite/SKILL.md +304 -304
  371. package/templates/skills/services/sqlserver/SKILL.md +304 -304
  372. package/templates/skills/workflows/ralph/SKILL.md +309 -309
  373. package/templates/skills/workflows/ralph/install.sh +87 -87
  374. package/templates/skills/workflows/ralph/manifest.json +158 -158
@@ -1,147 +1,147 @@
1
- <!-- ELECTRON:START -->
2
- # Electron Framework Rules
3
-
4
- **Language**: TypeScript, JavaScript
5
- **Version**: Electron 28+
6
-
7
- ## Setup & Configuration
8
-
9
- ```typescript
10
- // main.ts (Main Process)
11
- import { app, BrowserWindow } from 'electron'
12
- import path from 'path'
13
-
14
- function createWindow() {
15
- const win = new BrowserWindow({
16
- width: 1200,
17
- height: 800,
18
- webPreferences: {
19
- preload: path.join(__dirname, 'preload.js'),
20
- contextIsolation: true,
21
- nodeIntegration: false,
22
- },
23
- })
24
-
25
- win.loadFile('index.html')
26
- }
27
-
28
- app.whenReady().then(createWindow)
29
- ```
30
-
31
- ## Quality Gates
32
-
33
- ```bash
34
- # Type check
35
- npm run type-check
36
-
37
- # Lint
38
- npm run lint
39
-
40
- # Tests
41
- npm test
42
-
43
- # Build
44
- npm run build # Compile TypeScript
45
- npm run package # Package app
46
- npm run make # Create distributables
47
- ```
48
-
49
- ## Best Practices
50
-
51
- ✅ **DO:**
52
- - Use contextIsolation: true
53
- - Disable nodeIntegration
54
- - Use preload scripts for IPC
55
- - Implement auto-updates (electron-updater)
56
- - Sign and notarize apps (production)
57
- - Use Content Security Policy
58
- - Implement proper error handling
59
- - Separate main and renderer processes
60
-
61
- ❌ **DON'T:**
62
- - Enable nodeIntegration in renderer
63
- - Skip contextIsolation
64
- - Use remote module (deprecated)
65
- - Ignore security warnings
66
- - Skip code signing
67
- - Load remote content without CSP
68
- - Use synchronous IPC
69
- - Hardcode credentials
70
-
71
- ## Project Structure
72
-
73
- ```
74
- src/
75
- ├── main/
76
- │ ├── main.ts # Main process
77
- │ ├── preload.ts # Preload script
78
- │ └── ipc/ # IPC handlers
79
- ├── renderer/
80
- │ ├── index.html
81
- │ ├── renderer.ts
82
- │ └── components/
83
- └── shared/
84
- └── types.ts
85
- ```
86
-
87
- ## IPC Communication
88
-
89
- ```typescript
90
- // preload.ts
91
- import { contextBridge, ipcRenderer } from 'electron'
92
-
93
- contextBridge.exposeInMainWorld('electronAPI', {
94
- sendMessage: (message: string) => ipcRenderer.send('message', message),
95
- onReply: (callback: (reply: string) => void) =>
96
- ipcRenderer.on('reply', (_event, reply) => callback(reply)),
97
- })
98
-
99
- // main.ts
100
- import { ipcMain } from 'electron'
101
-
102
- ipcMain.on('message', (event, message) => {
103
- console.log(message)
104
- event.reply('reply', 'Message received')
105
- })
106
-
107
- // renderer.ts
108
- declare global {
109
- interface Window {
110
- electronAPI: {
111
- sendMessage: (message: string) => void
112
- onReply: (callback: (reply: string) => void) => void
113
- }
114
- }
115
- }
116
-
117
- window.electronAPI.sendMessage('Hello from renderer')
118
- window.electronAPI.onReply((reply) => console.log(reply))
119
- ```
120
-
121
- ## Security Checklist
122
-
123
- ```typescript
124
- // ✅ Good security configuration
125
- const win = new BrowserWindow({
126
- webPreferences: {
127
- contextIsolation: true, // ✅ MUST enable
128
- nodeIntegration: false, // ✅ MUST disable
129
- sandbox: true, // ✅ Enable sandbox
130
- webSecurity: true, // ✅ Enable web security
131
- allowRunningInsecureContent: false, // ✅ Block insecure content
132
- },
133
- })
134
-
135
- // Content Security Policy
136
- session.defaultSession.webRequest.onHeadersReceived((details, callback) => {
137
- callback({
138
- responseHeaders: {
139
- ...details.responseHeaders,
140
- 'Content-Security-Policy': ["default-src 'self'"]
141
- }
142
- })
143
- })
144
- ```
145
-
146
- <!-- ELECTRON:END -->
147
-
1
+ <!-- ELECTRON:START -->
2
+ # Electron Framework Rules
3
+
4
+ **Language**: TypeScript, JavaScript
5
+ **Version**: Electron 28+
6
+
7
+ ## Setup & Configuration
8
+
9
+ ```typescript
10
+ // main.ts (Main Process)
11
+ import { app, BrowserWindow } from 'electron'
12
+ import path from 'path'
13
+
14
+ function createWindow() {
15
+ const win = new BrowserWindow({
16
+ width: 1200,
17
+ height: 800,
18
+ webPreferences: {
19
+ preload: path.join(__dirname, 'preload.js'),
20
+ contextIsolation: true,
21
+ nodeIntegration: false,
22
+ },
23
+ })
24
+
25
+ win.loadFile('index.html')
26
+ }
27
+
28
+ app.whenReady().then(createWindow)
29
+ ```
30
+
31
+ ## Quality Gates
32
+
33
+ ```bash
34
+ # Type check
35
+ npm run type-check
36
+
37
+ # Lint
38
+ npm run lint
39
+
40
+ # Tests
41
+ npm test
42
+
43
+ # Build
44
+ npm run build # Compile TypeScript
45
+ npm run package # Package app
46
+ npm run make # Create distributables
47
+ ```
48
+
49
+ ## Best Practices
50
+
51
+ ✅ **DO:**
52
+ - Use contextIsolation: true
53
+ - Disable nodeIntegration
54
+ - Use preload scripts for IPC
55
+ - Implement auto-updates (electron-updater)
56
+ - Sign and notarize apps (production)
57
+ - Use Content Security Policy
58
+ - Implement proper error handling
59
+ - Separate main and renderer processes
60
+
61
+ ❌ **DON'T:**
62
+ - Enable nodeIntegration in renderer
63
+ - Skip contextIsolation
64
+ - Use remote module (deprecated)
65
+ - Ignore security warnings
66
+ - Skip code signing
67
+ - Load remote content without CSP
68
+ - Use synchronous IPC
69
+ - Hardcode credentials
70
+
71
+ ## Project Structure
72
+
73
+ ```
74
+ src/
75
+ ├── main/
76
+ │ ├── main.ts # Main process
77
+ │ ├── preload.ts # Preload script
78
+ │ └── ipc/ # IPC handlers
79
+ ├── renderer/
80
+ │ ├── index.html
81
+ │ ├── renderer.ts
82
+ │ └── components/
83
+ └── shared/
84
+ └── types.ts
85
+ ```
86
+
87
+ ## IPC Communication
88
+
89
+ ```typescript
90
+ // preload.ts
91
+ import { contextBridge, ipcRenderer } from 'electron'
92
+
93
+ contextBridge.exposeInMainWorld('electronAPI', {
94
+ sendMessage: (message: string) => ipcRenderer.send('message', message),
95
+ onReply: (callback: (reply: string) => void) =>
96
+ ipcRenderer.on('reply', (_event, reply) => callback(reply)),
97
+ })
98
+
99
+ // main.ts
100
+ import { ipcMain } from 'electron'
101
+
102
+ ipcMain.on('message', (event, message) => {
103
+ console.log(message)
104
+ event.reply('reply', 'Message received')
105
+ })
106
+
107
+ // renderer.ts
108
+ declare global {
109
+ interface Window {
110
+ electronAPI: {
111
+ sendMessage: (message: string) => void
112
+ onReply: (callback: (reply: string) => void) => void
113
+ }
114
+ }
115
+ }
116
+
117
+ window.electronAPI.sendMessage('Hello from renderer')
118
+ window.electronAPI.onReply((reply) => console.log(reply))
119
+ ```
120
+
121
+ ## Security Checklist
122
+
123
+ ```typescript
124
+ // ✅ Good security configuration
125
+ const win = new BrowserWindow({
126
+ webPreferences: {
127
+ contextIsolation: true, // ✅ MUST enable
128
+ nodeIntegration: false, // ✅ MUST disable
129
+ sandbox: true, // ✅ Enable sandbox
130
+ webSecurity: true, // ✅ Enable web security
131
+ allowRunningInsecureContent: false, // ✅ Block insecure content
132
+ },
133
+ })
134
+
135
+ // Content Security Policy
136
+ session.defaultSession.webRequest.onHeadersReceived((details, callback) => {
137
+ callback({
138
+ responseHeaders: {
139
+ ...details.responseHeaders,
140
+ 'Content-Security-Policy': ["default-src 'self'"]
141
+ }
142
+ })
143
+ })
144
+ ```
145
+
146
+ <!-- ELECTRON:END -->
147
+
@@ -1,38 +1,38 @@
1
- <!-- FLASK:START -->
2
- # Flask Framework Rules
3
-
4
- **Language**: Python
5
- **Version**: Flask 3.0+
6
-
7
- ## Setup
8
-
9
- ```python
10
- from flask import Flask
11
- app = Flask(__name__)
12
- app.config.from_object('config.ProductionConfig')
13
-
14
- # Use Flask-SQLAlchemy for ORM
15
- # Use Flask-Migrate for migrations
16
- # Use Flask-Login for auth
17
- ```
18
-
19
- ## Quality Gates
20
-
21
- ```bash
22
- black .
23
- ruff check .
24
- pytest --cov=app
25
- ```
26
-
27
- ## Best Practices
28
-
29
- ✅ Use application factory pattern
30
- ✅ Enable CORS properly
31
- ✅ Use blueprints for organization
32
- ✅ Implement error handlers
33
-
34
- ❌ Don't use `debug=True` in production
35
- ❌ Don't store secrets in code
36
-
37
- <!-- FLASK:END -->
38
-
1
+ <!-- FLASK:START -->
2
+ # Flask Framework Rules
3
+
4
+ **Language**: Python
5
+ **Version**: Flask 3.0+
6
+
7
+ ## Setup
8
+
9
+ ```python
10
+ from flask import Flask
11
+ app = Flask(__name__)
12
+ app.config.from_object('config.ProductionConfig')
13
+
14
+ # Use Flask-SQLAlchemy for ORM
15
+ # Use Flask-Migrate for migrations
16
+ # Use Flask-Login for auth
17
+ ```
18
+
19
+ ## Quality Gates
20
+
21
+ ```bash
22
+ black .
23
+ ruff check .
24
+ pytest --cov=app
25
+ ```
26
+
27
+ ## Best Practices
28
+
29
+ ✅ Use application factory pattern
30
+ ✅ Enable CORS properly
31
+ ✅ Use blueprints for organization
32
+ ✅ Implement error handlers
33
+
34
+ ❌ Don't use `debug=True` in production
35
+ ❌ Don't store secrets in code
36
+
37
+ <!-- FLASK:END -->
38
+
@@ -1,55 +1,55 @@
1
- <!-- FLUTTER:START -->
2
- # Flutter Framework Rules
3
-
4
- **Language**: Dart
5
- **Version**: Flutter 3.10+
6
-
7
- ## Setup
8
-
9
- ```yaml
10
- # pubspec.yaml
11
- dependencies:
12
- flutter:
13
- sdk: flutter
14
- cupertino_icons: ^1.0.2
15
-
16
- dev_dependencies:
17
- flutter_test:
18
- sdk: flutter
19
- flutter_lints: ^2.0.0
20
- ```
21
-
22
- ## Quality Gates
23
-
24
- ```bash
25
- dart format --set-exit-if-changed .
26
- dart analyze --fatal-infos
27
- flutter test
28
- flutter build apk --release # Test build
29
- ```
30
-
31
- ## Best Practices
32
-
33
- ✅ Use StatelessWidget when possible
34
- ✅ Implement proper state management (Provider, Riverpod, Bloc)
35
- ✅ Use const constructors
36
- ✅ Optimize widget rebuilds
37
- ✅ Test on multiple devices
38
-
39
- ❌ Don't use `print()` in production
40
- ❌ Don't skip null safety
41
- ❌ Don't ignore platform differences
42
-
43
- ## Project Structure
44
-
45
- ```
46
- lib/
47
- ├── main.dart
48
- ├── models/
49
- ├── screens/
50
- ├── widgets/
51
- └── services/
52
- ```
53
-
54
- <!-- FLUTTER:END -->
55
-
1
+ <!-- FLUTTER:START -->
2
+ # Flutter Framework Rules
3
+
4
+ **Language**: Dart
5
+ **Version**: Flutter 3.10+
6
+
7
+ ## Setup
8
+
9
+ ```yaml
10
+ # pubspec.yaml
11
+ dependencies:
12
+ flutter:
13
+ sdk: flutter
14
+ cupertino_icons: ^1.0.2
15
+
16
+ dev_dependencies:
17
+ flutter_test:
18
+ sdk: flutter
19
+ flutter_lints: ^2.0.0
20
+ ```
21
+
22
+ ## Quality Gates
23
+
24
+ ```bash
25
+ dart format --set-exit-if-changed .
26
+ dart analyze --fatal-infos
27
+ flutter test
28
+ flutter build apk --release # Test build
29
+ ```
30
+
31
+ ## Best Practices
32
+
33
+ ✅ Use StatelessWidget when possible
34
+ ✅ Implement proper state management (Provider, Riverpod, Bloc)
35
+ ✅ Use const constructors
36
+ ✅ Optimize widget rebuilds
37
+ ✅ Test on multiple devices
38
+
39
+ ❌ Don't use `print()` in production
40
+ ❌ Don't skip null safety
41
+ ❌ Don't ignore platform differences
42
+
43
+ ## Project Structure
44
+
45
+ ```
46
+ lib/
47
+ ├── main.dart
48
+ ├── models/
49
+ ├── screens/
50
+ ├── widgets/
51
+ └── services/
52
+ ```
53
+
54
+ <!-- FLUTTER:END -->
55
+
@@ -1,32 +1,32 @@
1
- <!-- JQUERY:START -->
2
- # jQuery Framework Rules
3
-
4
- **Language**: JavaScript
5
- **Version**: jQuery 3.x+
6
-
7
- ## Setup
8
-
9
- ```html
10
- <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
11
- ```
12
-
13
- ## Best Practices
14
-
15
- ✅ Use modern JS alongside jQuery
16
- ✅ Minimize DOM manipulation
17
- ✅ Cache jQuery selectors
18
- ✅ Use event delegation
19
-
20
- ❌ Don't use jQuery for everything
21
- ❌ Don't pollute global scope
22
- ❌ Don't skip CSP headers
23
-
24
- ## Quality Gates
25
-
26
- ```bash
27
- eslint src/**/*.js
28
- jest
29
- ```
30
-
31
- <!-- JQUERY:END -->
32
-
1
+ <!-- JQUERY:START -->
2
+ # jQuery Framework Rules
3
+
4
+ **Language**: JavaScript
5
+ **Version**: jQuery 3.x+
6
+
7
+ ## Setup
8
+
9
+ ```html
10
+ <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
11
+ ```
12
+
13
+ ## Best Practices
14
+
15
+ ✅ Use modern JS alongside jQuery
16
+ ✅ Minimize DOM manipulation
17
+ ✅ Cache jQuery selectors
18
+ ✅ Use event delegation
19
+
20
+ ❌ Don't use jQuery for everything
21
+ ❌ Don't pollute global scope
22
+ ❌ Don't skip CSP headers
23
+
24
+ ## Quality Gates
25
+
26
+ ```bash
27
+ eslint src/**/*.js
28
+ jest
29
+ ```
30
+
31
+ <!-- JQUERY:END -->
32
+
@@ -1,38 +1,38 @@
1
- <!-- LARAVEL:START -->
2
- # Laravel Framework Rules
3
-
4
- **CRITICAL**: Laravel services must respect these conventions and quality checks.
5
-
6
- ## Quality Commands
7
- - Static analysis: `./vendor/bin/pint --test`
8
- - Lint style: `./vendor/bin/phpcs --standard=PSR12 app/`
9
- - Unit tests: `php artisan test`
10
- - Feature tests: `php artisan test --testsuite=Feature`
11
- - Coverage: ensure `php artisan test --coverage` ≥ 80%
12
-
13
- ## Project Structure
14
- - Keep HTTP controllers in `app/Http/Controllers`
15
- - Use form requests for validation in `app/Http/Requests`
16
- - Organize business logic in `app/Services`
17
- - Leverage repositories for data persistence where appropriate
18
- - Store queued jobs in `app/Jobs`
19
-
20
- ## Implementation Guidelines
21
- - Use migrations for every schema change (`php artisan make:migration`)
22
- - Keep Eloquent models lean; move heavy logic into services
23
- - Cache configuration after deployment (`php artisan config:cache`)
24
- - Register scheduled tasks in `app/Console/Kernel.php`
25
- - Ensure `app/Providers` registers new bindings/events
26
-
27
- ## Composer Hygiene
28
- ```bash
29
- composer install --no-dev --prefer-dist
30
- composer dump-autoload
31
- ```
32
-
33
- ## Additional Checks
34
- - Sync `.env.example` whenever new variables are introduced
35
- - Document API changes in `/docs/laravel-api.md`
36
- - Generate API resources via `php artisan make:resource`
37
-
38
- <!-- LARAVEL:END -->
1
+ <!-- LARAVEL:START -->
2
+ # Laravel Framework Rules
3
+
4
+ **CRITICAL**: Laravel services must respect these conventions and quality checks.
5
+
6
+ ## Quality Commands
7
+ - Static analysis: `./vendor/bin/pint --test`
8
+ - Lint style: `./vendor/bin/phpcs --standard=PSR12 app/`
9
+ - Unit tests: `php artisan test`
10
+ - Feature tests: `php artisan test --testsuite=Feature`
11
+ - Coverage: ensure `php artisan test --coverage` ≥ 80%
12
+
13
+ ## Project Structure
14
+ - Keep HTTP controllers in `app/Http/Controllers`
15
+ - Use form requests for validation in `app/Http/Requests`
16
+ - Organize business logic in `app/Services`
17
+ - Leverage repositories for data persistence where appropriate
18
+ - Store queued jobs in `app/Jobs`
19
+
20
+ ## Implementation Guidelines
21
+ - Use migrations for every schema change (`php artisan make:migration`)
22
+ - Keep Eloquent models lean; move heavy logic into services
23
+ - Cache configuration after deployment (`php artisan config:cache`)
24
+ - Register scheduled tasks in `app/Console/Kernel.php`
25
+ - Ensure `app/Providers` registers new bindings/events
26
+
27
+ ## Composer Hygiene
28
+ ```bash
29
+ composer install --no-dev --prefer-dist
30
+ composer dump-autoload
31
+ ```
32
+
33
+ ## Additional Checks
34
+ - Sync `.env.example` whenever new variables are introduced
35
+ - Document API changes in `/docs/laravel-api.md`
36
+ - Generate API resources via `php artisan make:resource`
37
+
38
+ <!-- LARAVEL:END -->