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 <a href="/news/2026-03-14-recon-tmux-tui-claude-code-sessions">tmux</a> 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.