Skip to main content
Code Guide
M01 Beginner Methodology

Daily Workflow

The optimal routine for a productive development session

The Interaction Loop

Every Claude Code session follows this pattern:

1. DESCRIBE → Explain what you want
2. ANALYZE → Claude explores the codebase
3. PROPOSE → Claude proposes a diff
4. REVIEW → Read and evaluate
5. DECIDE → Accept / Reject / Modify
6. VERIFY → Run the tests
7. COMMIT → Save (optional)

The key: Claude proposes, you decide. Never skip the review step, even on changes that seem obvious.

Session Start

Before typing the first request:

  1. Verify CLAUDE.md is loaded (first line shown in context)
  2. Set a clear intention: one single objective per session
  3. Start with /plan if the task touches multiple files
Terminal window
cd your-project
claude
# Check: "✓ CLAUDE.md loaded"

During the Session

Review the diff at each step — do not let Claude chain multiple changes without intermediate validation. On significant modifications, ask explicitly:

You: Show me what you changed before continuing

Context management:

ContextAction
0-50%Work freely
50-75%Be selective about open files
75%+/compact now
90%+/clear required

Anti-Pattern: Vibe Coding

Letting Claude iterate unsupervised across multiple files, then discovering problems an hour later. The end-of-session diff becomes unreadable and rolling back is costly.

Concrete countermeasures:

  • Validate after each modified file, not after an entire batch
  • Run tests after each significant change
  • Commit regularly to have clean rollback points

End of Session

Before closing:

Terminal window
# Check the repo state
git diff --stat
# Commit if everything is clean
git commit -m "feat: short description"

If important decisions were made during the session (architecture choices, adopted conventions), note them in CLAUDE.md so the next session starts from the right context. Sessions do not transfer implicit decisions on their own.

Effective Prompt Format

WHAT: Fix the timeout bug on login
WHERE: src/auth/session.ts
HOW: Increase expiry from 1h to 24h
VERIFY: Login persists after browser refresh

This framework avoids ambiguities and reduces clarification back-and-forth.