How to Sync Claude Code Sessions Across Devices with Teleport and Remote Control
Purpose
I start a Claude Code session on my laptop, then I need to leave. Maybe I’m going to a meeting, or I want to continue from my phone on the train. I don’t want to lose my context or start over.
Claude Code has two features that solve this: teleport and remote control. They do different things, and I use both.
What Is Teleport
Teleport lets you pull a cloud session to your local machine. If you started a conversation in the Claude web app or mobile app, you can teleport it to your terminal.
This is a pull operation. The session exists in the cloud, and you pull it down to continue locally.
claude --teleportThis opens your most recent cloud session in the terminal. You get all the context, the file references, and the conversation history.
You can also start a session in the cloud and teleport it mid-conversation:
claude --teleport <session-id>What Is Remote Control
Remote control works the opposite way. You start a session in your terminal, then push access to your phone or web browser.
This is a push operation. The session runs locally on your machine, but you control it from another device.
/remote-controlThis generates a link you can open on your phone. The link connects to your locally running Claude Code session.
I keep remote control enabled all the time. I start sessions at my desk, then continue them from my phone when I’m away.
How to Use Teleport
Teleport is useful when you started something in the cloud and want to continue locally.
Step 1: Start a session in the cloud
Open the Claude app on your phone or go to claude.ai in your browser. Start a conversation about your code.
Step 2: Teleport to your terminal
When you get to your desk, open your terminal and run:
claude --teleportClaude connects to your most recent cloud session. You can now use terminal features like file operations, git commands, and code execution.
Step 3: Continue the conversation
Your context is preserved. Claude remembers what you discussed in the cloud session. You don’t repeat yourself.
How to Use Remote Control
Remote control is useful when you start locally and want to continue remotely.
Step 1: Start Claude Code locally
Open your terminal and start Claude Code:
claudeStep 2: Enable remote control
Type the slash command:
/remote-controlClaude generates a URL. It looks like this:
Remote control enabled.Open this link on your phone or browser:https://claude.ai/remote/abc123xyzStep 3: Open on your phone
Tap the link on your phone. You now control your terminal session from the mobile app.
Step 4: Code from anywhere
Your terminal session keeps running. You send commands from your phone. The terminal executes them locally. You see results on your phone.
Practical Scenarios
I use both features depending on the situation.
Scenario 1: Started on phone, need terminal features
I’m reviewing a PR on my phone during my commute. I want Claude to fix a bug. The fix requires running tests and editing files.
I wait until I get to my desk, then teleport:
claude --teleportNow I have terminal access and can run tests, edit files, and commit changes.
Scenario 2: Started at desk, need to leave
I’m in the middle of a complex refactoring. A meeting starts in 5 minutes. I enable remote control:
/remote-controlI open the link on my phone and continue during the meeting. The session keeps running on my machine. I just control it from my phone.
Scenario 3: Switching between devices throughout the day
I keep remote control enabled all day. I start coding at my desk, continue from my phone at lunch, and finish back at my desk. The session never stops.
Key Differences
The two features serve opposite purposes:
| Feature | Direction | Use Case |
|---|---|---|
| Teleport | Pull (cloud to local) | Continue cloud session in terminal |
| Remote control | Push (local to remote) | Control terminal session from phone/web |
Teleport moves the session to your terminal. Remote control lets you control your terminal from elsewhere.
Common Mistakes
Confusing the two features. I used to mix them up. Remember: teleport pulls from cloud, remote control pushes to phone. If you want terminal features, teleport. If you want to leave your desk, remote control.
Leaving remote control disabled. I used to enable it only when I needed it. Then I’d be in a rush to set it up before leaving. Now I keep it on by default. The “Enable Remote Control” setting in my config is always true.
Forgetting which device has the session. With remote control, the session runs on your local machine. If you shut down your computer, the session ends. With teleport, the session moves to your local machine, so the cloud session ends.
Not using the slash command inside Claude. The --teleport flag is a startup flag. You use it when launching Claude. The /remote-control command is a slash command. You use it inside an active session.
# Teleport: startup flagclaude --teleport
# Remote control: slash command inside sessionclaude> /remote-controlSummary
Claude Code syncs across devices with two features:
- Teleport: Pull a cloud session to your terminal with
claude --teleport - Remote control: Push terminal access to your phone with
/remote-control
I use teleport when I started on mobile and want terminal features. I use remote control when I started at my desk and want to continue away from it.
Both features keep your context intact. You don’t lose conversation history or file references when switching devices.
Final Words + More Resources
My intention with this article was to help others share my knowledge and experience. If you want to contact me, you can contact by email: Email me
Here are also the most important links from this article along with some further resources that will help you in this scope:
Oh, and if you found these resources useful, don’t forget to support me by starring the repo on GitHub!
Comments