@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,267 @@
|
|
|
1
|
+
# Quick Start Guide
|
|
2
|
+
|
|
3
|
+
## Installation
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
# From the plugin directory
|
|
7
|
+
cd ~/Documents/projects/lavra
|
|
8
|
+
./install.sh /path/to/your-project
|
|
9
|
+
|
|
10
|
+
# Restart Claude Code
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Verify Installation
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
cd /path/to/your-project
|
|
17
|
+
|
|
18
|
+
# Check that files were created
|
|
19
|
+
ls -la .claude/hooks/ # Should see auto-recall.sh, memory-capture.sh
|
|
20
|
+
ls -la .claude/commands/ # Should see lavra-*.md files
|
|
21
|
+
ls -la .lavra/memory/ # Should see knowledge.jsonl, recall.sh
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## Configuration
|
|
25
|
+
|
|
26
|
+
### Workflow config (automatic)
|
|
27
|
+
|
|
28
|
+
The installer creates `.lavra/config/lavra.json` with default settings. Edit to toggle:
|
|
29
|
+
- `workflow.research` -- skip research phase in `/lavra-design`
|
|
30
|
+
- `workflow.plan_review` -- skip plan review phase in `/lavra-design`
|
|
31
|
+
- `workflow.goal_verification` -- skip goal verification in `/lavra-work` and `/lavra-ship`
|
|
32
|
+
- `execution.max_parallel_agents` -- limit parallel subagents (default: 3)
|
|
33
|
+
- `execution.commit_granularity` -- `"task"` (default, atomic) or `"wave"` (legacy)
|
|
34
|
+
|
|
35
|
+
Existing projects get this file automatically on next session start (version self-heal).
|
|
36
|
+
|
|
37
|
+
### Codebase analysis (optional, for brownfield projects)
|
|
38
|
+
|
|
39
|
+
If you're installing lavra into an existing project, run `/project-setup` to generate a codebase profile:
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
/project-setup
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
When prompted "Run codebase analysis?", choose Y. This dispatches 3 parallel agents to analyze your stack, architecture, and conventions, saving the results to `.lavra/config/codebase-profile.md`. This file is used by `/lavra-design` and `/lavra-work` as planning context.
|
|
46
|
+
|
|
47
|
+
## Your First Workflow
|
|
48
|
+
|
|
49
|
+
### 1. Create a bead
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
bd create "Add user profile page" -d "Display user info with edit capability"
|
|
53
|
+
# Returns: BD-001
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### 2. Plan it (optional but recommended)
|
|
57
|
+
|
|
58
|
+
```
|
|
59
|
+
/lavra-plan BD-001
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
This dispatches research agents to gather:
|
|
63
|
+
- Best practices for profile pages
|
|
64
|
+
- Framework documentation
|
|
65
|
+
- Existing patterns in your codebase
|
|
66
|
+
|
|
67
|
+
Creates child beads for each step.
|
|
68
|
+
|
|
69
|
+
### 3. Work on it
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
/lavra-work BD-001.1
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
This:
|
|
76
|
+
- Shows you relevant knowledge automatically
|
|
77
|
+
- Updates status to in_progress
|
|
78
|
+
- Offers investigation if you want it
|
|
79
|
+
|
|
80
|
+
### 4. Implement
|
|
81
|
+
|
|
82
|
+
Just code normally:
|
|
83
|
+
```bash
|
|
84
|
+
# Edit files
|
|
85
|
+
# Make commits
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
### 5. Log learnings
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
bd comments add BD-001.1 "LEARNED: Profile images should be lazy-loaded for performance"
|
|
92
|
+
bd comments add BD-001.1 "DECISION: Using Gravatar for default avatars"
|
|
93
|
+
bd comments add BD-001.1 "FACT: Max upload size is 5MB (nginx limit)"
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
These get auto-captured to `.lavra/memory/knowledge.jsonl`.
|
|
97
|
+
|
|
98
|
+
### 6. Review
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
/lavra-review BD-001.1
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
This dispatches multiple reviewers:
|
|
105
|
+
- Security audit
|
|
106
|
+
- Performance check
|
|
107
|
+
- Code quality review
|
|
108
|
+
- Architecture validation
|
|
109
|
+
|
|
110
|
+
Creates follow-up beads for any issues found.
|
|
111
|
+
|
|
112
|
+
### 7. Close
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
bd close BD-001.1
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Next Session
|
|
119
|
+
|
|
120
|
+
When you start a new session:
|
|
121
|
+
|
|
122
|
+
1. The `auto-recall` hook runs automatically
|
|
123
|
+
2. It sees you have open beads
|
|
124
|
+
3. It searches knowledge for relevant entries
|
|
125
|
+
4. Injects them as context
|
|
126
|
+
|
|
127
|
+
You get relevant learnings without manually searching!
|
|
128
|
+
|
|
129
|
+
## Available Commands
|
|
130
|
+
|
|
131
|
+
| Command | Use When |
|
|
132
|
+
|---------|----------|
|
|
133
|
+
| `/lavra-plan {id or desc}` | Starting a complex feature, need research |
|
|
134
|
+
| `/lavra-work {id}` | Starting work on a bead |
|
|
135
|
+
| `/lavra-review {id}` | Before closing a bead, want multi-agent review |
|
|
136
|
+
| `/lavra-research {id or question}` | Need deep understanding before implementing |
|
|
137
|
+
| `/lavra-checkpoint` | Want to save progress during long session |
|
|
138
|
+
|
|
139
|
+
## Manual Knowledge Search
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
# Search by keyword
|
|
143
|
+
.lavra/memory/recall.sh "authentication"
|
|
144
|
+
|
|
145
|
+
# Show recent
|
|
146
|
+
.lavra/memory/recall.sh --recent 10
|
|
147
|
+
|
|
148
|
+
# Show stats
|
|
149
|
+
.lavra/memory/recall.sh --stats
|
|
150
|
+
|
|
151
|
+
# Filter by type
|
|
152
|
+
.lavra/memory/recall.sh "jwt" --type learned
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Example: Full Feature Flow
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
# Day 1: Research and planning
|
|
159
|
+
bd create "Add two-factor authentication" -d "TOTP-based 2FA with QR codes"
|
|
160
|
+
# => BD-050
|
|
161
|
+
|
|
162
|
+
/lavra-plan BD-050
|
|
163
|
+
# Researches best practices, security considerations, framework options
|
|
164
|
+
# Creates child beads:
|
|
165
|
+
# BD-050.1: Database schema for OTP secrets
|
|
166
|
+
# BD-050.2: QR code generation endpoint
|
|
167
|
+
# BD-050.3: Verification endpoint
|
|
168
|
+
# BD-050.4: Settings UI
|
|
169
|
+
|
|
170
|
+
# Day 2: Implement first step
|
|
171
|
+
/lavra-work BD-050.1
|
|
172
|
+
# Auto-recalls security knowledge from yesterday's research
|
|
173
|
+
|
|
174
|
+
# Edit files, create migration
|
|
175
|
+
git add -A
|
|
176
|
+
git commit -m "Add OTP secrets table"
|
|
177
|
+
|
|
178
|
+
bd comments add BD-050.1 "LEARNED: OTP secrets MUST be encrypted at rest"
|
|
179
|
+
bd comments add BD-050.1 "DECISION: Using rotp gem for TOTP generation"
|
|
180
|
+
bd comments add BD-050.1 "FACT: Backup codes needed for account recovery"
|
|
181
|
+
|
|
182
|
+
/lavra-review BD-050.1
|
|
183
|
+
# Security review catches missing index on user_id
|
|
184
|
+
# Creates BD-051: Add index to otp_secrets.user_id
|
|
185
|
+
|
|
186
|
+
# Fix the issue
|
|
187
|
+
git add -A
|
|
188
|
+
git commit -m "Add index to otp_secrets.user_id"
|
|
189
|
+
bd close BD-051
|
|
190
|
+
|
|
191
|
+
bd close BD-050.1
|
|
192
|
+
|
|
193
|
+
# Continue with BD-050.2...
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## Tips
|
|
197
|
+
|
|
198
|
+
1. **Log liberally**: Every insight is valuable. Future you will thank you.
|
|
199
|
+
|
|
200
|
+
2. **Use prefixes consistently**:
|
|
201
|
+
- `LEARNED:` - Technical insights, gotchas, discoveries
|
|
202
|
+
- `DECISION:` - Choices made and why
|
|
203
|
+
- `FACT:` - Constraints, requirements, environment details
|
|
204
|
+
- `PATTERN:` - Coding patterns, conventions, idioms
|
|
205
|
+
- `INVESTIGATION:` - Root cause analysis, how things work
|
|
206
|
+
- `DEVIATION:` - Auto-fixes applied outside bead scope
|
|
207
|
+
|
|
208
|
+
3. **Review before closing**: `/lavra-review` catches issues early
|
|
209
|
+
|
|
210
|
+
4. **Plan complex features**: `/lavra-plan` prevents rework by researching upfront
|
|
211
|
+
|
|
212
|
+
5. **Checkpoint long sessions**: `/lavra-checkpoint` saves progress without losing context
|
|
213
|
+
|
|
214
|
+
6. **Trust auto-recall**: Knowledge will be injected when relevant, no need to search manually
|
|
215
|
+
|
|
216
|
+
## Troubleshooting
|
|
217
|
+
|
|
218
|
+
### Knowledge not appearing at session start
|
|
219
|
+
|
|
220
|
+
```bash
|
|
221
|
+
# Check if knowledge exists
|
|
222
|
+
.lavra/memory/recall.sh --stats
|
|
223
|
+
|
|
224
|
+
# Check if hook is installed
|
|
225
|
+
ls -la .claude/hooks/auto-recall.sh
|
|
226
|
+
|
|
227
|
+
# Check if hook is configured
|
|
228
|
+
cat .claude/settings.json | jq '.hooks.SessionStart'
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
### Commands not showing up
|
|
232
|
+
|
|
233
|
+
```bash
|
|
234
|
+
# Check if commands are installed
|
|
235
|
+
ls -la .claude/commands/lavra-*.md
|
|
236
|
+
|
|
237
|
+
# Restart Claude Code (required after installation)
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
### Agents not found
|
|
241
|
+
|
|
242
|
+
The plugin references compound-engineering agents but doesn't install them. If you don't have compound-engineering installed, the agent dispatches in commands will fail. You can either:
|
|
243
|
+
|
|
244
|
+
1. Install compound-engineering plugin
|
|
245
|
+
2. Or modify the commands to use different agent names
|
|
246
|
+
3. Or just use basic beads workflow without the agent commands
|
|
247
|
+
|
|
248
|
+
## Uninstall
|
|
249
|
+
|
|
250
|
+
```bash
|
|
251
|
+
cd ~/Documents/projects/lavra
|
|
252
|
+
./uninstall.sh /path/to/your-project
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
This removes the plugin but **preserves**:
|
|
256
|
+
- `.beads/` directory
|
|
257
|
+
- All your beads
|
|
258
|
+
- `knowledge.jsonl` with all accumulated knowledge
|
|
259
|
+
|
|
260
|
+
## Next Steps
|
|
261
|
+
|
|
262
|
+
Once you're comfortable with the basic workflow:
|
|
263
|
+
|
|
264
|
+
1. Read the full [README.md](README.md) for all features
|
|
265
|
+
2. Check [COMPARISON.md](../COMPARISON.md) to understand vs semantic-beads
|
|
266
|
+
3. Customize the commands in `.claude/commands/` for your workflow
|
|
267
|
+
4. Add custom tags to `.claude/hooks/memory-capture.sh` for better search
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
# Add Two-Factor Authentication
|
|
2
|
+
|
|
3
|
+
Add TOTP-based two-factor authentication to protect user accounts.
|
|
4
|
+
|
|
5
|
+
## Background
|
|
6
|
+
|
|
7
|
+
Users have requested 2FA for enhanced security. Current authentication is username/password only, which is vulnerable to credential stuffing attacks.
|
|
8
|
+
|
|
9
|
+
Market research shows 73% of competitors offer 2FA, and it's becoming table stakes for security-conscious users.
|
|
10
|
+
|
|
11
|
+
## Research
|
|
12
|
+
|
|
13
|
+
**TOTP (Time-based One-Time Password)**
|
|
14
|
+
- RFC 6238 standard
|
|
15
|
+
- 6-digit codes that rotate every 30 seconds
|
|
16
|
+
- Compatible with Google Authenticator, Authy, 1Password, etc.
|
|
17
|
+
- More secure than SMS-based 2FA (no SIM swapping vulnerability)
|
|
18
|
+
|
|
19
|
+
**Ruby gems available**:
|
|
20
|
+
- `rotp` - TOTP generation and verification (8.3k downloads/week)
|
|
21
|
+
- `rqrcode` - QR code generation for setup (1.2M downloads/week)
|
|
22
|
+
|
|
23
|
+
**Security considerations**:
|
|
24
|
+
- OTP secrets MUST be encrypted at rest
|
|
25
|
+
- Backup codes needed for account recovery (10 single-use codes)
|
|
26
|
+
- Rate limiting on verification attempts (max 3 failures, then lockout)
|
|
27
|
+
- Must support account recovery flow if user loses device
|
|
28
|
+
|
|
29
|
+
## Decisions
|
|
30
|
+
|
|
31
|
+
**Choice: TOTP over SMS**
|
|
32
|
+
- TOTP is more secure (no SIM swapping vulnerability)
|
|
33
|
+
- Works offline (no dependency on SMS delivery)
|
|
34
|
+
- Better UX (no waiting for SMS, works internationally)
|
|
35
|
+
- Industry best practice per NIST guidelines
|
|
36
|
+
|
|
37
|
+
**Choice: Required for admins, optional for users**
|
|
38
|
+
- Admins handle sensitive operations, require 2FA
|
|
39
|
+
- Users can opt-in for enhanced security
|
|
40
|
+
- Gradual rollout reduces support burden
|
|
41
|
+
|
|
42
|
+
**Choice: Using rotp + rqrcode gems**
|
|
43
|
+
- Battle-tested libraries
|
|
44
|
+
- Active maintenance
|
|
45
|
+
- Simple API
|
|
46
|
+
|
|
47
|
+
## Implementation Steps
|
|
48
|
+
|
|
49
|
+
### Step 1: Database Schema
|
|
50
|
+
|
|
51
|
+
Create `otp_secrets` table:
|
|
52
|
+
- user_id (indexed, unique)
|
|
53
|
+
- encrypted_secret (encrypted with Rails credentials)
|
|
54
|
+
- backup_codes (jsonb array, encrypted)
|
|
55
|
+
- enabled_at (timestamp)
|
|
56
|
+
- last_used_at (timestamp)
|
|
57
|
+
|
|
58
|
+
Migration checklist:
|
|
59
|
+
- Add foreign key constraint to users
|
|
60
|
+
- Add index on user_id
|
|
61
|
+
- Encrypt secret column using lockbox or similar
|
|
62
|
+
- Add validation for backup codes format
|
|
63
|
+
|
|
64
|
+
### Step 2: OTP Secret Generation
|
|
65
|
+
|
|
66
|
+
Create `OtpService` to handle:
|
|
67
|
+
- Generate secure random secret (Base32 encoded)
|
|
68
|
+
- Encrypt and store secret
|
|
69
|
+
- Generate 10 backup codes (random 8-char alphanumeric)
|
|
70
|
+
- Return QR code provisioning URI for authenticator apps
|
|
71
|
+
|
|
72
|
+
API:
|
|
73
|
+
```ruby
|
|
74
|
+
OtpService.enable_for_user(user)
|
|
75
|
+
# => { qr_code_uri: "otpauth://...", backup_codes: [...] }
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Step 3: QR Code Display Endpoint
|
|
79
|
+
|
|
80
|
+
Create `Settings::TwoFactorController#new`:
|
|
81
|
+
- GET /settings/two_factor/setup
|
|
82
|
+
- Generates OTP secret via OtpService
|
|
83
|
+
- Renders QR code using rqrcode
|
|
84
|
+
- Shows backup codes (one-time display)
|
|
85
|
+
- User must verify before enabling
|
|
86
|
+
|
|
87
|
+
Response includes:
|
|
88
|
+
- QR code image (SVG for crispness)
|
|
89
|
+
- Manual entry key (for apps that don't scan QR)
|
|
90
|
+
- 10 backup codes to save
|
|
91
|
+
|
|
92
|
+
### Step 4: Verification Endpoint
|
|
93
|
+
|
|
94
|
+
Create `Settings::TwoFactorController#create`:
|
|
95
|
+
- POST /settings/two_factor/verify
|
|
96
|
+
- Accepts 6-digit OTP code
|
|
97
|
+
- Verifies against stored secret using rotp
|
|
98
|
+
- Enables 2FA on success
|
|
99
|
+
- Rate limits: max 3 attempts, 5-minute lockout
|
|
100
|
+
|
|
101
|
+
Error cases:
|
|
102
|
+
- Invalid code (wrong digits)
|
|
103
|
+
- Expired code (clock drift tolerance: 30 seconds)
|
|
104
|
+
- Rate limit exceeded
|
|
105
|
+
- Secret not found
|
|
106
|
+
|
|
107
|
+
### Step 5: Login Flow Integration
|
|
108
|
+
|
|
109
|
+
Modify `SessionsController#create`:
|
|
110
|
+
- After successful password authentication
|
|
111
|
+
- If user has 2FA enabled, redirect to 2FA verification
|
|
112
|
+
- Session marked as "partial" (authenticated but not 2FA verified)
|
|
113
|
+
- Must verify OTP before full session granted
|
|
114
|
+
|
|
115
|
+
Add `SessionsController#verify_otp`:
|
|
116
|
+
- POST /sessions/verify_otp
|
|
117
|
+
- Accepts 6-digit code or backup code
|
|
118
|
+
- Verifies and completes login
|
|
119
|
+
- Invalidates backup code if used
|
|
120
|
+
- Rate limits: max 3 attempts, 5-minute lockout
|
|
121
|
+
|
|
122
|
+
### Step 6: Settings UI
|
|
123
|
+
|
|
124
|
+
Add 2FA section to user settings:
|
|
125
|
+
- Show status (enabled/disabled)
|
|
126
|
+
- Enable button → goes to setup flow
|
|
127
|
+
- Disable button (requires password confirmation)
|
|
128
|
+
- Regenerate backup codes option
|
|
129
|
+
- View recovery options
|
|
130
|
+
|
|
131
|
+
UI includes:
|
|
132
|
+
- Clear status indicator (badge/icon)
|
|
133
|
+
- Setup instructions
|
|
134
|
+
- Troubleshooting help link
|
|
135
|
+
|
|
136
|
+
### Step 7: Account Recovery Flow
|
|
137
|
+
|
|
138
|
+
Add recovery mechanism for lost devices:
|
|
139
|
+
- User can disable 2FA via email confirmation link
|
|
140
|
+
- Requires password + email verification
|
|
141
|
+
- Notifies user via email when 2FA is disabled
|
|
142
|
+
- Logs security event for audit trail
|
|
143
|
+
|
|
144
|
+
Security:
|
|
145
|
+
- Email link expires in 1 hour
|
|
146
|
+
- Single use only
|
|
147
|
+
- Requires password entry after clicking link
|
|
148
|
+
- Rate limited: max 3 requests per day
|
|
149
|
+
|
|
150
|
+
## Testing Checklist
|
|
151
|
+
|
|
152
|
+
- [ ] Setup flow generates valid TOTP secret
|
|
153
|
+
- [ ] QR code scannable by Google Authenticator
|
|
154
|
+
- [ ] Backup codes work for login
|
|
155
|
+
- [ ] Backup codes invalidated after use
|
|
156
|
+
- [ ] Rate limiting prevents brute force
|
|
157
|
+
- [ ] Clock drift handled (30-second window)
|
|
158
|
+
- [ ] Account recovery flow works
|
|
159
|
+
- [ ] Email notifications sent correctly
|
|
160
|
+
- [ ] Admin 2FA enforcement works
|
|
161
|
+
- [ ] User opt-in works
|
|
162
|
+
|
|
163
|
+
## Rollout Plan
|
|
164
|
+
|
|
165
|
+
**Phase 1: Internal testing (Week 1)**
|
|
166
|
+
- Deploy to staging
|
|
167
|
+
- Team members test with their accounts
|
|
168
|
+
- Validate all edge cases
|
|
169
|
+
|
|
170
|
+
**Phase 2: Admins required (Week 2)**
|
|
171
|
+
- Require all admin accounts to enable 2FA
|
|
172
|
+
- Support team prepares for user questions
|
|
173
|
+
- Monitor for issues
|
|
174
|
+
|
|
175
|
+
**Phase 3: User opt-in (Week 3)**
|
|
176
|
+
- Announce feature to all users
|
|
177
|
+
- Settings page shows option
|
|
178
|
+
- Monitor adoption rate
|
|
179
|
+
|
|
180
|
+
**Phase 4: Encourage adoption (Week 4+)**
|
|
181
|
+
- In-app banners for high-value accounts
|
|
182
|
+
- Email campaign explaining benefits
|
|
183
|
+
- Track metrics: adoption rate, support tickets
|
|
184
|
+
|
|
185
|
+
## Success Metrics
|
|
186
|
+
|
|
187
|
+
- 100% admin adoption within 1 week
|
|
188
|
+
- 25% user adoption within 1 month
|
|
189
|
+
- <5 support tickets per 1000 users
|
|
190
|
+
- Zero account takeovers on 2FA-enabled accounts
|
|
191
|
+
|
|
192
|
+
## Dependencies
|
|
193
|
+
|
|
194
|
+
- Rails 7.0+ (has encrypted attributes built-in)
|
|
195
|
+
- rotp gem
|
|
196
|
+
- rqrcode gem
|
|
197
|
+
- Email delivery working (for recovery flow)
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
<!-- Generated by lavra v0.6.0 -->
|
|
2
|
+
<!-- Source: design/design-implementation-reviewer.md -->
|
|
3
|
+
<!-- DO NOT EDIT - changes will be overwritten on next install -->
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
name: design-implementation-reviewer
|
|
7
|
+
description: Verifies UI implementations match Figma design specifications. Use after HTML/CSS/React components are created or modified to compare implementation against Figma and identify discrepancies.
|
|
8
|
+
kind: local
|
|
9
|
+
model: gemini-2.5-pro
|
|
10
|
+
max_turns: 30
|
|
11
|
+
timeout_mins: 10
|
|
12
|
+
---
|
|
13
|
+
<examples>
|
|
14
|
+
<example>
|
|
15
|
+
Context: The user has just implemented a new component based on a Figma design.
|
|
16
|
+
user: "I've finished implementing the hero section based on the Figma design"
|
|
17
|
+
assistant: "I'll review how well your implementation matches the Figma design."
|
|
18
|
+
<commentary>
|
|
19
|
+
Since UI implementation has been completed, use the design-implementation-reviewer agent to compare the live version with Figma.
|
|
20
|
+
</commentary>
|
|
21
|
+
</example>
|
|
22
|
+
|
|
23
|
+
<example>
|
|
24
|
+
Context: After the general code agent has implemented design changes.
|
|
25
|
+
user: "Update the button styles to match the new design system"
|
|
26
|
+
assistant: "I've updated the button styles. Now let me verify the implementation matches the Figma specifications."
|
|
27
|
+
<commentary>
|
|
28
|
+
After implementing design changes, proactively use the design-implementation-reviewer to ensure accuracy.
|
|
29
|
+
</commentary>
|
|
30
|
+
</example>
|
|
31
|
+
</examples>
|
|
32
|
+
|
|
33
|
+
<role>
|
|
34
|
+
You are an expert UI/UX implementation reviewer specializing in ensuring pixel-perfect fidelity between Figma designs and live implementations. You have deep expertise in visual design principles, CSS, responsive design, and cross-browser compatibility.
|
|
35
|
+
</role>
|
|
36
|
+
|
|
37
|
+
<process>
|
|
38
|
+
|
|
39
|
+
1. **Capture Implementation State**
|
|
40
|
+
- Use agent-browser CLI to capture screenshots of the implemented UI
|
|
41
|
+
- Test different viewport sizes if the design includes responsive breakpoints
|
|
42
|
+
- Capture interactive states (hover, focus, active) when relevant
|
|
43
|
+
- Document the URL and selectors of the components being reviewed
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
agent-browser open [url]
|
|
47
|
+
agent-browser snapshot -i
|
|
48
|
+
agent-browser screenshot output.png
|
|
49
|
+
# For hover states:
|
|
50
|
+
agent-browser hover @e1
|
|
51
|
+
agent-browser screenshot hover-state.png
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
2. **Retrieve Design Specifications**
|
|
55
|
+
- Use the Figma MCP to access the corresponding design files
|
|
56
|
+
- Extract design tokens (colors, typography, spacing, shadows)
|
|
57
|
+
- Identify component specifications and design system rules
|
|
58
|
+
- Note any design annotations or developer handoff notes
|
|
59
|
+
|
|
60
|
+
3. **Conduct Systematic Comparison**
|
|
61
|
+
- **Visual Fidelity**: Compare layouts, spacing, alignment, and proportions
|
|
62
|
+
- **Typography**: Verify font families, sizes, weights, line heights, and letter spacing
|
|
63
|
+
- **Colors**: Check background colors, text colors, borders, and gradients
|
|
64
|
+
- **Spacing**: Measure padding, margins, and gaps against design specs
|
|
65
|
+
- **Interactive Elements**: Verify button states, form inputs, and animations
|
|
66
|
+
- **Responsive Behavior**: Ensure breakpoints match design specifications
|
|
67
|
+
- **Accessibility**: Note any WCAG compliance issues visible in the implementation
|
|
68
|
+
|
|
69
|
+
4. **Generate Structured Review**
|
|
70
|
+
Structure your review as follows:
|
|
71
|
+
```
|
|
72
|
+
## Design Implementation Review
|
|
73
|
+
|
|
74
|
+
### Correctly Implemented
|
|
75
|
+
- [List elements that match the design perfectly]
|
|
76
|
+
|
|
77
|
+
### Minor Discrepancies
|
|
78
|
+
- [Issue]: [Current implementation] vs [Expected from Figma]
|
|
79
|
+
- Impact: [Low/Medium]
|
|
80
|
+
- Fix: [Specific CSS/code change needed]
|
|
81
|
+
|
|
82
|
+
### Major Issues
|
|
83
|
+
- [Issue]: [Description of significant deviation]
|
|
84
|
+
- Impact: High
|
|
85
|
+
- Fix: [Detailed correction steps]
|
|
86
|
+
|
|
87
|
+
### Measurements
|
|
88
|
+
- [Component]: Figma: [value] | Implementation: [value]
|
|
89
|
+
|
|
90
|
+
### Recommendations
|
|
91
|
+
- [Suggestions for improving design consistency]
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
5. **Provide Actionable Fixes**
|
|
95
|
+
- Include specific CSS properties and values that need adjustment
|
|
96
|
+
- Reference design tokens from the design system when applicable
|
|
97
|
+
- Suggest code snippets for complex fixes
|
|
98
|
+
- Prioritize fixes based on visual impact and user experience
|
|
99
|
+
|
|
100
|
+
</process>
|
|
101
|
+
|
|
102
|
+
## Important Guidelines
|
|
103
|
+
|
|
104
|
+
- **Be Precise**: Use exact pixel values, hex codes, and specific CSS properties
|
|
105
|
+
- **Consider Context**: Some variations might be intentional (e.g., browser rendering differences)
|
|
106
|
+
- **Focus on User Impact**: Prioritize issues that affect usability or brand consistency
|
|
107
|
+
- **Account for Technical Constraints**: Recognize when perfect fidelity might not be technically feasible
|
|
108
|
+
- **Reference Design System**: When available, cite design system documentation
|
|
109
|
+
- **Test Across States**: Don't just review static appearance; consider interactive states
|
|
110
|
+
|
|
111
|
+
## Edge Cases to Consider
|
|
112
|
+
|
|
113
|
+
- Browser-specific rendering differences
|
|
114
|
+
- Font availability and fallbacks
|
|
115
|
+
- Dynamic content that might affect layout
|
|
116
|
+
- Animations and transitions not visible in static designs
|
|
117
|
+
- Accessibility improvements that might deviate from pure visual design
|
|
118
|
+
|
|
119
|
+
When you encounter ambiguity between the design and implementation requirements, clearly note the discrepancy and provide recommendations for both strict design adherence and practical implementation approaches.
|
|
120
|
+
|
|
121
|
+
<success_criteria>
|
|
122
|
+
- Screenshots captured at all relevant viewport sizes and interactive states
|
|
123
|
+
- Design tokens (colors, typography, spacing) compared with exact values
|
|
124
|
+
- Discrepancies categorized by severity (minor vs major) with specific CSS fixes
|
|
125
|
+
- Responsive breakpoints verified against design specifications
|
|
126
|
+
- Accessibility issues noted where implementation deviates from WCAG compliance
|
|
127
|
+
- Review structured with Correctly Implemented, Minor Discrepancies, and Major Issues sections
|
|
128
|
+
</success_criteria>
|
|
129
|
+
|
|
130
|
+
Your goal is to ensure the implementation delivers the intended user experience while maintaining design consistency and technical excellence.
|