
原站网页截图,页面可能随时间更新。
Pi-Bolt 将 Pi 编程代理编译为原生代码,以单个可执行程序运行,不依赖 Node.js 或 Bun。它继续使用 Pi 的配置和扩展,适合在多种桌面、服务器及 Android Termux 环境中进行交互式编程工作。
用途与定位
Pi-Bolt 用于运行 Pi 编程代理,核心目标是缩短启动和交互等待时间,并减少处理长回答、大文件及长会话时的 CPU 和内存开销。它是 Pi 的独立分支,安装后以 pi-bolt 命令运行,与原有 Pi 并列存在,不会替换 Pi。
程序启动前已将自身函数编译为机器代码,并以一个原生可执行文件运行。官网将其定位为“同一个 Pi”,因此用户可以继续使用原来的配置,并在两个程序之间切换。
适用场景
对于需要频繁启动编程代理、连续输入多个提示、让代理生成较长内容或操作较大文件的场景,Pi-Bolt 更强调响应速度和资源效率。官网列举了交互式会话、通过工具调用写入 400 KB 文件、持续输出 60,000 个字符,以及在 tmux 中进行流式操作等使用情境。
它还适合需要扩展能力的工作流。可用扩展包括在独立会话中运行专门代理、并行工作和定时任务的子代理扩展,用于模型任务管理的待办列表扩展,以及提供模糊查找、grep 和 @ 提及功能的搜索扩展。
准备与上手
使用前应确认运行环境符合支持范围:Linux x86-64 或 ARM64 需要 glibc 2.17 或更高版本;macOS 需要 13 或更高版本且使用 Apple silicon;Windows 支持 10(1809)或 11 的 x64 系统;Android 需要 7 或更高版本,并通过 Termux 在 64 位 ARM 环境运行。Windows on ARM 使用 x64 构建。
官网提供针对 Linux、macOS、Termux 和 Windows 的安装方式,也支持 npm、Bun、Homebrew、Scoop 及 mise 等渠道。安装完成后可直接使用 pi-bolt 启动。原有 Pi 配置位于 ~/.pi/agent,Pi-Bolt 会按原样使用,因此不需要为切换程序重新建立配置。
若需要扩展,可使用 Pi-Bolt 的安装机制添加相关扩展。普通轻量扩展可以按原方式运行;需要更高运行性能的扩展,可以编译进构建版本,或使用启用 JIT 的构建。
主要功能与性能特点
Pi-Bolt 的主要改进集中在运行效率。流式输出时,它只重绘发生变化的最后一个区块,而不是每次都重新渲染完整回答;处理大文件和长会话时,只加入新增内容,而不是从头解析整个文件和对话。
官网基准测试给出的代表性结果包括:写入 400 KB 文件的测试中,Pi-Bolt 用时 1.2 秒;60,000 字符回答流式输出的 CPU 时间为 2.3 秒;40 次提示后的内存占用为 117 MB;准备输入状态的测试为 41 毫秒。这些数值用于展示其与 Pi 在 Node 或 Bun 运行时之间的差异,实际表现会受到环境和任务影响。
Pi-Bolt 还提供扩展编译支持、JIT 构建,以及 update 和 rollback 操作。官网说明安装器和更新器在安装前检查发行版签名,发布包也提供 SHA256 校验和及 GitHub 构建证明。
可确认的限制
Pi-Bolt 并非完全脱离 Pi 的独立编程工具,而是围绕 Pi 运行方式构建的原生版本;它依赖 Pi 的配置和扩展生态。运行时扩展默认仍按解释方式加载,轻量扩展通常不易察觉差异,较重的扩展则可能需要编译或使用 JIT 构建。
平台支持有明确边界:macOS 仅支持 Apple silicon,Windows 主要面向 x64,Linux 需要满足 glibc 版本要求,Android 需要在 Termux 中运行。Windows on ARM 虽可使用 x64 构建,但并非单独的 ARM 原生构建。用户也可以保留 Pi;Pi-Bolt 通过独立的 pi-bolt 命令运行,更新时可使用 rollback 恢复被替换的构建版本。
Pi-Bolt 会替换原来的 Pi 吗?
不会。它以 pi-bolt 命令独立安装,并继续使用 ~/.pi/agent 中的 Pi 配置,Pi 和 Pi-Bolt 可以同时保留。
现有 Pi 扩展还能使用吗?
可以,扩展无需修改即可使用。轻量扩展按运行时解释方式加载;较重的扩展可以编译进构建版本,或使用启用 JIT 的构建。