首页
产品服务
模型广场
Token工厂
算力市场算力商情行业资讯解决方案有偿资讯商城
注册

GitHub 94.8K Star!开源项目 Pi 重新定义编程工具:极简可扩展的终端 Coding Agent

发布日期:2026-08-23 来源:今日头条(前端Hardy)作者:今日头条(前端Hardy)浏览:48

Pi 到底是什么?

  先简单理解一下。传统 AI 编程工具通常是:

  用户 → 聊天窗口 → 大模型 → 代码建议

  而 Coding Agent 更像:

  用户提出目标 → Agent → 读取代码 → 分析项目 → 调用工具 → 修改文件 → 执行命令 → 运行测试 → 继续修复

  Pi 就是专门围绕这种 Agent 工作模式打造的。官方把它描述为:AI agent toolkit:统一 LLM API、Agent Loop、TUI、Coding Agent CLI。

  它的核心并不是某一个模型,恰恰相反:Pi 希望把 Agent 本身做成一个可以自由组合、自由扩展的基础设施。

为什么 Pi 值得关注?

  我认为 Pi 最值得关注的地方,不是它又支持了多少个模型,而是它把"AI Agent"本身进行了模块化。 目前整个项目主要由几个核心部分组成:

模块 作用
pi-ai 统一多模型 API
pi-agent-core Agent Runtime
pi-coding-agent Coding Agent CLI
pi-tui Terminal UI
pi-telemetry Telemetry 相关能力

  官方仓库也明确列出了这些核心 Package。

  这意味着开发者可以根据自己的需求选择不同层级。你可以直接使用 Pi, 也可以基于 Pi 构建自己的 Agent, 甚至可以把 Pi 当成一个 Agent Runtime。 这才是这个项目真正有意思的地方。

Pi 最核心的设计:Core 保持足够小

  Pi 的开发哲学里有一句非常重要的话:

Pi's core is minimal.

  也就是核心保持最小化。 官方 CONTRIBUTING 文档明确强调,如果一个功能不属于核心,那么更应该通过 Extension 实现,而不是不断往 Core 里面塞功能。

  这其实是一个非常重要的工程思想。很多项目发展到后期都会出现一个问题:

  核心功能 + 插件功能 + 第三方需求 + 各种兼容逻辑 + 历史包袱 = 越来越复杂

  最后开发者连核心代码都不敢动。Pi 反过来做,它希望:

  Core

  把越来越多的能力放到核心之外。这样做的好处就是:核心保持稳定,外围负责创新。

真正厉害的是 Extension

  如果让我选择 Pi 最值得研究的一个功能,我会选择 Extension。 Pi 的 Extension 本质上就是 TypeScript 模块。开发者可以通过 Extension:注册新的 Tool、注册命令、注册快捷键、监听 Agent 生命周期、拦截 Tool Call、修改上下文、自定义 UI、保存状态、接入外部系统、注册新的模型 Provider。

  官方文档甚至直接给出了完整的 Extension API。例如:

import { ExtensionAPI } from "@earendil-works/pi-coding-agent"
export default function (pi: ExtensionAPI) {
  pi.registerCommand({
    name: "hello",
    description: "Say hello",
    handler: async () => {
      return { message: "world", level: "info" }
    }
  })
}

  然后就可以给 Pi 增加自己的命令。这就意味着:Pi 不只是一个 Coding Agent, 它实际上正在变成一个 Coding Agent 开发平台。

甚至可以自己给 Pi 增加 Tool

  这一点对于开发者来说尤其重要。比如你正在做一个企业内部 AI 编程助手,你可能希望 Agent 拥有这些能力:查询 Jira → 查询 GitLab → 读取内部 API 文档 → 查询数据库 → 检查 CI → 创建 Issue → 生成代码。

  传统方式可能需要自己重新开发一套 Agent Framework,而 Pi 可以通过 Extension 增加自定义 Tool。官方文档提供了 pi.registerTool() 机制,可以让模型直接调用开发者定义的工具。

  于是整个架构就变成:

┌── GitLab
│
Pi Agent ─ ┼── Jira
│
├── 数据库
│
├── 内部 API
│
└── 企业知识库

  这也是为什么我认为:Pi 更像一个 Agent Harness,而不仅仅是一个 AI Coding CLI。

