- Rename reviews/ to lenses/ (clearer terminology) - Add workflows/ for beads proto templates - Extract code-review proto to workflows/molecules.jsonl - Update ai-skills.nix module: - Add enableLenses option (deploys to ~/.config/lenses/) - Add enableWorkflows option (deploys to ~/.beads/molecules.jsonl) - Derive repoRoot from skillsPath for sibling directories - Update lens paths in proto to use deployed location 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1.4 KiB
1.4 KiB
Lenses
Focused prompts for multi-perspective code analysis.
Philosophy
Each lens examines code through one specific concern. Multiply lenses × models for diverse perspectives.
Usage
Single lens, multiple models:
orch consensus "$(cat ~/.config/lenses/bloat.md)" flash gemini gpt --file src/target.py
Pipe file content:
cat src/target.py | orch consensus "$(cat ~/.config/lenses/smells.md)" flash gemini
Convergent review (multiple passes):
for lens in bloat smells dead-code; do
echo "=== $lens ==="
orch chat "$(cat ~/.config/lenses/$lens.md)" --model gemini --file src/target.py
done
Available Lenses
| Lens | Focus |
|---|---|
bloat.md |
File size, function length, complexity metrics |
smells.md |
Code smells, readability, naming issues |
dead-code.md |
Unused exports, zombie code, unreachable paths |
redundancy.md |
Duplicate systems, YAGNI, consolidation opportunities |
Planned Lenses
coverage.md- Test gaps, untested critical pathscoupling.md- Tight coupling, leaky abstractionssecurity.md- OWASP, injection, authperf.md- Bottlenecks, N+1 queriesarchitecture.md- Boundaries, data flow, trade-offs
Output Convention
All lenses output findings in a consistent format:
[TAG] <severity:HIGH|MED|LOW> <file:line>
Issue: <description>
Suggest: <action>
This enables parsing and automated beads creation.