今天我们来聊一下 Pi ,Pi 这个 Agent 我也是想写很久了。
如果你刚接触 Pi,就暂且可以先把它理解成一个运行在 CLI 里的 Coding Agent,它的设计逻辑就是四个字 — 极简内核。
极简到像是只有内核的 Linux 0.11 。
Pi 本身只有最基础的 read、bash、edit、write 等基础工具。
如果你需要 skill 和 MCP ,你得自己装。
这篇文章我就先跟大家聊聊 Pi ,然后说一下如何接入 DeepSeek,再根据一个我实际的场景跑一下 Pi + DeepSeek-v4-Flash 的能力。
Pi 是什么?
Pi 的官方定位是 minimal terminal coding harness,也就是最小化的 Coding Agent 。Pi 的重点在于 harness:它负责运行模型、提供工具、保存会话,并允许你替换或扩展几乎所有工作环节。

一个最基础的 Pi session 的工作流如下:

Pi 的核心只提供少量文件和 Shell 工具。很多 Coding Agent 有的 Plan Mode、Subagent、浏览器自动化、WebSearch 和自定义状态栏等能力,需要通过 Extension、Skill 或 Package 来进行添加。

Pi 的这种设计与 VS Code 有些相似:优先提供编辑和运行框架,想要啥自己通过插件的方式进行拓展。
五分钟搞定 Pi 的安装
废话说的有点说了,下面直接跟大家说如何安装。 一句命令的事儿:
npm install -g --ignore-scripts @earendil-works/pi-coding-agent
进入项目后启动:
cd your-project
pi
就完事儿了。

你看看这个主页,真 TM 极简了,连个 Logo 都没有。。。
第一次启动可以执行:
/login 登录模型供应商或订阅
/model 选择模型
/settings 设置主题、thinking 和消息模式
/hotkeys 查看快捷键
几个最常用的操作:
Shift+Tab:切换 thinking level。
Ctrl+L:选择模型。
Escape:中止当前运行。
Ctrl+O:展开或折叠工具输出。
- 输入
@:引用项目文件。
/resume:恢复以前的会话。
/tree:回到会话中的任意节点并创建新分支。
刚开始时不需要安装任何插件,直接先上手体验。
把 DeepSeek-v4-Flash 接入 Pi
Pi 的自定义 provider 都写在 ~/.pi/agent/models.json,往 providers 里加一个 deepseek 就行,支持 OpenAI 兼容 API:
{
"providers": {
"deepseek": {
"baseUrl": "https://api.deepseek.com/v1",
"api": "openai-completions",
"apiKey": "sk-你的key",
"authHeader": true,
"compat": {
"supportsStore": false,
"supportsReasoningEffort": true
},
"models": [
{
"id": "deepseek-v4-flash",
"name": "DeepSeek V4 Flash",
"reasoning": true,
"input": ["text"],
"contextWindow": 1000000,
"maxTokens": 65536,
"thinkingLevelMap": {
"off": null,
"low": "high",
"medium": "high",
"high": "high",
"xhigh": "max",
"max": "max"
}
}
]
}
}
}
thinkingLevelMap 是精髓:DeepSeek 只有 high/max 档,Pi 的 low/medium/high 都会映射到 high,xhigh/max 映射到 max。
apikey 可以像我一样从钥匙串里面来读:
"apiKey": "!security find-generic-password -a lx -s pi-deepseek-api-key -w"
把 key 存进钥匙串就一行:
security add-generic-password -a lx -s pi-deepseek-api-key -w 'sk-你的key'
然后 ~/.pi/agent/settings.json 把默认值改成 DeepSeek ,之后每次开 Pi 就是 DeepSeek:
{
"defaultProvider": "deepseek",
"defaultModel": "deepseek-v4-flash",
"defaultThinkingLevel": "xhigh"
}
保存后重启 Pi,用 /model(或 Ctrl+L)就能在 DeepSeek 和 GPT 之间一键切换,不用改任何配置。

上手干了第一个任务,就是排查 Codex Plus 的用量问题,用 DeepSeek 排查 Codex 的用量问题。。。。xs 。
我发现最近 Codex plus 的额度非常不够用,自从我没有用 Codex app ,用上 Pi + CPA 接入 GPT-5.6 以来,在一堂大课的时间,我就夯满了一个 plus 号的周额度。
我非常纳闷,为什么会这么费额度?我一度让我怀疑是被人偷额度了,于是我让 DeepSeek 排查了一下原因。
最终排查结果:没被盗,就是我一个半小时自己烧完的。
整个排查过程让我感觉很好的一点是,DeepSeek-v4-Flash 会自动识别路径依赖,自动判断这条路是否正确,不会走的太深,判断错了自动更正。
下面就是一个它当时自动判断的真实思考过程。

DeepSeek-v4-Flash 的完整报告如下。

这次排查过程还是真香,一顿排查花了 20 M token,费用才不到 1 块钱。而且速度还快。

我想到了之前有人在 *乎上提到了一个问题,我的回答是:

说几个 Pi + DeepSeek-v4-Flash 用的顺手的地方:
- 便宜:20M token 不到 1 块钱,同样的排查量级,GPT 那边是直接烧掉半个 plus 号的周额度;
- 1M 上下文:支持长项目和长报告。
- 路径纠错:干活的适合发现走错路会自动退回来换一条,不会一条路走到黑,这有点像真实人类的排查过程了。
- 无缝切换:支持多 Provider 和模型切换。
我觉得以后 GPT 的号就留着干重活,然后我的日常基座就是 Pi + DeepSeek-v4-Flash 了。
这个日常只截止到 DeepSeek-v4-Pro 的发布之前 :)
本来这篇文章写完就要发了,然后看到 DeepSeek 的消息 ,要涨价了。

尼玛。。。。。。
这篇文章我现在撤回还来得及么?