Power Features — Auto-Memory, /loop, Fast Mode, and More
Master the productivity features that make experienced Claude Code users dramatically more efficient
Power Features
Claude Code ships with a set of productivity features that most users never discover. Each one is small on its own, but stacked together they transform how you work. This guide covers eight features that separate casual users from power users.
| Feature | What It Does | Command |
|---|---|---|
| Auto-Memory | Persists context across sessions | /memory |
| /loop | Scheduled background tasks | /loop 5m task |
| Fast Mode | Faster output streaming | /fast |
| /effort | Controls reasoning depth | /effort low|med|high |
| Session Management | Named, resumable conversations | claude -n "name" |
| /context | Optimizes context window usage | /context |
| Background Agents | Parallel research tasks | run_in_background |
| Worktree Isolation | Isolated file environments | claude -w |
1. Auto-Memory
Claude remembers things between sessions without you having to repeat yourself. When you correct Claude, share a preference, or establish a project pattern, it can automatically save that context for future sessions.
How It Works
Claude monitors your interactions for reusable context: coding conventions you enforce, tool preferences you state, corrections you make. When it detects something worth remembering, it writes a memory entry to disk.
Memories are stored in your .claude-personal/ directory with a MEMORY.md index file. Each entry includes a timestamp showing when it was last modified, so you can tell at a glance which memories are current.
.claude-personal/├── MEMORY.md # Index of all memories├── preferences/│ ├── code-style.md # "Always use single quotes in TypeScript"│ └── testing.md # "Prefer integration tests over unit tests"└── project-patterns/ └── api-conventions.md # "API routes return { data, error } shape"Managing Memories
Use the /memory command to view, edit, or delete stored memories:
/memory # List all memories/memory search # Find specific memories/memory delete # Remove a memoryCustomize Storage Location
Set the autoMemoryDirectory setting to change where memories are stored. Useful if you want memories in a synced folder or a project-specific location.
What Gets Saved
| Category | Example |
|---|---|
| User preferences | "I prefer functional components over class components" |
| Project patterns | "This project uses Zod for all API validation" |
| Feedback corrections | "Don't use default exports in this codebase" |
| Workflow habits | "Always run tests before committing" |
The key difference from CLAUDE.md: memories are inferred from your behavior rather than explicitly written. CLAUDE.md is your deliberate configuration; auto-memory captures the patterns you demonstrate through use. Both load at session start, and both shape how Claude works with you.
2. /loop -- Scheduled Tasks
/loop turns Claude into a background worker. Give it a task and a schedule, and it executes on repeat -- like cron, but conversational.
Syntax
/loop 5m /check-deploy # Run /check-deploy every 5 minutes/loop 10m review PRs # Review open PRs every 10 minutes/loop 1h check test status # Check CI status every hour/loop 30m scan error logs # Monitor logs every 30 minutesThe first argument is the interval (minutes m or hours h), and the rest is the task Claude should perform each cycle.
Use Cases
/loop 5m check if the Vercel deploy finished and report statusClaude checks the deployment status every 5 minutes and notifies you when it completes or fails. Useful during long deploys where you want to keep working on other things.
Programmatic Control
Under the hood, /loop uses the CronCreate, CronDelete, and CronList tools. You can reference these directly in skills or agent definitions for more precise scheduling control.
Stopping Scheduled Jobs
Set the CLAUDE_CODE_DISABLE_CRON environment variable to stop all scheduled jobs. Useful if a loop is running away or you need to reclaim resources.
/loop is available on all paid plans. Each loop runs in the context of your current session, so it has access to the same tools, files, and MCP servers.
3. Fast Mode
Fast Mode optimizes for speed over deliberation. Same model (Opus 4.6), faster output streaming.
Toggle It
/fast # Toggle fast mode on/offWhen fast mode is active, you'll see an indicator in your prompt. Claude responds noticeably faster, especially for short interactions.
When to Use It
| Situation | Recommended Mode | Why |
|---|---|---|
| Quick file edits | Fast | Simple changes don't need deep reasoning |
| Straightforward questions | Fast | Factual answers benefit from speed |
| Running known commands | Fast | No ambiguity to resolve |
| Boilerplate generation | Fast | Pattern-based output is predictable |
| Multi-file refactors | Normal | Needs to reason about dependencies |
| Architectural decisions | Normal | Trade-offs require careful analysis |
| Complex debugging | Normal | Root cause analysis needs depth |
| Security-sensitive code | Normal | Can't afford to miss edge cases |
No Quality Penalty
Fast Mode does not switch to a smaller model. It's the same Opus 4.6 with speed optimizations for output streaming. The trade-off is reduced deliberation time, not reduced capability -- so it works best when the task is unambiguous.
4. /effort -- Model Effort Control
/effort gives you direct control over how much reasoning Claude applies to each response. Think of it as a quality-speed dial.
Effort Levels
/effort low # Fastest responses, minimal reasoning/effort medium # Balanced (default on Max/Team plans)/effort high # Maximum reasoning, slowest responses| Level | Best For | Trade-off |
|---|---|---|
| Low | Simple lookups, file reads, quick edits | Faster and cheaper, may miss nuance |
| Medium | Most everyday coding tasks | Good balance of speed and thoroughness |
| High | Complex refactors, architecture, debugging | Slower but significantly more careful |
The "ultrathink" Keyword
If you're on medium or low effort but hit a task that needs deep reasoning, type ultrathink anywhere in your message. Claude will use high effort for that single turn, then return to your default.
ultrathink -- review this authentication flow for security vulnerabilitiesThis is faster than toggling /effort high and back again. Use it for one-off complex questions in the middle of a fast workflow.
Effort and Cost
Lower effort means fewer reasoning tokens, which translates to lower cost on usage-based plans. If you're doing a batch of simple tasks, /effort low can meaningfully reduce your token spend.
5. Session Management
Sessions in Claude Code are more than just conversation history. You can name them, resume them, fork them, and organize your work across multiple parallel tracks.
Named Sessions
Start a session with a name to make it easy to find later:
claude -n "feature-auth" # Start a named sessionclaude -n "bug-memory-leak" # Another named sessionInside a session, rename it with:
/rename refactor-databaseIf you don't provide a name, Claude generates one automatically from your first message.
Resuming Sessions
claude --resume # Resume the most recent sessionclaude --resume "feature-auth" # Resume a specific named sessionThis restores the full conversation context -- Claude remembers what files it was working on, what decisions were made, and where things left off. Invaluable for multi-day features.
Session Forking
Sometimes you want to explore an alternative approach without losing your current progress. Fork the session:
/forkThis creates a branch of the conversation. You can try a different implementation strategy, and if it doesn't work out, your original session is untouched.
Copying Output
The /copy command copies code blocks or responses to your clipboard:
/copy # Copy the last response/copy code # Copy just the code blocksUseful for pulling Claude's output into other tools, documentation, or chat messages.
Parallel Workflows
Named sessions pair well with background agents. Start a named session for your main feature work, then kick off background agents for research tasks. Each runs independently with its own context.
6. /context Command
Long sessions accumulate context. Past file reads, old code blocks, earlier conversation turns -- they all consume your context window. The /context command helps you manage this.
/contextRunning /context analyzes your current session and provides actionable suggestions:
- Which parts of the context are no longer relevant
- How much of your context window is consumed
- Specific items you could trim to free up space
Why It Matters
Claude's context window is large but finite. When you approach the limit, responses degrade -- Claude may forget earlier instructions, miss details from files it read earlier in the session, or produce less coherent output.
Watch for Context Pressure
If Claude starts "forgetting" things you told it earlier in the session, or gives answers that contradict previous decisions, run /context to check. You may be approaching the limit. Consider starting a fresh session with a summary of key decisions -- or use /compact to let Claude compress the conversation automatically.
For very long sessions (multi-hour refactors, extended debugging), proactive context management is the difference between smooth sailing and frustrating repetition. Check /context periodically, especially before starting a new sub-task within the same session.
7. Background Agents
Background agents let you kick off research, analysis, or implementation tasks that run in parallel while you continue working in the foreground.
How It Works
When Claude spawns a background agent, it:
- Creates a separate execution context
- Gives the agent its own git worktree (an isolated copy of your repo)
- Runs the task independently
- Notifies you when results are ready
You keep working in your main session. No blocking, no waiting.
Research how authentication is implemented across the codebase.Use a background agent -- I'll keep working on the UI.Worktree Isolation
Each background agent operates in its own git worktree. This means it can read files, make edits, and even run commands without interfering with your working directory. When the agent finishes, you review its findings or changes before merging them into your work.
This isolation is what makes background agents safe for parallel work -- two agents can edit different files simultaneously without conflicts.
Programmatic Usage
In skill definitions and agent configurations, you can set run_in_background: true on the Agent tool to create background agents programmatically:
# In a skill or agent definitiontools: - Agent: task: "Analyze test coverage gaps" run_in_background: trueStopping Background Agents
Press Ctrl+F to list and kill background agents. It uses a two-press confirmation to prevent accidental termination:
- 1
First press
Ctrl+Fshows a list of running background agents with their current status. - 2
Second press
Ctrl+Fagain confirms the kill. The selected agent stops and its worktree is cleaned up.
Background Agents and /loop
Background agents and /loop serve different purposes. Use /loop for recurring scheduled tasks (check deploy every 5 minutes). Use background agents for one-off parallel work (research this codebase while I keep coding). They complement each other well -- see multi-agent architectures for patterns that combine both.
8. Worktree Isolation
Worktrees give Claude an isolated copy of your repository to work in. Changes in a worktree don't affect your working directory until you explicitly merge them. This is the foundation that makes background agents safe, and you can use it directly too.
Starting an Isolated Session
claude --worktree # Start Claude in a new worktreeclaude -w # Short formClaude creates a git worktree, switches to it, and operates there for the entire session. Your main working directory stays untouched.
Why Isolation Matters
Without isolation, two Claude instances (or a Claude instance and your manual edits) can step on each other's files. Worktrees solve this by giving each instance its own filesystem view of the repository.
| Scenario | Without Worktree | With Worktree |
|---|---|---|
| Two agents editing files | Race conditions, conflicts | Each has its own copy |
| Agent running tests | Dirty state affects results | Clean environment |
| Exploring risky changes | Must stash/revert manually | Discard worktree if it fails |
| Long-running background task | Blocks your workflow | Runs independently |
Sparse Checkouts for Monorepos
For large monorepos, checking out the entire repository into a worktree is expensive. Use worktree.sparsePaths to only check out the directories you need:
{ "worktree": { "sparsePaths": [ "packages/frontend/", "packages/shared/", "configs/" ] }}This dramatically reduces the time and disk space required to create worktrees, making isolation practical even in repositories with thousands of packages.
Subagent Isolation
When defining subagents (in skills or agent configurations), you can specify worktree isolation:
agents: - name: test-runner isolation: "worktree" task: "Run the full test suite and report failures"The EnterWorktree and ExitWorktree tools provide programmatic control for more complex workflows where an agent needs to move between isolated and shared contexts.
Worktrees and Git
Git worktrees are a native Git feature -- Claude Code builds on top of them. Each worktree shares the same .git directory (so branches, history, and remotes are shared), but has its own working directory and index. This means worktrees are lightweight and fast to create.
Putting It All Together
These features are most powerful in combination. Here's a real-world workflow that uses several of them together:
- 1
Set your defaults
Start a session with a name, set effort to medium, and turn on fast mode for the initial exploration phase:
Bashclaude -n "feature-payment-flow"/effort medium/fast - 2
Explore and plan at speed
In fast mode, quickly read through relevant files, ask clarifying questions, and build a plan. Fast mode keeps the exploration phase snappy.
- 3
Switch gears for implementation
When you're ready to implement, turn off fast mode and bump effort:
Bash/fast/effort highNow Claude applies maximum reasoning to the architectural decisions and implementation details.
- 4
Kick off parallel work
While implementing the main feature, spawn a background agent to handle related tasks:
BashIn the background, write integration tests for the paymentwebhook handler. Use a worktree so it doesn't interfere withmy current changes. - 5
Monitor with /loop
Set up a loop to watch your CI pipeline:
Bash/loop 5m check if the CI pipeline passed for the latest push - 6
Manage context as you go
After a couple of hours, run
/contextto check your window usage. If it's getting full, start a fresh session and let auto-memory carry forward the important context.
Quick Reference
| Command | What It Does | When to Use |
|---|---|---|
/memory | View/edit auto-saved memories | Review what Claude remembers about you |
/loop 5m task | Schedule recurring task | Monitoring, periodic checks |
/fast | Toggle fast output mode | Simple tasks, exploration |
/effort low|med|high | Set reasoning depth | Match effort to task complexity |
ultrathink | One-turn high effort | Complex question in a fast session |
claude -n "name" | Named session | Organizing parallel workstreams |
claude --resume | Resume previous session | Continuing multi-day work |
/fork | Branch the conversation | Exploring alternative approaches |
/context | Analyze context usage | Long sessions, degraded responses |
/compact | Compress conversation | Approaching context limits |
claude -w | Start in worktree | Isolated experimentation |
Ctrl+F | List/kill background agents | Managing parallel tasks |
Next Steps
- Voice and Remote Execution -- Hands-free coding with voice control and remote Claude sessions
- Plugins and Hooks -- Extend Claude Code with event-driven automation
- Multi-Agent Architectures -- Combine these features into coordinated agent workflows