A developer operating under the my-claude-utils GitHub organization has released clsh, an open-source tool that streams a real PTY terminal session from a Mac to any phone or tablet browser over WebSocket and a three-tier tunnel system. Unlike SSH clients or simulated terminal apps, clsh spawns genuine shell processes on the host machine using node-pty, renders them in the browser via xterm.js, and authenticates the phone connection through a one-time QR code backed by JWT — no phone-side configuration required. The project launched with a single-command quickstart via npx clsh-dev, supports up to eight concurrent terminal sessions, and optionally wraps sessions in tmux for persistence that survives server restarts.
The headline use case is running Anthropic's Claude Code agent remotely from a mobile device — a workflow gap that Anthropic's own tooling has not addressed. Claude Code ships as a CLI agent with no native mobile interface, no remote access layer, and no session persistence. Clsh fills all three. The mobile keyboard's context strip hardcodes Claude-relevant shortcuts — plan, commit, diff, and Ctrl+C for interrupt — rather than generic terminal shortcuts, which points to the author building clsh first to solve their own Claude Code mobile workflow, then generalizing and open-sourcing it.
On the connectivity side, clsh's zero-config default routes through localhost.run's free SSH tunnel, meaning developers can start immediately without signing up for any external service. An optional ngrok integration provides a persistent static URL suitable for installing clsh as a PWA on the phone's home screen, where it runs fullscreen without browser chrome and handles iOS safe-area insets for notched and Dynamic Island devices. Six keyboard skins, two layout options, sticky modifier keys, and a demo mode with scripted animations signal a level of UX polish uncommon for a developer utility at this stage.
The project is structured as a Turborepo monorepo with separate agent, web, cli, and landing-page packages, along with a dedicated domain at clsh.dev, a CONTRIBUTING.md, and a PRs Welcome badge. The my-claude-utils organization name implies clsh is the first in a broader suite of tools targeting the Claude Code workflow — a signal backed by the architecture, which keeps the packages cleanly separated for exactly that kind of expansion. The repository is MIT-licensed and available at github.com/my-claude-utils/clsh.