@hivehub/rulebook 4.1.0 → 4.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 (334) 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-memory-save.md +48 -48
  9. package/.claude/commands/rulebook-memory-search.md +47 -47
  10. package/.claude/commands/rulebook-task-apply.md +67 -67
  11. package/.claude/commands/rulebook-task-archive.md +70 -70
  12. package/.claude/commands/rulebook-task-create.md +93 -93
  13. package/.claude/commands/rulebook-task-list.md +42 -42
  14. package/.claude/commands/rulebook-task-show.md +52 -52
  15. package/.claude/commands/rulebook-task-validate.md +53 -53
  16. package/.claude-plugin/marketplace.json +28 -28
  17. package/.claude-plugin/plugin.json +8 -8
  18. package/dist/cli/commands.d.ts +18 -6
  19. package/dist/cli/commands.d.ts.map +1 -1
  20. package/dist/cli/commands.js +717 -406
  21. package/dist/cli/commands.js.map +1 -1
  22. package/dist/core/claude-mcp.d.ts +4 -2
  23. package/dist/core/claude-mcp.d.ts.map +1 -1
  24. package/dist/core/claude-mcp.js +14 -9
  25. package/dist/core/claude-mcp.js.map +1 -1
  26. package/dist/core/generator.d.ts.map +1 -1
  27. package/dist/core/generator.js +13 -0
  28. package/dist/core/generator.js.map +1 -1
  29. package/dist/core/indexer/background-indexer.d.ts.map +1 -1
  30. package/dist/core/indexer/background-indexer.js +26 -5
  31. package/dist/core/indexer/background-indexer.js.map +1 -1
  32. package/dist/core/indexer/file-parser.d.ts.map +1 -1
  33. package/dist/core/indexer/file-parser.js +1 -1
  34. package/dist/core/indexer/file-parser.js.map +1 -1
  35. package/dist/core/indexer/indexer-types.d.ts.map +1 -1
  36. package/dist/core/workspace/legacy-migrator.d.ts +29 -0
  37. package/dist/core/workspace/legacy-migrator.d.ts.map +1 -0
  38. package/dist/core/workspace/legacy-migrator.js +142 -0
  39. package/dist/core/workspace/legacy-migrator.js.map +1 -0
  40. package/dist/core/workspace/project-worker.d.ts +49 -0
  41. package/dist/core/workspace/project-worker.d.ts.map +1 -0
  42. package/dist/core/workspace/project-worker.js +108 -0
  43. package/dist/core/workspace/project-worker.js.map +1 -0
  44. package/dist/core/workspace/workspace-manager.d.ts +90 -0
  45. package/dist/core/workspace/workspace-manager.d.ts.map +1 -0
  46. package/dist/core/workspace/workspace-manager.js +337 -0
  47. package/dist/core/workspace/workspace-manager.js.map +1 -0
  48. package/dist/core/workspace/workspace-types.d.ts +37 -0
  49. package/dist/core/workspace/workspace-types.d.ts.map +1 -0
  50. package/dist/core/workspace/workspace-types.js +8 -0
  51. package/dist/core/workspace/workspace-types.js.map +1 -0
  52. package/dist/index.js +43 -7
  53. package/dist/index.js.map +1 -1
  54. package/dist/mcp/rulebook-server.d.ts.map +1 -1
  55. package/dist/mcp/rulebook-server.js +367 -100
  56. package/dist/mcp/rulebook-server.js.map +1 -1
  57. package/dist/memory/memory-manager.js +2 -2
  58. package/dist/memory/memory-manager.js.map +1 -1
  59. package/dist/memory/memory-search.js.map +1 -1
  60. package/dist/memory/memory-store.d.ts.map +1 -1
  61. package/dist/memory/memory-store.js +1 -1
  62. package/dist/memory/memory-store.js.map +1 -1
  63. package/dist/types.d.ts +1 -0
  64. package/dist/types.d.ts.map +1 -1
  65. package/package.json +22 -21
  66. package/templates/agents/implementer.md +35 -35
  67. package/templates/agents/researcher.md +34 -34
  68. package/templates/agents/team-lead.md +34 -34
  69. package/templates/agents/tester.md +42 -42
  70. package/templates/ci/rulebook-review.yml +26 -26
  71. package/templates/cli/AIDER.md +49 -49
  72. package/templates/cli/AMAZON_Q.md +25 -25
  73. package/templates/cli/AUGGIE.md +32 -32
  74. package/templates/cli/CLAUDE.md +117 -117
  75. package/templates/cli/CLINE.md +99 -99
  76. package/templates/cli/CODEBUDDY.md +20 -20
  77. package/templates/cli/CODEIUM.md +20 -20
  78. package/templates/cli/CODEX.md +21 -21
  79. package/templates/cli/CONTINUE.md +34 -34
  80. package/templates/cli/CURSOR_CLI.md +62 -62
  81. package/templates/cli/FACTORY.md +18 -18
  82. package/templates/cli/GEMINI.md +35 -35
  83. package/templates/cli/KILOCODE.md +18 -18
  84. package/templates/cli/OPENCODE.md +18 -18
  85. package/templates/cli/_GENERIC_TEMPLATE.md +29 -29
  86. package/templates/commands/rulebook-memory-save.md +48 -48
  87. package/templates/commands/rulebook-memory-search.md +47 -47
  88. package/templates/commands/rulebook-task-apply.md +67 -67
  89. package/templates/commands/rulebook-task-archive.md +94 -94
  90. package/templates/commands/rulebook-task-create.md +93 -93
  91. package/templates/commands/rulebook-task-list.md +42 -42
  92. package/templates/commands/rulebook-task-show.md +52 -52
  93. package/templates/commands/rulebook-task-validate.md +53 -53
  94. package/templates/core/AGENTS_LEAN.md +25 -25
  95. package/templates/core/AGENTS_OVERRIDE.md +16 -16
  96. package/templates/core/AGENT_AUTOMATION.md +288 -288
  97. package/templates/core/DAG.md +304 -304
  98. package/templates/core/DOCUMENTATION_RULES.md +36 -36
  99. package/templates/core/MULTI_AGENT.md +74 -74
  100. package/templates/core/PLANS.md +28 -28
  101. package/templates/core/QUALITY_ENFORCEMENT.md +68 -68
  102. package/templates/core/RALPH.md +471 -471
  103. package/templates/core/RULEBOOK.md +1935 -1935
  104. package/templates/core/WORKSPACE.md +69 -0
  105. package/templates/frameworks/ANGULAR.md +36 -36
  106. package/templates/frameworks/DJANGO.md +83 -83
  107. package/templates/frameworks/ELECTRON.md +147 -147
  108. package/templates/frameworks/FLASK.md +38 -38
  109. package/templates/frameworks/FLUTTER.md +55 -55
  110. package/templates/frameworks/JQUERY.md +32 -32
  111. package/templates/frameworks/LARAVEL.md +38 -38
  112. package/templates/frameworks/NESTJS.md +43 -43
  113. package/templates/frameworks/NEXTJS.md +127 -127
  114. package/templates/frameworks/NUXT.md +40 -40
  115. package/templates/frameworks/RAILS.md +66 -66
  116. package/templates/frameworks/REACT.md +38 -38
  117. package/templates/frameworks/REACT_NATIVE.md +47 -47
  118. package/templates/frameworks/SPRING.md +39 -39
  119. package/templates/frameworks/SYMFONY.md +36 -36
  120. package/templates/frameworks/VUE.md +36 -36
  121. package/templates/frameworks/ZEND.md +35 -35
  122. package/templates/git/CI_CD_PATTERNS.md +661 -661
  123. package/templates/git/GITHUB_ACTIONS.md +728 -728
  124. package/templates/git/GITLAB_CI.md +730 -730
  125. package/templates/git/GIT_WORKFLOW.md +1157 -1157
  126. package/templates/git/SECRETS_MANAGEMENT.md +585 -585
  127. package/templates/hooks/COMMIT_MSG.md +530 -530
  128. package/templates/hooks/POST_CHECKOUT.md +546 -546
  129. package/templates/hooks/PREPARE_COMMIT_MSG.md +619 -619
  130. package/templates/hooks/PRE_COMMIT.md +414 -414
  131. package/templates/hooks/PRE_PUSH.md +601 -601
  132. package/templates/ides/CONTINUE_RULES.md +16 -16
  133. package/templates/ides/COPILOT.md +37 -37
  134. package/templates/ides/COPILOT_INSTRUCTIONS.md +23 -23
  135. package/templates/ides/CURSOR.md +43 -43
  136. package/templates/ides/GEMINI_RULES.md +17 -17
  137. package/templates/ides/JETBRAINS_AI.md +35 -35
  138. package/templates/ides/REPLIT.md +36 -36
  139. package/templates/ides/TABNINE.md +29 -29
  140. package/templates/ides/VSCODE.md +40 -40
  141. package/templates/ides/WINDSURF.md +36 -36
  142. package/templates/ides/WINDSURF_RULES.md +14 -14
  143. package/templates/ides/ZED.md +32 -32
  144. package/templates/ides/cursor-mdc/go.mdc +24 -24
  145. package/templates/ides/cursor-mdc/python.mdc +24 -24
  146. package/templates/ides/cursor-mdc/quality.mdc +25 -25
  147. package/templates/ides/cursor-mdc/ralph.mdc +39 -39
  148. package/templates/ides/cursor-mdc/rulebook.mdc +38 -38
  149. package/templates/ides/cursor-mdc/rust.mdc +24 -24
  150. package/templates/ides/cursor-mdc/typescript.mdc +25 -25
  151. package/templates/languages/C.md +333 -333
  152. package/templates/languages/CPP.md +743 -743
  153. package/templates/languages/CSHARP.md +417 -417
  154. package/templates/languages/ELIXIR.md +454 -454
  155. package/templates/languages/ERLANG.md +361 -361
  156. package/templates/languages/GO.md +645 -645
  157. package/templates/languages/HASKELL.md +177 -177
  158. package/templates/languages/JAVA.md +607 -607
  159. package/templates/languages/JAVASCRIPT.md +631 -631
  160. package/templates/languages/JULIA.md +97 -97
  161. package/templates/languages/KOTLIN.md +511 -511
  162. package/templates/languages/LISP.md +100 -100
  163. package/templates/languages/LUA.md +74 -74
  164. package/templates/languages/OBJECTIVEC.md +90 -90
  165. package/templates/languages/PHP.md +416 -416
  166. package/templates/languages/PYTHON.md +682 -682
  167. package/templates/languages/RUBY.md +421 -421
  168. package/templates/languages/RUST.md +477 -477
  169. package/templates/languages/SAS.md +73 -73
  170. package/templates/languages/SCALA.md +348 -348
  171. package/templates/languages/SOLIDITY.md +580 -580
  172. package/templates/languages/SQL.md +137 -137
  173. package/templates/languages/SWIFT.md +466 -466
  174. package/templates/languages/TYPESCRIPT.md +591 -591
  175. package/templates/languages/ZIG.md +265 -265
  176. package/templates/modules/ATLASSIAN.md +255 -255
  177. package/templates/modules/CONTEXT7.md +54 -54
  178. package/templates/modules/FIGMA.md +267 -267
  179. package/templates/modules/GITHUB_MCP.md +64 -64
  180. package/templates/modules/GRAFANA.md +328 -328
  181. package/templates/modules/MEMORY.md +126 -126
  182. package/templates/modules/NOTION.md +247 -247
  183. package/templates/modules/PLAYWRIGHT.md +90 -90
  184. package/templates/modules/RULEBOOK_MCP.md +156 -156
  185. package/templates/modules/SERENA.md +337 -337
  186. package/templates/modules/SUPABASE.md +223 -223
  187. package/templates/modules/SYNAP.md +69 -69
  188. package/templates/modules/VECTORIZER.md +63 -63
  189. package/templates/modules/sequential-thinking.md +42 -42
  190. package/templates/ralph/ralph-history.bat +4 -4
  191. package/templates/ralph/ralph-history.sh +5 -5
  192. package/templates/ralph/ralph-init.bat +5 -5
  193. package/templates/ralph/ralph-init.sh +5 -5
  194. package/templates/ralph/ralph-pause.bat +5 -5
  195. package/templates/ralph/ralph-pause.sh +5 -5
  196. package/templates/ralph/ralph-run.bat +5 -5
  197. package/templates/ralph/ralph-run.sh +5 -5
  198. package/templates/ralph/ralph-status.bat +4 -4
  199. package/templates/ralph/ralph-status.sh +5 -5
  200. package/templates/services/AZURE_BLOB.md +184 -184
  201. package/templates/services/CASSANDRA.md +239 -239
  202. package/templates/services/DATADOG.md +26 -26
  203. package/templates/services/DOCKER.md +124 -124
  204. package/templates/services/DOCKER_COMPOSE.md +168 -168
  205. package/templates/services/DYNAMODB.md +308 -308
  206. package/templates/services/ELASTICSEARCH.md +347 -347
  207. package/templates/services/GCS.md +178 -178
  208. package/templates/services/HELM.md +194 -194
  209. package/templates/services/INFLUXDB.md +265 -265
  210. package/templates/services/KAFKA.md +341 -341
  211. package/templates/services/KUBERNETES.md +208 -208
  212. package/templates/services/MARIADB.md +183 -183
  213. package/templates/services/MEMCACHED.md +242 -242
  214. package/templates/services/MINIO.md +201 -201
  215. package/templates/services/MONGODB.md +268 -268
  216. package/templates/services/MYSQL.md +358 -358
  217. package/templates/services/NEO4J.md +247 -247
  218. package/templates/services/OPENTELEMETRY.md +25 -25
  219. package/templates/services/ORACLE.md +290 -290
  220. package/templates/services/PINO.md +24 -24
  221. package/templates/services/POSTGRESQL.md +326 -326
  222. package/templates/services/PROMETHEUS.md +33 -33
  223. package/templates/services/RABBITMQ.md +286 -286
  224. package/templates/services/REDIS.md +292 -292
  225. package/templates/services/S3.md +298 -298
  226. package/templates/services/SENTRY.md +23 -23
  227. package/templates/services/SQLITE.md +294 -294
  228. package/templates/services/SQLSERVER.md +294 -294
  229. package/templates/services/WINSTON.md +30 -30
  230. package/templates/skills/cli/aider/SKILL.md +59 -59
  231. package/templates/skills/cli/amazon-q/SKILL.md +35 -35
  232. package/templates/skills/cli/auggie/SKILL.md +42 -42
  233. package/templates/skills/cli/claude/SKILL.md +42 -42
  234. package/templates/skills/cli/cline/SKILL.md +42 -42
  235. package/templates/skills/cli/codebuddy/SKILL.md +30 -30
  236. package/templates/skills/cli/codeium/SKILL.md +30 -30
  237. package/templates/skills/cli/codex/SKILL.md +31 -31
  238. package/templates/skills/cli/continue/SKILL.md +44 -44
  239. package/templates/skills/cli/cursor-cli/SKILL.md +38 -38
  240. package/templates/skills/cli/factory/SKILL.md +28 -28
  241. package/templates/skills/cli/gemini/SKILL.md +45 -45
  242. package/templates/skills/cli/kilocode/SKILL.md +28 -28
  243. package/templates/skills/cli/opencode/SKILL.md +28 -28
  244. package/templates/skills/core/agent-automation/SKILL.md +194 -194
  245. package/templates/skills/core/dag/SKILL.md +314 -314
  246. package/templates/skills/core/documentation-rules/SKILL.md +46 -46
  247. package/templates/skills/core/quality-enforcement/SKILL.md +78 -78
  248. package/templates/skills/core/rulebook/SKILL.md +176 -176
  249. package/templates/skills/frameworks/angular/SKILL.md +46 -46
  250. package/templates/skills/frameworks/django/SKILL.md +93 -93
  251. package/templates/skills/frameworks/electron/SKILL.md +157 -157
  252. package/templates/skills/frameworks/flask/SKILL.md +48 -48
  253. package/templates/skills/frameworks/flutter/SKILL.md +65 -65
  254. package/templates/skills/frameworks/jquery/SKILL.md +42 -42
  255. package/templates/skills/frameworks/laravel/SKILL.md +48 -48
  256. package/templates/skills/frameworks/nestjs/SKILL.md +53 -53
  257. package/templates/skills/frameworks/nextjs/SKILL.md +137 -137
  258. package/templates/skills/frameworks/nuxt/SKILL.md +50 -50
  259. package/templates/skills/frameworks/rails/SKILL.md +76 -76
  260. package/templates/skills/frameworks/react/SKILL.md +48 -48
  261. package/templates/skills/frameworks/react-native/SKILL.md +57 -57
  262. package/templates/skills/frameworks/spring/SKILL.md +49 -49
  263. package/templates/skills/frameworks/symfony/SKILL.md +46 -46
  264. package/templates/skills/frameworks/vue/SKILL.md +46 -46
  265. package/templates/skills/frameworks/zend/SKILL.md +45 -45
  266. package/templates/skills/ides/copilot/SKILL.md +47 -47
  267. package/templates/skills/ides/cursor/SKILL.md +53 -53
  268. package/templates/skills/ides/jetbrains-ai/SKILL.md +45 -45
  269. package/templates/skills/ides/replit/SKILL.md +46 -46
  270. package/templates/skills/ides/tabnine/SKILL.md +39 -39
  271. package/templates/skills/ides/vscode/SKILL.md +50 -50
  272. package/templates/skills/ides/windsurf/SKILL.md +46 -46
  273. package/templates/skills/ides/zed/SKILL.md +42 -42
  274. package/templates/skills/languages/c/SKILL.md +343 -343
  275. package/templates/skills/languages/cpp/SKILL.md +753 -753
  276. package/templates/skills/languages/csharp/SKILL.md +427 -427
  277. package/templates/skills/languages/elixir/SKILL.md +464 -464
  278. package/templates/skills/languages/erlang/SKILL.md +371 -371
  279. package/templates/skills/languages/go/SKILL.md +655 -655
  280. package/templates/skills/languages/haskell/SKILL.md +187 -187
  281. package/templates/skills/languages/java/SKILL.md +617 -617
  282. package/templates/skills/languages/javascript/SKILL.md +641 -641
  283. package/templates/skills/languages/julia/SKILL.md +107 -107
  284. package/templates/skills/languages/kotlin/SKILL.md +521 -521
  285. package/templates/skills/languages/lisp/SKILL.md +110 -110
  286. package/templates/skills/languages/lua/SKILL.md +84 -84
  287. package/templates/skills/languages/objectivec/SKILL.md +100 -100
  288. package/templates/skills/languages/php/SKILL.md +426 -426
  289. package/templates/skills/languages/python/SKILL.md +692 -692
  290. package/templates/skills/languages/ruby/SKILL.md +431 -431
  291. package/templates/skills/languages/rust/SKILL.md +487 -487
  292. package/templates/skills/languages/sas/SKILL.md +83 -83
  293. package/templates/skills/languages/scala/SKILL.md +358 -358
  294. package/templates/skills/languages/solidity/SKILL.md +590 -590
  295. package/templates/skills/languages/sql/SKILL.md +147 -147
  296. package/templates/skills/languages/swift/SKILL.md +476 -476
  297. package/templates/skills/languages/typescript/SKILL.md +302 -302
  298. package/templates/skills/languages/zig/SKILL.md +275 -275
  299. package/templates/skills/modules/atlassian/SKILL.md +265 -265
  300. package/templates/skills/modules/context7/SKILL.md +64 -64
  301. package/templates/skills/modules/figma/SKILL.md +277 -277
  302. package/templates/skills/modules/github-mcp/SKILL.md +74 -74
  303. package/templates/skills/modules/grafana/SKILL.md +338 -338
  304. package/templates/skills/modules/memory/SKILL.md +73 -73
  305. package/templates/skills/modules/notion/SKILL.md +257 -257
  306. package/templates/skills/modules/playwright/SKILL.md +100 -100
  307. package/templates/skills/modules/rulebook-mcp/SKILL.md +166 -166
  308. package/templates/skills/modules/serena/SKILL.md +347 -347
  309. package/templates/skills/modules/supabase/SKILL.md +233 -233
  310. package/templates/skills/modules/synap/SKILL.md +79 -79
  311. package/templates/skills/modules/vectorizer/SKILL.md +73 -73
  312. package/templates/skills/services/azure-blob/SKILL.md +194 -194
  313. package/templates/skills/services/cassandra/SKILL.md +249 -249
  314. package/templates/skills/services/dynamodb/SKILL.md +318 -318
  315. package/templates/skills/services/elasticsearch/SKILL.md +357 -357
  316. package/templates/skills/services/gcs/SKILL.md +188 -188
  317. package/templates/skills/services/influxdb/SKILL.md +275 -275
  318. package/templates/skills/services/kafka/SKILL.md +351 -351
  319. package/templates/skills/services/mariadb/SKILL.md +193 -193
  320. package/templates/skills/services/memcached/SKILL.md +252 -252
  321. package/templates/skills/services/minio/SKILL.md +211 -211
  322. package/templates/skills/services/mongodb/SKILL.md +278 -278
  323. package/templates/skills/services/mysql/SKILL.md +368 -368
  324. package/templates/skills/services/neo4j/SKILL.md +257 -257
  325. package/templates/skills/services/oracle/SKILL.md +300 -300
  326. package/templates/skills/services/postgresql/SKILL.md +336 -336
  327. package/templates/skills/services/rabbitmq/SKILL.md +296 -296
  328. package/templates/skills/services/redis/SKILL.md +302 -302
  329. package/templates/skills/services/s3/SKILL.md +308 -308
  330. package/templates/skills/services/sqlite/SKILL.md +304 -304
  331. package/templates/skills/services/sqlserver/SKILL.md +304 -304
  332. package/templates/skills/workflows/ralph/SKILL.md +309 -309
  333. package/templates/skills/workflows/ralph/install.sh +87 -87
  334. package/templates/skills/workflows/ralph/manifest.json +158 -158
