Lesson 13: Reference Materials
Complete reference guide for Claude Code commands, settings, and features.
Prerequisites
- Completed Lessons 1-12 - Full tutorial completion
- Bookmark this page - Quick reference for daily use
- Return as needed - Look up specifics when working
Usage: This is a reference document. Read through once, then return when you need specific information.
Slash Commands
Core Commands
| Command | Description | Usage |
|---|---|---|
/help | Show help information | You> /help |
/help skills | Show all available skills | You> /help skills |
/exit | Exit the session | You> /exit |
/plan | Enter plan mode | You> /plan |
/mode <mode> | Change permission mode | You> /mode accept-edits |
Skills Commands
| Command | Description | Usage |
|---|---|---|
/commit [message] | Create git commit | You> /commit |
/memory | Edit CLAUDE.md | You> /memory |
/config | Interactive configuration | You> /config |
/stats | Show session statistics | You> /stats |
/cost | Show cost breakdown | You> /cost |
/pr | Create pull request | You> /pr |
Session Commands
| Command | Description | Usage |
|---|---|---|
/sessions | List recent sessions | You> /sessions |
/resume [id] | Resume a session | You> /resume abc123 |
/compact | Compact conversation | You> /compact |
/tasks | Show background tasks | You> /tasks |
CLI Flags
Basic Flags
| Flag | Description | Example |
|---|---|---|
-h, --help | Show help | claude --help |
-v, --version | Show version | claude --version |
-p, --prompt | Single prompt mode | claude -p "Hello" |
-c, --command | Run command | claude -c "npm test" |
-r, --read | Read file | claude -r file.py -p "Explain" |
Session Flags
| Flag | Description | Example |
|---|---|---|
--resume | Resume last session | claude --resume |
--resume <id> | Resume specific session | claude --resume abc123 |
--plan | Start in plan mode | claude --plan |
--model <name> | Specify model | claude --model claude-opus-4-5 |
Configuration Flags
| Flag | Description | Example |
|---|---|---|
--mode <mode> | Permission mode | claude --mode accept-edits |
--config <path> | Config file location | claude --config custom.json |
--max-tokens <n> | Max token limit | claude --max-tokens 100000 |
--temperature <n> | Response randomness | claude --temperature 0.5 |
Utility Flags
| Flag | Description | Example |
|---|---|---|
--list-sessions | List all sessions | claude --list-sessions |
--clean-sessions | Clean old sessions | claude --clean-sessions --older-than 7d |
--show-config | Show current config | claude --show-config |
--background | Run in background | claude --background "npm test" |
Built-in Tools
File Operations
Read Tool
- Purpose: View file contents
- Permission required: Always
- Usage: Automatic when reading files
Edit Tool
- Purpose: Modify existing files
- Permission required: Always (unless in accept-edits mode)
- Usage: Shows diff before applying
Write Tool
- Purpose: Create new files
- Permission required: Always (unless in accept-edits mode)
- Usage: Shows full content before creating
Search Tools
Glob Tool
- Purpose: Find files by pattern
- Patterns:
*.py,src/**/*.js,test_* - Usage:
Find all Python files
Grep Tool
- Purpose: Search file contents
- Supports: Regex, file filters
- Usage:
Search for "TODO" comments
Execution Tool
Bash Tool
- Purpose: Run shell commands
- Permission required: Always (safety)
- Usage:
Run tests,Install dependencies
Keyboard Shortcuts
Session Control
| Shortcut | Action |
|---|---|
Ctrl+C | Cancel current operation |
Ctrl+D | Exit session (EOF) |
Ctrl+L | Clear screen (keep history) |
Ctrl+P | Cycle permission modes |
Ctrl+Shift+P | Switch to Default mode |
Ctrl+O | Toggle "Don't Ask" mode |
Escape | Cancel current operation |
Input Editing
| Shortcut | Action |
|---|---|
Ctrl+A | Move to beginning of line |
Ctrl+E | Move to end of line |
Ctrl+U | Clear to beginning of line |
Ctrl+K | Clear to end of line |
Ctrl+W | Delete previous word |
Ctrl+Y | Paste deleted text |
History Navigation
| Shortcut | Action |
|---|---|
↑/↓ | Navigate command history |
Ctrl+R | Search history |
Ctrl+G | Cancel history search |
Settings Reference
Settings Structure
{
"model": "claude-sonnet-4-5",
"permissionMode": "default",
"maxTokens": 200000,
"temperature": 0.7,
"permissions": {
"allowedOperations": [],
"deniedOperations": [],
"allowedPatterns": [],
"deniedPatterns": []
},
"git": {
"attribution": {
"enabled": true,
"format": "Co-Authored-By: {model} <noreply@anthropic.com>"
}
},
"mcpServers": {},
"hooks": {}
}
Model Settings
Available Models:
claude-opus-4-5- Most capableclaude-sonnet-4-5- Balanced (default)claude-haiku-4-5- Fastest
Configuration:
{
"model": "claude-sonnet-4-5",
"maxTokens": 200000,
"temperature": 0.7
}
Permission Modes
Modes:
default- Ask for everythingaccept-edits- Auto-approve editsdont-ask- Auto-approve most operationsbypass- No prompts (use caution)
Configuration:
{
"permissionMode": "default"
}
MCP Servers
STDIO Server:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@anthropic/mcp-server-github"],
"env": {
"GITHUB_TOKEN": "your-token"
}
}
}
}
HTTP Server:
{
"mcpServers": {
"api": {
"url": "https://api.example.com/mcp",
"headers": {
"Authorization": "Bearer token"
}
}
}
}
Hooks
Pre-commit:
{
"hooks": {
"pre-commit": [
{"command": "npm", "args": ["run", "lint"]}
]
}
}
Post-edit:
{
"hooks": {
"post-edit": {
"pattern": "*.js",
"command": "npm",
"args": ["run", "format", "--", "$FILE"]
}
}
}
File Locations
Configuration Files
Linux/macOS:
- User settings:
~/.config/claude-code/settings.json - User skills:
~/.claude/skills/ - Session data:
~/.local/state/claude-code/sessions/
Windows:
- User settings:
%APPDATA%\claude-code\settings.json - User skills:
%USERPROFILE%\.claude\skills\ - Session data:
%LOCALAPPDATA%\claude-code\sessions\
Project Files
Project-level:
- Settings:
.claude/settings.json - Skills:
.claude/skills/ - Context:
CLAUDE.md
Ignored by git:
.claude-code/- Local project settings
Environment Variables
| Variable | Purpose | Example |
|---|---|---|
ANTHROPIC_API_KEY | API authentication | sk-ant-... |
CLAUDE_MODEL | Default model | claude-sonnet-4-5 |
CLAUDE_CONFIG_DIR | Config directory | /custom/path |
CLAUDE_PERMISSION_MODE | Permission mode | accept-edits |
Setting environment variables:
# Temporary
export CLAUDE_MODEL="claude-opus-4-5"
# Permanent (add to ~/.bashrc or ~/.zshrc)
export CLAUDE_MODEL="claude-sonnet-4-5"
export CLAUDE_PERMISSION_MODE="default"
Common Patterns
Reading Files
Single file:
You> Read @src/main.py
Multiple files:
You> Read all Python files in src/
Specific function:
You> Read the auth function in @src/api.py
Editing Files
Simple edit:
You> Add error handling to @src/main.py
Specific change:
You> Rename the 'data' variable to 'userData' in @src/user.js
Refactor:
You> Extract the validation logic into a separate function
Git Operations
Commit:
You> /commit
Commit with message:
You> /commit -m "Fix login bug"
Pull request:
You> /pr
Search history:
You> When was the auth feature added?
Search Patterns
Grep (content):
You> Search for "TODO" in all Python files
You> Find functions that call the database
Glob (files):
You> List all test files
You> Find all JSON configuration files
Error Messages
Common Errors and Solutions
"Permission denied"
- Check file permissions
- Verify permission mode
- Run as appropriate user
"File not found"
- Use absolute paths
- Check current directory
- Verify file exists
"API key invalid"
- Check ANTHROPIC_API_KEY
- Verify key is active
- Check account status
"Session not found"
- Check session ID
- Use
/sessionsto list - Resume with correct ID
"Configuration error"
- Validate JSON syntax
- Check file location
- Verify settings structure
Quick Reference Card
Essential Commands
# Start Claude
claude
# Single prompt
claude -p "Your prompt"
# Run command
claude -c "npm test"
# Read file
claude -r file.py -p "Explain this"
# Resume session
claude --resume
In-Session Commands
You> /help # Show help
You> /exit # Exit session
You> /commit # Create commit
You> /pr # Create PR
You> /stats # Show stats
You> /plan # Enter plan mode
You> /mode <mode> # Change mode
Tips
- Use @ for files:
@src/file.py - Be specific: Clear requests = better responses
- Review diffs: Always check before accepting
- Use plan mode: For complex tasks
- Check stats: Monitor usage with
/stats
Support Resources
Documentation
- Official Docs: https://docs.claude.com/claude-code
- API Reference: https://docs.anthropic.com/claude/reference
- GitHub: https://github.com/anthropics/claude-code
Community
- Discord: https://discord.gg/anthropic
- GitHub Issues: https://github.com/anthropics/claude-code/issues
- GitHub Discussions: https://github.com/anthropics/laude-code/discussions
Getting Help
In Claude Code:
You> /help
Report bugs: https://github.com/anthropics/claude-code/issues
Feature requests: https://github.com/anthropics/claude-code/discussions
Summary
This reference guide covers:
- Slash commands - All in-session commands
- CLI flags - Command-line options
- Built-in tools - Read, Edit, Write, Grep, Glob, Bash
- Keyboard shortcuts - Quick navigation
- Settings - Complete configuration reference
- File locations - Where files are stored
- Environment variables - Runtime configuration
- Common patterns - Frequent workflows
- Error messages - Troubleshooting
Congratulations! 🎉
You've completed the comprehensive Claude Code tutorial!
What you've learned: ✅ Installation and setup ✅ Basic operations and permissions ✅ Codebase navigation ✅ Skills and configuration ✅ MCP integrations ✅ Advanced features ✅ Git integration ✅ IDE integration ✅ Common workflows ✅ Best practices ✅ Complete reference
Next steps:
- Build real projects with Claude Code
- Explore the official documentation
- Join the community
- Create custom skills for your workflows
- Share your knowledge with others
Remember:
- Start with plan mode for complex tasks
- Always review diffs before accepting
- Use
/statsto monitor usage - Ask specific questions with context
- Leverage CLAUDE.md for project context
Happy coding with Claude! 🚀