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 檔案實現持久化。
  • 強大的擴充安全性:具有兩階段執行守衛、基於能力限制的主機呼叫,以及帶有熔斷機制(kill-switches)的信任狀態生命週期,以防止危險的 Shell 命令。
  • 靈活的執行模式:提供互動式 TUI、用於腳本編寫的 Print 模式以及用於 IDE 整合的 RPC 模式。
  • 本地模型支援:與 Ollama、llama.cpp、mistral.rs 和 LM Studio 原生整合。