📄 文档管理系统

← 返回列表

Pi 一周 9 个版本:从 v0.79.5 到 v0.80.2,Provider 认证重构 + 自动主题 + 扩展 API 升级

default 📅 创建:2026-06-27 18:45:14 🔄 更新:2026-06-27 10:45:15
👁️ 预览 & 复制到公众号 ✏️ 编辑

Pi 一周 9 个版本:从 v0.79.5 到 v0.80.2,Provider 认证重构 + 自动主题 + 扩展 API 升级

6 月 16 日到 23 日这 7 天,Pi 连发了 9 个版本:

v0.79.5 → v0.79.6 → v0.79.7 → v0.79.8 → v0.79.9 → v0.79.10 → v0.80.0 → v0.80.1 → v0.80.2

当前仓库:65,832 Stars。

我按功能领域把这 9 版的改动串起来讲,比按版本逐条读更清楚。


Provider 认证重构:跨版本的主线

这 7 天里改动量最大的一条线是 Provider 认证系统的重构。v0.79.5 开了个头,v0.80.2 收了尾。

v0.79.5 — 认证能力扩展

auth.json 的 API key 条目新增了 env 字段,可以针对不同 Provider 单独设置 Cloudflare、Azure OpenAI、Google Vertex、Amazon Bedrock 的代理和缓存 override,不用改全局 shell 环境。同时加了全局 httpProxy 配置项,设一次就作用到所有 Pi 管理的 HTTP 客户端。

v0.79.9 — 思考能力下放

OpenAI 兼容的自定义 Provider 现在可以映射 Pi 的 thinking 等级到 chat_template_kwargs。对用 vLLM 或 Hugging Face chat-template 跑 DeepSeek 的人很有用——之前 Thinking 控制只对原生 Provider 生效,自定义 Provider 要想让模型思考,全靠手动拼 prompt。

GLM-5.2 的 Fireworks 路由和 OpenRouter xhigh 支持也在这一版修正了。

v0.80.0 — API 迁移 + Cloudflare 修复

pi-ai 的旧全局 API(stream/complete/getModel 等)从主入口移到了 @earendil-works/pi-ai/compat。运行时不受影响(loader 自动映射),但写扩展的来源需要切 import 路径。Cloudflare Provider 的认证路由也修了——之前有些内置调用绕过了 Provider auth。

v0.80.1 — Bedrock 和 Fireworks 修细节

Amazon Bedrock 的作用域 AWS_PROFILE 端点解析、Fireworks 上自定义模型的 session-affinity 都修了。Together MiniMax M2.7 的多余 reasoning toggle 也去掉了。

v0.80.2 — 认证体系收尾

在 v0.79.5 引入的 env 值终于参与了 Provider 认证解析——Cloudflare 这类 Provider 可以从调用参数里推导请求级别的 base URL(#6021)。Anthropic 兼容的自定义模型用了明确的兼容性元数据替代 Provider 名称启发式判断。

这条线从头到尾串了 6 个版本,算是这周改动最深的。


自动主题 + TUI 改进

v0.79.7 — 自动暗色/亮色主题

/settings 现在可以设置分开的亮色和暗色主题,Pi 自动跟随终端的 color-scheme 变化。白天用亮色主题、晚上用暗色,不需要手动切了。

同一版还加了 Warp 终端的 Kitty 图片渲染检测——在 Warp 里看内联图片不需要额外配置。

v0.80.0 — Ctrl+J 换行

Ctrl+J 被加为默认换行快捷键,和 Shift+Enter 并列。


压缩(Compaction)体系完善

Compaction 是 Pi 处理长 Session 的核心机制,这周连续加强了两次:

v0.79.8 — 压缩后 Token 估算

Compact 结果和 compaction 事件现在包含压缩后的预估 Token 数。之前 compact 完只知道「压缩了」不知道「剩多少」,现在可以大致判断上下文压缩效率了。

v0.79.10 — 扩展感知压缩事件

session_before_compactsession_compact 两个扩展事件新增了 reasonwillRetry 字段。扩展现在能区分手动压缩(/compact)、阈值自动压缩、溢出重试三种不同的压缩触发原因。

同版还修了一个烦人的问题:find 工具现在能正确处理嵌套 git 仓库的 .gitignore 边界(#5960)。


更新机制改造

两版改了 Pi 的更新行为:

v0.79.7 — 只更新自身

pi update 默认只更新 Pi 本身,不加 --all 就不碰扩展。之前 pi update 会一起更新扩展,有时扩展更新带来意外行为。

v0.79.10 — 更安全的更新流

pi update 现在安装的是经过版本检查的确切版本号,--force 重新安装也是那个版本。更新通知现在显示实际的 changelog URL 作为链接文本,而不是只写「有新版本」。


Mistral 缓存 + OpenRouter Fusion

v0.79.8 — Mistral 提示缓存

Mistral 会话现在使用 Pi 的 session ID 作为 prompt_cache_key 进行 Provider 端缓存,缓存命中后的 Token 消耗和费用也会正确计入。

同一版还加了 openrouter/fusion 作为内置别名。


SDK / 扩展 API

v0.79.7 — 新增导出

CONFIG_DIR_NAME 从 coding-agent 公共 API 导出,扩展不用再硬编码 .pi。另外导出编辑 diff 工具(generateDiffStringgenerateUnifiedPatchEditDiffResult),写代码审查类的扩展可以直接用。

v0.79.8 — 选择性 Provider 入口

@earendil-works/pi-ai/base@earendil-works/pi-agent-core/base 两个新的入口点,SDK 用户可以选择只包含需要的 Provider transport,减少打包体积。


其他值得提的修复

版本 修复
v0.79.5 Windows 上 pi update 不再 process.exit(0),避免了 libuv 断言错误
v0.79.5 Z.AI GLM-5.2 的 reasoning_effort 映射到 high/max
v0.79.7 RPC unknown-command 错误现在带 request id,客户端不会挂起
v0.79.7 树导航器在深层条目时水平滚动,选择项保持可见
v0.79.9 深层 session 分支构建上下文不再指数级耗时(#5909)
v0.79.9 Markdown streaming 的半闭合代码 fence 不再让代码块闪烁缩小
v0.79.9 edit 模糊匹配现在保留未修改的行块,不重写整个文件
v0.80.0 pi --resume 正确加载用户包主题和自动亮暗设置
v0.80.0 Session 名称中的换行符归一化后存储

这 7 天给我的整体感觉

版本节奏:平均每天 1.3 个版本,周日(6/21)只发了 1 个,周一(6/22)和周二(6/23)都是两连发甚至三连发。v0.80.0 到 v0.80.2 更是同一天 3 发。

改动质量:大多数版本是以 bugfix 为主,穿插中型功能。Provider 认证这条线跨了 6 个版本收尾,说明是大改。

社区贡献者:这周有 @xl0、@FredKSchott、@dannote、@dodiego、@PizzaMarinara、@haoqixu、@Perlence、@rwachtler、@4h9fbZ 等人的 PR 合入。@xl0 连续贡献了 edit diff 和 CONFIG_DIR_NAME 两个有用的导出。


互动问题:你升到 Pi v0.80.x 了吗?自动主题和 Ctrl+J 换行这两个日常功能有没有注意到?

小创 / 创见 AI 实验室

预加载评论
自动主题救了我,白天在公司用亮色回家自动切暗色,舒服 | auth.json 的 env 字段修了 Cloudflare 认证的 bug,之前折腾了好久 | 9 个版本一周也太快了,跟 OpenCode 有得一拼 | compress 后看 token 估算很实用,终于知道压缩效率了

💬 评论区

加载中...