heng30/prux

A minimal terminal coding agent(极简终端编码代理工具)

Rust

7

15 commits

updated Oct 11, 2026

See the code

See what people are saying

SourceMessageScoreDate

Prux is a minimal terminal coding agent

1

Oct 9, 2026

README

prux coding agent

A minimal terminal coding agent

Release License Platform Rust 2024 Stars

English | 简体中文

⚠️NOTE: So far only opencode-go and deepseek have been tested.

Introduction

prux is a minimal terminal coding agent. The core stays small and focused, and its capabilities are extended through extensions, skills, prompt templates, themes, and customizable keybindings. It is a Rust rewrite of @earendil-works/pi-coding-agent, staying aligned with upstream in behavior and wording for the most part.

image demo code demo

Features

  • Interactive TUI: a full-screen terminal interface with themes and customizable keybindings. Requires stdin/stdout to be a TTY.
  • Built-in tools: read / bash / edit / write / grep / find / ls, covering common coding tasks.
  • Multiple providers: supports API providers such as Anthropic, OpenAI, and DeepSeek, with custom and virtual model routing.
  • Session management: session persistence, /resume restoration, forking, and tree navigation.
  • Context compaction: /compact compacts long contexts, with branch summaries.
  • Extension system: implement the Extension trait in Rust to provide tools, commands, keybindings, CLI flags, and event hooks.
  • Built-in extensions: MCP, subagents, codemode (QuickJS sandbox orchestration), skills, scheduled tasks, plan mode, and more.

Installation and build

Install the released binary from crates.io (requires a Rust toolchain):

cargo install prux

Or build from source:

cargo build --release
./target/release/prux --version

Common commands:

make          # cargo build --release
make build    # compile only (debug)
make debug    # cargo run
make check    # cargo check
cargo test    # full test suite
cargo clippy  # static checks

Quick start

cd /path/to/project
prux

On the first run, configure a provider with /login inside the TUI, or set the environment variable before launching:

export ANTHROPIC_API_KEY=sk-ant-...
prux

Settings are written to ~/.prux/ (the agent directory, overridable with $PRUX_AGENT_DIR): credentials in auth.json, global settings in settings.json, and so on.

Non-TUI entry points

Besides conversational mode, the following commands do not require a TTY:

  • prux auth: credential management
  • prux mcp: MCP server management
  • prux --export: export a session as HTML
  • prux --list-models: list available models

Documentation

The complete documentation is written in Chinese and lives in assets/docs/. It is embedded at compile time and synced to the agent directory at runtime. Start at assets/docs/index.md, and see assets/docs/quickstart.md to get up and running.

Contributing from source

Development conventions, module layering, and build details are in AGENTS.md. The upstream alignment cadence is recorded in sync.md and migrations/.

Troubleshooting

Windows limitations: under Git Bash on Windows, prux goes through the legacy console API used by crossterm, which implements neither the kitty keyboard protocol nor bracketed paste. Shift+Enter therefore cannot be told apart from a plain Enter (use Ctrl+J to insert a newline), and pasted text arrives as ordinary keystrokes, so a multi-line paste may be submitted line by line. Running inside Windows Terminal (ANSI/VT support) is recommended.

License

MIT, see LICENSE.

agent-ai
ratatui
rust
tui

heng30/prux

A minimal terminal coding agent(极简终端编码代理工具)

Rust

7

15 commits

updated Oct 11, 2026

See the code

See what people are saying

SourceMessageScoreDate

Prux is a minimal terminal coding agent

1

Oct 9, 2026

README

prux coding agent

A minimal terminal coding agent

Release License Platform Rust 2024 Stars

English | 简体中文

⚠️NOTE: So far only opencode-go and deepseek have been tested.

Introduction

prux is a minimal terminal coding agent. The core stays small and focused, and its capabilities are extended through extensions, skills, prompt templates, themes, and customizable keybindings. It is a Rust rewrite of @earendil-works/pi-coding-agent, staying aligned with upstream in behavior and wording for the most part.

image demo code demo

Features

  • Interactive TUI: a full-screen terminal interface with themes and customizable keybindings. Requires stdin/stdout to be a TTY.
  • Built-in tools: read / bash / edit / write / grep / find / ls, covering common coding tasks.
  • Multiple providers: supports API providers such as Anthropic, OpenAI, and DeepSeek, with custom and virtual model routing.
  • Session management: session persistence, /resume restoration, forking, and tree navigation.
  • Context compaction: /compact compacts long contexts, with branch summaries.
  • Extension system: implement the Extension trait in Rust to provide tools, commands, keybindings, CLI flags, and event hooks.
  • Built-in extensions: MCP, subagents, codemode (QuickJS sandbox orchestration), skills, scheduled tasks, plan mode, and more.

Installation and build

Install the released binary from crates.io (requires a Rust toolchain):

cargo install prux

Or build from source:

cargo build --release
./target/release/prux --version

Common commands:

make          # cargo build --release
make build    # compile only (debug)
make debug    # cargo run
make check    # cargo check
cargo test    # full test suite
cargo clippy  # static checks

Quick start

cd /path/to/project
prux

On the first run, configure a provider with /login inside the TUI, or set the environment variable before launching:

export ANTHROPIC_API_KEY=sk-ant-...
prux

Settings are written to ~/.prux/ (the agent directory, overridable with $PRUX_AGENT_DIR): credentials in auth.json, global settings in settings.json, and so on.

Non-TUI entry points

Besides conversational mode, the following commands do not require a TTY:

  • prux auth: credential management
  • prux mcp: MCP server management
  • prux --export: export a session as HTML
  • prux --list-models: list available models

Documentation

The complete documentation is written in Chinese and lives in assets/docs/. It is embedded at compile time and synced to the agent directory at runtime. Start at assets/docs/index.md, and see assets/docs/quickstart.md to get up and running.

Contributing from source

Development conventions, module layering, and build details are in AGENTS.md. The upstream alignment cadence is recorded in sync.md and migrations/.

Troubleshooting

Windows limitations: under Git Bash on Windows, prux goes through the legacy console API used by crossterm, which implements neither the kitty keyboard protocol nor bracketed paste. Shift+Enter therefore cannot be told apart from a plain Enter (use Ctrl+J to insert a newline), and pasted text arrives as ordinary keystrokes, so a multi-line paste may be submitted line by line. Running inside Windows Terminal (ANSI/VT support) is recommended.

License

MIT, see LICENSE.

agent-ai
ratatui
rust
tui

Project health

crates.io

Latest release

1.0.2 · Oct 9, 2026

Releases this year

1