@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,330 @@
1
+ ---
2
+ name: lavra-ship
3
+ description: Fully automated ship sequence from code-ready to PR-open with beads closed and knowledge captured
4
+ argument-hint: "[bead ID or branch name]"
5
+ ---
6
+
7
+ <objective>
8
+ Fully automated ship sequence. One command to go from "code is ready" to "PR is open, beads are closed, knowledge is captured." Procedural and deterministic -- every step either passes or the pipeline halts with a clear reason.
9
+ </objective>
10
+
11
+ <execution_context>
12
+ <ship_target> #$ARGUMENTS </ship_target>
13
+
14
+ <requirements>
15
+ - Git repository with GitHub CLI (`gh`) installed and authenticated
16
+ - `bd` CLI installed for bead management
17
+ - Code changes already committed or staged (this is a ship command, not a work command)
18
+ </requirements>
19
+ </execution_context>
20
+
21
+ <process>
22
+
23
+ ### Phase 1: Pre-Flight Checks
24
+
25
+ Validate that the workspace is in a shippable state. Any failure here halts the pipeline.
26
+
27
+ 1. **Branch Safety**
28
+
29
+ ```bash
30
+ current_branch=$(git branch --show-current)
31
+ ```
32
+
33
+ If `current_branch` is `main` or `master`: HALT. Print "Cannot ship from main/master. Create a feature branch first." Do not proceed.
34
+
35
+ 2. **Working Tree Status**
36
+
37
+ ```bash
38
+ git status --porcelain
39
+ ```
40
+
41
+ If there are uncommitted changes:
42
+ - Show the list of modified/untracked files
43
+ - Ask: "There are uncommitted changes. Commit them now before shipping?"
44
+ - If yes: stage relevant files, create a commit with a conventional message
45
+ - If no: HALT. Print "Uncommitted changes must be resolved before shipping."
46
+
47
+ 3. **Bead Status**
48
+
49
+ If a bead ID was provided as argument, use that. Otherwise, detect from branch name or in-progress beads:
50
+
51
+ ```bash
52
+ # Try branch name first (bd-{ID}/... pattern)
53
+ bead_id=$(echo "$current_branch" | grep -oE 'bd-[a-z0-9-]+' | head -1)
54
+
55
+ # Fall back to in-progress beads
56
+ if [ -z "$bead_id" ]; then
57
+ bd list --status=in_progress --json | jq -r '.[].id'
58
+ fi
59
+ ```
60
+
61
+ If beads are still `in_progress`:
62
+ - List them with titles
63
+ - Warn: "These beads are still in_progress. They will be closed after the PR is created."
64
+ - Proceed (this is a warning, not a blocker)
65
+
66
+ If no beads are found: proceed without bead tracking (branch-only ship).
67
+
68
+ ### Phase 2: Sync with Upstream
69
+
70
+ Rebase onto the latest default branch to avoid merge conflicts in the PR.
71
+
72
+ ```bash
73
+ default_branch=$(git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@^refs/remotes/origin/@@')
74
+ if [ -z "$default_branch" ]; then
75
+ default_branch=$(git rev-parse --verify origin/main >/dev/null 2>&1 && echo "main" || echo "master")
76
+ fi
77
+
78
+ git fetch origin "$default_branch"
79
+ git rebase "origin/$default_branch"
80
+ ```
81
+
82
+ If rebase conflicts occur: HALT. Print the conflicting files and instruct:
83
+ - "Rebase conflicts detected. Resolve conflicts, then run `git rebase --continue` and re-run /lavra-ship."
84
+
85
+ Do not force-push. Do not skip the rebase.
86
+
87
+ ### Phase 3: Run Tests
88
+
89
+ Auto-detect the project's test runner and execute it. If no test runner is found, skip with a note.
90
+
91
+ **Detection order** (check for existence, run the first match):
92
+
93
+ | Check | Command |
94
+ |-------|---------|
95
+ | `package.json` has `"test"` script | `npm test` or `yarn test` or `bun test` |
96
+ | `package.json` has `"check"` script | `npm run check` |
97
+ | `Makefile` has `test` target | `make test` |
98
+ | `pytest.ini`, `pyproject.toml` with pytest, or `tests/` dir with Python files | `pytest` |
99
+ | `Gemfile` with rspec or `spec/` dir | `bundle exec rspec` |
100
+ | `Cargo.toml` | `cargo test` |
101
+ | `go.mod` | `go test ./...` |
102
+ | `.github/workflows/` with test jobs | Note: "CI will run tests. Skipping local test run." |
103
+
104
+ ```bash
105
+ # Detect and run (pseudo-code -- implement the detection logic)
106
+ ```
107
+
108
+ If tests fail: HALT. Print the failure output. Do not proceed -- broken code does not ship.
109
+
110
+ If no test runner detected: print "No test runner detected. Skipping local tests." and proceed.
111
+
112
+ ### Phase 4: Pre-Landing Review Gate
113
+
114
+ Run a lightweight review focused on ship-blockers only. This is NOT a full /lavra-review -- it checks for things that should never ship.
115
+
116
+ **4a. Goal Verification** *(skippable via `lavra.json` `workflow.goal_verification: false`)*
117
+
118
+ Read workflow config:
119
+ ```bash
120
+ [ -f .lavra/config/lavra.json ] && cat .lavra/config/lavra.json
121
+ ```
122
+
123
+ Parse `model_profile` from the config (default: `"balanced"`). For each bead being shipped that has a `## Validation` section, dispatch the `goal-verifier` agent. Add `model: opus` when `model_profile` is `"quality"`:
124
+
125
+ ```
126
+ Task(goal-verifier, "Verify goal completion for {BEAD_ID}. Validation criteria: {validation section}. What section: {what section}.")
127
+ -- add model: opus if profile=quality
128
+ ```
129
+
130
+ **Interpret results:**
131
+ - Exists-level failures → CRITICAL (halt the ship)
132
+ - Substantive-level failures → CRITICAL (halt the ship)
133
+ - Wired-level failures → WARNING (proceed but include in PR body)
134
+
135
+ Store goal verification results for the PR body.
136
+
137
+ **4b. Security & Quality Scan**
138
+
139
+ Scan the diff for:
140
+
141
+ ```bash
142
+ git diff "origin/$default_branch"...HEAD
143
+ ```
144
+
145
+ **Check for these categories:**
146
+
147
+ 1. **Security issues**: hardcoded secrets, API keys, passwords, tokens, private keys in the diff
148
+ 2. **Debug leftovers**: `console.log`, `debugger`, `binding.pry`, `byebug`, `import pdb`, `print(` used for debugging, `TODO: remove`
149
+ 3. **Hardcoded values**: localhost URLs, hardcoded IPs, test credentials that should be environment variables
150
+ 4. **Unresolved conflicts**: `<<<<<<<`, `=======`, `>>>>>>>`
151
+
152
+ **Severity classification:**
153
+
154
+ - CRITICAL (halts the ship): secrets, unresolved conflicts, credentials
155
+ - WARNING (noted but proceeds): debug leftovers, TODOs, hardcoded localhost
156
+
157
+ If CRITICAL issues found: HALT. List each issue with file and line number. Print "Critical issues must be resolved before shipping."
158
+
159
+ If only WARNING issues: print the warnings, then proceed. Include them in the PR description.
160
+
161
+ ### Phase 5: Create PR
162
+
163
+ Generate the PR from the accumulated context.
164
+
165
+ 1. **Gather PR context**
166
+
167
+ ```bash
168
+ # Commits on this branch not in default branch
169
+ git log --oneline "origin/$default_branch"..HEAD
170
+
171
+ # Files changed
172
+ git diff --stat "origin/$default_branch"...HEAD
173
+
174
+ # Bead titles (if beads were found)
175
+ bd show {BEAD_ID} --json | jq -r '.title'
176
+ ```
177
+
178
+ 2. **Generate PR title**
179
+
180
+ - If single bead: use bead title, prefixed with bead ID
181
+ - If multiple beads: summarize the common theme
182
+ - If no beads: derive from branch name, converting hyphens to spaces
183
+ - Keep under 70 characters
184
+
185
+ 3. **Push and create PR**
186
+
187
+ ```bash
188
+ git push -u origin "$current_branch"
189
+
190
+ gh pr create --title "{generated title}" --body "$(cat <<'PRBODY'
191
+ ## Summary
192
+
193
+ {1-3 bullet points describing what changed and why}
194
+
195
+ ## Beads Addressed
196
+
197
+ {list of bead IDs and titles, or "N/A" if no beads}
198
+
199
+ ## Goal Verification
200
+
201
+ {goal-verifier results table, or "Skipped (no Validation sections)" or "Disabled via lavra.json"}
202
+
203
+ ## Deviations
204
+
205
+ {count} deviation(s) logged during implementation:
206
+ {list of DEVIATION: comments from beads, or "None"}
207
+
208
+ ## Test Results
209
+
210
+ {test runner output summary, or "No local test runner detected -- relying on CI"}
211
+
212
+ ## Review Notes
213
+
214
+ {any WARNING items from Phase 4, or "No issues detected"}
215
+
216
+ ## Changes
217
+
218
+ {git diff --stat summary}
219
+ PRBODY
220
+ )"
221
+ ```
222
+
223
+ Capture and store the PR URL from the output.
224
+
225
+ ### Phase 6: Close Beads and Capture Knowledge
226
+
227
+ For each bead that was in_progress:
228
+
229
+ 1. **Check for knowledge comments**
230
+
231
+ ```bash
232
+ bd show {BEAD_ID} | grep -cE "LEARNED:|DECISION:|FACT:|PATTERN:|INVESTIGATION:|DEVIATION:"
233
+ ```
234
+
235
+ If zero knowledge comments exist on the bead: log at least one before closing.
236
+
237
+ ```bash
238
+ bd comments add {BEAD_ID} "LEARNED: {most significant insight from the work}"
239
+ ```
240
+
241
+ 2. **Close the bead**
242
+
243
+ ```bash
244
+ bd close {BEAD_ID} --reason="Shipped in PR {PR_URL}"
245
+ ```
246
+
247
+ 3. **Check for compound-worthy findings**
248
+
249
+ ```bash
250
+ bd show {BEAD_ID} | grep -cE "LEARNED:|INVESTIGATION:"
251
+ ```
252
+
253
+ If LEARNED or INVESTIGATION comments exist, note this for the summary -- the user may want to run /lavra-compound later to extract reusable knowledge.
254
+
255
+ ### Phase 7: Push Beads Backup
256
+
257
+ Persist the bead state so it survives across machines and sessions.
258
+
259
+ ```bash
260
+ bd backup
261
+ git add .beads/backup/
262
+ git commit -m "chore: sync beads backup after shipping"
263
+ git push
264
+ ```
265
+
266
+ ### Phase 8: Summary
267
+
268
+ Print a concise ship report:
269
+
270
+ ```
271
+ ## Ship Complete
272
+
273
+ **PR:** {PR_URL}
274
+ **Branch:** {current_branch} -> {default_branch}
275
+
276
+ ### Beads Closed
277
+ - {BEAD_ID}: {title}
278
+ - {BEAD_ID}: {title}
279
+ (or "No beads tracked for this ship")
280
+
281
+ ### Knowledge Captured
282
+ - {count} knowledge entries logged across {count} beads
283
+ (or "No knowledge entries -- consider running /lavra-compound")
284
+
285
+ ### Warnings
286
+ - {any WARNING items from Phase 4}
287
+ (or "None")
288
+
289
+ ### Suggested Follow-ups
290
+ - Review the PR: {PR_URL}
291
+ - Run /lavra-compound to extract reusable knowledge (if LEARNED/INVESTIGATION comments found)
292
+ - Monitor CI results: gh pr checks {PR_NUMBER}
293
+ ```
294
+
295
+ </process>
296
+
297
+ <success_criteria>
298
+ - [ ] Branch is not main/master
299
+ - [ ] No uncommitted changes at ship time
300
+ - [ ] Rebased on latest default branch without conflicts
301
+ - [ ] Tests pass (or no test runner detected)
302
+ - [ ] No critical security or quality issues in the diff
303
+ - [ ] PR created with descriptive title and body
304
+ - [ ] All in_progress beads closed with reason linking to PR
305
+ - [ ] At least one knowledge comment per closed bead
306
+ - [ ] Beads backup pushed to remote
307
+ - [ ] Summary printed with PR URL and next steps
308
+ </success_criteria>
309
+
310
+ <guardrails>
311
+
312
+ ### Never Force-Push
313
+ Use `git push`, never `git push --force` or `git push --force-with-lease`. If the push fails, diagnose and fix -- do not override.
314
+
315
+ ### Never Push to Main/Master
316
+ If the current branch is main or master, halt immediately. Ship creates PRs, it does not push directly to protected branches.
317
+
318
+ ### Stop on Test Failures
319
+ If tests fail, the pipeline halts. Do not skip tests, do not ignore failures. Broken code does not ship.
320
+
321
+ ### Stop on Critical Review Findings
322
+ Secrets, credentials, and unresolved merge conflicts are ship-blockers. The pipeline halts until they are resolved.
323
+
324
+ ### Do Not Substitute for Full Review
325
+ Phase 4 is a safety net, not a code review. It catches ship-blockers only. For thorough review, use /lavra-review before or after /lavra-ship.
326
+
327
+ ### Bead Closure is Permanent
328
+ Beads are closed with a reason linking to the PR. If the PR is later rejected, the user must manually reopen beads. This command does not handle PR rejection workflows.
329
+
330
+ </guardrails>
@@ -0,0 +1,159 @@
1
+ ---
2
+ name: lavra-triage
3
+ description: Triage and categorize beads for prioritization
4
+ argument-hint: "[bead ID or empty]"
5
+ disable-model-invocation: true
6
+ ---
7
+
8
+ <objective>
9
+ Present all findings, decisions, or issues one by one for triage. Go through each bead and decide whether to keep, modify, dismiss, or defer it. Useful for triaging code review findings, security audit results, performance analysis, or any categorized findings that need tracking.
10
+ </objective>
11
+
12
+ <execution_context>
13
+ <bead_input> #$ARGUMENTS </bead_input>
14
+
15
+ **First, determine if the argument is a bead ID or empty:**
16
+
17
+ Check if the argument matches a bead ID pattern:
18
+ - Pattern: lowercase alphanumeric segments separated by hyphens (e.g., `bikiniup-xhr`, `beads-123`, `fix-auth-bug2`)
19
+ - Regex: `^[a-z0-9]+-[a-z0-9]+(-[a-z0-9]+)*$`
20
+
21
+ **If the argument matches a bead ID pattern:**
22
+
23
+ 1. Try to load the bead using the Bash tool:
24
+ ```bash
25
+ bd show "#$ARGUMENTS" --json
26
+ ```
27
+
28
+ 2. If the bead exists:
29
+ - Extract the `title` and `type` fields from the JSON array (first element)
30
+ - Example: `bd show "#$ARGUMENTS" --json | jq -r '.[0].type'`
31
+ - Announce: "Triaging bead #$ARGUMENTS: {title}"
32
+
33
+ **If the bead is an epic:**
34
+ - List all child beads:
35
+ ```bash
36
+ bd list --parent "#$ARGUMENTS" --json
37
+ ```
38
+ - Triage the epic's child beads
39
+
40
+ **If the bead is not an epic:**
41
+ - Triage just that single bead
42
+
43
+ 3. If the bead doesn't exist (command fails):
44
+ - Report: "Bead ID '#$ARGUMENTS' not found. Please check the ID or provide a valid bead ID."
45
+ - Stop execution
46
+
47
+ **If the argument does NOT match a bead ID pattern (or is empty):**
48
+ - Triage all open beads (original behavior):
49
+ ```bash
50
+ bd list --status=open --json
51
+ ```
52
+
53
+ Read each bead's full details:
54
+ ```bash
55
+ bd show {BEAD_ID}
56
+ ```
57
+ </execution_context>
58
+
59
+ <process>
60
+
61
+ ### Step 1: Present Each Bead
62
+
63
+ For each bead, present in this format:
64
+
65
+ ```
66
+ ---
67
+ Bead #X: {BEAD_ID} - [Brief Title]
68
+
69
+ Severity: P1 (CRITICAL) / P2 (IMPORTANT) / P3 (NICE-TO-HAVE)
70
+
71
+ Category: [Security/Performance/Architecture/Bug/Feature/etc.]
72
+
73
+ Description:
74
+ [Detailed explanation from bead description]
75
+
76
+ Location: [file_path:line_number if applicable]
77
+
78
+ Problem Scenario:
79
+ [Step by step what's wrong or could happen]
80
+
81
+ Proposed Solution:
82
+ [How to fix it]
83
+
84
+ Estimated Effort: [Small (< 2 hours) / Medium (2-8 hours) / Large (> 8 hours)]
85
+
86
+ ---
87
+ What would you like to do with this bead?
88
+ 1. Keep - approve for work
89
+ 2. Modify - change priority, description, or details
90
+ 3. Dismiss - close/remove this bead
91
+ 4. Defer - keep but lower priority
92
+ ```
93
+
94
+ ### Step 2: Handle User Decision
95
+
96
+ **When user says "Keep":**
97
+ 1. Update bead status to ready: `bd update {BEAD_ID} --status=open`
98
+ 2. Confirm: "Approved: `{BEAD_ID}` - {title} -> Ready to work on"
99
+
100
+ **When user says "Modify":**
101
+ - Ask what to modify (priority, description, details)
102
+ - Update the bead: `bd update {BEAD_ID} --priority {N} -d "{new description}"`
103
+ - Present revised version
104
+ - Ask again: Keep/Modify/Dismiss/Defer
105
+
106
+ **When user says "Dismiss":**
107
+ - Close the bead: `bd close {BEAD_ID} --reason "Dismissed during triage"`
108
+ - Log: `bd comments add {BEAD_ID} "DECISION: Dismissed during triage - {reason}"`
109
+ - Skip to next item
110
+
111
+ **When user says "Defer":**
112
+ - Lower priority: `bd update {BEAD_ID} --priority 5`
113
+ - Add tag: `bd update {BEAD_ID} --tags "deferred"`
114
+ - Log: `bd comments add {BEAD_ID} "DECISION: Deferred during triage - {reason}"`
115
+
116
+ ### Step 3: Progress Tracking
117
+
118
+ Every time you present a bead, include:
119
+ - **Progress:** X/Y completed (e.g., "3/10 completed")
120
+
121
+ ### Step 4: Final Summary
122
+
123
+ After all items processed:
124
+
125
+ ```markdown
126
+ ## Triage Complete
127
+
128
+ **Total Items:** [X]
129
+ **Kept (ready for work):** [Y]
130
+ **Modified:** [Z]
131
+ **Dismissed:** [A]
132
+ **Deferred:** [B]
133
+
134
+ ### Approved Beads (Ready for Work):
135
+ - {BD-XXX}: {title} - Priority {N}
136
+ - {BD-YYY}: {title} - Priority {N}
137
+
138
+ ### Dismissed Beads:
139
+ - {BD-ZZZ}: {title} - Reason: {reason}
140
+
141
+ ### Deferred Beads:
142
+ - {BD-AAA}: {title} - Reason: {reason}
143
+ ```
144
+
145
+ </process>
146
+
147
+ <guardrails>
148
+ - DO NOT implement fixes or write code during triage
149
+ - Triage is for decisions only
150
+ - Implementation happens in `/lavra-work`
151
+ </guardrails>
152
+
153
+ <handoff>
154
+ What would you like to do next?
155
+
156
+ 1. Run /lavra-work to resolve the approved beads
157
+ 2. Run /lavra-work {BEAD_ID} on a specific bead
158
+ 3. Nothing for now
159
+ </handoff>