10 Productivity Hacks for Claude Code: Work Smarter, Not Harder

10 proven productivity techniques for Claude Code that save you hours each day. From prompt templates to keyboard shortcuts to workflow optimizations.

·9 min read

Becoming a Power User

Claude Code is already faster than manual coding for most tasks. But most developers use only 20% of its capabilities. These 10 hacks will unlock the remaining 80% — reducing your development time by 50-70%.

---

Hack 1: The @ File Reference System

Instead of describing files or pasting content, use @ references:

// ❌ Slow
"There's a file called Header.tsx in the components folder that has a nav menu..."

// ✅ Fast (2 seconds saved) @src/components/Header.tsx — Add a dark mode toggle

The Full @ Syntax

| Reference | Example | What It Does | |-----------|---------|-------------| | @file.ts | @src/app/page.tsx | Reads a specific file | | @dir/ | @src/components/ | Lists all files in a directory | | @pattern | @*{test,spec}.ts | Glob pattern matching | | @@ | @@ | Reads current git diff |

> 💡 Pro tip: Type @ and then Tab — Claude Code will autocomplete file paths from your project.

---

Hack 2: Write Prompt Templates

Don't type the same prompt structure twice. Create templates:

Code Review Template

Review [FILE] for: 1. TypeScript type safety 2. Error handling (edge cases?) 3. Security (XSS, CSRF, injection) 4. Performance (unnecessary re-renders?) 5. Accessibility (ARIA, keyboard nav) Rate each from 1-5 and suggest fixes.

Refactor Template

Refactor [FILE]: - Extract reusable logic into [TARGET FILE] - Follow the project's existing patterns - Keep the same functionality - Add TypeScript types

Then use them:

Review @src/app/api/users/route.ts for type safety, error handling, and security
Refactor @src/hooks/useAuth.ts into smaller, focused hooks

---

Hack 3: The CLAUDE.md Speed Layer

A well-crafted CLAUDE.md saves 5-10 minutes per session. Here's a complete template:

# .claude/CLAUDE.md

Identity

You're working on [PROJECT NAME], a [TYPE] application.

Stack

- Framework: Next.js 14 (App Router) - Language: TypeScript (strict mode) - Styling: Tailwind CSS - Database: Prisma + PostgreSQL - Auth: NextAuth.js - Payments: Stripe

Conventions

- Named exports for all components - import type for type-only imports - Error boundaries on every route - Tests in __tests__/ next to source files - Run npm run build before pushing

Project Structure

- src/app/ — pages and API routes - src/components/ — shared UI - src/lib/ — utilities and shared logic - prisma/ — database schema

> 💡 Pro tip: Spend 10 minutes crafting your CLAUDE.md at the start of each project. It pays for itself within 2-3 sessions.

---

Hack 4: Use Alias Commands

Create shell aliases for your most common Claude Code patterns:

# ~/.zshrc or ~/.bashrc

# Quick code review alias cr='claude --model claude-haiku-3-5-20241022 --print "Review this file for issues: "'

# Fix TypeScript errors alias tsfix='claude --model claude-sonnet-4 --print "Fix all TypeScript errors in "'

# Generate component alias gen='claude --model claude-sonnet-4 --print "Generate a React component for "'

# Quick question alias cq='claude --model claude-haiku-3-5-20241022 --print'

# Safety check alias ck='claude --model claude-haiku-3-5-20241022 --print "Security checklist for "'

# Documentation generator alias doc='claude --model claude-sonnet-4 --print "Generate documentation for "'

Usage:

cr @src/app/api/users/route.ts
tsfix @src/store.ts
gen "a user profile card component" --output src/components/UserCard.tsx
cq "Explain the difference between Map and WeakMap in JavaScript"
ck @src/middleware.ts

---

Hack 5: The Session Reset Strategy

Instead of fighting a full context window, reset strategically:

# Session 1: Design (empty context — full 200K)
claude
> Design the auth system architecture
> Create prisma schema for users
> /save design-session

# Session 2: Implement Auth API (fresh 200K) claude > @.claude/design-session — Implement the auth API routes

# Session 3: Implement Auth UI (fresh 200K) claude > @src/app/api/auth/ — Create the login/signup UI components

Each session gets full context for its focused task instead of fighting for space.

---

Hack 6: The Feedback Loop Pattern

When Claude generates incorrect code, don't just say "fix it":

// ❌ Vague feedback
"Fix this"

// ✅ Specific feedback "The TypeScript error is on line 45: Object is possibly 'undefined'. The function getUsers() can return undefined. Add a fallback and a type guard."

The Three-Step Fix Pattern

1. Show the error 2. Explain why it happens 3. Tell Claude what you want instead

@src/api/users.ts — The build output shows:
src/api/users.ts:45:18 - error TS2532: Object is possibly 'undefined'.
This happens because users.find() returns User | undefined.
Add an early return with a 404 response if user is not found.

---

Hack 7: Use Terminal Multiplexing

Run Claude Code alongside your dev server:

# Using tmux
tmux new-session -s dev

# Split vertically tmux split-window -h

# Left pane: Claude Code tmux send-keys -t dev:0.0 'claude' Enter

# Right pane: Dev server tmux send-keys -t dev:0.1 'npm run dev' Enter

Or use VS Code's built-in terminal splitting for the same effect.

---

Hack 8: The Compression Technique

When you're deep in a session and running low on context:

> Summarize what we've done so far in 3 bullet points.
> Then start fresh: /exit → claude → @checkpoint.md Continue

This compresses 100+ messages into ~500 tokens of context.

---

Hack 9: Git Integration Workflow

Let Claude Code handle git operations naturally:

# In Claude Code:
> What's changed since the last commit?
> Create a feature branch for payment integration
> Commit the changes I just made with message "feat: add Stripe checkout"
> Create a PR with description of all changes

For safety, add to CLAUDE.md:

Git Rules

- Never commit directly to main/master - Always create feature branches - Use conventional commit messages (feat:, fix:, chore:, docs:) - Review git diff before committing

---

Hack 10: The MCP Power Combo

Extend Claude Code with MCP servers for supercharged workflows:

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_TOKEN": "ghp_..." }
    },
    "notion": {
      "command": "npx",
      "args": ["-y", "@notionhq/mcp-server-notion"],
      "env": { "NOTION_TOKEN": "ntn_..." }
    }
  }
}

Now you can:

> Create a GitHub issue from this conversation
> Search my Notion docs for the design spec
> Look up the requirements in our project database

---

Quick Reference Card

| Hack | Time Saved Per Day | Setup Time | |------|-------------------|------------| | 1. @ file references | 10 min | 0 min (just learn it) | | 2. Prompt templates | 15 min | 5 min | | 3. CLAUDE.md | 15 min | 10 min (once) | | 4. Alias commands | 10 min | 5 min | | 5. Session reset | 20 min | 0 min | | 6. Feedback loop | 10 min | 0 min (just practice) | | 7. Terminal multiplexing | 5 min | 10 min | | 8. Compression technique | 10 min | 0 min | | 9. Git integration | 15 min | 5 min | | 10. MCP combo | 20 min | 30 min (setup) | | Total | ~2 hours/day | ~1 hour (one-time) |

Related Articles: - 7 Ways to Speed Up Claude Code — performance optimization - Claude Code Hooks Automation Guide — automate workflows - Claude Code Memory Systems Explained — understand context - How to Debug AI-Generated Code — fix issues faster

Ad Unit Placeholder

Related Articles