Skip to content

Keyboard

Shortcuts

Everyone learns Esc. These are the rest — all checked against Claude Code itself, not copied off a blog.

The three to learn first

If you remember nothing else.

  • Esc Esc
    Stop Claude mid-action The moment Claude starts doing something you did not intend.
  • Esc thenEsc Esc thenEsc
    Clear the input box Your half-written prompt has turned into a mess and you want a clean line.
  • Shift +Tab Shift +Tab
    Cycle permission mode Starting an exploration (plan) or letting an agreed plan run (accept edits). On older Windows setups without VT mode, this is Meta+M instead.

Writing the prompt

Composing, searching, pasting.

  • Ctrl +J Ctrl +J
    Start a new line without sending Any prompt longer than one sentence.
  • Ctrl +R Ctrl +R
    Search your prompt history "What did I type last week that worked?" Inside the search, Ctrl+S cycles the scope: this session → this project → everywhere.
  • Ctrl +S Ctrl +S
    Park the half-written prompt You are three sentences into a prompt and need to go check something.
  • Ctrl +G Ctrl +G
    Edit the prompt in your real editor Writing anything long or carefully structured.
  • Ctrl +V Alt +V
    Paste an image Anything visual. Annotate the screenshot first and it works even better. Ctrl+V, not Cmd+V — macOS keeps Cmd+V for its own paste. Windows and WSL use Alt+V. On WSL both Ctrl+V and Alt+V work.
  • Option +T Alt +T
    Toggle thinking for the next turn One hard question in the middle of otherwise simple work.
  • Ctrl +_ Ctrl +_
    Undo in the input box You deleted half a prompt by accident.

Seeing what happened

What Claude did and what it plans to do.

  • Ctrl +O Ctrl +O
    Toggle the full transcript You want to know what it actually did, not the summary.
  • Ctrl +T Ctrl +T
    Toggle the task checklist Any multi-step task, before it gets far.

Running the session

Long jobs, models, the terminal.

  • Ctrl +B Ctrl +B
    Send the running job to the background A long build, test run, or search you do not want to sit and watch.
  • Option +P Alt +P
    Switch model Between tasks — rarely a good idea mid-task.
  • Option +O Alt +O
    Toggle fast mode Straightforward work where you would rather have speed than depth.
  • Ctrl +Z Ctrl +Z
    Step out to the shell without quitting You need the terminal for one command and do not want to lose the session. Terminal-level shortcut (Unix SIGTSTP), not a Claude Code binding. Windows has no direct equivalent.

The keys are the same on both systems — only the modifier's name changes (macOS calls Alt Option). Run /keybindings in any session to see exactly what is bound on your machine.

One session, one task — don't pile work into a long conversation

← Tips Workflow & commands

One session, one task — don't pile work into a long conversation

Long mixed-topic confuse Claude and burn context. Finish the auth refactor, then `/clear` and start the cart bug fresh. Sessions are cheap; misremembering isn't.

beginner

A common newcomer pattern: open Claude in the morning, work on the auth refactor for two hours, then ask about the cart bug, then ask about the slow query, then come back to auth. By 3pm Claude is confidently referencing the cart code while editing auth, dropping in patterns from the query into the auth flow, and quietly mis-citing function names you never wrote.

The fix is mechanical: one focused topic per .

When you finish (or pause) a task, run /clear and start fresh for the next one. The cost is a few seconds of re-grounding the new task. The benefit is Claude isn’t dragging four problems’ worth of half-relevant context into every .

The two reasons this matters:

  1. is finite. Every file read, every command output, every prompt eats into it. Mixed topics fill it with stuff Claude doesn’t need for the current task, and the starts forgetting the part you do need.
  2. Claude is associative. It will happily relate the new task to whatever’s recent in the conversation. If “auth” and “cart” are both in scrollback, Claude tries to find connections that aren’t there.

A rough rule: one Linear ticket, one Claude session. When the ticket closes, the session closes. Use claude --continue (see the Resume tip) if you genuinely need to pick that ticket up tomorrow.

The exception: a session that’s deepening on one topic (refactor + then writing tests for the same refactor + then updating the docs for the same refactor) is fine. The same topic is allowed to grow. Different topics are what burn you.

Next tip →

Plan first, then execute — the workflow that pays for itself

The single biggest mistake newcomers make is letting Claude jump straight into coding. Use to align on the approach first; the code you don't have to undo is the cheapest code you'll ever write.