Skip to content

Troubleshooting

”Not logged in. Run codeteleport auth login first.”

Section titled “”Not logged in. Run codeteleport auth login first.””

Your CLI config file is missing. You need to authenticate:

Terminal window
codeteleport auth login

See Authentication for details.

The file at ~/.codeteleport/config.json is unreadable. Re-authenticate to fix it:

Terminal window
codeteleport auth login

“No coding sessions found for this directory.”

Section titled ““No coding sessions found for this directory.””

You ran codeteleport push from a directory that has no coding sessions for your configured agent. Make sure you’re in the project root where you’ve used your AI coding agent (Claude Code, Codex, or Antigravity):

Terminal window
cd /path/to/your/project
codeteleport push

push scans the agent set in your config, so the configured agent must match the sessions you expect to find. If you used a different agent in this directory, switch first:

Terminal window
codeteleport config set agent <claude-code|codex|antigravity>

You can check what sessions exist locally:

Terminal window
codeteleport list --local

The CLI couldn’t detect a running coding session. This happens when you’re running codeteleport push from a regular terminal (not inside your AI coding agent). Detection differs per agent: Claude Code uses the process tree, while Codex and Antigravity detect the active session from their local session history rooted at the current directory. When detection fails, the CLI falls back to scanning the current directory for sessions — this applies to all agents.

If no sessions are found, use --session-id to specify one explicitly:

Terminal window
codeteleport push --session-id c3a05473

“Session already exists” (409 Conflict)

Section titled ““Session already exists” (409 Conflict)”

This means a confirmed session with the same ID already exists in the cloud. The MCP tools handle this by auto-overwriting. If you see this from the CLI, the session may belong to a different account.

You’ve hit your plan’s session or device limit. Options:

The presigned upload URL was rejected by cloud storage. This usually means:

  • The R2 API token doesn’t have permission for the bucket (development setup issue)
  • The presigned URL expired (they last 5 minutes)

Try pushing again. If the issue persists, re-authenticate with codeteleport auth login.

Your GitHub OAuth or email/password login failed. For GitHub OAuth:

  • Make sure you authorized the correct GitHub account
  • If the browser shows “connection refused”, the CLI’s local callback server may have timed out — try again

For email/password:

  • Check your email and password
  • Use --register if you need to create a new account
PlatformStatusNotes
macOSFully supportedPrimary development platform
LinuxFully supportedTested on Ubuntu, Debian
WindowsFully supportedNative Windows support — no WSL required. Cross-OS path rewriting handles drive letters (C:\Users\…), backslash separators, and case-insensitive paths, so a session pushed from Windows restores on macOS/Linux and vice versa. Config lives at %USERPROFILE%\.codeteleport\config.json.

Can I use CodeTeleport with other AI coding tools?

Section titled “Can I use CodeTeleport with other AI coding tools?”

CodeTeleport supports three AI coding agents: Claude Code (id claude-code, the default), Codex (OpenAI, id codex), and Antigravity (Google, id antigravity). Choose interactively with codeteleport setup, which lists all supported agents, or directly with codeteleport config set agent <claude-code|codex|antigravity>.

Those three are the officially supported agents. The MCP server also follows the standard Model Context Protocol, so it may work with other MCP-compatible agents, though only the three above are officially supported. See MCP Setup for details.

  • In transit: Yes — all API calls and uploads use HTTPS (TLS 1.2+)
  • At rest: Yes — Cloudflare R2 encrypts stored bundles
  • End-to-end: Not yet — client-side encryption (AES-256-GCM) is planned

See the Security page for full details.

The MCP package is open source. The API and infrastructure are documented in the repo. There’s no official self-hosting guide yet, but contributions are welcome.

What happens if I cancel my Pro subscription?

Section titled “What happens if I cancel my Pro subscription?”

You’re downgraded to Free plan limits. Your existing sessions and devices are kept — you just can’t create new ones beyond the limits (25 sessions, 3 devices). You can still pull and delete existing sessions.

  • codeteleport list --local works offline — it scans your configured agent’s local session directory (~/.claude/projects for Claude Code, ~/.codex/sessions for Codex, ~/.gemini/antigravity-cli/conversations for Antigravity)
  • codeteleport push, pull, list --cloud, and status require an internet connection

Typical sizes:

Session lengthBundle size
Short (< 100 messages)10–100 KB
Medium (100–1000 messages)100 KB – 2 MB
Long (1000+ messages)2–50 MB

Bundles are compressed .tar.gz files. The largest component is usually the JSONL conversation log.

Does CodeTeleport modify my local agent data?

Section titled “Does CodeTeleport modify my local agent data?”

No. CodeTeleport reads from your agent’s data directory to scan and bundle sessions, but it never writes to or modifies your existing sessions. When you pull a session, it installs only that one session into the agent’s directory using the agent’s native format:

  • Claude Code~/.claude/projects/<encoded-cwd>/<id>.jsonl (plus its sidecars)
  • Codex~/.codex/sessions/YYYY/MM/DD/rollout-<ts>-<id>.jsonl for the transcript, plus an upserted thread-inventory row in ~/.codex/state_5.sqlite so codex resume <id> can find the session
  • Antigravity~/.gemini/antigravity-cli/conversations/<id>.db and ~/.gemini/antigravity-cli/brain/<id>/

Your other sessions are untouched.

I pulled a Codex session but codex resume can’t find it

Section titled “I pulled a Codex session but codex resume can’t find it”

On pull, Codex writes the rollout transcript and upserts the thread-inventory row in ~/.codex/state_5.sqlite so codex resume <id> finds the session. If state_5.sqlite does not exist yet on the target machine, the transcript is still restored but the thread row is not — run Codex once, then re-pull.

To completely remove CodeTeleport:

  1. Delete your account (optional) — go to app.codeteleport.com and delete your account from the settings page, or cancel your subscription first via billing.

  2. Remove the CLI config:

Terminal window
rm -rf ~/.codeteleport
  1. Uninstall the npm package:
Terminal window
npm uninstall -g codeteleport
  1. Remove the MCP server from your agent — run the command matching your configured agent:
Terminal window
claude mcp remove codeteleport # Claude Code
codex mcp remove codeteleport # Codex
agy mcp remove codeteleport # Antigravity

If your issue isn’t covered above, reach out: