Dicklesworthstone/pi_agent_rust
High-performance AI coding agent CLI written in Rust with zero unsafe code
解决的问题
pi_agent_rust 是一款高性能的 AI 编程代理 CLI,旨在取代使用 Node.js 或 Python 编写的较慢且占用大量内存的助手。它解决了常见的基于终端的 AI 工具问题,如启动时间长、内存消耗高和流式传输不可靠,同时为执行外部工具和扩展提供了强大的安全模型。
工作原理
该项目使用 Rust 从零开始编写,是原始 Pi Agent 的移植版本。它利用了两个专门的库:用于结构化并发和异步运行时管理的 asupersync,以及用于高质量终端 UI 渲染的 rich_rust。该代理作为一个单一的静态二进制文件运行,与各种 LLM 提供商(包括 Ollama 和 llama.cpp 等本地提供商)集成,并实现了一个自定义的 SSE 解析器以实现高效的 Token 流式传输。
适用对象
想要在终端中直接使用快速、轻量且安全的 AI 编程助手,特别是那些相比传统的解释型运行时更青睐 Rust 的性能和安全性保证的开发者。
亮点
- 极致性能:启动时间低于 100ms,且空闲内存占用极低(<50MB)。
- 内置工具:包含用于文件系统操作的 8 个核心工具(
read,write,edit,grep,find,ls)和 Shell 执行(bash)。 - 高级会话管理:支持对话分支、长历史记录的自动压缩以及通过 JSONL 文件实现持久化。
- 强大的扩展安全性:具有两阶段执行守卫、基于能力限制的主机调用,以及带有熔断机制的信任状态生命周期,以防止危险的 Shell 命令。
- 灵活的执行模式:提供交互式 TUI、用于脚本编写的 Print 模式以及用于 IDE 集成的 RPC 模式。
- 本地模型支持:与 Ollama、llama.cpp、mistral.rs 和 LM Studio 原生集成。