Skip to main content

Bot-based system to interact with Claude CLI on remote machines

Project description

Codecast

Codecast

Control Claude CLI on remote machines from Discord & Telegram

PyPI CI License Python


Send a message in Discord or Telegram. It reaches Claude CLI on your GPU server, your cloud VM, or any machine with SSH access — and streams the response back in real time.

Why Codecast?

Problem Solution
Claude CLI only runs locally Run it on any remote machine via SSH
Lose context when you close the terminal Sessions persist — detach and resume anytime
Can't use Claude on mobile Chat through Discord or Telegram from any device
Managing multiple dev machines is tedious One bot, many machines — switch with a command

Architecture

Codecast Architecture

Quick Start

Prerequisites: Python 3.11+, Rust/cargo, SSH access to a remote machine with Claude CLI installed.

pip install codecast

Configure:

cp config.example.yaml ~/.codecast/config.yaml
$EDITOR ~/.codecast/config.yaml   # add machines + bot token

Run:

codecast

Then open Discord or Telegram and type /start my-server ~/projects/myapp.

Key Features

  • Persistent sessions — Claude CLI runs as a long-lived process; context survives across messages
  • SSH tunnels — daemon binds to localhost only, never exposed to the internet
  • Detach & resume/exit keeps the session alive, /resume picks it back up
  • Multiple machines — connect any number of servers, switch between them
  • Permission modesauto (full autonomy), code (auto-edit files), plan (read-only), ask (confirm everything)
  • Real-time streaming — responses stream back via SSE as Claude types
  • Mobile-friendly — works from any device with Discord or Telegram

Commands

Command What it does
/start <machine> <path> Start a new Claude session
/resume <name> Resume a detached session
/new New session, same directory
/clear Fresh context, same directory
/exit Detach (process keeps running)
/ls machine List machines
/ls session List sessions
/mode <auto|code|plan|ask> Switch permission mode
/status Current session info
/health Daemon health check

See Commands Reference for the full list.

Documentation

Guide Description
Getting Started Installation, first session walkthrough
Adding a Discord Bot Create a Discord Application step by step
Adding a Telegram Bot Create a Telegram bot via BotFather
Adding a Server SSH config, jump hosts, password auth
Commands Reference Every command with examples

Configuration

Config files are searched in order:

  1. CLI argument: codecast /path/to/config.yaml
  2. ~/.codecast/config.yaml
  3. ./config.yaml (dev fallback)

Requirements

  • Python 3.11+ — head node
  • SSH access — to remote machine(s) with Claude CLI installed
  • Bot token — Discord and/or Telegram
  • Rust toolchain (optional) — only needed to build the daemon binary from source

Building the Daemon (optional)

The head node (Python) installs without Rust. The daemon binary is a separate Rust project that runs on remote machines. If you need to build it from source:

# Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
source "$HOME/.cargo/env"

# Build the daemon
git clone https://github.com/Chivier/codecast.git
cd codecast
cargo build --release
# Binary at: target/release/codecast-daemon

Note: On some systems you may also need a C compiler and development headers:

  • Debian/Ubuntu: sudo apt install build-essential pkg-config libssl-dev
  • Fedora/RHEL: sudo dnf install gcc pkg-config openssl-devel
  • macOS: xcode-select --install

One-line Install (from source)

curl -fsSL https://raw.githubusercontent.com/Chivier/codecast/main/scripts/install.sh | bash

This clones the repo, creates a virtualenv, installs Python dependencies, and optionally builds the daemon if Rust is available.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

codecast-0.2.8.tar.gz (146.6 kB view details)

Uploaded Source

File details

Details for the file codecast-0.2.8.tar.gz.

File metadata

  • Download URL: codecast-0.2.8.tar.gz
  • Upload date:
  • Size: 146.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.9

File hashes

Hashes for codecast-0.2.8.tar.gz
Algorithm Hash digest
SHA256 45a8109d6bdfdc3a28cf8ab43c5270231f910b615cb89534ca08b600fe24b197
MD5 40593ef80c1bbe21caa1fe47a4b0daad
BLAKE2b-256 d2429dae71f7b6566709be21195d7507d8d96b68090c9ad2dd500e996ba4b79a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page