@lavralabs/lavra 0.7.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 (452) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +159 -0
  3. package/bin/install.js +302 -0
  4. package/bin/plan-export.js +300 -0
  5. package/bin/plan-view.js +695 -0
  6. package/install.sh +136 -0
  7. package/package.json +28 -0
  8. package/plugins/lavra/.claude-plugin/plugin.json +22 -0
  9. package/plugins/lavra/.mcp.json +8 -0
  10. package/plugins/lavra/README.md +125 -0
  11. package/plugins/lavra/agents/design/design-implementation-reviewer.md +123 -0
  12. package/plugins/lavra/agents/design/design-iterator.md +219 -0
  13. package/plugins/lavra/agents/design/figma-design-sync.md +212 -0
  14. package/plugins/lavra/agents/docs/ankane-readme-writer.md +90 -0
  15. package/plugins/lavra/agents/research/best-practices-researcher.md +131 -0
  16. package/plugins/lavra/agents/research/framework-docs-researcher.md +111 -0
  17. package/plugins/lavra/agents/research/git-history-analyzer.md +73 -0
  18. package/plugins/lavra/agents/research/learnings-researcher.md +255 -0
  19. package/plugins/lavra/agents/research/repo-research-analyst.md +157 -0
  20. package/plugins/lavra/agents/review/agent-native-reviewer.md +274 -0
  21. package/plugins/lavra/agents/review/architecture-strategist.md +82 -0
  22. package/plugins/lavra/agents/review/code-simplicity-reviewer.md +109 -0
  23. package/plugins/lavra/agents/review/data-integrity-guardian.md +89 -0
  24. package/plugins/lavra/agents/review/data-migration-expert.md +118 -0
  25. package/plugins/lavra/agents/review/deployment-verification-agent.md +178 -0
  26. package/plugins/lavra/agents/review/dhh-rails-reviewer.md +94 -0
  27. package/plugins/lavra/agents/review/goal-verifier.md +109 -0
  28. package/plugins/lavra/agents/review/julik-frontend-races-reviewer.md +239 -0
  29. package/plugins/lavra/agents/review/kieran-python-reviewer.md +148 -0
  30. package/plugins/lavra/agents/review/kieran-rails-reviewer.md +130 -0
  31. package/plugins/lavra/agents/review/kieran-typescript-reviewer.md +139 -0
  32. package/plugins/lavra/agents/review/migration-drift-detector.md +307 -0
  33. package/plugins/lavra/agents/review/pattern-recognition-specialist.md +87 -0
  34. package/plugins/lavra/agents/review/performance-oracle.md +154 -0
  35. package/plugins/lavra/agents/review/security-sentinel.md +125 -0
  36. package/plugins/lavra/agents/workflow/bug-reproduction-validator.md +119 -0
  37. package/plugins/lavra/agents/workflow/every-style-editor.md +97 -0
  38. package/plugins/lavra/agents/workflow/lint.md +30 -0
  39. package/plugins/lavra/agents/workflow/pr-comment-resolver.md +95 -0
  40. package/plugins/lavra/agents/workflow/spec-flow-analyzer.md +156 -0
  41. package/plugins/lavra/commands/changelog.md +149 -0
  42. package/plugins/lavra/commands/heal-skill.md +130 -0
  43. package/plugins/lavra/commands/lavra-brainstorm.md +388 -0
  44. package/plugins/lavra/commands/lavra-ceo-review.md +388 -0
  45. package/plugins/lavra/commands/lavra-checkpoint.md +162 -0
  46. package/plugins/lavra/commands/lavra-design.md +621 -0
  47. package/plugins/lavra/commands/lavra-eng-review.md +262 -0
  48. package/plugins/lavra/commands/lavra-import.md +194 -0
  49. package/plugins/lavra/commands/lavra-learn.md +176 -0
  50. package/plugins/lavra/commands/lavra-plan.md +515 -0
  51. package/plugins/lavra/commands/lavra-qa.md +357 -0
  52. package/plugins/lavra/commands/lavra-quick.md +178 -0
  53. package/plugins/lavra/commands/lavra-recall.md +279 -0
  54. package/plugins/lavra/commands/lavra-research.md +267 -0
  55. package/plugins/lavra/commands/lavra-retro.md +400 -0
  56. package/plugins/lavra/commands/lavra-review.md +401 -0
  57. package/plugins/lavra/commands/lavra-ship.md +330 -0
  58. package/plugins/lavra/commands/lavra-triage.md +159 -0
  59. package/plugins/lavra/commands/lavra-work-ralph.md +521 -0
  60. package/plugins/lavra/commands/lavra-work-teams.md +504 -0
  61. package/plugins/lavra/commands/lavra-work.md +1019 -0
  62. package/plugins/lavra/commands/optional/agent-native-audit.md +282 -0
  63. package/plugins/lavra/commands/optional/feature-video.md +262 -0
  64. package/plugins/lavra/commands/optional/generate-command.md +146 -0
  65. package/plugins/lavra/commands/optional/reproduce-bug.md +97 -0
  66. package/plugins/lavra/commands/optional/xcode-test.md +287 -0
  67. package/plugins/lavra/commands/report-bug.md +155 -0
  68. package/plugins/lavra/commands/test-browser.md +305 -0
  69. package/plugins/lavra/cortex/agents/design/design-implementation-reviewer.md +127 -0
  70. package/plugins/lavra/cortex/agents/design/design-iterator.md +222 -0
  71. package/plugins/lavra/cortex/agents/design/figma-design-sync.md +215 -0
  72. package/plugins/lavra/cortex/agents/docs/ankane-readme-writer.md +93 -0
  73. package/plugins/lavra/cortex/agents/research/best-practices-researcher.md +135 -0
  74. package/plugins/lavra/cortex/agents/research/framework-docs-researcher.md +115 -0
  75. package/plugins/lavra/cortex/agents/research/git-history-analyzer.md +77 -0
  76. package/plugins/lavra/cortex/agents/research/learnings-researcher.md +259 -0
  77. package/plugins/lavra/cortex/agents/research/repo-research-analyst.md +161 -0
  78. package/plugins/lavra/cortex/agents/review/agent-native-reviewer.md +278 -0
  79. package/plugins/lavra/cortex/agents/review/architecture-strategist.md +86 -0
  80. package/plugins/lavra/cortex/agents/review/code-simplicity-reviewer.md +113 -0
  81. package/plugins/lavra/cortex/agents/review/data-integrity-guardian.md +93 -0
  82. package/plugins/lavra/cortex/agents/review/data-migration-expert.md +122 -0
  83. package/plugins/lavra/cortex/agents/review/deployment-verification-agent.md +182 -0
  84. package/plugins/lavra/cortex/agents/review/dhh-rails-reviewer.md +98 -0
  85. package/plugins/lavra/cortex/agents/review/goal-verifier.md +113 -0
  86. package/plugins/lavra/cortex/agents/review/julik-frontend-races-reviewer.md +243 -0
  87. package/plugins/lavra/cortex/agents/review/kieran-python-reviewer.md +152 -0
  88. package/plugins/lavra/cortex/agents/review/kieran-rails-reviewer.md +134 -0
  89. package/plugins/lavra/cortex/agents/review/kieran-typescript-reviewer.md +143 -0
  90. package/plugins/lavra/cortex/agents/review/migration-drift-detector.md +311 -0
  91. package/plugins/lavra/cortex/agents/review/pattern-recognition-specialist.md +91 -0
  92. package/plugins/lavra/cortex/agents/review/performance-oracle.md +158 -0
  93. package/plugins/lavra/cortex/agents/review/security-sentinel.md +129 -0
  94. package/plugins/lavra/cortex/agents/workflow/bug-reproduction-validator.md +123 -0
  95. package/plugins/lavra/cortex/agents/workflow/every-style-editor.md +101 -0
  96. package/plugins/lavra/cortex/agents/workflow/lint.md +33 -0
  97. package/plugins/lavra/cortex/agents/workflow/pr-comment-resolver.md +98 -0
  98. package/plugins/lavra/cortex/agents/workflow/spec-flow-analyzer.md +160 -0
  99. package/plugins/lavra/cortex/commands/agent-native-audit.md +286 -0
  100. package/plugins/lavra/cortex/commands/changelog.md +153 -0
  101. package/plugins/lavra/cortex/commands/create-agent-skill.md +21 -0
  102. package/plugins/lavra/cortex/commands/deploy-docs.md +69 -0
  103. package/plugins/lavra/cortex/commands/feature-video.md +266 -0
  104. package/plugins/lavra/cortex/commands/generate-command.md +150 -0
  105. package/plugins/lavra/cortex/commands/heal-skill.md +134 -0
  106. package/plugins/lavra/cortex/commands/lavra-brainstorm.md +392 -0
  107. package/plugins/lavra/cortex/commands/lavra-ceo-review.md +392 -0
  108. package/plugins/lavra/cortex/commands/lavra-checkpoint.md +166 -0
  109. package/plugins/lavra/cortex/commands/lavra-compound.md +168 -0
  110. package/plugins/lavra/cortex/commands/lavra-deepen.md +389 -0
  111. package/plugins/lavra/cortex/commands/lavra-design.md +625 -0
  112. package/plugins/lavra/cortex/commands/lavra-eng-review.md +266 -0
  113. package/plugins/lavra/cortex/commands/lavra-import.md +198 -0
  114. package/plugins/lavra/cortex/commands/lavra-learn.md +180 -0
  115. package/plugins/lavra/cortex/commands/lavra-parallel.md +910 -0
  116. package/plugins/lavra/cortex/commands/lavra-plan.md +519 -0
  117. package/plugins/lavra/cortex/commands/lavra-qa.md +361 -0
  118. package/plugins/lavra/cortex/commands/lavra-quick.md +182 -0
  119. package/plugins/lavra/cortex/commands/lavra-recall.md +283 -0
  120. package/plugins/lavra/cortex/commands/lavra-research.md +271 -0
  121. package/plugins/lavra/cortex/commands/lavra-retro.md +404 -0
  122. package/plugins/lavra/cortex/commands/lavra-review.md +405 -0
  123. package/plugins/lavra/cortex/commands/lavra-ship.md +334 -0
  124. package/plugins/lavra/cortex/commands/lavra-triage.md +163 -0
  125. package/plugins/lavra/cortex/commands/lavra-work-ralph.md +525 -0
  126. package/plugins/lavra/cortex/commands/lavra-work-teams.md +508 -0
  127. package/plugins/lavra/cortex/commands/lavra-work.md +1023 -0
  128. package/plugins/lavra/cortex/commands/lfg.md +30 -0
  129. package/plugins/lavra/cortex/commands/release-docs.md +148 -0
  130. package/plugins/lavra/cortex/commands/report-bug.md +159 -0
  131. package/plugins/lavra/cortex/commands/reproduce-bug.md +101 -0
  132. package/plugins/lavra/cortex/commands/resolve-pr-parallel.md +58 -0
  133. package/plugins/lavra/cortex/commands/resolve-todo-parallel.md +56 -0
  134. package/plugins/lavra/cortex/commands/test-browser.md +309 -0
  135. package/plugins/lavra/cortex/commands/xcode-test.md +291 -0
  136. package/plugins/lavra/cortex/skills/agent-browser/SKILL.md +227 -0
  137. package/plugins/lavra/cortex/skills/agent-native-architecture/SKILL.md +439 -0
  138. package/plugins/lavra/cortex/skills/andrew-kane-gem-writer/SKILL.md +188 -0
  139. package/plugins/lavra/cortex/skills/brainstorming/SKILL.md +197 -0
  140. package/plugins/lavra/cortex/skills/create-agent-skills/SKILL.md +304 -0
  141. package/plugins/lavra/cortex/skills/dhh-rails-style/SKILL.md +189 -0
  142. package/plugins/lavra/cortex/skills/dspy-ruby/SKILL.md +741 -0
  143. package/plugins/lavra/cortex/skills/every-style-editor/SKILL.md +138 -0
  144. package/plugins/lavra/cortex/skills/file-todos/SKILL.md +256 -0
  145. package/plugins/lavra/cortex/skills/frontend-design/SKILL.md +46 -0
  146. package/plugins/lavra/cortex/skills/gemini-imagegen/SKILL.md +242 -0
  147. package/plugins/lavra/cortex/skills/git-worktree/SKILL.md +307 -0
  148. package/plugins/lavra/cortex/skills/lavra-knowledge/SKILL.md +464 -0
  149. package/plugins/lavra/cortex/skills/project-setup/SKILL.md +418 -0
  150. package/plugins/lavra/cortex/skills/rclone/SKILL.md +155 -0
  151. package/plugins/lavra/docs/quickstart.md +267 -0
  152. package/plugins/lavra/examples/example-plan.md +197 -0
  153. package/plugins/lavra/gemini/agents/design/design-implementation-reviewer.md +130 -0
  154. package/plugins/lavra/gemini/agents/design/design-iterator.md +225 -0
  155. package/plugins/lavra/gemini/agents/design/figma-design-sync.md +218 -0
  156. package/plugins/lavra/gemini/agents/docs/ankane-readme-writer.md +96 -0
  157. package/plugins/lavra/gemini/agents/research/best-practices-researcher.md +138 -0
  158. package/plugins/lavra/gemini/agents/research/framework-docs-researcher.md +118 -0
  159. package/plugins/lavra/gemini/agents/research/git-history-analyzer.md +80 -0
  160. package/plugins/lavra/gemini/agents/research/learnings-researcher.md +262 -0
  161. package/plugins/lavra/gemini/agents/research/repo-research-analyst.md +164 -0
  162. package/plugins/lavra/gemini/agents/review/agent-native-reviewer.md +281 -0
  163. package/plugins/lavra/gemini/agents/review/architecture-strategist.md +89 -0
  164. package/plugins/lavra/gemini/agents/review/code-simplicity-reviewer.md +116 -0
  165. package/plugins/lavra/gemini/agents/review/data-integrity-guardian.md +96 -0
  166. package/plugins/lavra/gemini/agents/review/data-migration-expert.md +125 -0
  167. package/plugins/lavra/gemini/agents/review/deployment-verification-agent.md +185 -0
  168. package/plugins/lavra/gemini/agents/review/dhh-rails-reviewer.md +101 -0
  169. package/plugins/lavra/gemini/agents/review/goal-verifier.md +116 -0
  170. package/plugins/lavra/gemini/agents/review/julik-frontend-races-reviewer.md +246 -0
  171. package/plugins/lavra/gemini/agents/review/kieran-python-reviewer.md +155 -0
  172. package/plugins/lavra/gemini/agents/review/kieran-rails-reviewer.md +137 -0
  173. package/plugins/lavra/gemini/agents/review/kieran-typescript-reviewer.md +146 -0
  174. package/plugins/lavra/gemini/agents/review/migration-drift-detector.md +314 -0
  175. package/plugins/lavra/gemini/agents/review/pattern-recognition-specialist.md +94 -0
  176. package/plugins/lavra/gemini/agents/review/performance-oracle.md +161 -0
  177. package/plugins/lavra/gemini/agents/review/security-sentinel.md +132 -0
  178. package/plugins/lavra/gemini/agents/workflow/bug-reproduction-validator.md +126 -0
  179. package/plugins/lavra/gemini/agents/workflow/every-style-editor.md +103 -0
  180. package/plugins/lavra/gemini/agents/workflow/lint.md +36 -0
  181. package/plugins/lavra/gemini/agents/workflow/pr-comment-resolver.md +101 -0
  182. package/plugins/lavra/gemini/agents/workflow/spec-flow-analyzer.md +163 -0
  183. package/plugins/lavra/gemini/commands/agent-native-audit.toml +284 -0
  184. package/plugins/lavra/gemini/commands/beads-brainstorm.toml +292 -0
  185. package/plugins/lavra/gemini/commands/beads-checkpoint.toml +145 -0
  186. package/plugins/lavra/gemini/commands/beads-compound.toml +167 -0
  187. package/plugins/lavra/gemini/commands/beads-deepen.toml +388 -0
  188. package/plugins/lavra/gemini/commands/beads-design.toml +295 -0
  189. package/plugins/lavra/gemini/commands/beads-import.toml +197 -0
  190. package/plugins/lavra/gemini/commands/beads-parallel.toml +909 -0
  191. package/plugins/lavra/gemini/commands/beads-plan-review.toml +201 -0
  192. package/plugins/lavra/gemini/commands/beads-plan.toml +391 -0
  193. package/plugins/lavra/gemini/commands/beads-quick.toml +134 -0
  194. package/plugins/lavra/gemini/commands/beads-recall.toml +281 -0
  195. package/plugins/lavra/gemini/commands/beads-review.toml +338 -0
  196. package/plugins/lavra/gemini/commands/beads-triage.toml +161 -0
  197. package/plugins/lavra/gemini/commands/beads-work.toml +347 -0
  198. package/plugins/lavra/gemini/commands/changelog.toml +151 -0
  199. package/plugins/lavra/gemini/commands/create-agent-skill.toml +18 -0
  200. package/plugins/lavra/gemini/commands/deploy-docs.toml +68 -0
  201. package/plugins/lavra/gemini/commands/feature-video.toml +264 -0
  202. package/plugins/lavra/gemini/commands/generate-command.toml +148 -0
  203. package/plugins/lavra/gemini/commands/heal-skill.toml +131 -0
  204. package/plugins/lavra/gemini/commands/lavra-brainstorm.toml +391 -0
  205. package/plugins/lavra/gemini/commands/lavra-ceo-review.toml +391 -0
  206. package/plugins/lavra/gemini/commands/lavra-checkpoint.toml +165 -0
  207. package/plugins/lavra/gemini/commands/lavra-design.toml +624 -0
  208. package/plugins/lavra/gemini/commands/lavra-eng-review.toml +265 -0
  209. package/plugins/lavra/gemini/commands/lavra-import.toml +197 -0
  210. package/plugins/lavra/gemini/commands/lavra-learn.toml +179 -0
  211. package/plugins/lavra/gemini/commands/lavra-plan-review.toml +201 -0
  212. package/plugins/lavra/gemini/commands/lavra-plan.toml +518 -0
  213. package/plugins/lavra/gemini/commands/lavra-qa.toml +360 -0
  214. package/plugins/lavra/gemini/commands/lavra-quick.toml +181 -0
  215. package/plugins/lavra/gemini/commands/lavra-recall.toml +281 -0
  216. package/plugins/lavra/gemini/commands/lavra-research.toml +270 -0
  217. package/plugins/lavra/gemini/commands/lavra-retro.toml +403 -0
  218. package/plugins/lavra/gemini/commands/lavra-review.toml +404 -0
  219. package/plugins/lavra/gemini/commands/lavra-ship.toml +333 -0
  220. package/plugins/lavra/gemini/commands/lavra-triage.toml +161 -0
  221. package/plugins/lavra/gemini/commands/lavra-work-ralph.toml +523 -0
  222. package/plugins/lavra/gemini/commands/lavra-work-teams.toml +507 -0
  223. package/plugins/lavra/gemini/commands/lavra-work.toml +1022 -0
  224. package/plugins/lavra/gemini/commands/lfg.toml +28 -0
  225. package/plugins/lavra/gemini/commands/release-docs.toml +146 -0
  226. package/plugins/lavra/gemini/commands/report-bug.toml +157 -0
  227. package/plugins/lavra/gemini/commands/reproduce-bug.toml +99 -0
  228. package/plugins/lavra/gemini/commands/resolve-pr-parallel.toml +56 -0
  229. package/plugins/lavra/gemini/commands/resolve-todo-parallel.toml +54 -0
  230. package/plugins/lavra/gemini/commands/test-browser.toml +307 -0
  231. package/plugins/lavra/gemini/commands/xcode-test.toml +289 -0
  232. package/plugins/lavra/gemini/docs/MCP_SETUP.md +41 -0
  233. package/plugins/lavra/gemini/skills/agent-browser/SKILL.md +227 -0
  234. package/plugins/lavra/gemini/skills/agent-native-architecture/SKILL.md +439 -0
  235. package/plugins/lavra/gemini/skills/andrew-kane-gem-writer/SKILL.md +188 -0
  236. package/plugins/lavra/gemini/skills/beads-knowledge/SKILL.md +464 -0
  237. package/plugins/lavra/gemini/skills/brainstorming/SKILL.md +197 -0
  238. package/plugins/lavra/gemini/skills/create-agent-skills/SKILL.md +304 -0
  239. package/plugins/lavra/gemini/skills/dhh-rails-style/SKILL.md +189 -0
  240. package/plugins/lavra/gemini/skills/dspy-ruby/SKILL.md +741 -0
  241. package/plugins/lavra/gemini/skills/every-style-editor/SKILL.md +138 -0
  242. package/plugins/lavra/gemini/skills/file-todos/SKILL.md +256 -0
  243. package/plugins/lavra/gemini/skills/frontend-design/SKILL.md +46 -0
  244. package/plugins/lavra/gemini/skills/gemini-imagegen/SKILL.md +242 -0
  245. package/plugins/lavra/gemini/skills/git-worktree/SKILL.md +307 -0
  246. package/plugins/lavra/gemini/skills/lavra-knowledge/SKILL.md +464 -0
  247. package/plugins/lavra/gemini/skills/project-setup/SKILL.md +418 -0
  248. package/plugins/lavra/gemini/skills/rclone/SKILL.md +155 -0
  249. package/plugins/lavra/gemini-extension.json +50 -0
  250. package/plugins/lavra/gemini-src/settings.json +37 -0
  251. package/plugins/lavra/hooks/auto-recall.sh +210 -0
  252. package/plugins/lavra/hooks/check-memory.sh +169 -0
  253. package/plugins/lavra/hooks/hooks.json +47 -0
  254. package/plugins/lavra/hooks/knowledge-db.sh +255 -0
  255. package/plugins/lavra/hooks/memory-capture.sh +132 -0
  256. package/plugins/lavra/hooks/provision-memory.sh +144 -0
  257. package/plugins/lavra/hooks/recall.sh +152 -0
  258. package/plugins/lavra/hooks/subagent-wrapup.sh +44 -0
  259. package/plugins/lavra/hooks/teammate-idle-check.sh +29 -0
  260. package/plugins/lavra/opencode/agents/design/design-implementation-reviewer.md +127 -0
  261. package/plugins/lavra/opencode/agents/design/design-iterator.md +222 -0
  262. package/plugins/lavra/opencode/agents/design/figma-design-sync.md +215 -0
  263. package/plugins/lavra/opencode/agents/docs/ankane-readme-writer.md +93 -0
  264. package/plugins/lavra/opencode/agents/research/best-practices-researcher.md +135 -0
  265. package/plugins/lavra/opencode/agents/research/framework-docs-researcher.md +115 -0
  266. package/plugins/lavra/opencode/agents/research/git-history-analyzer.md +77 -0
  267. package/plugins/lavra/opencode/agents/research/learnings-researcher.md +259 -0
  268. package/plugins/lavra/opencode/agents/research/repo-research-analyst.md +161 -0
  269. package/plugins/lavra/opencode/agents/review/agent-native-reviewer.md +278 -0
  270. package/plugins/lavra/opencode/agents/review/architecture-strategist.md +86 -0
  271. package/plugins/lavra/opencode/agents/review/code-simplicity-reviewer.md +113 -0
  272. package/plugins/lavra/opencode/agents/review/data-integrity-guardian.md +93 -0
  273. package/plugins/lavra/opencode/agents/review/data-migration-expert.md +122 -0
  274. package/plugins/lavra/opencode/agents/review/deployment-verification-agent.md +182 -0
  275. package/plugins/lavra/opencode/agents/review/dhh-rails-reviewer.md +98 -0
  276. package/plugins/lavra/opencode/agents/review/goal-verifier.md +113 -0
  277. package/plugins/lavra/opencode/agents/review/julik-frontend-races-reviewer.md +243 -0
  278. package/plugins/lavra/opencode/agents/review/kieran-python-reviewer.md +152 -0
  279. package/plugins/lavra/opencode/agents/review/kieran-rails-reviewer.md +134 -0
  280. package/plugins/lavra/opencode/agents/review/kieran-typescript-reviewer.md +143 -0
  281. package/plugins/lavra/opencode/agents/review/migration-drift-detector.md +311 -0
  282. package/plugins/lavra/opencode/agents/review/pattern-recognition-specialist.md +91 -0
  283. package/plugins/lavra/opencode/agents/review/performance-oracle.md +158 -0
  284. package/plugins/lavra/opencode/agents/review/security-sentinel.md +129 -0
  285. package/plugins/lavra/opencode/agents/workflow/bug-reproduction-validator.md +123 -0
  286. package/plugins/lavra/opencode/agents/workflow/every-style-editor.md +100 -0
  287. package/plugins/lavra/opencode/agents/workflow/lint.md +33 -0
  288. package/plugins/lavra/opencode/agents/workflow/pr-comment-resolver.md +98 -0
  289. package/plugins/lavra/opencode/agents/workflow/spec-flow-analyzer.md +160 -0
  290. package/plugins/lavra/opencode/commands/agent-native-audit.md +286 -0
  291. package/plugins/lavra/opencode/commands/changelog.md +153 -0
  292. package/plugins/lavra/opencode/commands/create-agent-skill.md +21 -0
  293. package/plugins/lavra/opencode/commands/deploy-docs.md +69 -0
  294. package/plugins/lavra/opencode/commands/feature-video.md +266 -0
  295. package/plugins/lavra/opencode/commands/generate-command.md +150 -0
  296. package/plugins/lavra/opencode/commands/heal-skill.md +134 -0
  297. package/plugins/lavra/opencode/commands/lavra-brainstorm.md +392 -0
  298. package/plugins/lavra/opencode/commands/lavra-ceo-review.md +392 -0
  299. package/plugins/lavra/opencode/commands/lavra-checkpoint.md +166 -0
  300. package/plugins/lavra/opencode/commands/lavra-compound.md +168 -0
  301. package/plugins/lavra/opencode/commands/lavra-deepen.md +389 -0
  302. package/plugins/lavra/opencode/commands/lavra-design.md +625 -0
  303. package/plugins/lavra/opencode/commands/lavra-eng-review.md +266 -0
  304. package/plugins/lavra/opencode/commands/lavra-import.md +198 -0
  305. package/plugins/lavra/opencode/commands/lavra-learn.md +180 -0
  306. package/plugins/lavra/opencode/commands/lavra-parallel.md +910 -0
  307. package/plugins/lavra/opencode/commands/lavra-plan.md +519 -0
  308. package/plugins/lavra/opencode/commands/lavra-qa.md +361 -0
  309. package/plugins/lavra/opencode/commands/lavra-quick.md +182 -0
  310. package/plugins/lavra/opencode/commands/lavra-recall.md +283 -0
  311. package/plugins/lavra/opencode/commands/lavra-research.md +271 -0
  312. package/plugins/lavra/opencode/commands/lavra-retro.md +404 -0
  313. package/plugins/lavra/opencode/commands/lavra-review.md +405 -0
  314. package/plugins/lavra/opencode/commands/lavra-ship.md +334 -0
  315. package/plugins/lavra/opencode/commands/lavra-triage.md +163 -0
  316. package/plugins/lavra/opencode/commands/lavra-work-ralph.md +525 -0
  317. package/plugins/lavra/opencode/commands/lavra-work-teams.md +508 -0
  318. package/plugins/lavra/opencode/commands/lavra-work.md +1023 -0
  319. package/plugins/lavra/opencode/commands/lfg.md +30 -0
  320. package/plugins/lavra/opencode/commands/release-docs.md +148 -0
  321. package/plugins/lavra/opencode/commands/report-bug.md +159 -0
  322. package/plugins/lavra/opencode/commands/reproduce-bug.md +101 -0
  323. package/plugins/lavra/opencode/commands/resolve-pr-parallel.md +58 -0
  324. package/plugins/lavra/opencode/commands/resolve-todo-parallel.md +56 -0
  325. package/plugins/lavra/opencode/commands/test-browser.md +309 -0
  326. package/plugins/lavra/opencode/commands/xcode-test.md +291 -0
  327. package/plugins/lavra/opencode/docs/MCP_SETUP.md +48 -0
  328. package/plugins/lavra/opencode/skills/agent-browser/SKILL.md +227 -0
  329. package/plugins/lavra/opencode/skills/agent-native-architecture/SKILL.md +439 -0
  330. package/plugins/lavra/opencode/skills/andrew-kane-gem-writer/SKILL.md +188 -0
  331. package/plugins/lavra/opencode/skills/brainstorming/SKILL.md +197 -0
  332. package/plugins/lavra/opencode/skills/create-agent-skills/SKILL.md +304 -0
  333. package/plugins/lavra/opencode/skills/dhh-rails-style/SKILL.md +189 -0
  334. package/plugins/lavra/opencode/skills/dspy-ruby/SKILL.md +741 -0
  335. package/plugins/lavra/opencode/skills/every-style-editor/SKILL.md +138 -0
  336. package/plugins/lavra/opencode/skills/file-todos/SKILL.md +256 -0
  337. package/plugins/lavra/opencode/skills/frontend-design/SKILL.md +46 -0
  338. package/plugins/lavra/opencode/skills/gemini-imagegen/SKILL.md +242 -0
  339. package/plugins/lavra/opencode/skills/git-worktree/SKILL.md +307 -0
  340. package/plugins/lavra/opencode/skills/lavra-knowledge/SKILL.md +464 -0
  341. package/plugins/lavra/opencode/skills/project-setup/SKILL.md +418 -0
  342. package/plugins/lavra/opencode/skills/rclone/SKILL.md +155 -0
  343. package/plugins/lavra/opencode-src/package.json +13 -0
  344. package/plugins/lavra/opencode-src/plugin.ts +176 -0
  345. package/plugins/lavra/scripts/import-plan.sh +141 -0
  346. package/plugins/lavra/skills/agent-browser/SKILL.md +223 -0
  347. package/plugins/lavra/skills/agent-native-architecture/SKILL.md +435 -0
  348. package/plugins/lavra/skills/agent-native-architecture/references/action-parity-discipline.md +353 -0
  349. package/plugins/lavra/skills/agent-native-architecture/references/agent-execution-patterns.md +362 -0
  350. package/plugins/lavra/skills/agent-native-architecture/references/agent-native-testing.md +508 -0
  351. package/plugins/lavra/skills/agent-native-architecture/references/architecture-patterns.md +478 -0
  352. package/plugins/lavra/skills/agent-native-architecture/references/dynamic-context-injection.md +281 -0
  353. package/plugins/lavra/skills/agent-native-architecture/references/files-universal-interface.md +301 -0
  354. package/plugins/lavra/skills/agent-native-architecture/references/from-primitives-to-domain-tools.md +227 -0
  355. package/plugins/lavra/skills/agent-native-architecture/references/mcp-tool-design.md +427 -0
  356. package/plugins/lavra/skills/agent-native-architecture/references/mobile-patterns.md +410 -0
  357. package/plugins/lavra/skills/agent-native-architecture/references/product-implications.md +341 -0
  358. package/plugins/lavra/skills/agent-native-architecture/references/refactoring-to-prompt-native.md +317 -0
  359. package/plugins/lavra/skills/agent-native-architecture/references/self-modification.md +269 -0
  360. package/plugins/lavra/skills/agent-native-architecture/references/shared-workspace-architecture.md +517 -0
  361. package/plugins/lavra/skills/agent-native-architecture/references/system-prompt-design.md +250 -0
  362. package/plugins/lavra/skills/brainstorming/SKILL.md +193 -0
  363. package/plugins/lavra/skills/create-agent-skills/SKILL.md +300 -0
  364. package/plugins/lavra/skills/create-agent-skills/references/api-security.md +60 -0
  365. package/plugins/lavra/skills/create-agent-skills/references/be-clear-and-direct.md +84 -0
  366. package/plugins/lavra/skills/create-agent-skills/references/best-practices.md +404 -0
  367. package/plugins/lavra/skills/create-agent-skills/references/common-patterns.md +121 -0
  368. package/plugins/lavra/skills/create-agent-skills/references/core-principles.md +103 -0
  369. package/plugins/lavra/skills/create-agent-skills/references/executable-code.md +92 -0
  370. package/plugins/lavra/skills/create-agent-skills/references/iteration-and-testing.md +164 -0
  371. package/plugins/lavra/skills/create-agent-skills/references/official-spec.md +185 -0
  372. package/plugins/lavra/skills/create-agent-skills/references/recommended-structure.md +168 -0
  373. package/plugins/lavra/skills/create-agent-skills/references/skill-structure.md +215 -0
  374. package/plugins/lavra/skills/create-agent-skills/references/using-scripts.md +113 -0
  375. package/plugins/lavra/skills/create-agent-skills/references/using-templates.md +112 -0
  376. package/plugins/lavra/skills/create-agent-skills/references/workflows-and-validation.md +122 -0
  377. package/plugins/lavra/skills/create-agent-skills/templates/router-skill.md +73 -0
  378. package/plugins/lavra/skills/create-agent-skills/templates/simple-skill.md +33 -0
  379. package/plugins/lavra/skills/create-agent-skills/workflows/add-reference.md +55 -0
  380. package/plugins/lavra/skills/create-agent-skills/workflows/add-script.md +59 -0
  381. package/plugins/lavra/skills/create-agent-skills/workflows/add-template.md +51 -0
  382. package/plugins/lavra/skills/create-agent-skills/workflows/add-workflow.md +54 -0
  383. package/plugins/lavra/skills/create-agent-skills/workflows/audit-skill.md +63 -0
  384. package/plugins/lavra/skills/create-agent-skills/workflows/create-domain-expertise-skill.md +68 -0
  385. package/plugins/lavra/skills/create-agent-skills/workflows/create-new-skill.md +92 -0
  386. package/plugins/lavra/skills/create-agent-skills/workflows/get-guidance.md +70 -0
  387. package/plugins/lavra/skills/create-agent-skills/workflows/upgrade-to-router.md +68 -0
  388. package/plugins/lavra/skills/create-agent-skills/workflows/verify-skill.md +63 -0
  389. package/plugins/lavra/skills/file-todos/SKILL.md +252 -0
  390. package/plugins/lavra/skills/file-todos/assets/todo-template.md +155 -0
  391. package/plugins/lavra/skills/git-worktree/SKILL.md +303 -0
  392. package/plugins/lavra/skills/git-worktree/scripts/worktree-manager.sh +345 -0
  393. package/plugins/lavra/skills/lavra-knowledge/SKILL.md +460 -0
  394. package/plugins/lavra/skills/lavra-knowledge/references/jsonl-schema.md +104 -0
  395. package/plugins/lavra/skills/optional/andrew-kane-gem-writer/SKILL.md +184 -0
  396. package/plugins/lavra/skills/optional/andrew-kane-gem-writer/references/database-adapters.md +231 -0
  397. package/plugins/lavra/skills/optional/andrew-kane-gem-writer/references/module-organization.md +121 -0
  398. package/plugins/lavra/skills/optional/andrew-kane-gem-writer/references/rails-integration.md +183 -0
  399. package/plugins/lavra/skills/optional/andrew-kane-gem-writer/references/resources.md +119 -0
  400. package/plugins/lavra/skills/optional/andrew-kane-gem-writer/references/testing-patterns.md +261 -0
  401. package/plugins/lavra/skills/optional/dhh-rails-style/SKILL.md +185 -0
  402. package/plugins/lavra/skills/optional/dhh-rails-style/references/architecture.md +653 -0
  403. package/plugins/lavra/skills/optional/dhh-rails-style/references/controllers.md +303 -0
  404. package/plugins/lavra/skills/optional/dhh-rails-style/references/frontend.md +510 -0
  405. package/plugins/lavra/skills/optional/dhh-rails-style/references/gems.md +266 -0
  406. package/plugins/lavra/skills/optional/dhh-rails-style/references/models.md +359 -0
  407. package/plugins/lavra/skills/optional/dhh-rails-style/references/testing.md +338 -0
  408. package/plugins/lavra/skills/optional/dspy-ruby/SKILL.md +737 -0
  409. package/plugins/lavra/skills/optional/dspy-ruby/assets/config-template.rb +187 -0
  410. package/plugins/lavra/skills/optional/dspy-ruby/assets/module-template.rb +300 -0
  411. package/plugins/lavra/skills/optional/dspy-ruby/assets/signature-template.rb +221 -0
  412. package/plugins/lavra/skills/optional/dspy-ruby/references/core-concepts.md +674 -0
  413. package/plugins/lavra/skills/optional/dspy-ruby/references/observability.md +366 -0
  414. package/plugins/lavra/skills/optional/dspy-ruby/references/optimization.md +603 -0
  415. package/plugins/lavra/skills/optional/dspy-ruby/references/providers.md +418 -0
  416. package/plugins/lavra/skills/optional/dspy-ruby/references/toolsets.md +502 -0
  417. package/plugins/lavra/skills/optional/every-style-editor/SKILL.md +134 -0
  418. package/plugins/lavra/skills/optional/every-style-editor/references/EVERY_WRITE_STYLE.md +529 -0
  419. package/plugins/lavra/skills/optional/frontend-design/SKILL.md +42 -0
  420. package/plugins/lavra/skills/optional/gemini-imagegen/SKILL.md +238 -0
  421. package/plugins/lavra/skills/optional/gemini-imagegen/requirements.txt +2 -0
  422. package/plugins/lavra/skills/optional/gemini-imagegen/scripts/compose_images.py +157 -0
  423. package/plugins/lavra/skills/optional/gemini-imagegen/scripts/edit_image.py +144 -0
  424. package/plugins/lavra/skills/optional/gemini-imagegen/scripts/gemini_images.py +263 -0
  425. package/plugins/lavra/skills/optional/gemini-imagegen/scripts/generate_image.py +133 -0
  426. package/plugins/lavra/skills/optional/gemini-imagegen/scripts/multi_turn_chat.py +216 -0
  427. package/plugins/lavra/skills/optional/rclone/SKILL.md +151 -0
  428. package/plugins/lavra/skills/optional/rclone/scripts/check_setup.sh +60 -0
  429. package/plugins/lavra/skills/project-setup/SKILL.md +414 -0
  430. package/plugins/lavra/tests/build-index.sh +116 -0
  431. package/plugins/lavra/tests/recall-bench.sh +224 -0
  432. package/plugins/lavra/tests/search-fts5.sh +65 -0
  433. package/plugins/lavra/tests/search-grep.sh +54 -0
  434. package/plugins/lavra/tests/test-queries.jsonl +25 -0
  435. package/scripts/apply-context-optimizations.py +345 -0
  436. package/scripts/convert-cortex.ts +257 -0
  437. package/scripts/convert-gemini.ts +369 -0
  438. package/scripts/convert-opencode.ts +313 -0
  439. package/scripts/package.json +27 -0
  440. package/scripts/pre-release-check.sh +176 -0
  441. package/scripts/select-opencode-models.sh +178 -0
  442. package/scripts/shared/model-config.json +17 -0
  443. package/scripts/shared/model-mapping.ts +129 -0
  444. package/scripts/shared/security.ts +97 -0
  445. package/scripts/shared/yaml-parser.ts +55 -0
  446. package/scripts/sqlite-to-jsonl.py +207 -0
  447. package/scripts/test-compatibility.ts +539 -0
  448. package/scripts/test-features.sh +342 -0
  449. package/scripts/test-installation.sh +514 -0
  450. package/scripts/test-security.ts +275 -0
  451. package/scripts/trim-agent-descriptions.py +177 -0
  452. package/uninstall.sh +133 -0