@@ -1,309 +1,309 @@
1
- ---
2
- name: "Ralph Autonomous Loop"
3
- description: "Autonomous AI agent loop for iterative task implementation (@hivehub/rulebook ralph)"
4
- version: "1.0.0"
5
- category: "workflow"
6
- author: "Rulebook"
7
- tags: ["autonomous", "ralph", "iterative", "workflow"]
8
- dependencies: ["rulebook"]
9
- conflicts: []
10
- ---
11
- <!-- RALPH:START -->
12
- # Ralph Autonomous Loop Skill
13
-
14
- **Purpose**: Automate iterative feature implementation using Ralph's autonomous agent loop pattern.
15
-
16
- ## Installation
17
-
18
- Ralph is installed as part of @hivehub/rulebook:
19
-
20
- ```bash
21
- npm install -g @hivehub/rulebook
22
- # or
23
- npx @hivehub/rulebook init
24
- ```
25
-
26
- ## Quick Start
27
-
28
- ### Step 1: Initialize Ralph for Your Project
29
-
30
- ```bash
31
- # Create task specifications in .rulebook/tasks/
32
- rulebook task create my-feature
33
-
34
- # Initialize Ralph
35
- rulebook ralph init
36
-
37
- # This creates:
38
- # - .rulebook-ralph/prd.json (task specifications in PRD format)
39
- # - .rulebook-ralph/progress.txt (learning log across iterations)
40
- # - .rulebook-ralph/history/ (per-iteration metadata)
41
- ```
42
-
43
- ### Step 2: Run Autonomous Loop
44
-
45
- ```bash
46
- # Run with default settings
47
- rulebook ralph run
48
-
49
- # Or with custom iterations and tool
50
- rulebook ralph run --max-iterations 10 --tool claude
51
- ```
52
-
53
- ### Step 3: Monitor Progress
54
-
55
- ```bash
56
- # Check current status
57
- rulebook ralph status
58
-
59
- # View iteration history
60
- rulebook ralph history
61
-
62
- # See learnings discovered
63
- rulebook ralph history --learnings
64
- ```
65
-
66
- ## Understanding the Ralph Loop
67
-
68
- ### Loop Workflow
69
-
70
- ```
71
- 1. Pick highest-priority incomplete task from PRD
72
- 2. Execute AI agent (Claude Code, Cursor, or Gemini)
73
- - Provide full PRD context
74
- - Include progress.txt (learnings from past iterations)
75
- - Include git history (recent commits)
76
- 3. Run quality gates (type-check, lint, tests)
77
- 4. If success:
78
- - Commit changes with iteration metadata
79
- - Update task status to completed
80
- - Record learnings to progress.txt
81
- 5. If failure:
82
- - Mark task as blocked
83
- - Record error and blockers to progress.txt
84
- 6. Repeat until all tasks completed or max iterations reached
85
- ```
86
-
87
- ### Fresh Context Per Iteration
88
-
89
- Each iteration starts fresh:
90
- - New AI agent instance (clean context)
91
- - Memory persists through: git commits, PRD.json, progress.txt
92
- - AI agent reads past learnings to avoid repeating mistakes
93
-
94
- This pattern prevents "context degradation" where AI agent loses track of architectural decisions across many iterations.
95
-
96
- ## Configuration
97
-
98
- ### .rulebook Configuration
99
-
100
- ```json
101
- {
102
- "ralph": {
103
- "enabled": false,
104
- "maxIterations": 10,
105
- "tool": "claude",
106
- "maxContextLoss": 3
107
- }
108
- }
109
- ```
110
-
111
- **Options**:
112
- - `enabled`: Enable Ralph autonomous loop (default: false)
113
- - `maxIterations`: Max iterations before stopping (default: 10)
114
- - `tool`: AI CLI tool to use (default: "claude")
115
- - `"claude"` — Claude Code CLI
116
- - `"amp"` — Amp CLI (for Cursor)
117
- - `"gemini"` — Gemini CLI
118
- - `maxContextLoss`: Tolerance for incomplete agent outputs (default: 3)
119
-
120
- ### PRD Format (.rulebook-ralph/prd.json)
121
-
122
- ```json
123
- {
124
- "tasks": [
125
- {
126
- "id": "task-id",
127
- "title": "Task Title",
128
- "description": "What needs to be done",
129
- "priority": 1,
130
- "status": "pending",
131
- "acceptanceCriteria": [
132
- "Criterion 1",
133
- "Criterion 2"
134
- ],
135
- "estimatedComplexity": "medium"
136
- }
137
- ]
138
- }
139
- ```
140
-
141
- ### Progress Log (.rulebook-ralph/progress.txt)
142
-
143
- Append-only learning log:
144
-
145
- ```
146
- === Iteration 1 ===
147
- Task: implement-auth
148
- Tool: Claude Code
149
- Result: SUCCESS
150
- Learnings:
151
- - Discovered OAuth token refresh pattern (30-min expiry)
152
- - Gotcha: Tokens expire silently, need header check before retry
153
- - Pattern: Use interceptor middleware for transparent refresh
154
-
155
- === Iteration 2 ===
156
- Task: add-caching
157
- Tool: Claude Code
158
- Result: FAILED - Tests failed
159
- Error: Cache invalidation not handling concurrent updates
160
- Blockers: Need to implement distributed cache locking
161
- ```
162
-
163
- ## Usage Patterns
164
-
165
- ### Pattern 1: Progressive Feature Implementation
166
-
167
- Break large features into tasks:
168
-
169
- ```bash
170
- # Create tasks for phases
171
- rulebook task create setup-database
172
- rulebook task create create-api-endpoints
173
- rulebook task create add-authentication
174
- rulebook task create write-tests
175
-
176
- # Initialize Ralph
177
- rulebook ralph init
178
-
179
- # Run autonomous loop — implements all tasks iteratively
180
- rulebook ralph run --max-iterations 20
181
- ```
182
-
183
- ### Pattern 2: Learning Across Iterations
184
-
185
- Ralph learns from past iterations:
186
-
187
- 1. **Iteration 1**: Implements feature A, discovers pattern X
188
- 2. **Progress.txt updated**: Records pattern X
189
- 3. **Iteration 2**: Reads progress.txt, applies pattern X to feature B
190
- 4. **Iteration 3+**: Builds on discovered patterns
191
-
192
- ### Pattern 3: Pause and Resume
193
-
194
- Stop loop gracefully and resume later:
195
-
196
- ```bash
197
- # Start autonomous loop
198
- rulebook ralph run --max-iterations 100
199
-
200
- # (User presses Ctrl+C)
201
- # Loop pauses, state saved
202
-
203
- # Resume later
204
- rulebook ralph resume
205
-
206
- # Continues from last incomplete task with full history
207
- ```
208
-
209
- ## Quality Gates
210
-
211
- Ralph enforces quality checks after each iteration:
212
-
213
- ```bash
214
- # After each implementation, Ralph runs:
215
- npm run type-check # TypeScript compilation
216
- npm run lint # ESLint (0 warnings)
217
- npm run test # All tests (100% pass)
218
- npm run test:coverage # Coverage threshold met (95%)
219
- ```
220
-
221
- **If ANY gate fails**:
222
- - Task marked as `blocked` with error details
223
- - Error recorded to progress.txt
224
- - Loop continues to next task (unless `--strict` mode)
225
-
226
- ## MCP Integration
227
-
228
- Use Ralph via Model Context Protocol:
229
-
230
- ```javascript
231
- // Initialize Ralph
232
- rulebook_ralph_init({ force: false })
233
- → Returns: { success: true, taskCount: 5, prdPath: "..." }
234
-
235
- // Start autonomous loop
236
- rulebook_ralph_run({ maxIterations: 10, tool: "claude" })
237
- → Returns: { success: true, loopId: "loop-123", status: "running" }
238
-
239
- // Query loop status
240
- rulebook_ralph_status()
241
- → Returns: { loopStatus: "running", iteration: 5, currentTask: "task-id", ... }
242
-
243
- // Get iteration history
244
- rulebook_ralph_get_iteration_history({ limit: 10 })
245
- → Returns: { iterations: [...], total: 12 }
246
- ```
247
-
248
- ## Best Practices
249
-
250
- ### DO ✅
251
-
252
- - **Break features into right-sized tasks**: 1-2 context windows each
253
- - **Write clear acceptance criteria**: AI uses these to validate completion
254
- - **Monitor iteration history**: Review learnings and errors
255
- - **Run manual testing**: Ralph is automated but human review is important
256
- - **Commit frequently**: Each iteration commits, creating audit trail
257
- - **Use meaningful task IDs**: Descriptive names help AI understand context
258
-
259
- ### DON'T ❌
260
-
261
- - **Don't create huge tasks**: "Build entire backend" won't fit in one iteration
262
- - **Don't skip acceptance criteria**: AI needs clear completion signals
263
- - **Don't ignore blocked tasks**: Review errors and adjust task sizing
264
- - **Don't run without version control**: You need git history for learning
265
- - **Don't disable quality gates**: Tests catch failures early
266
-
267
- ## Troubleshooting
268
-
269
- ### Loop Stops Early
270
-
271
- **Problem**: Ralph stops before reaching max iterations
272
- **Cause**: All tasks completed (success!) or multiple blockers
273
- **Solution**: Check `rulebook ralph history` for blockers
274
-
275
- ### Same Task Keeps Failing
276
-
277
- **Problem**: Task marked blocked multiple times
278
- **Cause**: Task too large, acceptance criteria unclear, or AI context insufficient
279
- **Solution**:
280
- 1. Break task into smaller subtasks
281
- 2. Clarify acceptance criteria
282
- 3. Add examples to task spec
283
-
284
- ### Quality Gates Failing
285
-
286
- **Problem**: Type-check, lint, or tests fail after implementation
287
- **Cause**: AI-generated code doesn't meet project standards
288
- **Solution**:
289
- 1. Review error details in progress.txt
290
- 2. Update AGENTS.md with clearer standards
291
- 3. Provide more examples in task specs
292
-
293
- ## Next Steps
294
-
295
- 1. **Create tasks**: `rulebook task create <task-id>` (multiple times)
296
- 2. **Initialize Ralph**: `rulebook ralph init`
297
- 3. **Run loop**: `rulebook ralph run --max-iterations N`
298
- 4. **Monitor**: `rulebook ralph status` and `rulebook ralph history`
299
- 5. **Review**: Check generated code and learnings
300
- 6. **Deploy**: Code is committed and ready
301
-
302
- ## References
303
-
304
- - **Ralph Pattern**: https://github.com/snarktank/ralph
305
- - **Task Management**: See `RULEBOOK.md` in AGENTS.md
306
- - **Rulebook CLI**: `rulebook --help`
307
- - **MCP Server**: `rulebook-mcp` (stdio transport)
308
-
309
- <!-- RALPH:END -->
1
+ ---
2
+ name: "Ralph Autonomous Loop"
3
+ description: "Autonomous AI agent loop for iterative task implementation (@hivehub/rulebook ralph)"
4
+ version: "1.0.0"
5
+ category: "workflow"
6
+ author: "Rulebook"
7
+ tags: ["autonomous", "ralph", "iterative", "workflow"]
8
+ dependencies: ["rulebook"]
9
+ conflicts: []
10
+ ---
11
+ <!-- RALPH:START -->
12
+ # Ralph Autonomous Loop Skill
13
+
14
+ **Purpose**: Automate iterative feature implementation using Ralph's autonomous agent loop pattern.
15
+
16
+ ## Installation
17
+
18
+ Ralph is installed as part of @hivehub/rulebook:
19
+
20
+ ```bash
21
+ npm install -g @hivehub/rulebook
22
+ # or
23
+ npx @hivehub/rulebook init
24
+ ```
25
+
26
+ ## Quick Start
27
+
28
+ ### Step 1: Initialize Ralph for Your Project
29
+
30
+ ```bash
31
+ # Create task specifications in .rulebook/tasks/
32
+ rulebook task create my-feature
33
+
34
+ # Initialize Ralph
35
+ rulebook ralph init
36
+
37
+ # This creates:
38
+ # - .rulebook-ralph/prd.json (task specifications in PRD format)
39
+ # - .rulebook-ralph/progress.txt (learning log across iterations)
40
+ # - .rulebook-ralph/history/ (per-iteration metadata)
41
+ ```
42
+
43
+ ### Step 2: Run Autonomous Loop
44
+
45
+ ```bash
46
+ # Run with default settings
47
+ rulebook ralph run
48
+
49
+ # Or with custom iterations and tool
50
+ rulebook ralph run --max-iterations 10 --tool claude
51
+ ```
52
+
53
+ ### Step 3: Monitor Progress
54
+
55
+ ```bash
56
+ # Check current status
57
+ rulebook ralph status
58
+
59
+ # View iteration history
60
+ rulebook ralph history
61
+
62
+ # See learnings discovered
63
+ rulebook ralph history --learnings
64
+ ```
65
+
66
+ ## Understanding the Ralph Loop
67
+
68
+ ### Loop Workflow
69
+
70
+ ```
71
+ 1. Pick highest-priority incomplete task from PRD
72
+ 2. Execute AI agent (Claude Code, Cursor, or Gemini)
73
+ - Provide full PRD context
74
+ - Include progress.txt (learnings from past iterations)
75
+ - Include git history (recent commits)
76
+ 3. Run quality gates (type-check, lint, tests)
77
+ 4. If success:
78
+ - Commit changes with iteration metadata
79
+ - Update task status to completed
80
+ - Record learnings to progress.txt
81
+ 5. If failure:
82
+ - Mark task as blocked
83
+ - Record error and blockers to progress.txt
84
+ 6. Repeat until all tasks completed or max iterations reached
85
+ ```
86
+
87
+ ### Fresh Context Per Iteration
88
+
89
+ Each iteration starts fresh:
90
+ - New AI agent instance (clean context)
91
+ - Memory persists through: git commits, PRD.json, progress.txt
92
+ - AI agent reads past learnings to avoid repeating mistakes
93
+
94
+ This pattern prevents "context degradation" where AI agent loses track of architectural decisions across many iterations.
95
+
96
+ ## Configuration
97
+
98
+ ### .rulebook Configuration
99
+
100
+ ```json
101
+ {
102
+ "ralph": {
103
+ "enabled": false,
104
+ "maxIterations": 10,
105
+ "tool": "claude",
106
+ "maxContextLoss": 3
107
+ }
108
+ }
109
+ ```
110
+
111
+ **Options**:
112
+ - `enabled`: Enable Ralph autonomous loop (default: false)
113
+ - `maxIterations`: Max iterations before stopping (default: 10)
114
+ - `tool`: AI CLI tool to use (default: "claude")
115
+ - `"claude"` — Claude Code CLI
116
+ - `"amp"` — Amp CLI (for Cursor)
117
+ - `"gemini"` — Gemini CLI
118
+ - `maxContextLoss`: Tolerance for incomplete agent outputs (default: 3)
119
+
120
+ ### PRD Format (.rulebook-ralph/prd.json)
121
+
122
+ ```json
123
+ {
124
+ "tasks": [
125
+ {
126
+ "id": "task-id",
127
+ "title": "Task Title",
128
+ "description": "What needs to be done",
129
+ "priority": 1,
130
+ "status": "pending",
131
+ "acceptanceCriteria": [
132
+ "Criterion 1",
133
+ "Criterion 2"
134
+ ],
135
+ "estimatedComplexity": "medium"
136
+ }
137
+ ]
138
+ }
139
+ ```
140
+
141
+ ### Progress Log (.rulebook-ralph/progress.txt)
142
+
143
+ Append-only learning log:
144
+
145
+ ```
146
+ === Iteration 1 ===
147
+ Task: implement-auth
148
+ Tool: Claude Code
149
+ Result: SUCCESS
150
+ Learnings:
151
+ - Discovered OAuth token refresh pattern (30-min expiry)
152
+ - Gotcha: Tokens expire silently, need header check before retry
153
+ - Pattern: Use interceptor middleware for transparent refresh
154
+
155
+ === Iteration 2 ===
156
+ Task: add-caching
157
+ Tool: Claude Code
158
+ Result: FAILED - Tests failed
159
+ Error: Cache invalidation not handling concurrent updates
160
+ Blockers: Need to implement distributed cache locking
161
+ ```
162
+
163
+ ## Usage Patterns
164
+
165
+ ### Pattern 1: Progressive Feature Implementation
166
+
167
+ Break large features into tasks:
168
+
169
+ ```bash
170
+ # Create tasks for phases
171
+ rulebook task create setup-database
172
+ rulebook task create create-api-endpoints
173
+ rulebook task create add-authentication
174
+ rulebook task create write-tests
175
+
176
+ # Initialize Ralph
177
+ rulebook ralph init
178
+
179
+ # Run autonomous loop — implements all tasks iteratively
180
+ rulebook ralph run --max-iterations 20
181
+ ```
182
+
183
+ ### Pattern 2: Learning Across Iterations
184
+
185
+ Ralph learns from past iterations:
186
+
187
+ 1. **Iteration 1**: Implements feature A, discovers pattern X
188
+ 2. **Progress.txt updated**: Records pattern X
189
+ 3. **Iteration 2**: Reads progress.txt, applies pattern X to feature B
190
+ 4. **Iteration 3+**: Builds on discovered patterns
191
+
192
+ ### Pattern 3: Pause and Resume
193
+
194
+ Stop loop gracefully and resume later:
195
+
196
+ ```bash
197
+ # Start autonomous loop
198
+ rulebook ralph run --max-iterations 100
199
+
200
+ # (User presses Ctrl+C)
201
+ # Loop pauses, state saved
202
+
203
+ # Resume later
204
+ rulebook ralph resume
205
+
206
+ # Continues from last incomplete task with full history
207
+ ```
208
+
209
+ ## Quality Gates
210
+
211
+ Ralph enforces quality checks after each iteration:
212
+
213
+ ```bash
214
+ # After each implementation, Ralph runs:
215
+ npm run type-check # TypeScript compilation
216
+ npm run lint # ESLint (0 warnings)
217
+ npm run test # All tests (100% pass)
218
+ npm run test:coverage # Coverage threshold met (95%)
219
+ ```
220
+
221
+ **If ANY gate fails**:
222
+ - Task marked as `blocked` with error details
223
+ - Error recorded to progress.txt
224
+ - Loop continues to next task (unless `--strict` mode)
225
+
226
+ ## MCP Integration
227
+
228
+ Use Ralph via Model Context Protocol:
229
+
230
+ ```javascript
231
+ // Initialize Ralph
232
+ rulebook_ralph_init({ force: false })
233
+ → Returns: { success: true, taskCount: 5, prdPath: "..." }
234
+
235
+ // Start autonomous loop
236
+ rulebook_ralph_run({ maxIterations: 10, tool: "claude" })
237
+ → Returns: { success: true, loopId: "loop-123", status: "running" }
238
+
239
+ // Query loop status
240
+ rulebook_ralph_status()
241
+ → Returns: { loopStatus: "running", iteration: 5, currentTask: "task-id", ... }
242
+
243
+ // Get iteration history
244
+ rulebook_ralph_get_iteration_history({ limit: 10 })
245
+ → Returns: { iterations: [...], total: 12 }
246
+ ```
247
+
248
+ ## Best Practices
249
+
250
+ ### DO ✅
251
+
252
+ - **Break features into right-sized tasks**: 1-2 context windows each
253
+ - **Write clear acceptance criteria**: AI uses these to validate completion
254
+ - **Monitor iteration history**: Review learnings and errors
255
+ - **Run manual testing**: Ralph is automated but human review is important
256
+ - **Commit frequently**: Each iteration commits, creating audit trail
257
+ - **Use meaningful task IDs**: Descriptive names help AI understand context
258
+
259
+ ### DON'T ❌
260
+
261
+ - **Don't create huge tasks**: "Build entire backend" won't fit in one iteration
262
+ - **Don't skip acceptance criteria**: AI needs clear completion signals
263
+ - **Don't ignore blocked tasks**: Review errors and adjust task sizing
264
+ - **Don't run without version control**: You need git history for learning
265
+ - **Don't disable quality gates**: Tests catch failures early
266
+
267
+ ## Troubleshooting
268
+
269
+ ### Loop Stops Early
270
+
271
+ **Problem**: Ralph stops before reaching max iterations
272
+ **Cause**: All tasks completed (success!) or multiple blockers
273
+ **Solution**: Check `rulebook ralph history` for blockers
274
+
275
+ ### Same Task Keeps Failing
276
+
277
+ **Problem**: Task marked blocked multiple times
278
+ **Cause**: Task too large, acceptance criteria unclear, or AI context insufficient
279
+ **Solution**:
280
+ 1. Break task into smaller subtasks
281
+ 2. Clarify acceptance criteria
282
+ 3. Add examples to task spec
283
+
284
+ ### Quality Gates Failing
285
+
286
+ **Problem**: Type-check, lint, or tests fail after implementation
287
+ **Cause**: AI-generated code doesn't meet project standards
288
+ **Solution**:
289
+ 1. Review error details in progress.txt
290
+ 2. Update AGENTS.md with clearer standards
291
+ 3. Provide more examples in task specs
292
+
293
+ ## Next Steps
294
+
295
+ 1. **Create tasks**: `rulebook task create <task-id>` (multiple times)
296
+ 2. **Initialize Ralph**: `rulebook ralph init`
297
+ 3. **Run loop**: `rulebook ralph run --max-iterations N`
298
+ 4. **Monitor**: `rulebook ralph status` and `rulebook ralph history`
299
+ 5. **Review**: Check generated code and learnings
300
+ 6. **Deploy**: Code is committed and ready
301
+
302
+ ## References
303
+
304
+ - **Ralph Pattern**: https://github.com/snarktank/ralph
305
+ - **Task Management**: See `RULEBOOK.md` in AGENTS.md
306
+ - **Rulebook CLI**: `rulebook --help`
307
+ - **MCP Server**: `rulebook-mcp` (stdio transport)
308
+
309
+ <!-- RALPH:END -->