dotCMS / dotCMS/ai-workflows

Enhancement: Add Claude Code Workflow Best Practices to CLAUDE.md

Open
#24 2 comments 0 reactions 2 assignees View on GitHub

@sfreudenthaler is already working on this.

Since Feb 24, 2026.

enhancement Type : Enhancement Type : Research
Dominant language
No language data
Stars
1
Forks
0
Avg merge
4h 4m
Merged PRs (30d)
1

Description

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
  1. Plan First: Write plan to `tasks/todo.md` with checkable items
  2. Verify Plan: Check in before starting implementation
  3. Track Progress: Mark items complete as you go
  4. Explain Changes: High-level summary at each step
  5. Document Results: Add review section to `tasks/todo.md`
  6. 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

  1. Reduced Mistakes: Self-improvement loop captures patterns and prevents repeated errors
  2. Better Code Quality: Verification and elegance checks ensure production-ready code
  3. Improved Velocity: Clear workflow reduces back-and-forth and context switching
  4. Knowledge Capture: Lessons and task tracking create institutional knowledge
  5. 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

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.