@@ -0,0 +1,519 @@
1
+ <!-- Generated by lavra v0.6.0 -->
2
+ <!-- Source: lavra-plan.md -->
3
+ <!-- DO NOT EDIT - changes will be overwritten on next install -->
4
+
5
+ ---
6
+ name: lavra-plan
7
+ description: Transform feature descriptions into well-structured beads with parallel research and multi-phase planning
8
+ argument-hint: "[bead ID or feature description]"
9
+ ---
10
+
11
+ <objective>
12
+ Transform feature descriptions, bug reports, or improvement ideas into well-structured beads with comprehensive research and multi-phase planning. Provides flexible detail levels to match your needs.
13
+ </objective>
14
+
15
+ <execution_context>
16
+ <raw_argument> #$ARGUMENTS </raw_argument>
17
+
18
+ **First, determine if the argument is a bead ID or a feature description:**
19
+
20
+ Check if the argument matches a bead ID pattern:
21
+ - Pattern: lowercase alphanumeric segments separated by hyphens (e.g., `bikiniup-xhr`, `beads-123`, `fix-auth-bug2`)
22
+ - Regex: `^[a-z0-9]+-[a-z0-9]+(-[a-z0-9]+)*$`
23
+
24
+ **If the argument matches a bead ID pattern:**
25
+
26
+ 1. Try to load the bead using the Bash tool:
27
+ ```bash
28
+ bd show "#$ARGUMENTS" --json
29
+ ```
30
+
31
+ 2. If the bead exists:
32
+ - Extract the `title` and `description` fields from the JSON array (first element)
33
+ - Example: `bd show "#$ARGUMENTS" --json | jq -r '.[0].description'`
34
+ - Use the bead's description as the `<feature_description>` for the rest of this workflow
35
+ - Announce: "Planning epic bead #$ARGUMENTS: {title}"
36
+ - If the bead already has child beads, list them and ask: "This bead already has child beads. Should I continue planning (will add more children) or was this a mistake?"
37
+
38
+ 3. If the bead doesn't exist (command fails):
39
+ - Report: "Bead ID '#$ARGUMENTS' not found. Please check the ID or provide a feature description instead."
40
+ - Stop execution
41
+
42
+ **If the argument does NOT match a bead ID pattern:**
43
+ - Treat it as a feature description: `<feature_description>#$ARGUMENTS</feature_description>`
44
+ - Continue with the workflow
45
+
46
+ **If the argument is empty:**
47
+ - Ask: "What would you like to plan? Please provide either a bead ID (e.g., 'bikiniup-xhr') or describe the feature, bug fix, or improvement you have in mind."
48
+
49
+ Do not proceed until you have a clear feature description from the user.
50
+ </execution_context>
51
+
52
+ <context>
53
+ **Note: The current year is 2026.** Use this when dating plans and searching for recent documentation.
54
+ </context>
55
+
56
+ <process>
57
+
58
+ ### 0. Idea Refinement
59
+
60
+ **Check for brainstorm output first:**
61
+
62
+ Use this decision tree — stop at the first match and skip idea refinement:
63
+
64
+ #### Step 0a. Label-Based Detection (fast, deterministic — check FIRST)
65
+
66
+ If the argument is a bead ID, check whether the bead itself or its parent has a `brainstorm` label:
67
+
68
+ ```bash
69
+ # Check labels on the input bead
70
+ bd show "{BEAD_ID}" --json | jq -r '.[0].labels // [] | .[]'
71
+
72
+ # If it has a parent, check the parent's labels too
73
+ bd show "{BEAD_ID}" --json | jq -r '.[0].parent // empty'
74
+ # If parent exists:
75
+ bd show "{PARENT_ID}" --json | jq -r '.[0].labels // [] | .[]'
76
+ ```
77
+
78
+ **Label match** = the bead itself, or its parent, has a label containing `brainstorm`.
79
+
80
+ If label match found: set `BRAINSTORM_ID` to the matching bead ID and jump to [**Brainstorm Detected**](#brainstorm-detected) below.
81
+
82
+ #### Step 0b. Keyword Match — Recent (<=14 days)
83
+
84
+ Search for brainstorm-related knowledge and beads using keywords from the feature description:
85
+
86
+ ```bash
87
+ # Search for brainstorm-related knowledge
88
+ .lavra/memory/recall.sh "brainstorm"
89
+ .lavra/memory/recall.sh "{keywords from feature description}"
90
+
91
+ # Check for recent brainstorm beads (title-based)
92
+ bd list --status=open --json 2>/dev/null | jq -r '.[] | select(.title | test("brainstorm|explore|investigate"; "i")) | "\(.id): \(.title) (\(.updated_at // .created_at))"'
93
+ ```
94
+
95
+ **Relevance criteria:** A brainstorm entry is relevant if:
96
+ - The topic semantically matches the feature description
97
+ - Created or updated within the last 14 days
98
+ - If multiple candidates match, use the most recent one
99
+
100
+ If a relevant brainstorm bead found within 14 days: set `BRAINSTORM_ID` and jump to [**Brainstorm Detected**](#brainstorm-detected).
101
+
102
+ #### Step 0c. Keyword Match — Older (>14 days)
103
+
104
+ If a semantically matching brainstorm bead exists but is older than 14 days, use **AskUserQuestion tool** to ask:
105
+
106
+ "Found brainstorm `{BRAINSTORM_ID}` from [date] that may be relevant: {title}. It's older than 14 days — use it as context for this plan?"
107
+
108
+ - **Yes** -> set `BRAINSTORM_ID` and proceed to [**Brainstorm Detected**](#brainstorm-detected)
109
+ - **No** -> proceed to idea refinement below
110
+
111
+ #### Step 0d. No Brainstorm — Run Idea Refinement
112
+
113
+ If no brainstorm found (or not relevant), refine the idea through collaborative dialogue using the **AskUserQuestion tool**:
114
+
115
+ - Ask questions one at a time to understand the idea fully
116
+ - Prefer multiple choice questions when natural options exist
117
+ - Focus on understanding: purpose, constraints and success criteria
118
+ - Continue until the idea is clear OR user says "proceed"
119
+
120
+ **Gather signals for research decision.** During refinement, note:
121
+
122
+ - **User's familiarity**: Do they know the codebase patterns? Are they pointing to examples?
123
+ - **User's intent**: Speed vs thoroughness? Exploration vs execution?
124
+ - **Topic risk**: Security, payments, external APIs warrant more caution
125
+ - **Uncertainty level**: Is the approach clear or open-ended?
126
+
127
+ **Skip option:** If the feature description is already detailed, offer:
128
+ "Your description is clear. Should I proceed with research, or would you like to refine it further?"
129
+
130
+ ---
131
+
132
+ #### Brainstorm Detected
133
+
134
+ When any of steps 0a–0c identifies a brainstorm bead, execute this block:
135
+
136
+ 1. Read the brainstorm bead and its comments in full:
137
+ ```bash
138
+ bd show {BRAINSTORM_ID}
139
+ bd comments list {BRAINSTORM_ID}
140
+ ```
141
+
142
+ 2. Extract **locked decisions** — look for:
143
+ - Comments or description lines explicitly marked "LOCKED", "DECIDED", or "DECISION:"
144
+ - The chosen approach (what was selected over alternatives)
145
+ - Key constraints that were agreed upon
146
+
147
+ 3. Announce the handoff with specifics:
148
+ ```
149
+ Found brainstorm {BRAINSTORM_ID} from [date]: "{title}"
150
+ Skipping idea refinement — locked decisions carried forward:
151
+ - [Decision 1]
152
+ - [Decision 2]
153
+ - [Decision N]
154
+ ```
155
+
156
+ 4. Store for use in later steps:
157
+ - `BRAINSTORM_ID` = the bead ID
158
+ - `BRAINSTORM_TITLE` = the bead title
159
+ - `LOCKED_DECISIONS` = list of extracted locked decisions (short phrases)
160
+
161
+ 5. **Skip the idea refinement dialogue** — the brainstorm already answered WHAT to build.
162
+
163
+ 6. Use locked decisions as direct input to the research phase (Step 1).
164
+
165
+ **Note:** In Step 5 (Create Epic and Child Beads):
166
+ - The epic's Sources section **MUST** include: `Brainstorm: {BRAINSTORM_ID} — {BRAINSTORM_TITLE} (locked decisions: {comma-separated LOCKED_DECISIONS})`
167
+ - Each child bead's **Context section** MUST include a "Locked decisions from brainstorm:" subsection listing the decisions that apply to that child bead
168
+
169
+ **If multiple brainstorms could match (step 0b/0c):**
170
+ Use **AskUserQuestion tool** to ask which brainstorm to use, or whether to proceed without one.
171
+
172
+ ### 1. Local Research (Always Runs - Parallel)
173
+
174
+ <thinking>
175
+ First, I need to understand the project's conventions, existing patterns, and any documented learnings. This is fast and local - it informs whether external research is needed.
176
+ </thinking>
177
+
178
+ Run these agents **in parallel** to gather local context:
179
+
180
+ - Task repo-research-analyst(feature_description)
181
+ - Task learnings-researcher(feature_description)
182
+
183
+ **What to look for:**
184
+ - **Repo research:** existing patterns, CLAUDE.md or AGENTS.md guidance, technology familiarity, pattern consistency
185
+ - **Learnings:** knowledge.jsonl entries that might apply (gotchas, patterns, lessons learned)
186
+
187
+ These findings inform the next step.
188
+
189
+ ### 1.5. Research Decision
190
+
191
+ Based on signals from Step 0 and findings from Step 1, decide on external research.
192
+
193
+ **High-risk topics -> always research.** Security, payments, external APIs, data privacy. The cost of missing something is too high. This takes precedence over speed signals.
194
+
195
+ **Strong local context -> skip external research.** Codebase has good patterns, CLAUDE.md or AGENTS.md has guidance, user knows what they want. External research adds little value.
196
+
197
+ **Uncertainty or unfamiliar territory -> research.** User is exploring, codebase has no examples, new technology. External perspective is valuable.
198
+
199
+ **Announce the decision and proceed.** Brief explanation, then continue. User can redirect if needed.
200
+
201
+ Examples:
202
+ - "Your codebase has solid patterns for this. Proceeding without external research."
203
+ - "This involves payment processing, so I'll research current best practices first."
204
+
205
+ ### 1.5b. External Research (Conditional)
206
+
207
+ **Only run if Step 1.5 indicates external research is valuable.**
208
+
209
+ Run these agents in parallel:
210
+
211
+ - Task best-practices-researcher(feature_description)
212
+ - Task framework-docs-researcher(feature_description)
213
+
214
+ ### 1.6. Consolidate Research
215
+
216
+ After all research steps complete, consolidate findings:
217
+
218
+ - Document relevant file paths from repo research (e.g., `app/services/example_service.rb:42`)
219
+ - **Include relevant institutional learnings** from knowledge.jsonl (key insights, gotchas to avoid)
220
+ - Note external documentation URLs and best practices (if external research was done)
221
+ - List related issues or PRs discovered
222
+ - Capture CLAUDE.md or AGENTS.md conventions
223
+
224
+ **Optional validation:** Briefly summarize findings and ask if anything looks off or missing before proceeding to planning.
225
+
226
+ ### 2. Epic Bead Planning & Structure
227
+
228
+ <thinking>
229
+ Think like a product manager - what would make this issue clear and actionable? Consider multiple perspectives.
230
+ </thinking>
231
+
232
+ **Title & Categorization:**
233
+
234
+ - [ ] Draft clear, searchable title using conventional format (e.g., `Add user authentication`, `Fix cart total calculation`)
235
+ - [ ] Determine type: feature, bug, refactor, chore
236
+ - [ ] Log a DECISION comment explaining the chosen approach
237
+
238
+ **Stakeholder Analysis:**
239
+
240
+ - [ ] Identify who will be affected by this issue (end users, developers, operations)
241
+ - [ ] Consider implementation complexity and required expertise
242
+
243
+ **Content Planning:**
244
+
245
+ - [ ] Choose appropriate detail level based on complexity and audience
246
+ - [ ] List all necessary sections for the chosen template
247
+ - [ ] Gather supporting materials (error logs, screenshots, design mockups)
248
+ - [ ] Prepare code examples or reproduction steps if applicable
249
+
250
+ ### 3. SpecFlow Analysis
251
+
252
+ After planning the structure, run SpecFlow Analyzer to validate and refine the feature specification:
253
+
254
+ - Task spec-flow-analyzer(feature_description, research_findings)
255
+
256
+ **SpecFlow Analyzer Output:**
257
+
258
+ - [ ] Review SpecFlow analysis results
259
+ - [ ] Incorporate any identified gaps or edge cases
260
+ - [ ] Update acceptance criteria based on SpecFlow findings
261
+
262
+ ### 4. Choose Implementation Detail Level
263
+
264
+ Select how comprehensive you want the beads to be, simpler is mostly better.
265
+
266
+ Use **AskUserQuestion tool** to present options:
267
+
268
+ #### MINIMAL (Quick Plan)
269
+
270
+ **Best for:** Simple bugs, small improvements, clear features
271
+
272
+ **Bead descriptions include:**
273
+ - Problem statement or feature description
274
+ - Basic acceptance criteria
275
+ - Essential context only
276
+
277
+ #### STANDARD (Recommended)
278
+
279
+ **Best for:** Most features, complex bugs, team collaboration
280
+
281
+ **Bead descriptions include everything from MINIMAL plus:**
282
+ - Detailed background and motivation
283
+ - Technical considerations
284
+ - Success metrics
285
+ - Dependencies and risks
286
+ - Basic implementation suggestions
287
+
288
+ #### COMPREHENSIVE (Deep Plan)
289
+
290
+ **Best for:** Major features, architectural changes, complex integrations
291
+
292
+ **Bead descriptions include everything from STANDARD plus:**
293
+ - Detailed implementation plan with phases
294
+ - Alternative approaches considered
295
+ - Extensive technical specifications
296
+ - Risk mitigation strategies
297
+ - Future considerations and extensibility
298
+
299
+ ### 5. Create Epic and Child Beads
300
+
301
+ **Create the epic bead:**
302
+
303
+ The epic bead description MUST include a Sources section capturing where the plan came from:
304
+
305
+ ```
306
+ ## Sources
307
+ - Brainstorm: {BRAINSTORM_BEAD_ID} — {title} (locked decisions: X, Y, Z)
308
+ - File: path/to/file.ext:42 — existing pattern used
309
+ - Knowledge: {knowledge-key} (LEARNED) — key insight
310
+ - Doc: https://example.com/docs — reference documentation
311
+ - Research: best-practices-researcher found X pattern
312
+ ```
313
+
314
+ Include only the source types that apply. If a brainstorm bead was used in Step 0, it MUST appear as a `Brainstorm:` entry.
315
+
316
+ ```bash
317
+ bd create "{title}" --type epic -d "{overview description with research findings and Sources section}"
318
+ ```
319
+
320
+ **For each implementation step, create a child bead with thorough descriptions:**
321
+
322
+ Each child bead description MUST follow this structure. **Completeness over brevity** -- include every decision the agent needs so it makes zero judgment calls. If that takes 300 lines, fine. If 50, also fine. **Scope budget: ~1000 LOC of changes per bead.** If a bead would require more than ~1000 lines of code changes, split it into smaller beads.
323
+
324
+ ```
325
+ ## What
326
+
327
+ [Clear description of what needs to be implemented]
328
+
329
+ ## Context
330
+
331
+ [Relevant findings from research - constraints, patterns, decisions]
332
+
333
+ ## Decisions
334
+
335
+ ### Locked
336
+ [Decisions inherited from parent epic that MUST be honored. Do not re-debate these.]
337
+ - {locked decision from epic}
338
+
339
+ ### Discretion
340
+ [Areas where the implementing agent can choose. Deviation budget for this bead.]
341
+ - {area where agent can decide approach}
342
+
343
+ ## Testing
344
+
345
+ - [ ] [Specific test case 1]
346
+ - [ ] [Specific test case 2]
347
+ - [ ] [Edge case tests]
348
+ - [ ] [Integration tests if needed]
349
+
350
+ ## Validation
351
+
352
+ - [ ] [Acceptance criterion 1]
353
+ - [ ] [Acceptance criterion 2]
354
+ - [ ] [Performance/security requirements if applicable]
355
+
356
+ ## Files
357
+
358
+ [Specific file paths or glob patterns this bead will modify]
359
+ - path/to/file.ext
360
+ - path/to/directory/*
361
+
362
+ ## Dependencies
363
+
364
+ [List any child beads that must be completed first]
365
+
366
+ ## References
367
+
368
+ [Sources relevant to this child bead — freeform bullet list]
369
+ - File: path/to/file.ext:42 — pattern used
370
+ - Knowledge: {key} (LEARNED) — relevant insight
371
+ ```
372
+
373
+ **File-scope conflict prevention:**
374
+
375
+ When creating child beads, identify the specific files each bead will touch. **If two child beads would modify the same file, you MUST either:**
376
+ 1. Merge them into a single bead, OR
377
+ 2. Add an explicit dependency between them (`bd dep add {later} {earlier}`) so they execute sequentially
378
+
379
+ This prevents parallel agents from overwriting each other's changes during `/lavra-work` multi-bead execution. Be specific -- list file paths, not just module names.
380
+
381
+ **Create child beads:**
382
+
383
+ ```bash
384
+ bd create "{step title}" --parent {EPIC_ID} -d "{comprehensive description}"
385
+ ```
386
+
387
+ **Add research context as comments:**
388
+
389
+ ```bash
390
+ bd comments add {CHILD_ID} "INVESTIGATION: {key research findings specific to this step}"
391
+ bd comments add {CHILD_ID} "PATTERN: {recommended patterns for this step}"
392
+ bd comments add {CHILD_ID} "FACT: {constraints or gotchas discovered}"
393
+ ```
394
+
395
+ **Relate beads that share context:**
396
+
397
+ For beads that work in the same domain but don't block each other (e.g., "auth login" and "auth logout" touch different files but share auth knowledge), create relate links:
398
+
399
+ ```bash
400
+ bd dep relate {BEAD_A} {BEAD_B}
401
+ ```
402
+
403
+ This creates a bidirectional "see also" link. Related beads will have each other's context injected during `/lavra-work` multi-bead execution, improving agent awareness without forcing sequential ordering.
404
+
405
+ **When to use relate vs dep add:**
406
+ - `bd dep add`: Bead B cannot start until Bead A is done (blocking)
407
+ - `bd dep relate`: Beads share context but can run in parallel (non-blocking)
408
+
409
+ **AI-Era Considerations:**
410
+
411
+ - [ ] Account for accelerated development with AI pair programming
412
+ - [ ] Include prompts or instructions that worked well during research
413
+ - [ ] Emphasize comprehensive testing given rapid implementation
414
+
415
+ ### 5.5. Cross-Check Validation
416
+
417
+ After creating all child beads, run a warning-only validation pass before final review.
418
+
419
+ **Checks to perform:**
420
+
421
+ 1. **Required sections** — Each child bead description includes What/Context/Decisions/Testing/Validation/Files/Dependencies
422
+ 2. **File-scope conflicts** — No two independent (non-dependent) child beads claim overlapping files (e.g., both modifying `src/auth/*`)
423
+ 3. **Sources section** — Epic bead has a non-empty Sources section
424
+ 4. **Brainstorm reference** — If a brainstorm bead was used in Step 0, the Sources section includes a `Brainstorm:` entry
425
+ 5. **Completeness** — Each child bead description has enough detail that the implementing agent makes zero judgment calls. Missing What/Context/Decisions/Testing/Validation sections = incomplete.
426
+ 6. **Scope budget** — Each child bead targets ~1000 LOC of changes or fewer. If estimated changes exceed this, flag for splitting.
427
+
428
+ **Output format:**
429
+
430
+ ```
431
+ Cross-Check Results for {EPIC_ID}
432
+
433
+ ! WARNING: {CHILD_ID} lacks "Files" section
434
+ ! WARNING: {CHILD_1} and {CHILD_2} both modify src/auth/* without a dependency
435
+ ! WARNING: Sources section missing brainstorm reference (brainstorm {ID} found)
436
+ ! WARNING: {CHILD_ID} estimated >1000 LOC of changes -- split recommended
437
+ ! WARNING: {CHILD_ID} missing required section(s): {missing sections}
438
+ v PASS: All child beads have Testing and Validation sections
439
+ v PASS: DAG validation passes (bd swarm validate)
440
+
441
+ -> Proceed to final review, or fix warnings first?
442
+ ```
443
+
444
+ All checks are **warnings only** — they do not block submission. Use **AskUserQuestion tool** to ask whether to proceed or fix warnings first.
445
+
446
+ ### 6. Final Review & Submission
447
+
448
+ **Pre-submission Checklist:**
449
+
450
+ - [ ] Epic title is searchable and descriptive
451
+ - [ ] All child bead descriptions include What/Context/Testing/Validation sections
452
+ - [ ] Dependencies between beads are correctly set
453
+ - [ ] No two independent child beads modify the same files (add dependency or merge if they do)
454
+ - [ ] Research findings are captured as knowledge comments
455
+ - [ ] Epic bead description includes a non-empty Sources section
456
+ - [ ] Add an ERD mermaid diagram if applicable for new model changes
457
+
458
+ **Validate the epic structure:**
459
+
460
+ ```bash
461
+ bd swarm validate {EPIC_ID}
462
+ ```
463
+
464
+ This checks for:
465
+ - Dependency cycles (impossible to resolve)
466
+ - Orphaned issues (no dependents, may be missing deps)
467
+ - Disconnected subgraphs
468
+ - Ready fronts (waves of parallel work)
469
+
470
+ Address any warnings before finalizing the plan.
471
+
472
+ </process>
473
+
474
+ <success_criteria>
475
+ - Epic bead created with clear, searchable title
476
+ - All child bead descriptions include What/Context/Decisions/Testing/Validation/Files/Dependencies sections
477
+ - Each child bead description is complete enough that the implementing agent makes zero judgment calls
478
+ - Each child bead targets ~1000 LOC of changes or fewer
479
+ - No two independent child beads modify the same files
480
+ - Dependencies correctly set between beads
481
+ - Research findings captured as knowledge comments (INVESTIGATION/PATTERN/FACT)
482
+ - `bd swarm validate {EPIC_ID}` passes without warnings
483
+ </success_criteria>
484
+
485
+ <guardrails>
486
+ - Don't create vague beads like "Add authentication" with no testing criteria, "Fix the bug" with no validation approach, or "Refactor code" with no acceptance criteria
487
+ - Do create thorough beads like "Implement OAuth2 login flow" with specific test scenarios, validation criteria, and constraints from research
488
+ - All research findings are logged to the epic bead with appropriate prefixes
489
+ - Knowledge is auto-captured and will be available in future sessions
490
+ - Child beads can be worked on independently with `/lavra-work`
491
+ - Use `bd ready` to see which child beads are ready to work on
492
+ - Each child bead description is complete enough that the implementing agent makes zero judgment calls
493
+ - NEVER CODE! Just research and write the plan.
494
+ </guardrails>
495
+
496
+ <handoff>
497
+ After creating the epic and child beads, use the **AskUserQuestion tool** to present these options:
498
+
499
+ **Question:** "Plan ready as epic `{EPIC_ID}`: {title}. What would you like to do next?"
500
+
501
+ **Options:**
502
+ 1. **Run `/lavra-research`** - Gather evidence for each child bead with domain-matched research agents
503
+ 2. **Run `/lavra-eng-review`** - Get feedback from reviewers on the plan
504
+ 3. **Start `/lavra-work`** - Begin implementing the first child bead
505
+ 4. **Run `/lavra-work {EPIC_ID}`** - Work on multiple child beads in parallel
506
+ 5. **Simplify** - Reduce detail level
507
+
508
+ Based on selection:
509
+ - **`/lavra-research`** -> Call the /lavra-research command with the epic bead ID
510
+ - **`/lavra-eng-review`** -> Call the /lavra-eng-review command with the epic bead ID
511
+ - **`/lavra-work`** -> Call the /lavra-work command with the first ready child bead ID
512
+ - **`/lavra-work {EPIC_ID}`** -> Call the /lavra-work command with the epic bead ID
513
+ - **Simplify** -> Ask "What should I simplify?" then regenerate simpler descriptions
514
+ - **Other** (automatically provided) -> Accept free text for rework or specific changes
515
+
516
+ **Tip:** If this plan originated from `/lavra-brainstorm`, the brainstorm's locked decisions are already embedded in child bead descriptions.
517
+
518
+ Loop back to options after Simplify or Other changes until user selects `/lavra-work` or `/lavra-eng-review`.
519
+ </handoff>