Issue #1000
I’ve been using Claude Code daily for months. Here are my notes
Extended Thinking: The Magic Words
Claude Code has built-in thinking modes that allocate more compute for complex problems:
- “think” → ~4K tokens
- “think hard” / “megathink” → ~10K tokens
- “think harder” / “ultrathink” → ~32K tokens
Example: ultrathink Plan the architecture for this payment system
Reserve ultrathink for architecture decisions and hard debugging. For simple tasks, you’re just burning tokens.
Essential Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Escape |
Stop current operation |
Escape x2 |
Searchable message history / rewind to checkpoint |
Up Arrow |
Command history (persists across sessions) |
Tab |
Autocomplete file paths |
Ctrl+V |
Paste images (not Cmd+V, even on Mac) |
Ctrl+R |
Search prompt history |
Shift+Tab |
Toggle Plan Mode |
@filename |
Reference files in prompts |
Plan Mode
Toggle with Shift+Tab. Claude analyzes your codebase read-only before proposing changes. Use it for:
- Exploring unfamiliar codebases
- Planning complex refactors
- Safe code reviews
CLAUDE.md: Project Memory
Create a CLAUDE.md in your repo root:
# Build
- npm run build
- npm run test
# Style
- ES modules, not CommonJS
- No `any` types
- Destructure imports
# Workflow
- Typecheck after changes
- Run single tests, not full suite
Keep it concise. Claude loads this automatically every session.
Tip: Press # during a session to give Claude an instruction it will automatically add to the relevant CLAUDE.md.
Context Management Tips
/clearoften — Start fresh for new tasks. Old history eats tokens./compact— Summarize context when running low.--resume— Continue previous sessions:claude --resume/context— See what’s currently in Claude’s memory.- Run parallel instances — Different terminal panes for different parts of your codebase.
MCP: Connect Claude to Everything
Context7 (Up-to-Date Docs)
Fetches real-time, version-specific documentation. No more deprecated API suggestions.
claude mcp add context7 -- npx -y @upstash/context7-mcp@latest
Then add “use context7” to prompts.
Other Useful MCPs
- GitHub — Manage PRs and issues
- Zapier — Connect to 1000s of apps
- Perplexity — Research without leaving terminal
VS Code Extension
Install from the Marketplace. Features:
- Inline diffs with accept/reject
- Plan review before applying
- Auto-accept mode
- Multiple parallel instances in tabs
Works standalone—no CLI needed.
Chrome Extension
Claude in Chrome lets Claude navigate websites, fill forms, and automate browser tasks. Now integrates with Claude Code for build-test-verify workflows.
Checkpoints: Undo Everything
Claude auto-saves before each change. Rewind with:
Escapex2 → Select checkpoint/rewindcommand
Restore options: chat only, code only, or both.
Track Usage with ccusage
npx ccusage@latest daily # Daily usage
npx ccusage@latest session # By conversation
npx ccusage@latest blocks --live # Real-time monitoring
Essential for understanding where your tokens go. GitHub
Hooks
Run scripts at specific events. Add to .claude/settings.json:
{
"hooks": {
"PostToolUse": [{ "type": "command", "command": "npm run lint" }]
}
}
Available events: SessionStart, PreToolUse, PostToolUse, Stop, Notification, PreCompact
GitHub Actions
Tag @claude in any PR or issue to get Claude to analyze code, implement features, or fix bugs automatically.
Quick Setup
/install-github-app
Or manually: install the Claude GitHub App, add ANTHROPIC_API_KEY to repo secrets, and copy the workflow file.
What You Can Do
@claude implement this feature based on the issue description
@claude fix the TypeError in the dashboard component
@claude review this PR for security issues
Claude respects your CLAUDE.md guidelines and existing code patterns.
Subagents: Specialized Helpers
Create focused agents for specific tasks:
/agents
Examples: code-reviewer, api-designer, test-writer. Each has its own context and tools.
Tip: Combine with ultrathink: have the main agent plan, then delegate to subagents.
Hidden Commands Worth Knowing
/init— Initialize project setup/doctor— Diagnose issues/permissions— Manage tool access/cost— See current session cost/model— Switch models mid-session/stats— Your Claude Code stats (favorite model, usage streak, graphs)/usage— Current usage and limits/export— Export conversation/memory— View/edit memory rules
Git Worktrees for Parallel Work
Run multiple Claude instances on different branches:
git worktree add ../feature-branch feature-branch
cd ../feature-branch
claude
Each worktree gets its own Claude session. Great for comparing implementations.
Plugin Ecosystem
Install Plugins
/plugin marketplace add edmund-io/edmunds-claude-code
/plugin install edmunds-claude-code
Recommended Marketplaces
| Repo | What It Offers |
|---|---|
| edmund-io/edmunds-claude-code | 14 commands + 11 agents for web dev |
| wshobson/commands | 57 production-ready commands |
| wshobson/agents | Plugin marketplace version |
| anthropics/skills | Official skills (docx, xlsx, pdf, pptx) |
| EveryInc/compound-engineering-plugin | Engineering workflows |
Prompting Tips
Good prompts make all the difference. Here’s what works:
Be Clear and Specific
# Bad
"Help me with authentication"
# Good
"Add JWT refresh token logic to src/auth/refresh.ts.
The access token expires in 15min, refresh token in 7 days.
Store refresh token in httpOnly cookie. Follow the pattern in src/auth/login.ts."
Use Examples
Show Claude what you want:
"Format error messages like this existing one:
{ code: 'AUTH_001', message: 'Invalid credentials', status: 401 }
Now create error types for: expired token, missing permissions, rate limited"
Encourage Step-by-Step Thinking
For complex tasks, ask Claude to think through it:
"Before implementing, think step-by-step:
1. What files need to change?
2. What could break?
3. How do we test this?
Then implement."
Iterate and Refine
Don’t accept the first output. Be specific about what to change:
# Bad
"Make it better"
# Good
"Good start, but:
1. Extract the validation logic into a separate function
2. Add error handling for network failures
3. Use early returns instead of nested ifs"
Use Role-Playing
Assign Claude a perspective:
"Act as a security auditor. Review this authentication flow
and identify potential vulnerabilities. Then switch to a
senior developer perspective and suggest fixes."
Specify Output Format
Tell Claude exactly how you want the response:
"Analyze this API design and provide:
1. Executive summary (2-3 sentences)
2. Issues found (bullet list)
3. Recommended changes (table: issue | fix | priority)
4. Implementation order"
Let Claude Say “I Don’t Know”
Add this to avoid hallucinations:
"If you're unsure about any part of our codebase conventions,
ask me rather than guessing."
For more prompting techniques, see this Claude prompting guide.
Start the conversation