Sessions are saved automatically
Every conversation is saved locally as you go. Closing the terminal, rebooting or losing Wi-Fi doesn't lose your work. The trick is finding the right session again, and that's what naming is for.
Name it, resume it
/rename stripe-webhooksLater, from any terminal in that project:
claude --resume stripe-webhooks # jump straight back in
claude -r # or pick from a list
claude -c # or continue the most recent oneYou can also name a session as you leave it: /clear oauth-migration names the conversation you're leaving before starting fresh.
Resume from a pull request
If Claude opened a PR in a session, you can return to that exact context later, for example to address review comments:
claude --from-pr 1234Branch a conversation
Want to try a risky alternative without losing your current thread? /branch creates a new conversation branch from this point. Explore the alternative, and if it fails, the original path is still there.
/branch splits the conversation so you can explore. /fork copies the conversation into a background session that keeps working while you continue in the foreground.
Parallel sessions without collisions
Two sessions editing the same files in the same folder will step on each other. Use git worktrees: separate working directories that share one repository.
claude --worktree feature-auth # or: claude -w feature-authEach worktree session gets its own branch and files, so you can run several Claude sessions side by side, one on the bug fix and one on the feature, and merge them when they're done.
Export and share
/export session-notes.md/export writes the conversation to a file, which is handy for documenting a debugging journey, sharing with a teammate, or attaching to a ticket.
Type the command that resumes the session you named "stripe-webhooks"
claude --resume <name> easy.Check your understanding
How do you resume a session you named 'auth-fix'?
What does claude --from-pr 1234 do?
Why use worktrees for parallel sessions?
What does /branch do?