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