Skip to content

Rusty

A lightweight, statically compiled terminal AI coding agent. Connects to OpenAI-compatible LLM APIs via SSE streaming, executes tools (file I/O, bash, search, patches, web fetch, sub-agents), and enforces a tiered permission system.

Features

  • Terminal UI


    Full ratatui-based terminal interface with streaming, markdown rendering, and interactive permission prompts.

  • Multi-Provider


    Works with Xiaomi MiMo, Kimi, OpenAI, DeepSeek, Ollama, and any OpenAI-compatible API.

  • Tool Execution


    File read/write/edit, bash commands, regex search, glob, web fetch, unified diff patches, and sub-agent spawning.

  • Permission System


    Tiered permission model: Bypass, AcceptEdits, Default, and Plan modes with per-tool classification.

Quick Start

# Install and run (launches setup wizard on first run)
cargo install rusty
rusty

# Or build from source
git clone https://github.com/pdg-global/rusty.git
cd rusty
cargo build --release
./target/release/rusty --preset openai --api-key YOUR_KEY

Run Modes

Full terminal UI with streaming, permission prompts, and slash commands (default).

rusty

Single prompt, print response, save session.

rusty --prompt "Explain this codebase"

Interactive line-by-line REPL without TUI.

rusty --headless

Architecture

Rusty is a Cargo workspace with 6 crates:

Crate Purpose
rusty-core Types, config, permissions, errors, credentials, setup wizard
rusty-provider OpenAI-compatible HTTP/SSE streaming client
rusty-tools All tool implementations
rusty-agent Agent loop, compaction, sub-agent spawning
rusty-tui Ratatui terminal UI
rusty (cli) Binary entry point, CLI args, run modes

License

AGPL-3.0-or-later