@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,262 @@
1
+ ---
2
+ name: lavra-eng-review
3
+ description: Engineering review -- parallel agents check architecture, simplicity, security, and performance
4
+ argument-hint: "[epic bead ID] [--small]"
5
+ ---
6
+
7
+ <objective>
8
+ Review an epic plan using multiple specialized agents in parallel to catch technical issues before implementation begins. Engineering layer review: given we're building this, is the architecture sound? N+1s? Security holes? Run after lavra-ceo-review so engineering effort is spent on a validated direction.
9
+ </objective>
10
+
11
+ <execution_context>
12
+ <epic_bead_id> #$ARGUMENTS </epic_bead_id>
13
+
14
+ **If the epic bead ID above is empty:**
15
+ 1. Check for recent epic beads: `bd list --type epic --status=open --json`
16
+ 2. Ask the user: "Which epic plan would you like reviewed? Please provide the bead ID (e.g., `BD-001`)."
17
+
18
+ Do not proceed until you have a valid epic bead ID.
19
+
20
+ **Parse `--small` flag:**
21
+ - If `--small` is present in the arguments, set BIG_SMALL_MODE=small
22
+ - Default: BIG_SMALL_MODE=big
23
+ - In `--small` mode, each agent returns only its **single most important finding**; synthesis produces a compact prioritized list
24
+ </execution_context>
25
+
26
+ <process>
27
+
28
+ ### Step 1: Load the Plan
29
+
30
+ ```bash
31
+ # Read the epic
32
+ bd show {EPIC_ID}
33
+
34
+ # List and read all child beads
35
+ bd list --parent {EPIC_ID} --json
36
+ ```
37
+
38
+ For each child bead, read its full description:
39
+
40
+ ```bash
41
+ bd show {CHILD_ID}
42
+ ```
43
+
44
+ Assemble the full plan content from epic description + all child bead descriptions.
45
+
46
+ **Retrospective check:**
47
+
48
+ ```bash
49
+ git log --oneline -20
50
+ ```
51
+
52
+ If prior commits suggest a previous review cycle on this branch (e.g., "address review feedback", reverted changes, refactor-after-review commits), note which areas were previously problematic. Pass this context to agents so they review those areas more aggressively. Recurring problem areas are architectural smells.
53
+
54
+ ### Step 2: Recall Relevant Knowledge + Read Workflow Config
55
+
56
+ ```bash
57
+ # Search for knowledge related to the plan's topic
58
+ .lavra/memory/recall.sh "{keywords from epic title}"
59
+ .lavra/memory/recall.sh "{tech stack keywords}"
60
+ ```
61
+
62
+ Include any relevant LEARNED/DECISION/FACT/PATTERN entries as context for reviewers.
63
+
64
+ Read workflow config for model profile:
65
+
66
+ ```bash
67
+ [ -f .lavra/config/lavra.json ] && cat .lavra/config/lavra.json
68
+ ```
69
+
70
+ Parse `model_profile` (default: `"balanced"`). When `model_profile` is `"quality"`, dispatch `architecture-strategist`, `security-sentinel`, and `performance-oracle` with `model: opus`.
71
+
72
+ ### Step 3: Dispatch Review Agents in Parallel
73
+
74
+ **In `--small` mode:** instruct each agent to return only its single most important finding.
75
+
76
+ **In default (big) mode:** full parallel dispatch with complete analysis.
77
+
78
+ Run these 4 agents simultaneously, passing the full plan content + retrospective context to each. Also request: (a) one realistic production failure scenario per new codepath (timeout, nil, race condition, etc.) and (b) any work that could be deferred without blocking the core objective:
79
+
80
+ 1. Task architecture-strategist("Review this plan for architectural soundness, scalability, and maintainability. For each new codepath, identify one realistic production failure. Flag any work deferrable without blocking the core objective. Plan: [full plan content]. Prior review context: [retrospective findings]") -- add `model: opus` if profile=quality
81
+ 2. Task code-simplicity-reviewer("Review this plan for unnecessary complexity, over-engineering, and opportunities to simplify. For each new codepath, identify one realistic production failure. Flag any work deferrable without blocking the core objective. Plan: [full plan content]. Prior review context: [retrospective findings]")
82
+ 3. Task security-sentinel("Review this plan for security vulnerabilities, missing auth checks, data exposure risks. For each new codepath, identify one realistic production failure. Plan: [full plan content]. Prior review context: [retrospective findings]") -- add `model: opus` if profile=quality
83
+ 4. Task performance-oracle("Review this plan for performance bottlenecks, N+1 queries, missing caching, scalability issues. For each new codepath, identify one realistic production failure. Plan: [full plan content]. Prior review context: [retrospective findings]") -- add `model: opus` if profile=quality
84
+
85
+ ### Step 4: Synthesize Findings
86
+
87
+ After all agents complete, synthesize their feedback into a categorized report:
88
+
89
+ **In `--small` mode:** produce a compact prioritized list (top finding per agent + single combined recommendation).
90
+
91
+ **In default (big) mode:**
92
+
93
+ ```markdown
94
+ ## Engineering Review: {EPIC_ID} - {epic title}
95
+
96
+ ### Architecture
97
+ [Findings from architecture-strategist]
98
+ - Strengths: [what's well designed]
99
+ - Concerns: [architectural issues]
100
+ - Suggestions: [improvements]
101
+
102
+ ### Simplicity
103
+ [Findings from code-simplicity-reviewer]
104
+ - Over-engineering risks: [what could be simpler]
105
+ - Unnecessary abstractions: [what to remove]
106
+ - Suggestions: [simplifications]
107
+
108
+ ### Security
109
+ [Findings from security-sentinel]
110
+ - Vulnerabilities: [security risks found]
111
+ - Missing protections: [what needs adding]
112
+ - Suggestions: [security improvements]
113
+
114
+ ### Performance
115
+ [Findings from performance-oracle]
116
+ - Bottlenecks: [performance concerns]
117
+ - Missing optimizations: [what to add]
118
+ - Suggestions: [performance improvements]
119
+
120
+ ### Failure Modes
121
+ Per-new-codepath analysis from agent findings:
122
+ ```
123
+ CODEPATH | FAILURE MODE | RESCUED? | TEST? | USER SEES? | LOGGED?
124
+ ---------|----------------|----------|-------|----------------|--------
125
+ [path] | [failure] | Y/N | Y/N | [visible/silent]| Y/N
126
+ ```
127
+ Flag any row with RESCUED=N AND TEST=N AND USER SEES=Silent as **CRITICAL GAP**.
128
+
129
+ ### NOT in Scope
130
+ Work the agents flagged as deferrable without blocking the core objective:
131
+ - [item] -- [one-line rationale]
132
+ - [item] -- [one-line rationale]
133
+
134
+ ### Summary
135
+ - **Critical issues:** [count] - Must fix before implementing
136
+ - **Important suggestions:** [count] - Should consider
137
+ - **Minor improvements:** [count] - Nice to have
138
+
139
+ ### Recommended Changes
140
+ 1. [Most impactful change]
141
+ 2. [Second most impactful]
142
+ 3. [Third most impactful]
143
+
144
+ ### Completion Summary
145
+ ```
146
+ Architecture issues: N | Simplicity: N | Security: N | Performance: N
147
+ Critical gaps: N | TODOs proposed: N
148
+ ```
149
+ ```
150
+
151
+ ### Step 5: Log Key Findings + TODOS Protocol
152
+
153
+ Log significant findings:
154
+
155
+ ```bash
156
+ bd comments add {EPIC_ID} "LEARNED: Engineering review found: {key insight}"
157
+ ```
158
+
159
+ **TODOS section:** For each deferrable item surfaced by agents, present as its own AskUserQuestion — never batch, one per question:
160
+
161
+ - **What**: One-line description of the work.
162
+ - **Why**: The concrete problem it solves or value it unlocks.
163
+ - **Pros**: What you gain by doing this work.
164
+ - **Cons**: Cost, complexity, or risks.
165
+ - **Context**: Enough detail for someone picking this up in 3 months.
166
+ - **Effort estimate**: S/M/L/XL
167
+
168
+ Options: **A)** Create a backlog bead **B)** Skip — not valuable enough **C)** Build it now in this plan instead of deferring.
169
+
170
+ </process>
171
+
172
+ <success_criteria>
173
+ - All 4 review agents dispatched and completed
174
+ - Retrospective check performed (prior review cycles noted if any)
175
+ - Findings synthesized into categorized report with severity levels
176
+ - Failure modes table produced with CRITICAL GAP flagging
177
+ - NOT in scope section included
178
+ - Completion summary table produced
179
+ - TODOs presented one-per-AskUserQuestion
180
+ - Critical issues clearly identified
181
+ - Key findings logged as knowledge comments
182
+ </success_criteria>
183
+
184
+ <handoff>
185
+ After presenting the review, use the **AskUserQuestion tool** to present these options:
186
+
187
+ **Question:** "Engineering review complete for `{EPIC_ID}`. What would you like to do next?"
188
+
189
+ **Options:**
190
+ 1. **Apply feedback** - Update child beads with review suggestions
191
+ 2. **Run `/lavra-research`** - Gather additional evidence with domain-matched agents
192
+ 3. **Start `/lavra-work`** - Begin implementing the first child bead
193
+ 4. **Run `/lavra-work {EPIC_ID}`** - Work on multiple child beads in parallel
194
+ 5. **Dismiss** - Acknowledge review without changes
195
+
196
+ ## Applying Feedback (when option 1 is selected)
197
+
198
+ **Do not proceed informally.** Follow this exact protocol.
199
+
200
+ ### Step A: Build the Recommendation Checklist
201
+
202
+ Before touching any bead, extract every actionable recommendation from the review report. Number them sequentially:
203
+
204
+ ```
205
+ RECOMMENDATIONS TO APPLY:
206
+ [ ] 1. [Exact recommendation from Architecture section]
207
+ [ ] 2. [Exact recommendation from Architecture section]
208
+ [ ] 3. [Exact recommendation from Simplicity section]
209
+ [ ] 4. [Exact recommendation from Security section]
210
+ [ ] 5. [Exact recommendation from Performance section]
211
+ ...
212
+ ```
213
+
214
+ Print this numbered list to the user before starting. If the review had a "Recommended Changes" section, include all items from it. Also include any critical/important issues from each category.
215
+
216
+ **Total count:** State how many recommendations you found (e.g., "Found 12 recommendations. Applying now.")
217
+
218
+ ### Step B: Apply Each Recommendation
219
+
220
+ Work through the list one at a time. For each recommendation:
221
+
222
+ 1. **Identify the target bead** - Which child bead (or epic) does this apply to?
223
+ 2. **Read the current description**: `bd show {BEAD_ID}`
224
+ 3. **Update it**: `bd update {BEAD_ID} -d "{updated description with recommendation applied}"`
225
+ 4. **Mark complete** in your working list: `[x] 1. ...`
226
+
227
+ If a recommendation applies to multiple beads, update each one.
228
+
229
+ If a recommendation is architectural (affects the whole plan), update the epic description.
230
+
231
+ If a recommendation is contradictory or inapplicable, mark it `[SKIPPED: reason]` -- do NOT silently omit it.
232
+
233
+ ### Step C: Completeness Verification
234
+
235
+ After applying all changes, do a completeness pass:
236
+
237
+ 1. Re-read the original review report
238
+ 2. Compare each recommendation against your working checklist
239
+ 3. For any item not marked `[x]` or `[SKIPPED]`, apply it now
240
+
241
+ Then print the final checklist state:
242
+
243
+ ```
244
+ APPLIED:
245
+ [x] 1. [recommendation] -> Updated {BEAD_ID}
246
+ [x] 2. [recommendation] -> Updated {BEAD_ID}
247
+ [x] 3. [recommendation] -> Updated {EPIC_ID}
248
+
249
+ SKIPPED:
250
+ [SKIPPED: contradicts architectural decision] 4. [recommendation]
251
+
252
+ TOTAL: {N} applied, {M} skipped out of {N+M} recommendations
253
+ ```
254
+
255
+ **Do not say "done" until every recommendation is either marked applied or explicitly skipped with a reason.**
256
+
257
+ ### Step D: Log Changes
258
+
259
+ ```bash
260
+ bd comments add {EPIC_ID} "DECISION: Applied engineering review feedback. {N} recommendations applied across {K} beads. Key changes: {top 3 changes}"
261
+ ```
262
+ </handoff>
@@ -0,0 +1,194 @@
1
+ ---
2
+ name: lavra-import
3
+ description: Import a markdown plan into beads as an epic with child tasks
4
+ argument-hint: "[path/to/plan.md] [optional epic title]"
5
+ ---
6
+
7
+ <objective>
8
+ Import a markdown plan document into beads as an epic with child task beads. Automatically extracts research findings, decisions, and implementation steps from the markdown structure.
9
+ </objective>
10
+
11
+ <execution_context>
12
+ <input_document> #$ARGUMENTS </input_document>
13
+ </execution_context>
14
+
15
+ <process>
16
+
17
+ ### Phase 1: Parse Arguments
18
+
19
+ 1. **Extract Arguments**
20
+
21
+ Parse the #$ARGUMENTS to get:
22
+ - File path (required)
23
+ - Epic title (optional)
24
+
25
+ If no arguments provided:
26
+ - Ask: "Please provide the path to the markdown plan file, e.g.: /lavra-import plan.md"
27
+ - Stop execution
28
+
29
+ If only file path provided, the title will be auto-extracted from the first `#` header in the markdown file.
30
+
31
+ 2. **Validate File Path**
32
+
33
+ ```bash
34
+ # Check if file exists and is readable
35
+ if [[ ! -f "{file_path}" ]]; then
36
+ echo "Error: File not found: {file_path}"
37
+ exit 1
38
+ fi
39
+ ```
40
+
41
+ If file doesn't exist:
42
+ - Report: "File not found: {file_path}. Please provide a valid markdown file path."
43
+ - Stop execution
44
+
45
+ 3. **Extract Title from Markdown** (if not provided)
46
+
47
+ Read the first line starting with `#` to extract the title:
48
+
49
+ ```bash
50
+ # Extract title from first # header
51
+ title=$(grep -E "^# " "{file_path}" | head -1 | sed 's/^# *//')
52
+
53
+ if [[ -z "$title" ]]; then
54
+ echo "Error: Could not find title in markdown file (no # header found)"
55
+ exit 1
56
+ fi
57
+ ```
58
+
59
+ If no `#` header found and no title argument provided:
60
+ - Ask: "No title found in markdown file. Please provide a title: /lavra-import {file_path} \"Your Epic Title\""
61
+ - Stop execution
62
+
63
+ ### Phase 2: Run Import Script
64
+
65
+ 1. **Call Import Script**
66
+
67
+ Execute the import script with the validated arguments:
68
+
69
+ ```bash
70
+ # Determine PLUGIN_DIR based on whether this is a global or project install
71
+ if [[ -f ".claude/scripts/import-plan.sh" ]]; then
72
+ SCRIPT_PATH=".claude/scripts/import-plan.sh"
73
+ elif [[ -f ".opencode/scripts/import-plan.sh" ]]; then
74
+ SCRIPT_PATH=".opencode/scripts/import-plan.sh"
75
+ else
76
+ echo "Error: import-plan.sh script not found"
77
+ echo "Expected at .claude/scripts/import-plan.sh or .opencode/scripts/import-plan.sh"
78
+ exit 1
79
+ fi
80
+
81
+ bash "$SCRIPT_PATH" "{file_path}" "{title}"
82
+ ```
83
+
84
+ 2. **Capture Script Output**
85
+
86
+ The import-plan.sh script will output:
87
+ - Progress messages as it creates beads
88
+ - Epic ID when created
89
+ - Child bead IDs as they're created
90
+ - Summary with next steps
91
+
92
+ Capture the epic ID from the output:
93
+
94
+ ```bash
95
+ # Extract epic ID from output
96
+ epic_id=$(echo "$output" | grep -oE 'Created epic: [A-Z]+-[0-9]+' | grep -oE '[A-Z]+-[0-9]+' | head -1)
97
+ ```
98
+
99
+ ### Phase 3: Report Results
100
+
101
+ 1. **Display Summary**
102
+
103
+ Present the import results to the user:
104
+
105
+ ```
106
+ Successfully imported plan from {file_path}
107
+
108
+ Epic created: {EPIC_ID}
109
+ Title: {title}
110
+
111
+ Child beads created: {count}
112
+
113
+ View the epic:
114
+ bd show {EPIC_ID}
115
+
116
+ List all child beads:
117
+ bd list --parent {EPIC_ID}
118
+ ```
119
+
120
+ </process>
121
+
122
+ <context>
123
+
124
+ ## Expected Markdown Format
125
+
126
+ The import script expects markdown with this structure:
127
+
128
+ ```markdown
129
+ # Epic Title
130
+ Description of the overall feature or project.
131
+
132
+ ## Research / Background
133
+ Research findings and context...
134
+
135
+ ## Decisions / Approach
136
+ Architectural decisions and chosen approach...
137
+
138
+ ## Implementation Steps / Tasks
139
+ ### Step 1: Database Schema
140
+ Details about database changes...
141
+
142
+ ### Step 2: API Endpoints
143
+ Details about API implementation...
144
+
145
+ ### Step 3: Frontend Components
146
+ Details about UI changes...
147
+ ```
148
+
149
+ **Key sections:**
150
+ - `# Epic Title` - Becomes the epic bead title (if not provided as argument)
151
+ - `## Research / Background / Context` - Captured as INVESTIGATION comments
152
+ - `## Decisions / Choices / Approach` - Captured as DECISION comments
153
+ - `## Implementation Steps / Tasks / Work` - Each `### Step` becomes a child bead
154
+ - Child beads are created sequentially with dependencies (Step 2 depends on Step 1, etc.)
155
+
156
+ ## Error Handling
157
+
158
+ **Common errors and solutions:**
159
+
160
+ | Error | Cause | Solution |
161
+ |-------|-------|----------|
162
+ | File not found | Invalid file path | Check path and try again |
163
+ | No title in markdown | Missing `#` header | Provide title as argument |
164
+ | Script not found | Plugin not installed | Run plugin installation |
165
+ | No implementation steps | Missing `###` headers | Add implementation section with steps |
166
+
167
+ ## Notes
168
+
169
+ - The import script automatically creates sequential dependencies (each step depends on the previous)
170
+ - Research and decision sections are captured as knowledge comments on the epic
171
+ - Child bead descriptions are extracted from the content between `###` headers
172
+ - The script expects the plan to have an "Implementation Steps" section with `###` subheadings
173
+ </context>
174
+
175
+ <success_criteria>
176
+ - Valid markdown file with clear structure
177
+ - At least one `#` header for the title (or title provided as argument)
178
+ - An "Implementation Steps" section with at least one `### Step`
179
+ - Each step has descriptive content below the `###` header
180
+ - File path validated before calling the script
181
+ - Title extracted from markdown if not provided
182
+ - Clear progress and results displayed
183
+ - Actionable next steps suggested
184
+ - Errors handled gracefully with helpful messages
185
+ </success_criteria>
186
+
187
+ <handoff>
188
+ Plan imported as epic `{EPIC_ID}`. What would you like to do next?
189
+
190
+ 1. **Run `/lavra-research {EPIC_ID}`** - Gather evidence for each child bead with domain-matched research agents
191
+ 2. **Run `/lavra-eng-review {EPIC_ID}`** - Get feedback from reviewers on the plan
192
+ 3. **Start `/lavra-work {EPIC_ID}.1`** - Begin implementing the first child bead
193
+ 4. **View epic** - Show the full epic bead details
194
+ </handoff>
@@ -0,0 +1,176 @@
1
+ ---
2
+ name: lavra-learn
3
+ description: Curate raw knowledge comments into structured, well-tagged entries for future auto-recall
4
+ argument-hint: "[bead IDs to process, or omit for all closed-today beads]"
5
+ ---
6
+
7
+ <objective>
8
+ Turn raw LEARNED/DECISION/FACT/PATTERN/INVESTIGATION comments captured during work sessions into structured, deduplicated, well-tagged knowledge entries in `.lavra/memory/knowledge.jsonl`. This is the step that converts inline observations into searchable, recallable knowledge that makes future work easier.
9
+ </objective>
10
+
11
+ <context>
12
+ **When to use:**
13
+ - After `/lavra-work` completes (auto-suggested when LEARNED/INVESTIGATION comments exist)
14
+ - Manually after any work session to consolidate what was captured
15
+ - Periodically to clean up and connect knowledge across beads
16
+
17
+ **Knowledge flow:**
18
+ ```
19
+ Work session -> inline bd comments (raw) -> /lavra-learn (structured) -> auto-recall (future sessions)
20
+ ```
21
+
22
+ Raw comments logged during work are often terse, context-dependent, and untagged beyond auto-detection. This command reviews them with full context, produces well-titled entries with accurate tags, deduplicates against existing knowledge, and synthesizes higher-level patterns when multiple entries connect.
23
+
24
+ **Usage:**
25
+ ```bash
26
+ /lavra-learn # Process all beads closed today
27
+ /lavra-learn BD-042 # Process specific bead
28
+ /lavra-learn BD-042 BD-043 BD-044 # Process multiple beads
29
+ ```
30
+ </context>
31
+
32
+ <process>
33
+
34
+ ### Step 1: Gather Raw Entries
35
+
36
+ Collect all knowledge comments from the target beads.
37
+
38
+ **If bead IDs were provided:**
39
+ ```bash
40
+ bd show {BEAD_ID} --json
41
+ # Extract comments matching LEARNED:|DECISION:|FACT:|PATTERN:|INVESTIGATION: prefixes
42
+ ```
43
+
44
+ **If no bead IDs provided, find beads closed today:**
45
+ ```bash
46
+ bd list --status=closed --json | jq '[.[] | select(.updated_at >= "'$(date +%Y-%m-%d)'")]'
47
+ ```
48
+
49
+ For each bead, collect:
50
+ - All comments with knowledge prefixes
51
+ - Bead title and description (for context)
52
+ - Related bead IDs from dependencies
53
+
54
+ If no knowledge comments are found in the target beads, report that and exit -- there is nothing to curate.
55
+
56
+ ### Step 2: Analyze and Cross-Reference
57
+
58
+ Review all gathered entries together and identify:
59
+
60
+ 1. **Recurring themes** -- multiple entries touching the same concept, API, or component
61
+ 2. **Related decisions** -- choices that reinforce or depend on each other
62
+ 3. **Complementary facts** -- constraints that together define a boundary
63
+ 4. **Gaps** -- work that clearly produced insights but no comment was logged (flag these but do not fabricate entries)
64
+
65
+ Load existing knowledge for deduplication:
66
+ ```bash
67
+ .lavra/memory/recall.sh "{keywords from gathered entries}" --all
68
+ ```
69
+
70
+ ### Step 3: Structure Each Entry
71
+
72
+ For each raw comment, produce a structured knowledge entry:
73
+
74
+ | Field | Guideline |
75
+ |-------|-----------|
76
+ | **key** | Lowercase, hyphenated, searchable title. Include the domain and the insight. Example: `learned-oauth-redirect-uri-must-match-exactly` |
77
+ | **type** | Preserve the original prefix (learned/decision/fact/pattern/investigation) |
78
+ | **content** | Rewrite for clarity and future recall. Remove session-specific references ("the bug we just fixed"). Keep it concise -- one to three sentences. Include code snippets only when they are the insight. |
79
+ | **tags** | 3-6 tags covering: technology, domain area, and concept. Prefer existing tags from knowledge.jsonl for consistency. |
80
+ | **source** | `user` |
81
+ | **bead** | Source bead ID |
82
+
83
+ ### Step 4: Deduplicate
84
+
85
+ For each structured entry, check knowledge.jsonl for near-duplicates:
86
+
87
+ - **Exact key match**: Update the existing entry content and tags rather than creating a new one
88
+ - **Similar content, different key**: Merge into the existing entry if the insight is the same, or keep both if they capture genuinely different aspects
89
+ - **Superseded entry**: If the new entry corrects or supersedes an older one, update the old entry rather than creating a conflicting duplicate
90
+
91
+ Report what was deduplicated and why.
92
+
93
+ ### Step 5: Synthesize Patterns
94
+
95
+ If three or more entries share a theme, create a higher-level PATTERN entry that connects them:
96
+
97
+ ```bash
98
+ bd comments add {BEAD_ID} "PATTERN: {synthesized insight connecting multiple observations}"
99
+ ```
100
+
101
+ Synthesized patterns should:
102
+ - Reference the underlying entries by concept (not by key, since keys may change)
103
+ - Capture the higher-level principle, not just repeat the individual facts
104
+ - Be actionable -- a future developer reading this should know what to do differently
105
+
106
+ Only synthesize when the pattern is genuine. Do not force connections.
107
+
108
+ ### Step 6: Store
109
+
110
+ Write all structured entries via `bd comments add` with appropriate prefixes so the memory-capture hook processes them into knowledge.jsonl:
111
+
112
+ ```bash
113
+ bd comments add {BEAD_ID} "LEARNED: {structured content}"
114
+ bd comments add {BEAD_ID} "DECISION: {structured content}"
115
+ bd comments add {BEAD_ID} "FACT: {structured content}"
116
+ bd comments add {BEAD_ID} "PATTERN: {structured content}"
117
+ bd comments add {BEAD_ID} "INVESTIGATION: {structured content}"
118
+ ```
119
+
120
+ The memory-capture hook will auto-tag and store each entry. The structured content from Step 3 ensures the auto-tagger has clear keywords to work with.
121
+
122
+ </process>
123
+
124
+ <success_criteria>
125
+ - All knowledge comments from target beads reviewed and structured
126
+ - Each entry has a clear, searchable key and 3-6 accurate tags
127
+ - Near-duplicates identified and handled (updated or merged, not duplicated)
128
+ - Cross-bead patterns synthesized where genuine connections exist
129
+ - All entries stored via `bd comments add` for hook processing
130
+
131
+ ```
132
+ Knowledge curation complete.
133
+
134
+ Beads processed: {list of bead IDs}
135
+ Entries structured: {N} (from {M} raw comments)
136
+ Duplicates resolved: {N} updated, {N} merged
137
+ Patterns synthesized: {N}
138
+ Tag coverage: {list of top tags used}
139
+
140
+ Entries created:
141
+ - {TYPE}: {key} (bead: {BEAD_ID})
142
+ - ...
143
+ ```
144
+ </success_criteria>
145
+
146
+ <guardrails>
147
+
148
+ ### This is curation, not research
149
+
150
+ Do not launch subagents to investigate code or analyze architecture. The raw material is the knowledge comments already captured during work. Your job is to structure, deduplicate, and connect -- not to generate new findings.
151
+
152
+ ### Preserve the original author's intent
153
+
154
+ When rewriting content for clarity, do not change the technical meaning. If an entry says "Enum comparison fails unless you cast to string first," do not generalize it to "Type coercion is important" -- the specific detail is the value.
155
+
156
+ ### Quality over quantity
157
+
158
+ Five well-structured, accurately tagged entries are more valuable than fifteen vague ones. If a raw comment is too terse to understand without the original session context, flag it as needing clarification rather than guessing.
159
+
160
+ ### Tags must be useful for recall
161
+
162
+ Tags exist so auto-recall can surface entries when working on related problems. Use concrete terms (oauth, postgres, rate-limiting) not abstract ones (important, tricky, gotcha).
163
+
164
+ </guardrails>
165
+
166
+ <handoff>
167
+ What's next?
168
+ 1. View knowledge entries: `.lavra/memory/recall.sh "{keyword}"`
169
+ 2. Continue working on another bead
170
+ 3. Run `/lavra-checkpoint` to save session progress
171
+
172
+ **Related Commands:**
173
+ - `/lavra-work` - Execute work on a bead (captures raw knowledge inline)
174
+ - `/lavra-checkpoint` - Save progress and sync state
175
+ - `/lavra-recall` - Search knowledge base mid-session
176
+ </handoff>