Skip to content

Cerulin/Chell-CLI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chell CLI

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.

Install

macOS / Linux:

curl -fsSL https://raw.githubusercontent.com/Cerulin/Chell-CLI-Releases/main/install/install.sh | bash

Windows (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 | iex

Pre-built binaries are available on the releases page.

Supported Platforms

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

Quick Start

# Authenticate
chell auth

# Start a terminal session
chell terminal

# Start a Claude Code session
chell claude

# Send a push notification
chell notify "Build finished"

Commands

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.

Features

End-to-End Encryption

All session data is encrypted with XSalsa20-Poly1305 (NaCl secretbox). The relay server never sees plaintext — encryption and decryption happen entirely on-device.

Terminal Streaming

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>).

AI Agent Sessions

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.

Push Notifications

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.

Auto-Update

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.

Architecture

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.

Configuration

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

License

AGPL-3.0

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages