Remote terminal streaming and AI agent session management. Stream your terminal, run Claude/Codex/Gemini sessions, and manage everything from your phone — all end-to-end encrypted.
macOS / Linux:
curl -fsSL https://raw.githubusercontent.com/Cerulin/Chell-CLI-Releases/main/install/install.sh | bashWindows (CMD):
powershell -c "irm https://raw.githubusercontent.com/Cerulin/Chell-CLI-Releases/main/install/install.ps1 | iex"Windows (PowerShell):
irm https://raw.githubusercontent.com/Cerulin/Chell-CLI-Releases/main/install/install.ps1 | iexPre-built binaries are available on the releases page.
| Platform | Binary |
|---|---|
| Linux x86_64 | chell-linux-amd64 |
| Linux ARM64 | chell-linux-arm64 |
| macOS Apple Silicon | chell-darwin-arm64 |
| macOS Intel | chell-darwin-amd64 |
| Windows x86_64 | chell-windows-amd64.exe |
# Authenticate
chell auth
# Start a terminal session
chell terminal
# Start a Claude Code session
chell claude
# Send a push notification
chell notify "Build finished"| Command | Description |
|---|---|
chell auth |
Authenticate with your account (--headless for SSH/headless environments) |
chell auth logout |
Clear stored credentials |
chell terminal |
Start a terminal session (--shell, --dir, --resume <id>) |
chell claude |
Start a Claude Code agent session |
chell codex |
Start a Codex agent session |
chell gemini |
Start a Gemini CLI agent session |
chell notify |
Send a push notification to your devices |
chell doctor |
Run diagnostics |
chell update |
Check for and install updates (--check, -y) |
All agent commands support --resume <id> to reconnect to an existing session and --dir to set the working directory.
All session data is encrypted with XSalsa20-Poly1305 (NaCl secretbox). The relay server never sees plaintext — encryption and decryption happen entirely on-device.
Spawns a real PTY shell and streams encrypted output over WebSocket to the relay. Supports session resumption, automatic reconnection with exponential backoff, and configurable shell (--shell bash|zsh|fish|<path>).
Run Claude, Codex, or Gemini in managed sessions with live progress tracking. Claude sessions watch for task/todo updates and push them to your mobile device via Live Activities.
Use chell notify to send messages to all registered devices, or use chell notify --hook as a Claude Code --permission-hook to get mobile notifications when Claude needs permission to proceed.
The CLI automatically checks for updates before session start (with a 3-second timeout so it never blocks you). Set CHELL_SKIP_AUTO_UPDATE=1 to disable.
crates/
├── chell-cli/ # Main binary — all commands
├── chell-relay/ # REST + WebSocket relay client, auth, session management
├── chell-crypto/ # XSalsa20-Poly1305 encryption
├── chell-terminal/ # PTY management and shell resolution
└── chell-notifications/ # Push notification client
Built with Rust, using tokio for async, rustls for TLS (no OpenSSL dependency), and russh for the SSH transport layer.
Credentials and logs are stored in ~/.chell/. Override the home directory with CHELL_HOME_DIR.
| Environment Variable | Description |
|---|---|
CHELL_HOME_DIR |
Custom home directory (default: ~/.chell) |
CHELL_SERVER_URL |
Relay server URL |
CHELL_SKIP_AUTO_UPDATE |
Set to 1 to disable auto-update |