Summary
Add workflow orchestration and development best practices to CLAUDE.md based on internal best practices shared by Boris Cherny (creator of Claude Code at Anthropic). These practices will help developers work more effectively with Claude Code on this repository.
Background
Boris Cherny shared on X internal best practices and workflows that he and his team actually use with Claude Code daily. These practices have been proven to improve development velocity and code quality by creating a compounding system where Claude learns from corrections and reduces mistake rates over time.
Proposed Additions
1. Workflow Orchestration
Plan Mode Default
- Enter plan mode for ANY non-trivial task (3+ steps or architectural decisions)
- If something goes sideways, STOP and re-plan immediately – don't keep pushing
- Use plan mode for verification steps, not just building
- Write detailed specs upfront to reduce ambiguity
Subagent Strategy
- Use subagents liberally to keep main context window clean
- Offload research, exploration, and parallel analysis to subagents
- For complex problems, throw more compute at it via subagents
- One task per subagent for focused execution
Self-Improvement Loop
- After ANY correction from the user: update `tasks/lessons.md` with the pattern
- Write rules for yourself that prevent the same mistake
- Ruthlessly iterate on these lessons until mistake rate drops
- Review lessons at session start for relevant project
Verification Before Done
- Never mark a task complete without proving it works
- Diff behavior between main and your changes when relevant
- Ask yourself: "Would a staff engineer approve this?"
- Run tests, check logs, demonstrate correctness
Demand Elegance (Balanced)
- For non-trivial changes: pause and ask "is there a more elegant way?"
- If a fix feels hacky: "Knowing everything I know now, implement the elegant solution"
- Skip this for simple, obvious fixes – don't over-engineer
- Challenge your own work before presenting it
Autonomous Bug Fixing
- When given a bug report: just fix it. Don't ask for hand-holding
- Point at logs, errors, failing tests – then resolve them
- Zero context switching required from the user
- Go fix failing CI tests without being told how
2. Task Management
- Plan First: Write plan to `tasks/todo.md` with checkable items
- Verify Plan: Check in before starting implementation
- Track Progress: Mark items complete as you go
- Explain Changes: High-level summary at each step
- Document Results: Add review section to `tasks/todo.md`
- Capture Lessons: Update `tasks/lessons.md` after corrections
3. Core Principles
- Simplicity First: Make every change as simple as possible. Impact minimal code.
- No Laziness: Find root causes. No temporary fixes. Senior developer standards.
- Minimal Impact: Changes should only touch what's necessary. Avoid introducing bugs.
Benefits
- Reduced Mistakes: Self-improvement loop captures patterns and prevents repeated errors
- Better Code Quality: Verification and elegance checks ensure production-ready code
- Improved Velocity: Clear workflow reduces back-and-forth and context switching
- Knowledge Capture: Lessons and task tracking create institutional knowledge
- Autonomous Execution: Less hand-holding needed from developers
Implementation Suggestions
Add a new section in CLAUDE.md titled "Claude Code Workflow Best Practices" that includes:
- The workflow orchestration practices above
- Task management workflow
- Core development principles
- Directory structure for `tasks/` folder with `todo.md` and `lessons.md`
Additional Context
This is a compounding system. Every correction captured becomes a rule that prevents future mistakes. Over time, Claude's effectiveness increases because it learns from project-specific feedback.
These practices complement the existing technical guidance in CLAUDE.md and would help any developer or Claude instance working on this repository.
References
- Source: Internal best practices from Boris Cherny (Claude Code creator at Anthropic)
- Proven in production use by the Claude Code team
Summary
Add workflow orchestration and development best practices to
CLAUDE.mdbased on internal best practices shared by Boris Cherny (creator of Claude Code at Anthropic). These practices will help developers work more effectively with Claude Code on this repository.Background
Boris Cherny shared on X internal best practices and workflows that he and his team actually use with Claude Code daily. These practices have been proven to improve development velocity and code quality by creating a compounding system where Claude learns from corrections and reduces mistake rates over time.
Proposed Additions
1. Workflow Orchestration
Plan Mode Default
Subagent Strategy
Self-Improvement Loop
Verification Before Done
Demand Elegance (Balanced)
Autonomous Bug Fixing
2. Task Management
3. Core Principles
Benefits
Implementation Suggestions
Add a new section in CLAUDE.md titled "Claude Code Workflow Best Practices" that includes:
Additional Context
This is a compounding system. Every correction captured becomes a rule that prevents future mistakes. Over time, Claude's effectiveness increases because it learns from project-specific feedback.
These practices complement the existing technical guidance in CLAUDE.md and would help any developer or Claude instance working on this repository.
References