基于 Pi agent 的 Rust 原生 Agent SDK:rpi 架构与快速开始
最近我在做一个 Rust 原生的 Pi agent SDK:rpi。它延续 Pi agent 的 library-first 思路,把模型 Provider、Agent loop、工具、Session、Harness、插件和终端 CLI 拆成独立 crate,方便嵌入自己的应用或工作流。
为什么做 Rust 版本
Coding Agent 往往需要同时处理异步流式响应、工具调用、会话持久化和终端交互。Rust 适合把这些能力拆成清晰的边界,并在运行时提供较低的资源开销和更强的类型约束。
rpi 当前的依赖方向是:
rpi-telemetry → rpi-ai → rpi-agent → rpi-tools → rpi-harness → rpi-cli
目前包含什么
- rpi-ai:统一的模型和流式 Provider 类型
- rpi-agent:Agent loop、AgentTool、事件、hooks 和消息队列
- rpi-tools:read、write、edit、bash、grep、find、ls
- rpi-harness:Session、JSONL 持久化和上下文压缩
- rpi-plugin-sdk:扩展工具、Provider、事件和资源发现
- rpi-cli:终端 Coding Agent
Provider 目前支持 Anthropic Messages、OpenAI-compatible Chat Completions,以及不需要 API key 的 faux provider。
快速开始
cargo install rpi-cli rpi -p "hello"
也可以从源码运行本地示例:
git clone github.com/bigfish1913… cd pi-rust cargo run -p minimal
项目地址
- GitHub:github.com/bigfish1913…
- 官网:rpi.laofu.online/
- 文档:rpi.laofu.online/docs.html
- Release:github.com/bigfish1913…
项目采用 MIT License,目前仍在 0.1.x 阶段。欢迎对 Rust AI 基础设施、Agent 工作流和插件系统感兴趣的开发者试用和反馈。