← 返回更新日志

Pi v1.1.0

2026-10-07 · GitHub 原文
### 新功能 - **程序状态报告**:支持 OSC 7501 的终端和智能体仪表板可以查看 Pi 当前是在工作中、因对话框或登录而阻塞、已完成,还是已失败。请参阅[程序状态](https://github.com/earendil-works/pi/blob/v1.1.0/packages/coding-agent/docs/terminal-setup.md#program-status)。 - **Claude Haiku 5.5**:`anthropic/claude-haiku-5-5`,支持自适应思考,最高可达 `xhigh`/`max` 努力等级。 - **使用 `+name`/`-name` 调整默认工具**:`--tools` 中类似 `pi -t +codemode,-write` 的条目会修改默认选择,而不是替换默认选择。请参阅[工具](https://github.com/earendil-works/pi/blob/v1.1.0/packages/coding-agent/docs/cli.md#tools)。 - **GPT-6 Luna 和图像分类**:OpenAI 的 GPT-6 Luna 可通过 Decisions API 作为分类器模型使用,codemode 的 `models.classify()` 也接受支持图像的分类器所需的图像输入。请参阅[使用分类器模型](https://github.com/earendil-works/pi/blob/v1.1.0/packages/coding-agent/docs/models.md#use-classifier-models)。 - **原生 llama.cpp 决策模型**:由 llama.cpp 0.6.0 或更高版本提供服务的 Julia-1、Laya、Kev、lev 和 OpenJev,可通过 `/v1/systemone` 以原生方式作为分类器运行。请参阅[分类](https://github.com/earendil-works/pi/blob/v1.1.0/packages/coding-agent/docs/llama-cpp.md#classification)。 ### 新增 - 为 `--tools` 添加了 `+name` 和 `-name` 条目,用于修改默认工具选择,而不是替换默认选择,例如 `pi -t +codemode` - 在工具渲染上下文和 `tool_execution_end` 扩展事件中添加了 `durationMs`:最终工具结果记录的执行时间([#10549](https://github.com/earendil-works/pi/issues/10549)) - 在工具渲染上下文中添加了 `outputPad`([#10557](https://github.com/earendil-works/pi/pull/10557),由 [@rwachtler](https://github.com/rwachtler) 提交) - 通过 Decisions API 添加了 OpenAI 的 GPT-6 Luna 作为分类器模型,可使用 `OPENAI_API_KEY`(请参阅[使用分类器模型](https://github.com/earendil-works/pi/blob/v1.1.0/packages/coding-agent/docs/models.md#use-classifier-models)) - 将 `images` 添加到 codemode 的 `models.classify()` 上下文中,因此支持图像的分类器(例如 GPT-6 Luna)可以对图像进行判断 - 添加了使用 OSC 7501 的程序状态报告:支持该功能的终端和智能体仪表板可以查看 Pi 当前是在工作中、因对话框或登录而阻塞、已完成,还是已失败。`PI_PROGRAM_STATUS=1|0` 可覆盖自动检测结果(请参阅[终端设置](https://github.com/earendil-works/pi/blob/v1.1.0/packages/coding-agent/docs/terminal-setup.md#program-status))([#10607](https://github.com/earendil-works/pi/issues/10607)) - 在 `agent_settled` 会话、扩展和 JSON 事件中添加了 `aborted`,使集成能够区分已取消的运行和已完成的运行([#10607](https://github.com/earendil-works/pi/issues/10607)) - 添加了 Claude Haiku 5.5(`anthropic/claude-haiku-5-5`),支持最高 `xhigh`/`max` 努力等级的自适应思考,以及 Bedrock 上的提示缓存 - 添加了原生 llama.cpp 决策模型:由 llama.cpp 0.6.0 或更高版本提供服务的 Julia-1、Laya、Kev、lev 和 OpenJev,现在仅通过 `/v1/systemone` 作为分类器列出,而不再作为聊天模型列出(请参阅[分类](https://github.com/earendil-works/pi/blob/v1.1.0/packages/coding-agent/docs/llama-cpp.md#classification))([#10382](https://github.com/earendil-works/pi/pull/10382)) ### 变更 - 更改了 `outputPad` 的适用范围,使其也应用于 `!` 命令输出、工具输出和摘要块([#9946](https://github.com/earendil-works/pi/issues/9946)、[#10557](https://github.com/earendil-works/pi/pull/10557),由 [@rwachtler](https://github.com/rwachtler) 提交) - 更改了 `pi mcp login --timeout` 的行为,使其限制整个登录过程(包括向授权服务器发起的请求),而不仅仅是等待浏览器响应的时间([#10565](https://github.com/earendil-works/pi/issues/10565)) ### 修复 - 修复了 Bash 和 PowerShell 结果在重新加载会话后丢失 `Took` 的问题,以及实时显示的 `Took` 包含墙上时钟时间步骤的问题;现在两者都会显示记录的执行时间([#10549](https://github.com/earendil-works/pi/issues/10549)) - 修复了托管安装会保留每个旧版本的问题;现在 `pi update` 只保留新版本和用于更新它的版本([#10392](https://github.com/earendil-works/pi/issues/10392)、[#10511](https://github.com/earendil-works/pi/pull/10511),由 [@davidbrai](https://github.com/davidbrai) 提交) - 修复了独立二进制文件会将启动目录中的 `.env`、`.env.local` 和 `.env.development` 加载到 Pi 环境中的问题 - 修复了 `!!` 命令的标头在输出出现后丢失暗色的问题([#10557](https://github.com/earendil-works/pi/pull/10557),由 [@rwachtler](https://github.com/rwachtler) 提交) - 修复了 codemode 描述未将 `searchTools()`、`describeTool()` 和 `describeNamespace()` 标记为异步的问题,该问题导致模型将未等待的 Promise 序列化为 `{}` - 修复了 codemode 输出项连在一起的问题,使模型无法判断一个 `text()` 或 `console.log()` 输出在哪里结束、下一个在哪里开始。现在有多个文本项时,每一项都会以 `==> text N/M <==` 行开头;`console` 调用则会在一个 `<console_output>` 块中跟随其他输出,每次调用占一行 - 修复了 `/mcp` 会等待所有服务器连接后才打开的问题;现在管理器会实时更新,在启用、重新连接或禁用服务器期间仍可使用([#10562](https://github.com/earendil-works/pi/issues/10562)) - 修复了在 Node 24.19+ 和 26.x 上使用 `node --watch` 运行时,图像会因“无法调整大小”而被丢弃的问题。在这些版本中,Node 会在图像调整大小工作线程通道上发送自己的消息([#10527](https://github.com/earendil-works/pi/issues/10527)) - 修复了 Termux 中粘贴剪贴板内容无效的问题,以及复制失败时未显示 Termux:API 安装提示的问题([#10391](https://github.com/earendil-works/pi/issues/10391)) - 修复了当颜色代码跨输出块拆分时,`!` 和 RPC `bash` 输出会保留颜色代码片段(例如多余的 `m`)的问题([#10504](https://github.com/earendil-works/pi/issues/10504)) - 修复了 MCP OAuth 登录在等待授权服务器时无法取消,并且会在会话结束后继续运行的问题。现在登录界面在每个步骤都可通过 Esc 取消;会话关闭时会中止正在运行的登录;向授权服务器发出的每个请求都会在 15 秒后超时([#10565](https://github.com/earendil-works/pi/issues/10565)) - 修复了关闭时会等待最多 15 秒刷新即将过期的 MCP OAuth 令牌,最终却只关闭服务器会话的问题([#10565](https://github.com/earendil-works/pi/issues/10565)) - 修复了全屏文本选择会在切换会话及其他记录重建后继续存在,并在新记录中高亮无关文本的问题([#9311](https://github.com/earendil-works/pi/issues/9311)、[#10567](https://github.com/earendil-works/pi/pull/10567),由 [@christianklotz](https://github.com/christianklotz) 提交) - 修复了 Bedrock 上的 OpenAI 模型忽略思考等级、始终使用 Bedrock 默认推理努力等级的问题([#9331](https://github.com/earendil-works/pi/issues/9331)、[#10142](https://github.com/earendil-works/pi/pull/10142),由 [@jsanter27](https://github.com/jsanter27) 提交) - 修复了 `models.json` 中的模型 `headers` 无法覆盖 Codex 请求的 `originator` 和 `User-Agent` 标头的问题([#10429](https://github.com/earendil-works/pi/pull/10429),由 [@lucasmeijer](https://github.com/lucasmeijer) 提交) - 修复了 `server_busy` 和 `servers are currently busy` 提供商错误会结束回合而不是触发重试的问题([#10543](https://github.com/earendil-works/pi/issues/10543)) - 修复了以 `finish_reason: "error"` 结束的 Mistral 响应不会重试的问题([#10487](https://github.com/earendil-works/pi/issues/10487)) - 在计算输出限制时,将输入估算值从每个 token 4 个字符调整为 3.5 个字符,从而减少了上下文限制请求失败([#10497](https://github.com/earendil-works/pi/issues/10497)) - 修复了组织所有者禁用的 Radius 模型仍会显示的问题 - 修复了当端口 53692 被保留或占用时,Anthropic 浏览器登录会失败并显示“localhost refused to connect”的问题。例如,在 Windows 上 Hyper-V/WSL 的端口排除可能导致该情况;现在登录会回退到一个空闲的回环端口([#10571](https://github.com/earendil-works/pi/issues/10571)) - 修复了通过 OpenCode、OpenCode Go、OpenRouter、Vercel AI Gateway、Google、MiniMax 及其他提供商使用具有提示长度定价层级的模型(例如 Claude Haiku 5.5、Gemini 3.1 Pro 和 GPT-5.4)时,会话成本低估长提示开销的问题 - 修复了 Herdr 中 Markdown 链接无法点击的问题([#10573](https://github.com/earendil-works/pi/issues/10573))。