Skip to main content

Rudder

Mobile control panel for AI agents. Control your bots from Telegram — from anywhere, on any device.

"Rudder puts every developer in the captain's chair of their AI agents."


What is Rudder?

You build AI agents. They run on your machine. But when you're away from your desk, you're flying blind.

Rudder wraps your agent with a Telegram interface so you can:

  • Ask questions in plain English ("what positions are open?")
  • Approve or deny tool calls before they execute
  • Run commands on your machine remotely
  • Check logs and file contents from your phone

Quick Start

pip install rudder-agent
rudder init      # guided setup wizard
rudder start     # launch your bot

Then open Telegram and message your bot.


What Rudder Can Do

Command Example
Read files "show me the last 20 lines of app.log"
Run commands "run my_script" → Approve/Deny on phone
List files "what files are in my project?"
Answer questions "what's the status of my agent?"

Requirements


Setup — Step by Step

Step 1 — Create a Telegram bot

  1. Open Telegram and search for @BotFather (official blue checkmark)
  2. Send this message: /newbot
  3. BotFather will ask: "What's the name of your bot?"
    • This is the display name shown in chats — e.g. My Agent Bot
  4. BotFather will ask: "What username would you like to give it?"
    • Must end in bot — e.g. myagent_bot or MyAgentBot
    • Must be unique across all of Telegram
  5. BotFather will reply with your bot token — it looks like:
    1234567890:AAFabcdefGHIjklmNOPqrstUVwxyz123456
    
  6. Copy and save this token — you'll need it in Step 4

Step 2 — Get your Telegram user ID

Rudder only accepts messages from you — it needs your personal user ID to enforce this.

  1. Open Telegram and search for @userinfobot
  2. Send any message (e.g. /start)
  3. It will reply with your Id number — e.g. 123456789
  4. Copy this number

Step 3 — Get an Anthropic API key

Rudder uses Claude to understand your messages.

  1. Go to console.anthropic.com
  2. Sign up or log in
  3. Go to API Keys → Create Key
  4. Copy the key — it starts with sk-ant-...

Step 4 — Install and configure Rudder

Open a terminal in the folder where your AI agent project lives, then run:

pip install rudder-agent
rudder init

The wizard will ask for:

  • Your Telegram bot token (from Step 1)
  • Your Anthropic API key (from Step 3)
  • Your Telegram user ID (from Step 2)
  • The path to your working directory — the folder Rudder should have access to

Tip: Run rudder init from inside your project folder. When asked for the working directory, you can just press Enter to use the current folder.

This creates a rudder.yaml file in the current folder. Keep this file safe — it contains your API keys.


Step 5 — Start Rudder

rudder start

You should see:

Rudder started. Open Telegram and message your bot.

Step 6 — Message your bot

Open Telegram, search for your bot by its username (e.g. @myagent_bot), and send a message.

Try:

  • hello
  • what files are in my project?
  • show me the contents of app.log

Troubleshooting

Bot doesn't respond

  • Make sure rudder start is running in your terminal
  • Check that your bot token in rudder.yaml is correct
  • Try sending /start to your bot first

"Unauthorized" error

  • Your allowed_user_id in rudder.yaml doesn't match your actual Telegram ID
  • Re-check your ID with @userinfobot

"Working directory not found" error

  • The working_dir path in rudder.yaml doesn't exist on your machine
  • Update it to a valid folder path

Bot stops when I close the terminal

  • This is expected — the bot runs in your terminal session
  • For always-on usage, set it up as a background service

Security

  • Only your Telegram user ID can send commands
  • Destructive actions (bash, file writes) require explicit Approve/Deny on your phone
  • Your API keys stay on your machine — never sent anywhere else
  • Self-hosted: you control everything

Roadmap

  • Telegram channel
  • Bash, read/write file, list files tools
  • Approve/Deny on mobile
  • pip install rudder-agent — installable package
  • rudder init setup wizard
  • Discord channel
  • Custom plugin tools
  • pip install rudder-agent[github] — GitHub tools

License

MIT

Metadata

Release files for rudder-agent 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for rudder-agent 0.1.0
File Size Uploaded Provenance Actions
rudder_agent-0.1.0.tar.gz 11.4 kB Without provenance Details for rudder_agent-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for rudder-agent 0.1.0
File Interpreter ABI Platform Actions
rudder_agent-0.1.0-py3-none-any.whl Python 3 none any Details for rudder_agent-0.1.0-py3-none-any.whl

Total release size: 21.9 kB

Release files / rudder_agent-0.1.0.tar.gz

Download URL rudder_agent-0.1.0.tar.gz
Size 11.4 kB
Tags Source
SHA-256 checksum
How to use checksums
2c8730a5acb24e06206d922bd1f7b88ecd7e2865432c448aad8dd9f0eaa9be0c
BLAKE2b-256 checksum
How to use checksums
6c40b02d8ffffd307bcb2d4321b1bc857513723b3bb3bdcdf90b0a90acd6253a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Release files / rudder_agent-0.1.0-py3-none-any.whl

Download URL rudder_agent-0.1.0-py3-none-any.whl
Size 10.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c03b6d88f408066c7ed3777b1857a91d63f0ba8c521ca1ccf7de3b7c82fbfc48
BLAKE2b-256 checksum
How to use checksums
55146c954a08e1d2bc89a6ee1d67f12a9d2a75136f46f98896730d286c017f7c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.10

Security for rudder-agent 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page