Essential Setup & Configuration Top Priority
Create and Maintain CLAUDE.md Files
The CLAUDE.md file is your project's instruction manual for Claude. It should contain project context, coding standards, and behavioral guidelines.
Example CLAUDE.md structure:
# Project Overview This is a React/Node.js web application for... # Critical Rules - DO NOT VIOLATE - NEVER create mock data or simplified components unless explicitly told - ALWAYS check documentation before making changes - NEVER replace existing complex components with simplified versions # Tech Stack - Frontend: React, TypeScript, Tailwind CSS - Backend: Node.js, Express, Prisma - Database: PostgreSQL
You can have multiple CLAUDE.md files in different directories for context-specific instructions. Use the # command to quickly add rules based on mistakes Claude makes.
Always Start with /init Command
The /init command is your starting point for any Claude Code session. It analyzes your project structure and creates an initial CLAUDE.md file with context about your codebase.
Usage:
cd your-project-directory
claude
/init
This command helps Claude understand your project structure, dependencies, and existing code patterns before you start working together.
Use Context7 MCP Server for Updated Documentation
Claude's training data has cutoff dates, so it might suggest outdated APIs. Context7 MCP Server provides Claude with up-to-date documentation for better accuracy.
This is especially useful for rapidly evolving libraries like Tailwind CSS 4.x or new framework versions that Claude might not be familiar with.
Workflow Management High Priority
Use Plan Mode (Shift+Tab Twice)
Plan Mode automatically creates detailed plans from vague prompts before jumping into implementation. This feature breaks down complex tasks into manageable steps.
How to activate:
Press Shift + Tab twice in Claude Code
Multiple community members cite this as a game-changer for project planning and execution. It helps Claude think through requirements before coding.
Master Context Management: /compact and /clear
Proper context management is crucial for maintaining Claude's performance. Use /compact to compress context while keeping important information, and /clear for fresh starts.
Best practices:
- Use /compact manually before reaching auto-compact limit
- Create .md summaries before /clear to maintain project memory
- Watch the context indicator - don't let it auto-compact mid-feature
- Start fresh sessions after major milestones
If Claude hits auto-compact during complex features, it often loses important context and starts making mistakes or recreating files.
Create Session Handoff Documentation
When ending sessions, have Claude create detailed handoff documentation to ensure smooth transitions between sessions.
Handoff prompt template:
"Please update TODO.md, CLAUDE.md, and create HANDOFF_SUMMARY.md with: - Our overall goal for this session - Key decisions made or approaches attempted - Specific code changes made - Current state of in-progress tasks - Next steps when we resume"
Prompting & Communication High Priority
Implement Anti-Assumption Framework
Claude often makes dangerous assumptions like "API didn't return data so endpoint doesn't exist" or "room is dark so sun exploded." Train it to investigate rather than assume.
Add to your CLAUDE.md:
# Anti-Assumption Framework - Never assume conditions: investigate before concluding - Verify before acting: test conditions and validate assumptions - Ask for clarification when instructions are unclear - Question conclusions: don't jump to worst-case scenarios
This prevents Claude from making destructive changes based on incorrect assumptions about your codebase or environment.
Use Confirmation Protocols
End prompts with confirmation requests to prevent Claude from making unwanted assumptions or changes.
Effective confirmation prompt:
"Before you proceed, confirm you understand and tell me your plan. Do not make assumptions, ask questions if anything is unclear."
This simple addition prevents countless headaches from Claude going off in wrong directions or removing features you didn't ask it to touch.
Don't Hesitate to Interrupt and Redirect
Press Escape to interrupt Claude when it goes off track. It's better to stop early than let it continue down the wrong path.
When to interrupt:
- Claude starts making changes you didn't request
- It's heading in the wrong direction
- Making dangerous assumptions about your code
- Deleting or refactoring without permission
Claude doesn't remember being interrupted, so you can redirect without losing context. Sometimes you need to be firm or even "mean" to get it back on track.
Use "Thinking" Triggers for Complex Problems
When Claude struggles with complex issues, use words like "think," "ultrathink," or "carefully think" to activate deeper reasoning modes.
Magic words to try:
- "ultrathink" - For when you're really stuck
- "carefully think" - For more thoughtful decisions
- "think hard" - For complex problems
Community reports that these "magic words" seem to trigger more thorough analysis and better problem-solving.
Code Quality & Development Medium-High Priority
Always Use Version Control with Frequent Commits
Git is your safety net with Claude Code. Commit after every major feature or change, and have Claude write meaningful commit messages.
Best practices:
- Commit after every successful feature implementation
- Ask Claude to write descriptive commit messages
- Use branching for experimental features
- Never let working code get broken without a backup
Multiple community members emphasize this as the difference between disaster and productivity when working with AI coding tools.
Implement Modular Design Principles
Break code into small files and methods/classes. This makes it easier to provide specific context to Claude and manage large projects.
Modular benefits with Claude:
- Easier to provide specific context for changes
- Reduces risk of Claude modifying unrelated code
- Makes debugging and testing more manageable
- Allows for focused, incremental development
Enforce TypeScript and Linting Standards
Add explicit requirements for TypeScript types and linting compliance to your CLAUDE.md. Make Claude run build checks before considering tasks complete.
Add to CLAUDE.md:
# TypeScript and Linting - ALWAYS add explicit types to function parameters and return types - ALWAYS run `npm run build` before considering changes complete - Fix all linter and TypeScript errors immediately - Check each file for type errors when making changes
Security Best Practices Integration
Use external tools like Gemini 2.5 Pro to review Claude's code for security vulnerabilities and bad patterns, then feed the insights back to Claude for fixes.
Security review workflow:
- Copy completed feature code to Gemini 2.5 Pro
- Ask it to act as security expert and spot flaws
- Get insights about vulnerabilities and bad patterns
- Feed insights back to Claude for fixes
- Iterate until security review passes
Advanced Techniques Medium Priority
Multi-Agent Workflows with Task-Master
Use tools like Task-Master.dev to break complex projects into subtasks, then delegate work across multiple Claude Code instances running in parallel.
Multi-agent setup:
- Use Task-Master to create detailed task breakdowns
- Run multiple Claude Code instances in different terminals
- Assign specialized roles (frontend, backend, testing)
- Coordinate through shared documentation files
Community reports building complete applications (like Firebase forums) in single sessions using this approach.
Image and Screenshot Integration
Claude Code can work with screenshots, mockups, and charts surprisingly well. Drag, paste, or provide paths to visual references.
Visual workflow tips:
- Take screenshots of desired UI layouts
- Use mockups from design tools
- Create feedback loops: screenshot → implement → iterate
- Automate screenshots with Puppeteer MCP server
Custom Slash Commands
Create custom slash commands for frequently used prompts. Store them in ~/claude/commands folder for reuse across projects.
Common custom commands:
- /lint - Run linting and fix common issues
- /refactor - Apply consistent coding patterns
- /test - Generate unit tests for current file
- /review - Code review checklist
Voice Input with Wispr Flow
Use voice input tools like Wispr Flow for hands-free prompting. Press fn, speak your prompt, and it gets transcribed for Claude.
Voice input benefits:
- Faster than typing for long, descriptive prompts
- Natural conversation flow
- Useful when hands are busy or tired
- Alternative tools: Aqua Voice, Dictation Daddy
Cost & Performance Optimization Medium Priority
Claude Max Subscription vs API Costs
For heavy usage, Claude Max ($100/month) provides significantly better value than pay-per-use API costs, which can reach hundreds of dollars quickly.
Cost comparison examples:
- Project initialization: ~$0.70 via API
- Complex feature implementation: ~$1.30 via API
- Heavy daily usage: $100+ per day via API
- Max subscription: Unlimited usage for $100/month
Use ccusage command to monitor your API savings and validate the subscription value.
Optimal Coding Schedule
Code during USA morning hours when server loads are lower. You'll experience faster responses and fewer 429 rate limit errors.
Performance tips:
- Best performance: USA morning hours (EST/PST AM)
- Avoid peak usage times when possible
- Monitor for 429 errors as usage indicators
- Plan complex tasks during optimal hours
Mobile Development with SSH
Set up SSH access to your development machine and use apps like Termius to continue coding from anywhere, including "toilet coding" sessions.
Mobile setup benefits:
- Continue sessions during breaks
- Check on long-running tasks remotely
- Quick fixes and monitoring on the go
- Utilize Tailscale for secure global access
Community joke: "Download some phone SSH app so you can keep prompting from the toilet" - but it's surprisingly practical!
Use External Memory and Documentation
Maintain external documentation and use tools like GitHub issues or scratchpads to plan work outside of Claude's context window.
External memory strategies:
- Use GitHub issues for feature planning
- Maintain project wikis or notion docs
- Create scratchpad files for brainstorming
- Document architectural decisions externally