模型也不是绑定死的

  另一个非常重要的设计:Pi 并不绑定某一个大模型厂商。 官方 Provider 文档显示,Pi 支持订阅型 Provider 和 API Key 型 Provider,并提供统一的模型目录与认证机制。

  目前可以接入包括:OpenAI / Codex、Anthropic、Google、GitHub Copilot、xAI、OpenRouter、Qwen、MiniMax、Kimi、Hugging Face、Together AI、Fireworks、llama.cpp 以及自定义 Provider。

  这对于开发者来说非常重要,因为 AI Agent 最终不应该被某一家模型厂商锁死。你可以:

  • A:Claude
  • B:GPT
  • C:Gemini
  • D:Qwen
  • E:llama.cpp

  甚至可以自己注册 Provider。官方提供了 pi.registerProvider(),允许开发者接入代理、自建模型服务、企业 API、OAuth/SSO 等场景。

甚至可以直接接本地模型

  这一点非常适合国内开发者。Pi 支持 llama.cpp Router,也就是说,你完全可以:

  Pi → llama.cpp

  这样就不一定需要所有请求都发送到云端。

  当然,本地模型能不能真正承担复杂 Coding Agent 工作,还取决于:模型能力、上下文长度、Tool Calling、推理能力、本地硬件、推理速度。但从架构角度来说:Pi 已经把这条路铺出来了。

安装其实非常简单

  如果你想体验 Pi,官方目前推荐通过 npm 安装:

npm install -g @earendil-works/pi-coding-agent

  然后进入自己的项目:

cd your-project

  官方 Quickstart 也是这个流程。

  Linux/macOS 还可以使用官方安装脚本:

curl -fsSL https://get.pi.dev | sh

  安装之后直接 pi 就可以启动。

模型怎么登录?

  启动 Pi 之后,可以使用 /login 选择对应 Provider。例如官方当前文档列出的订阅型 Provider 包括:ChatGPT Plus/Pro、Claude Pro/Max、GitHub Copilot、xAI、OpenRouter、Radius。

  API Key 模式也可以通过环境变量或者认证文件进行配置。这意味着:Pi 更像一个统一的 Agent 工作台, 模型只是其中的一部分。

Pi 还有一个非常有意思的能力:RPC

  如果你不想使用终端 UI,也可以使用:

pi --mode rpc

  Pi 会通过 stdin/stdout 提供 JSON 协议。官方明确说明,这种模式适合:嵌入其他应用、IDE、自定义 UI、自动化系统。

  这一下就打开了非常大的想象空间。例如:

  Web IDE → Pi RPC → Agent Runtime → 模型

  或者:

  企业开发平台 → Pi SDK → Agent Runtime → 企业模型

  你甚至可以完全不使用 Pi 默认的终端界面。

如果你是 Node.js 开发者,还有 SDK

  Pi 并不是只能通过 CLI 使用,官方提供 SDK。可以直接:

npm install @earendil-works/pi-agent

  然后在 Node.js / TypeScript 项目中创建 Agent Session。例如:

import { createAgentSession } from '@earendil-works/pi-agent'
const session = await createAgentSession()
await session.run("分析当前项目结构,并告诉我应该如何优化")

  这意味着 Pi 可以成为你自己应用里的 Agent 引擎。

Pi 最有想象力的地方:它可以"自己扩展自己"

  这可能是整个项目最有意思的一点。官方文档直接写了:

pi can create extensions.

  也就是说,你甚至可以直接让 Pi 帮你开发 Pi Extension。这会形成一种非常有意思的循环:

  Pi → Extension → 新能力 → 更强的 Pi

  于是 Agent 本身开始拥有 自我扩展能力。

  当然,这并不意味着它可以无限制地"自我进化"。实际开发仍然需要:权限控制、代码审核、测试、安全隔离、人工确认。但从开发范式来说,这已经非常接近 Agent → Agent Platform。

Pi Package 生态也正在出现

  除了 Extension,Pi 还设计了 Package 机制。一个 Package 可以同时包含:Extensions、Skills、Prompt Templates、Themes,然后通过 npm 或 Git 安装。例如:

pi install npm:@your-org/pi-package

  官方 Package 文档也明确支持这种扩展方式。现在 Pi 官方 Package Catalog 已经出现了大量第三方扩展包。

  这意味着 Pi 正在慢慢形成自己的生态:

  Pi → Package → Extension → Skill → Theme → Developer

  如果这个生态继续发展下去,Pi 的价值可能就不仅仅是一个 GitHub 项目。

但是有一点必须注意:权限问题

  这里一定要提醒大家。Pi 不是一个默认沙箱化的安全环境。 官方明确说明:Pi 默认运行在启动它的用户权限边界内,并没有内置权限系统去限制文件系统、进程、网络或者凭据访问。

  简单来说:如果你在自己的电脑上运行 Pi,那么 Agent 可能拥有和当前用户相同的系统权限。

  尤其是 Extension。官方文档明确提醒:Extension 可以执行任意代码,并拥有完整系统权限。所以不要看到 pi install npm:xxx 就什么包都直接安装。尤其是第三方 Extension、第三方 Skill、第三方 Package,一定要先看源码。

  企业环境则应该考虑:Docker、VM、Sandbox、MicroVM 等隔离方案。Pi 官方也提供了容器化相关方案说明。

