What is the difference between claude --continue and claude --resume?
claude --continue # newest session here
claude --resume # choose from a list Same stored sessions, different way of selecting one.
Answer
--continue reopens the most recent session in the current directory with no prompt and no arguments. --resume lets you choose: with no argument it opens a picker, and with a name or session ID it goes straight there. The ID form searches beyond the current directory, which --continue never does.
What it does
Both flags reopen a stored session. They differ in how the session is chosen.
claude --continue
Takes the most recent session in the current directory. No list, no arguments, no ambiguity — "most recent" is decided for you.
claude --resume
Lets you choose. With no argument it opens a picker; with a name or a session ID it opens that session directly.
The other difference is reach. --continue only ever looks at the current directory. --resume <session-id> searches the current project and its git worktrees first, then every other project on the machine.
--continue | --resume | |
|---|---|---|
| Which session | newest in this directory | the one you pick |
| Interaction | none | picker, unless you pass an identifier |
| Scope | current directory only | any project, when given an ID |
When to use it
Use --continue for the common case: you were working here, you stopped, you are back. It is the shortest path and there is nothing to get wrong.
Use --resume when the newest session is not the one you want — you did something else in between, or the session belongs to another project, or you have an ID in a script.
Example
Back to what you were doing:
claude -c
Choose from this project's history:
claude --resume
Reopen a specific session from anywhere on the machine:
claude --resume 7f3d9a2c-1b4e-4c8a-9f2d-3e5b7c1a0d6f
In a non-interactive run, only the identifier form works — there is no picker to show:
claude -p "what did we conclude?" --resume <session-id>Common mistakes
Reaching for --resume out of habit. If you want the last session where you are, --continue skips the picker entirely.
Assuming --resume alone works without a terminal UI. In -p runs it needs an explicit session ID.
Confusing the flag with the slash command. claude --resume starts a new process and picks a session to open; /resume, typed inside a running session, switches the conversation you are already in. That is the one that gets you back to a cleared context.