← 返回更新日志

Pi v0.57.0

2026-03-07 · GitHub 原文
### 新功能 - 扩展可通过 `before_provider_request` 拦截并修改提供者的请求载荷。详见 [docs/extensions.md#before_provider_request](docs/extensions.md#before_provider_request)。 - 扩展 UI 可通过 `OverlayOptions.nonCapturing` 以及 `OverlayHandle.focus()` / `unfocus()` / `isFocused()` 使用非捕获型覆盖层,并支持显式焦点控制。详见 [docs/extensions.md](docs/extensions.md) 和 [../tui/README.md](../tui/README.md)。 - RPC 模式现在采用严格的仅换行符(LF)JSONL 帧格式,以实现更稳健的载荷处理。详见 [docs/rpc.md](docs/rpc.md)。 ### 破坏性变更 - RPC 模式现在采用严格的 LF 分隔 JSONL 帧格式。客户端必须仅使用 `\n` 分割记录,而不应使用 Node `readline` 等通用行读取器,因为它们也会分割 JSON 载荷内部的 Unicode 分隔符([#1911](https://github.com/badlogic/pi-mono/issues/1911)) ### 新增 - 新增 `before_provider_request` 扩展钩子,使扩展能够在发送请求前检查或替换提供者载荷,示例见 `examples/extensions/provider-payload.ts` - 新增扩展 UI 的非捕获型覆盖层焦点控制功能,通过 `OverlayOptions.nonCapturing` 以及 `OverlayHandle.focus()` / `unfocus()` / `isFocused()` 实现([#1916](https://github.com/badlogic/pi-mono/pull/1916) by [@nicobailon](https://github.com/nicobailon)) ### 变更 - 扩展 UI 中的覆盖层合成现在采用焦点顺序,使获得焦点的覆盖层渲染在最上层,同时保留用于显示/隐藏行为的堆栈语义([#1916](https://github.com/badlogic/pi-mono/pull/1916) by [@nicobailon](https://github.com/nicobailon)) ### 修复 - 修复了 RPC 模式 stdin/stdout 帧格式,改为使用严格的 LF 分隔 JSONL 而非 `readline`,从而避免包含 `U+2028` 或 `U+2029` 的载荷破坏命令或事件流([#1911](https://github.com/badlogic/pi-mono/issues/1911)) - 修复了扩展 UI 中自动恢复覆盖层焦点的逻辑,使其跳过非捕获型覆盖层;同时修复了覆盖层隐藏行为,仅在隐藏的覆盖层原本拥有焦点时才重新分配焦点([#1916](https://github.com/badlogic/pi-mono/pull/1916) by [@nicobailon](https://github.com/nicobailon)) - 修复了 `pi config` 在非 git 目录(位于 `$HOME` 下)中将 `~/.agents/skills` 错误归类为项目范围的问题,从而在切换这些技能时不再向 `.pi/settings.json` 写入项目覆盖配置([#1915](https://github.com/badlogic/pi-mono/issues/1915))