首页 > 教程资讯 > 教程详情

psi 官网介绍 6.4 MB 便携编程 agent,用 ANSI C 与 Lua 写成

AI 与前沿 极客小林 2026-11-09
文章分享

开源项目 psi 在官网介绍自己:一款 6.4 MB 的便携二进制编程 agent,用 ANSI C 和 Lua 写成,以 MIT 许可开源,并标为可审计(Auditable)。官网把它放在终端场景中,原句是“From the terminal, for the terminal”,并写道,编程 agent 应当是可以理解、可以带走、也可以修改的工具。

已测试的系统与一种运行方式

官网的测试状态表把 Linux、macOS、Windows、FreeBSD、OpenBSD、Haiku 标为 Tested(已测试)。页面前部的“AT HOME ON”系统列表还写着这些系统“and beyond”。移植一节称,选用 C89 和 Lua 是有意为之,以便跑在常见桌面和较少见的系统上。官网称 psi 另有一份 Cosmopolitan 构建,可在 Linux、macOS、Windows 上运行,并在 i686、x86_64、aarch64、riscv64 上于相应架构可用时测试。页面给出的运行方式是 nix run github:siraben/psi,需要已启用 flakes 的 Nix。

小内核,高层放在 Lua

官网称,psi 从一个小的 C 内核出发,把高层行为放进 Lua。agent 主循环、终端界面、工具和模型提供方都可以打开查看。页面同时写明,留下需要的部分,并补上还缺少的部分。

用法上,官网列出交互式 TUI、简单 REPL、一次性提示和 Lua 求值,对应坐在键盘前使用,或写进脚本。展示小节用一个小任务举例:找到 bug,修改函数,再运行以核对结果。

扩展方面,官网称扩展就是普通 Lua 文件,从磁盘直接加载,可以添加斜杠命令、注册工具、订阅 agent 生命周期。页面还称,agent 循环和终端渲染本身也在 Lua 里。示例写在 ~/.config/psi/extensions/hello.lua,用一个返回函数注册名为 greet 的命令。

换提供方,会话仍可分支

官网称,模型一侧支持 Anthropic、OpenAI Codex、OpenRouter,以及通过 Ollama 运行的本地模型。恢复会话时可以改用另一个提供方。会话以只追加的 JSONL 保存,并带完整树结构:可以从当前对话分支出去试另一种做法,再回到原来的位置。

依赖关系按物料清单画出

Linux · x86_64 的依赖图上,官网标注 psi 0.2.0 为 13 个软件包、21 条连接。图注写明,该图基于 commit 646098f 上 .#default 的 Nix 运行时闭包与直接构建输入;其他平台和静态构建并不相同。完整构建闭包包含 918 个软件包,图中显示的是运行时关系与直接构建输入关系。页面另给出 Runtime SBOM 与 Full build SBOM 的链接。

来源