跳到主要内容

Oh My Pi v16.1.17 发布 —— yield 门修复,Anthropic 代理修复,多项底层加固

· 阅读需 2 分钟

Oh My Pi v16.1.17 封面

Yield 门不再被时钟回拨卡死

yieldIfDue() 是 Agent 循环里让出事件循环的核心机制。如果系统时钟发生了向后跳变(NTP 调整或 mock 测试),旧的未来时间戳会让 yield 门永远卡住——Agent 不再让出,整个循环就卡死了。现在遇到向后时钟跳变会当作「已经到期」处理,并重新锚定时间(#3330)。

Anthropic 自定义代理认证修复

如果你用 Anthropic API 走自定义代理(比如自建反向代理),之前 model.headersANTHROPIC_CUSTOM_HEADERS 里设的 Authorization / X-Api-Key 会被静默丢弃,导致代理认证失败。现在非 OAuth 请求会优先使用调用者提供的认证头(#3391)。

OpenRouter 推理签名修复

OpenRouter 上的 Anthropic 模型有两个修复:

  • cache_control 不再被省略,prompt 缓存能正常工作了(#3397)
  • 多轮推理的 follow-up 请求不再因为携带了之前的 thinking 块签名而导致 400 错误——现在 replay 时会自动清理历史推理签名(#3399)

Ollama Cloud 输出 Token 上限修复

Ollama Cloud 的 num_predict 最大是 65536,但旧缓存里如果存了 maxTokens: 1048576,请求就会 400。现在在发送前会自动 clamp 到 65536(#3394)。

其他修复

  • GitHub Copilot 企业端点不再因为报告支持 vision 但实际拒绝图片而 400(#3387)
  • 韩文输入(Hangul Jamo)在 Ghostty 终端下不再渲染异常(#1800)
  • 桌面通知在 tmux 下不再被静默丢弃,改用 DCS 透传 + BEL 回退(#3396)
  • omp usage 不再重复显示 provider 级别的免责声明(#3312)
  • Snapcompact 上下文压缩在子 1M token 模型下不再无限循环警告(#3249)
  • Stats 统计不再因为 fork 会话而重复计数(#3382)
  • omp plugin install 安装的 marketplace 插件不再注册后不生效(#3245)

升级方式:

brew upgrade oh-my-pi
npm update -g oh-my-pi

完整更新日志:GitHub Release v16.1.17

📢 关注我,获取最新开源更新日志和开发者工具动态。

#OhMyPi #v16.1.17 #Anthropic #MCP #LLM更新报告 #AI写代码的小任