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