为什么 Pi 最近越来越火?

  其实答案并不复杂。AI 编程工具正在经历一个变化:

  1. 第一阶段: AI 帮我写代码
  2. 第二阶段: AI 帮我修改代码
  3. 第三阶段: AI 自己运行测试
  4. 第四阶段: AI 自己完成整个开发任务

  到了第四阶段之后,大家真正需要的就不再只是一个聊天 UI,而是 Agent Runtime。 这正是 Pi 所在的位置。

Pi 和普通 AI Coding Tool 最大的区别

  如果只把 Pi 当成"又一个 Claude Code / Codex 替代品",其实低估它了。更准确的理解应该是:

类型 核心定位
AI Chat 和模型聊天
AI IDE AI 辅助写代码
Coding Agent AI 自动完成开发任务
Pi 可扩展的 Agent Harness

  Pi 更关注:Agent 如何运行、Agent 如何调用工具、Agent 如何扩展、Agent 如何接入不同模型、Agent 如何嵌入其他产品。 这也是它值得开发者研究的原因。

如果你是开发者,Pi 值得怎么玩?

  我建议从三个方向入手。

  第一种:直接当 Coding Agent。 最简单。安装:

npm install -g @earendil-works/pi-coding-agent

  然后 cd your-project && pi,直接让它帮助你:分析项目、重构代码、修 Bug、运行测试、写脚本、解释代码。

  第二种:开发自己的 Extension。 例如做一个 /commit、/review、/test、/deploy、/docs,甚至可以 /query-db、/query-jira、/query-gitlab,把企业内部能力接进 Agent。

  第三种:把 Pi 当 Agent SDK。 如果你正在做 AI IDE、企业 AI 开发平台、自动化 Coding Agent、AI DevOps、AI Code Review、内部研发助手,那么可以直接研究 createAgentSession() 以及 RPC 模式,把 Pi 放到自己的产品后面。官方 SDK 和 RPC 都已经提供了对应能力。

Pi 的真正野心可能不是"做一个 Claude Code"

  这是我认为最值得讨论的地方。如果 Pi 只是做一个 Coding Agent,那么它面对的竞争会非常激烈。但是如果它最终变成:

Pi
│
┌───────┼────────┐
↓       ↓        ↓
Models  Tools   Extensions
│       │        │
└───────┼────────┘
        ↓
Agent Runtime
        ↓
┌───────┼────────┐
↓       ↓        ↓
CLI     IDE      Web
        ↓
Enterprise

  那它就不再是一个简单的 AI 编程工具,而是 一个开放式 AI Agent 基础设施。 这可能才是 Pi 最值得关注的地方。

写在最后

  这几年我们看到的 AI 编程工具,大多在争夺一个问题:谁的 Agent 更聪明? 但 Pi 走的是另外一条路线:能不能把 Agent 做成一个真正开放、可扩展、可组合的开发平台?

  从目前的架构来看,它已经具备了不少关键组件:统一模型 API + Agent Runtime + Coding CLI + TUI + Extension + Package + SDK + RPC。 而且项目目前仍然非常活跃,GitHub 仓库已经拥有超过 8.8 万 Stars,并持续快速迭代。

  所以,如果你是一名前端、Node.js、全栈或者 AI 开发者,我非常建议把 Pi 放进你的开源项目观察列表。

  它最值得研究的,可能并不是"Pi 能不能替代某个 AI 编程工具?"而是"未来我们自己做 AI Agent,到底还需不需要从零开始造轮子?" 而 Pi 给出的答案,可能是:不一定。你可以直接站在 Agent Runtime 上继续往上构建。

  GitHub:https://github.com/earendil-works/pi
  官方文档:https://pi.dev/docs/latest

  一句话总结:Pi 表面上是一个 Coding Agent,实际上更像是一套让开发者自己构建 Coding Agent 的基础设施。 这可能才是它真正值得关注的原因。

本文转载自今日头条(前端Hardy), 作者:今日头条(前端Hardy), 原文标题:《 GitHub 94.8K Star!开源项目 Pi 重新定义编程工具:极简可扩展的终端 Coding Agent 》, 原文链接: http://m.toutiao.com/group/7676801427385123328/。 本平台仅做分享和推荐,不涉及任何商业用途。文章版权归原作者所有。如涉及作品内容、版权和其它问题,请与我们联系,我们将在第一时间删除内容!
本文相关推荐
暂无相关推荐
点击立即订阅