Kiteline is a tool for managing coding agents: Claude Code, Codex and others do the work on a computer, and you follow progress, reply and approve permissions from your phone. The desktop side (Mac, Windows, Linux) is open source. No API key, no changes to the agents' configuration.
Its Linux build also runs on a server with no desktop (kiteline --headless). That makes a simple setup possible: put your code and Claude Code on an always-on cloud server, close your laptop, and keep the work going from your phone.
1. Pick a server
- A region where Claude is available, close enough that SSH feels responsive.
- 2 vCPU / 4 GB is enough to start; Claude Code itself is light, your builds and tests are not. 4 vCPU / 8 GB if you run several tasks or frontend builds.
- Ubuntu 22.04 or 24.04, a fixed public IP, and a normal user instead of root.
2. Install Claude Code and run it once in a terminal
Install with the official one-liner, cd into a project and run claude. On a server there is no browser, so it prints a login URL; open it on any device, paste the code back, trust the folder, then /exit.
Do not skip this. Kiteline later starts Claude Code in the background with this same login. It never touches Claude credentials, so if the first-run setup was not completed, the background session just sits on the login screen.
3. Install Kiteline as a user service
Download the Linux tarball from the download page, extract it and run:
./install.sh --service This writes a systemd user unit, enables it, and runs loginctl enable-linger $USER so the service keeps running after you log out of SSH. It runs as your normal user on purpose: that is where Claude Code's login and session files live.
4. Pair with a link, not the 6-digit code
When a phone pairs over remote access with the numeric code, Kiteline requires someone to click "Allow" on the computer's screen, to stop code guessing. A headless server has no screen, so that request is simply rejected.
Use the pairing link instead. It carries a one-time token that expires after 10 minutes and is deleted on first use:
systemctl --user stop kiteline kiteline --headless # prints the pairing code and a pairing link Copy the link to your phone, open Kiteline, tap "Paste pairing link" on the Connect screen. Once connected, Ctrl+C and systemctl --user start kiteline.
5. What you can do from the phone
- Start a new session on a server project by typing or holding to talk. Kiteline launches Claude Code in a pseudo-terminal on the server; no VS Code, no open SSH connection needed.
- Get a push when Claude wants to run a command, edit a file or asks you to choose, and answer from the notification.
- See every session's state (working / waiting for you / done), the full transcript, and each background session's original terminal.
- Run several sessions side by side, group them so they can talk to each other, schedule recurring tasks, send files from the phone.
Notes
- Features that need a click on the computer's screen (for example approving another Kiteline computer that wants to link) are unavailable on a headless server; background sessions are not affected.
- Only SSH needs to be open. Phone and server connect peer-to-peer first and fall back to a relay; everything is end-to-end encrypted.
- Using it across networks is remote access, which needs a Pro subscription; same Wi-Fi use is free.
Claude Code is Anthropic's product; Kiteline is an independent third-party tool. iPhone / iPad: search "Kiteline" on the App Store. Android: WeChat Mini Program. Desktop: open source on GitHub (hon6/kiteline).



