跳到主要内容

oh-my-pi v15.13.0 发布 —— 以前是打字对话,现在它能说会听还会自己整理笔记

· 阅读需 7 分钟

描述意图要打字,补充上下文要打字,改需求要打字。你说得越急敲得越快,对方越容易丢上下文。更别说那些跑了大半个小时后突然断掉的流式输出、看着一个大文件不知道从哪里下手等等,每个场景背后都是一样的核心矛盾——你和工具之间的带宽太窄了。

oh-my-pi(下文简称 Pi)v15.13.0 是一次大版本更新,48K 的更新日志里藏着一个清晰的方向:把 AI 编程助手从「打字机」变成「贴身助手」。

核心痛点:打字之外的事情,全都没人管

如果你天天用基于大语言模型的编程工具,下面这几件事大概率都遇到过:

说比写快,工具只认写。 想口述一段逻辑重构思路,手指跟不上脑子。遇到复杂的调用链分析,眼神扫了三遍代码还没理清上下文。

学到的新东西,下次还要重新学。 花了半小时让 AI 理解你们项目的特殊约定,它记住了、帮忙改了代码。但下一个任务一来,之前的对话全部作废,又要重新教一遍。

流式输出动不动就死。 大型上下文流式推理场景下,Bun 原生的抓取请求(fetch)超时机制会在恰好 300 秒时切断连接,冷一个大上下文的流逝全部白跑。

每次切目标都要重新对齐。 要开始一个新方向的任务,没有明确的引导机制,直接丢进「目标模式」经常因为意图模糊跑偏。

新功能怎么解决

Pi v15.13.0 针对这几个痛点,分别给出了非常具体的解决方案。

语音交互:从打字到说话

这是这次版本最直观的变化。Pi 现在支持完整的本地语音链路:

  • 本地文本转语音(TTS):基于 Kokoro-82M 模型 + ONNX 运行时(一种跨平台的深度学习推理引擎),在设备端完成神经网络语音合成,完全不需要联网。输出 24kHz 的 WAV 或 PCM16(一种原始音频格式)格式,因为合成工作在后台子进程持续运行,模型始终「热着」,响应速度极快。
  • 流式语音转文本(STT):实时录音并转录到编辑器中,通过能量检测来判断你是否说完了,不需要手动按键结束录音。
  • 按住空格键通话(Push-to-talk):替代了原来的 Alt+H 快捷键。系统检测到空格键快速重复触发时自动识别为按住通话,交互直觉无缝。

这三项加在一起意味着什么?你可以在写代码的过程中直接说出修改需求,Pi 实时转录、原地处理。重构思路不用先打字再解释,直接说出来就好。

自动学习(Auto-learn):教会一次,永久有效

这是目前标为实验性的功能(需在配置中启用 autolearn.enabled),但方向非常有趣。

当 Pi 完成一个任务(agent 停止运行)后,它会自动回顾这次对话中产生的「可复用经验」——比如你们项目的代码风格约定、特定 API 的使用模式、数据库查询的优化技巧——然后把这些经验封装成可管理的「技能」(managed skills)。下次再遇到类似任务,Pi 自动调用这些技能,不需要你重新解释上下文。

这解决了一个所有 AI 编程工具共同的盲区:每一次对话都是「失忆」的。Auto-learn 相当于给 Pi 装了一个长期记忆系统,而且这个记忆不是用户手动编写的,是工具自己从实践中提炼的。

引导式目标设置:不再从零开始猜

/guided-goal 命令是这次另一个值得关注的新增功能。进入目标模式之前,Pi 会通过最多六轮问答来澄清你的真实意图。这个设计看起来简单,实际价值很高——大多数 AI 编程工具的目标模式(goal mode)本质上就是一个自由输入框,用户给的指令越模糊,AI 产出的结果就越跑偏。

六轮引导可以把一个笼统的「优化查询性能」拆解成具体的目标、约束条件和验收标准。等引导完成后才真正启用目标模式执行,路径清晰很多。

连带改善

语音、自动学习、目标引导是这次版本最醒目的三大块。但在这些功能之下,有一批底层修复同样值得关注。

Bun 原生抓取请求超时禁用是这次最有诚意的修复之一。之前所有流式推理提供商(OpenAI、Claude、Gemini 等)都受 Bun 内置的 300 秒超时限制,这意味着你做一个多文件重构、读一个大型代码库的分析任务,刚好在第 5 分钟整断开连接。这个超时现在被禁用了,Bun 的抓取不再主动切断长流。

Gemini Antigravity 流修复是另一个大坑的填平。如果你在用 Gemini 模型,之前会遇到三种怪问题:空的文本块(流式输出突然吐不出内容却断开连接)、系统指令泄漏到对话中、以及 thoughtSignature 字段损坏。这次都修了。

Copilot 传输层修复:Pi 兼容 Copilot 代理的传输模式(transport)时,之前会带上 eager_input_streamingbeta 这两个请求头(header),Copilot 的代理服务器会直接拒绝这些头部导致请求失败。现在这两个头部被过滤掉了,Copilot 用户能用回原生 Pi 的传输层。

OpenRouter 目录刷新修复:刷新 OpenRouter 模型列表时,之前的代码会丢掉 pi-native 这个传输方式,导致后续请求发到 /chat/completions 返回 404。现在修好了。

渲染性能优化:工具调用结果的渲染做了记忆化(memoized),以前对大文件执行 grep/find/read 后,每次帧刷新都会重新计算布局,导致编辑器严重卡顿,现在不会了。并行调用的旋转加载动画也保持了同步,视觉上不再杂乱。

其他值得注意的更新

  • 大内容粘贴菜单:粘贴内容超过可配置阈值时,弹出菜单让你选择用代码块、XML 标签还是本地附件形式处理。解决了大段文本直接粘贴到编辑器中格式混乱的问题。
  • 三级积极性(Three-level eagerness)task.eagertodo.eager 现在支持 default / preferred / always 三级,精细控制 AI 的主动程度。
  • 快速模式作用域:新增 fastModeScope 配置项,可以设置为 both / openai / claude,只对特定提供商启用快速模式。
  • 嵌入向量变体mnemopi.embeddingVariant 新增 multilingual 选项,使用更强的多语言嵌入模型,对中文等非英语场景更友好。
  • LaTeX 数学公式修复:模型现在被明确指示在回复中使用纯文本而非 LaTeX 定界符,避免了公式渲染混乱。
  • Agent Hub 手势修复:双击触摸板左边缘不再打开空的 Hub 面板。

升级方式

如果你已经在用 Pi,升级命令非常简单:

curl -fsSL https://omp.sh/install | sh # macOS / Linux
brew install can1357/tap/omp # Homebrew

完整更新日志:GitHub Release

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

#oh-my-pi #AI编程 #语音交互 #本地模型 #自动学习 #开源工具