外部精选
omp · v18.11.3
本文来自外部来源,不是黄奕彬的原创文章。本站提供原文入口,并在采集端生成 AI 结构化摘要、解读与中文翻译(如有),一切以原文为准。
阅读原文(github.com)结构化摘要 AI 生成
背景与问题
这是 oh-my-pi(omp)v18.11.3 的发布说明,面向该工具的现有用户与扩展作者,回答「从 v18.11.2 升级到本版本改了什么」。它假设读者已在使用 omp 及其 monorepo 各子包。
正文由各子包的 Added / Fixed / Changed / Breaking Changes / Removed 条目、完整 PR 清单(What's Changed)与新贡献者名单组成,核心是修复类条目。
方法或内容
发布按 monorepo 子包组织变更清单:
@oh-my-pi/pi-agent-core:1 项新增(prepareQueuedMessages可得知批次来自 steering 还是followUp队列)@oh-my-pi/pi-ai:4 项修复@oh-my-pi/pi-catalog:1 项改名、3 项修复@oh-my-pi/pi-coding-agent:1 项破坏性变更、4 项新增、15 项修复、1 项移除@oh-my-pi/pi-natives:1 项变更@oh-my-pi/pi-tui:1 项新增、1 项变更、2 项修复@oh-my-pi/pi-utils:2 项修复
末尾附 v18.11.2...v18.11.3 的完整 PR 清单与 5 位新贡献者名单。
关键发现 / 结果
- 破坏性变更:扩展
ui.approve()宿主改为接收可选 session choice label 与「once」「session」「deny」,不再是 boolean - 新增:
models.yml支持imageCountBudget(默认 5,超限会丢最旧图片并改写 prompt cache);状态行显示活动 profile(如 π-work);opt-inprewalk.auto(off / suggest / on);/seance只读咨询已保存会话 - 移除内置 rs-parking-lot 规则
pi-ai:修复 JSON Schema 解引用改写 const / enum / default 等字面值;Bun 1.3 上 Anthropic 请求永久挂起(现中止即失败并重试);auth gateway 流约 255s 静默被断(现每 15s 发 SSE keepalive);带 mid-conversation system messages 的模型收到尾部 system message 的问题pi-catalog:Google Antigravity 登录项改名;z-ai/glm-5.3-flash改路由到 chat completions;OpenRouter Muse 模型不再发送tool_choice;OpenCode Zen 模型缓存误恢复/误删除问题- 其余修复涉及 Cursor Shell、GitHub API 403(改发
GITHUB_TOKEN/GH_TOKEN)、RSS/Atom 与 gzip HTML 读取、symlink 会话、SIXEL 免重采样、流式列表中途可滚动等 - 量化数据或性能指标:原文未说明
结论与意义
原文未给出独立的结论段落;其意义在于告知升级影响:扩展作者需适配 ui.approve() 新签名,自定义网关运营者可配置 imageCountBudget,其余多为可用性与正确性修复。适用边界:条目仅覆盖 v18.11.2...v18.11.3 区间,且多处依赖特定第三方(Bun、Cursor、OpenRouter 等)当时的行为;更广泛的适用性原文未说明。
AI 解读 AI 生成
方法:按「时空变量」分析(时间 / 空间 / 变量,严格区分包含、相关与因果),对象包括原文作者、署名人员与关键技术及其实际原理;结论用「元反空」(元思考、反思考、空思考、综合)整理。
时间:何时发生,现在是否仍成立
来源日期为 2026年10月17日 05:45(北京时间),即北京时间 2026-10-17 05:45:36。变更区间为 v18.11.2...v18.11.3。本版本之后是否已有更新版本、各修复在当前是否仍成立,原文未说明;绑定第三方行为的修复(如 Bun 1.3、OpenRouter、GitHub 匿名限额)随上游变化可能失效。
空间:谁的环境 / 场景
适用于 oh-my-pi(omp)v18.11.3 及其七个子包的使用者与扩展作者。条目绑定多种具体环境:
- Bun 1.3(Anthropic 请求挂起)
- Windows Terminal 等 cell 高度非 6 倍数的终端(SIXEL / SVG 显示)
- Cursor 的 Shell 工具
- GitHub 匿名 60 次/小时额度耗尽的机器
- OpenRouter、Command Code、OpenCode Zen、OpenAI-compatible 上游,以及 Claude Opus 5.5、
z-ai/glm-5.3-flash、Muse 系列等模型 - 使用
models.yml自定义网关者、编写ui.approve()宿主的扩展作者
变量:实际改变了什么
相对 v18.11.2 的实际改变:
- 行为:审批 UI 从 boolean 改为三选;超
imageCountBudget时旧行为是丢最旧图并改写 prompt cache(现可自定义上限);encodeSixel/encodeSixelAsync丢弃不完整 6 像素带;流式列表项中途即可进入 scrollback - 命名/结构:Google Antigravity 登录项改名;移除内置 rs-parking-lot 规则
- 新增功能:
/seance、prewalk.auto、imageCountBudget、状态行 profile 标签 - 大量 bug 修复,如 403 时改发
GITHUB_TOKEN/GH_TOKEN、SSE 每 15s 发 keepalive - 价格、量化指标:原文未说明
区分:包含 ≠ 相关 ≠ 因果
有明确因果证据的(原文用 so / which 等表述):中止请求「now fails it, so the turn retries」;超限丢旧图「which rewrote the provider's prompt cache」;block_until_ms 不再设置 kill deadline;每 15s keepalive 对应约 255s 断流的修复手段描述。
包含关系:各子包是 omp monorepo 的组成部分,/seance 的 picker 动作属于同一功能。仅为相关:条目中出现的模型名(如 Claude Opus 5.5、gemini-3.7-flash)与工具名是场景举例,与本次变更无因果;贡献者署名与条目只是关联。多数修复的因果链来自维护者自述,原文未提供回归测试数据。
对象:作者/署名与关键技术原理
署名(仅取结构化作者字段):github-actions[bot],无人类署名;正文另提及数十位贡献者(如 @roboomp、@jchanghong023、@ca-io-systems)及 5 位新贡献者,但原文未将其列为作者。关键技术(按原文条目归纳):
pi-ai:Anthropic 请求处理、JSON Schema 解引用、auth gateway 的POST /v1/chat/completionsSSE 流pi-catalog:模型目录与提供方路由(登录项、端点选择、模型缓存)pi-coding-agent:会话、任务与工具主体(read、edit,下载 sd / sg / yt-dlp / trafilatura,MCP,上下文压缩)pi-natives:SIXEL 编码、ast_grep模式解析pi-tui:终端 UI(审批对话框、流式 Markdown、SIXEL 图表渲染)pi-utils:Markdown fence 解析、parseHTML
各技术原理的描述仅限修复条目中的说明,原文未展开。
元反空综合结论
元——这条内容本质是一份版本维护沟通:告知 omp 用户升级到 v18.11.3 会得到什么、需要适配什么(1 项破坏性变更、4 项新增、1 项移除、大量修复),并附 PR 编号供追溯。
反——最可能失效或有边界的:绑定特定第三方版本的修复(Bun 1.3、Cursor 的 block_until_ms / hard_timeout、OpenRouter / OpenCode Zen / Command Code 的上游行为、xAI 长时间静默)、依赖 GitHub 匿名限额政策的 403 修复,以及提及的具体模型名,都会随上游迭代过时;破坏性变更只影响编写 ui.approve() 宿主的扩展作者,不影响普通用户。
空——去掉叙事后剩下的事实是:一份由 github-actions[bot] 署名、按七个子包组织、附 PR 编号的变更清单,无量化性能数据,无独立验证。
综合——这是一份常规发布说明,事实颗粒度较细(症状、手段、编号齐全),可信度依赖维护者自述;对 omp 用户与扩展作者有直接操作价值,但不能据此推断 omp 整体质量或与其他工具的比较,修复的优先级排序与测试覆盖情况原文未说明。
中文译文 AI 生成
@oh-my-pi/pi-agent-core
新增
prepareQueuedMessages现在会接收一批消息来自哪个队列(steering 或followUp)的信息 (#16026)
@oh-my-pi/pi-ai
修复
- 修复了 JSON Schema 解引用改写
const、enum、default、examples以及自定义注解中的字面值,或将属性名当作 schema 关键字处理的问题 (#15927,由 @jchanghong023 提供)。 - 修复了在 Bun 1.3 上当上游已接受请求但始终不发送响应头时 Anthropic 请求永久挂起的问题:现在中止请求(包括首事件超时)会使其失败,因此该轮次会重试,而不是一直等到用户中断 (#16010,由 @ca-io-systems 提供)
- 修复了认证网关的
POST /v1/chat/completions流在约 255 秒无上游输出后被丢弃(终止)的问题,例如在 xAI 生成大型工具调用参数期间(这些参数只有完整生成后才会到达);该流现在每 15 秒发送一条 SSE: keepalive注释 (#15940,由 @radkawar 提供) - 修复了支持对话中途系统消息的 Anthropic 模型(例如 Claude Opus 5.5)以末尾系统消息的形式接收 @file 提及内容和隐藏扩展消息、而非在用户的轮次处结束请求的问题 (#15881)
@oh-my-pi/pi-catalog
变更
- 将内置的
google-antigravity登录选项重命名为 "Google Antigravity (Gemini, Claude, GPT-OSS)",使其可与名称相似的第三方插件区分开,且不再暗示支持范围止于 Gemini 3 (#15998,由 @savanne-kham 提供)。
修复
- 修复了 Command Code 的
z-ai/glm-5.3-flash每次请求都报 "not available on this endpoint" 而失败的问题:目录现在将其路由到 chat completions,即 Command Code 为它列出的唯一端点 (#15922,由 @jasonharrison 提供) - 修复了在 OpenRouter 托管的 Muse Spark 1.x 和 Muse Wonder 模型上
/handoff以 400 Provider returned error 失败的问题:请求不再发送会被上游 Meta 后端拒绝的tool_choice(#15910) - 修复了 OpenCode Zen 从权威模型缓存中带回已退役的捆绑模型,以及在升级后刷新失败时丢弃被列入剔除清单的模型(如 gemini-3.7-flash)的问题 (#15770,由 @adi-IL 提供)
@oh-my-pi/pi-coding-agent
破坏性变更
- 扩展
ui.approve()的宿主现在会收到一个可选的会话选择标签,回答为 "once"、"session" 或 "deny",而非布尔值
新增
- 为
models.yml中的自定义模型和modelOverrides添加了imageCountBudget,使自定义网关可以声明其宿主的图片数量上限,而非默认值 5;超过该上限后,每张新图片都会丢弃最旧的图片,从而改写提供方的提示词缓存 (#15002、#15969,由 @aramalipoor 提供) - 状态栏会在 π 品牌旁标注活动配置文件的名称(π-work),使来自不同配置文件的会话一眼可辨;默认配置文件保持不变 (#15622,由 @matthewrball 提供)
- 添加了可选择启用的
prewalk.auto(off、suggest 或 on):原生 judge 会逐个任务决定是否启用发往prewalk.autoTarget的 prewalk 交接,下一个任务会重新在规划模型上启动 (#16026,由 @taibenvenuti 提供) - 添加了
/seance和 task seance 代理:以只读、就地的方式查阅一个已保存的会话,既不恢复它,也不复制其产物;从选择器中选取来源和可选模型,并向咨询方发送后续追问 (#15036,由 @anatoli-tsinovoy 提供)
变更
- 工具批准提示重新列出了 Approve、Approve <tool> for this session 和 Deny:编辑器为空时,可用方向键和 Enter 进行选择;在编辑器中输入内容则改为拒绝并转向,与此同时 Deny 一行会显示为 "Deny and send message"
修复
- 修复了 "Isolate Subagents" 设置的描述暗示所有任务都以隔离方式运行的问题;每个任务必须通过
isolated: true主动选择隔离 (#15987)。 - 修复了
read以显示格式而非源文件格式标注重新编码的图片的问题;当两者不同时,现在会同时标明两者 (#15890)。 - 修复了当上下文溢出无法被压缩到足以重试时,
omp -p和 task 子代理以较早的回答报告干净结束的问题;现在溢出错误即为该次运行的结果 (#15897,由 @nhthung 提供) - 修复了 Cursor 的 Shell 工具在其
block_until_ms等待时间一到就终止命令的问题;该等待不再设置终止期限,终止期限来自 Cursor 的hard_timeout或 bash 默认值 (#15898,由 @nhthung 提供) - 修复了被中断提示的延迟设置清理会提前将下一个提示标记为空闲、从而允许重叠提交并在轮次中途解除防休眠的问题 (#15946)
- 修复了当不存在的路径与先前读取过的某个文件匹配时,hashline REM 隐藏路径恢复警告的问题 (#15957)。
- 修复了在出口 IP 已耗尽 GitHub 匿名 60 次/小时配额的机器上,工具下载(
sd、sg、yt-dlp、trafilatura)以 GitHub API error: 403 失败的问题;release 查询现在会像 omp 的其他 GitHub API 调用点一样发送GITHUB_TOKEN/GH_TOKEN(#15981,由 @iacore 提供) - 后台本地记忆提取在反复收到 OpenAI 兼容的 429 响应时,现在只执行一个有界的重试预算后即停止,而不是让传输层、提供方和补全层的重试成倍增加 (#15826)。
- 修复了通过在其聚焦的会话中输入来恢复的消息结果子代理会令
agent://<id>保持为空、且从不向父级报告其最终回复的问题 (#15948) - 修复了
read读取 RSS 或 Atom 订阅源时每个条目都显示 Untitled、并丢弃订阅源标题、描述、日期和 RSS 条目链接的问题 (#15954) - 修复了当服务器对第一个请求发送未标明的 gzip、对第二个请求发送可解码的 HTML 时,
read显示二进制提示而非 HTML 页面的问题 (#15956) - 修复了
read返回主页的全站订阅源或某个页面的全站llms.txt替代项而非所请求页面的问题 (#15955)。 - 修复了
ast_grep对在目标语言中无法解析的模式(例如裸 C# 标识符)报告干净的 "No matches found" 的问题;现在会将该模式的 ERROR 节点列为解析问题 (#15950) - 修复了
--resume <id>和会话列表跳过以符号链接形式放入会话目录的转录记录的问题 (#15878、#15884,由 @peda-cos 提供) - 修复了带有延迟连接的 MCP 服务器的会话将每个被路由的 MCP 工具列出两次的问题:一次作为挂载通知,一次出现在路由指引中 (#15982,由 @zcyoung2000 提供)
移除
移除了内置的 rs-parking-lot 规则;使用 std::sync::{Mutex, RwLock} 并带有 .lock().unwrap() 的 Rust 编辑不再被引导至 parking_lot
@oh-my-pi/pi-natives
变更
变更了 encodeSixel 和 encodeSixelAsync,使其丢弃不完整的最后一个 6 像素条带,因此图像绝不会延伸到所请求高度以下,调用方也不再需要将其缩小为 6 的倍数(#16007)
@oh-my-pi/pi-tui
新增
为 /seance 新增了仅选择式的会话与模型选择器动作,因此选择来源或模型不会改变当前活动的会话和模型(#15036,由 @anatoli-tsinovoy 贡献)
变更
ApprovalDialogComponent 会显示一个选项列表(Approve、可选的会话行、Deny):方向键在选项之间移动,Enter(经过 APPROVE_ARM_MS 后进入待命状态)会选中高亮项;当 composer 草稿按住 Enter 时,高亮停留在 Deny 上,其标签改为「Deny and send message」;在 Tern 中点击某个选项即选中该选项;Page Up/Down 滚动详情内容
修复
修复了流式 Markdown 列表会让每一项都保持不进入原生回滚区直到该轮结束的问题,此前滚动出屏幕的行在流式传输中途无法访问;现在最新一项一开始,位于其前面的各项就会立即退役(#13676、#15993,由 @shgew 贡献)
修复了在单元格高度不是 6 的倍数的终端(例如 Windows Terminal)上,SIXEL 图表和 SVG 图形在显示前被重采样、致使其文字被柔化的问题(#16007)
@oh-my-pi/pi-utils
修复
修复了 Markdown 围栏 info 字符串的解析,使包含反引号的反引号围栏起始行保留为段落文本,同时接受波浪线(tilde)info 字符串中的反引号,以及任一围栏 info 字符串中的 Unicode 行分隔符(#15928,由 @jchanghong023 贡献)。
修复了 parseHTML 将 RSS/Atom 文档中的 <link> 当作 HTML 空元素处理的问题,该问题会丢弃 RSS <link>…</link> 的 URL 文本(#15954)
变更内容
- fix(read): 渲染 rss 和 atom 订阅源字段,而不是
untitled,由 @roboomp 在 #15959 中 - fix(tools): 将 read 的 alternates 限定到所请求的页面,由 @roboomp 在 #15960 中
- fix(read): 渲染从二进制重新抓取中解码出的 html,由 @roboomp 在 #15961 中
- fix(edit): 保留已删除文件上的恢复警告,由 @roboomp 在 #15962 中
- feat(coding-agent): 为自定义模型提供可配置的
imageCountBudget,由 @aramalipoor 在 #15969 中 - fix(tools): 将环境令牌发送到 GitHub release 查询,由 @iacore 在 #15981 中
- fix(coding-agent): 抑制被路由引导重复的挂载通知,由 @zcyoung2000 在 #15982 中
- fix(task): 阐明选择加入(opt-in)的 subagent 隔离设置,由 @roboomp 在 #15990 中
- fix(tui): 在流式传输中途使流式列表中已完成的项退役,由 @shgew 在 #15993 中
- fix(catalog): 重命名 Google Antigravity 登录标签,由 @savanne-kham 在 #15998 中
- fix(tui): 按单元格框(cell box)编码 sixel 图像而无需重采样,由 @roboomp 在 #16009 中
- fix(ai): 将已中止且从未收到响应头的 cowork 请求判定为失败,由 @ca-io-systems 在 #16010 中
- feat(tui): 用活动 profile 标记状态行品牌,由 @matthewrball 在 #15622 中
- fix(catalog): 在
resolveProviderModels中保留权威缓存,由 @adi-IL 在 #15770 中 - fix(memory): 限制后台提取的重试次数,由 @roboomp 在 #15827 中
- fix(ai): 使归属于用户的 developer 轮次不进入 anthropic system 角色,由 @roboomp 在 #15883 中
- fix(session): 在会话清单扫描中跟随符号链接,由 @peda-cos 在 #15884 中
- fix(read): 更正来源图像格式标签,由 @roboomp 在 #15892 中
- fix(coding-agent): 将未能恢复的上下文溢出保留为该次运行的结果,由 @nhthung 在 #15897 中
- fix(cursor): 停止在
block_until_ms等待时终止 Shell 命令,由 @nhthung 在 #15898 中 - fix(catalog): 将 Command Code 的 z-ai/glm-5.3-flash 路由到 chat completions,由 @jasonharrison 在 #15922 中
- fix(ai): 在对 schema 解引用时保留字面数据,由 @jchanghong023 在 #15927 中
- fix(utils): 将无效的反引号围栏保留为普通文本,由 @jchanghong023 在 #15928 中
- fix(ai): 在上游静默期间保持 auth-gateway chat-completions SSE 流存活,由 @radkawar 在 #15940 中
- fix(session): 在设置被中断后保留下一个 prompt 的状态,由 @roboomp 在 #15947 中
- fix(task): 将用户恢复的消息结果发布到
agent://和父级,由 @roboomp 在 #15949 中 - fix(natives): 报告会解析为 ERROR 节点的
ast-grep模式,由 @roboomp 在 #15958 中 - fix(catalog): 为 openrouter 的 muse 模型省略
tool_choice,由 @roboomp 在 #15911 中 - feat(coding-agent): 新增选择加入的 auto-prewalk 路由,配合原生判断,由 @taibenvenuti 在 #16026 中
- feat(coding-agent): 新增聚焦的只读会话 seance,由 @anatoli-tsinovoy 在 #15036 中
- chore(coding-agent): 移除过时的
rs-parking-lotTTSR 规则,由 @H4vC 在 #16034 中
新贡献者
- @zcyoung2000 在 #15982 中完成了首次贡献
- @ca-io-systems 在 #16010 中完成了首次贡献
- @matthewrball 在 #15622 中完成了首次贡献
- @adi-IL 在 #15770 中完成了首次贡献
- @nhthung 在 #15897 中完成了首次贡献
完整变更日志:v18.11.2...v18.11.3
展开原文提取正文(采集端自动提取,可能有缺失)
@oh-my-pi/pi-agent-core
Added
prepareQueuedMessages receives which queue (steering or followUp) a batch came from (#16026)
@oh-my-pi/pi-ai
Fixed
Fixed JSON Schema dereferencing rewriting literal values in const, enum, default, examples, and custom annotations, or treating property names as schema keywords (#15927 by @jchanghong023). Fixed Anthropic requests hanging forever on Bun 1.3 when the upstream accepted the request but never sent headers: aborting the request (including the first-event timeout) now fails it, so the turn retries instead of waiting until the user interrupts it (#16010 by @ca-io-systems) Fixed the auth gateway's POST /v1/chat/completions streams being dropped (terminated) after ~255 s without upstream output, e.g. while xAI generates a large tool call's arguments, which arrive only when complete; the stream now sends an SSE : keepalive comment every 15 s (#15940 by @radkawar) Fixed Anthropic models with mid-conversation system messages (e.g. Claude Opus 5.5) receiving @file mention contents and hidden extension messages as a trailing system message instead of ending the request on the user's turn (#15881)
@oh-my-pi/pi-catalog
Changed
Renamed the built-in google-antigravity login option to "Google Antigravity (Gemini, Claude, GPT-OSS)" so it is distinguishable from similarly named third-party plugins and no longer implies support stops at Gemini 3 (#15998 by @savanne-kham).
Fixed
Fixed Command Code's z-ai/glm-5.3-flash failing every request with "not available on this endpoint": the catalog routes it to chat completions, the only endpoint Command Code lists for it (#15922 by @jasonharrison) Fixed /handoff failing with 400 Provider returned error on OpenRouter's hosted Muse Spark 1.x and Muse Wonder models: requests no longer send a tool_choice the upstream Meta backend rejects (#15910) Fixed OpenCode Zen bringing back retired bundled models from an authoritative model cache, and dropping drop-listed models such as gemini-3.7-flash when a refresh fails after an upgrade (#15770 by @adi-IL)
@oh-my-pi/pi-coding-agent Breaking Changes
Extension ui.approve() hosts receive an optional session choice label and answer "once", "session", or "deny" instead of a boolean
Added
Added imageCountBudget to custom models and modelOverrides in models.yml, so a custom gateway can state its host's image limit instead of the default of 5; past that limit the oldest images were dropped on every new image, which rewrote the provider's prompt cache (#15002, #15969 by @aramalipoor) The status line names the active profile next to the π brand (π-work), so sessions from different profiles are distinguishable at a glance; the default profile is unchanged (#15622 by @matthewrball) Added opt-in prewalk.auto (off, suggest, or on): the native judge decides per task whether to arm a prewalk handoff to prewalk.autoTarget, and the next task starts back on the planning model (#16026 by @taibenvenuti) Added /seance and the task seance agent: consult a saved session read-only, in place, without resuming it or copying its artifacts; pick the source and an optional model from pickers, and send follow-ups to the consultant (#15036 by @anatoli-tsinovoy)
Changed
Tool approval prompts list Approve, Approve <tool> for this session, and Deny again: with an empty composer, pick with the arrow keys and Enter; typing in the composer denies and steers instead, and the Deny row reads "Deny and send message" while you do
Fixed
Fixed the Isolate Subagents setting description implying that all tasks run isolated; each task must opt in with isolated: true (#15987). Fixed read labeling re-encoded images with the display format instead of the source file's format; it now identifies both when they differ (#15890). Fixed omp -p and task subagents reporting a clean finish with an earlier answer when a context overflow could not be compacted enough to retry; the overflow error is now the run's outcome (#15897 by @nhthung) Fixed Cursor's Shell tool killing commands once its block_until_ms wait elapsed; the wait no longer sets the kill deadline, which comes from Cursor's hard_timeout or the bash default (#15898 by @nhthung) Fixed an interrupted prompt's late setup cleanup marking the next prompt idle early, allowing overlapping submissions and releasing sleep prevention mid-turn (#15946) Fixed hashline REM hiding the path-recovery warning when a nonexistent path matched an earlier-read file (#15957). Fixed tool downloads (sd, sg, yt-dlp, trafilatura) failing with GitHub API error: 403 on a machine whose egress IP has spent GitHub's anonymous 60/hour budget; the release lookup now sends GITHUB_TOKEN/GH_TOKEN like omp's other GitHub API call sites (#15981 by @iacore) Background local memory extraction now stops after one bounded retry budget on repeated OpenAI-compatible 429 responses instead of multiplying transport, provider, and completion retries (#15826). Fixed a message-result subagent resumed by typing into its focused session leaving agent://<id> empty and never reporting its final reply to the parent (#15948) Fixed read of an RSS or Atom feed showing Untitled for every item and dropping feed titles, descriptions, dates, and RSS item links (#15954) Fixed read showing a binary notice instead of an HTML page when a server sends unlabeled gzip to the first request but decodable HTML to the second (#15956) Fixed read returning a homepage's site-wide feed or a page's site-wide llms.txt alternate instead of the requested page (#15955). Fixed ast_grep reporting a clean "No matches found" for a pattern that does not parse in the target language (e.g. a bare C# identifier); it now lists the pattern's ERROR node as a parse issue (#15950) Fixed --resume <id> and session listings skipping transcripts placed in the session directory as symlinks (#15878, #15884 by @peda-cos) Fixed sessions with a deferred-connecting MCP server listing every routed MCP tool twice, once as a mount notice and once in route guidance (#15982 by @zcyoung2000)
Removed
Removed the built-in rs-parking-lot rule; Rust edits using std::sync::{Mutex, RwLock} with .lock().unwrap() are no longer steered to parking_lot
@oh-my-pi/pi-natives
Changed
Changed encodeSixel and encodeSixelAsync to drop a partial last 6-pixel band, so an image never extends below the requested height and the caller no longer has to shrink it to a multiple of 6 (#16007)
@oh-my-pi/pi-tui
Added
Added selection-only session and model picker actions for /seance, so choosing a source or model leaves the active session and model unchanged (#15036 by @anatoli-tsinovoy)
Changed
ApprovalDialogComponent shows a choice list (Approve, an optional session row, Deny): the arrow keys move between them and Enter (armed after APPROVE_ARM_MS) takes the highlighted one; while a composer draft holds Enter the highlight sits on Deny, relabeled "Deny and send message"; Tern clicks on a choice take it; Page Up/Down scroll the details
Fixed
Fixed a streamed Markdown list keeping every item out of native scrollback until the turn ended, so rows that scrolled off screen were unreachable mid-stream; items in front of the newest one now retire as soon as it begins (#13676, #15993 by @shgew) Fixed SIXEL charts and SVG figures being resampled before display, which softened their text, on terminals whose cell height is not a multiple of 6 such as Windows Terminal (#16007)
@oh-my-pi/pi-utils
Fixed
Fixed Markdown fence info-string parsing to keep backtick-containing backtick openers as paragraph text while accepting backticks in tilde info strings and Unicode line separators in either fence's info string (#15928 by @jchanghong023). Fixed parseHTML treating <link> in RSS/Atom documents as an HTML void element, which dropped the URL text of RSS <link>…</link> (#15954)
What's Changed
fix(read):rendered rss and atom feed fields instead of untitled by @roboomp in #15959fix(tools):scoped read alternates to the requested page by @roboomp in #15960fix(read):rendered decoded html from binary refetch by @roboomp in #15961fix(edit):preserved recovery warnings on deleted files by @roboomp in #15962feat(coding-agent):configurableimageCountBudgetfor custom models by @aramalipoor in #15969fix(tools):send the environment token to the GitHub release lookup by @iacore in #15981fix(coding-agent):suppress mount notices duplicated by route guidance by @zcyoung2000 in #15982fix(task):clarify opt-in subagent isolation setting by @roboomp in #15990fix(tui):retire finished items of a streaming list mid-stream by @shgew in #15993fix(catalog):rename Google Antigravity login label by @savanne-kham in #15998fix(tui):encoded sixel images at their cell box without resampling by @roboomp in #16009fix(ai):failed an aborted cowork request that never received headers by @ca-io-systems in #16010feat(tui):tag the status-line brand with the active profile by @matthewrball in #15622fix(catalog):preserve authoritative caches inresolveProviderModelsby @adi-IL in #15770fix(memory):bounded background extraction retries by @roboomp in #15827fix(ai):kept user-attributed developer turns off anthropic system role by @roboomp in #15883fix(session):follow symlinks in session inventory scans by @peda-cos in #15884fix(read):corrected source image format labels by @roboomp in #15892fix(coding-agent):kept an unrecovered context overflow as the run's outcome by @nhthung in #15897fix(cursor):stopped killing Shell commands at theblock_until_mswait by @nhthung in #15898fix(catalog):route Command Code z-ai/glm-5.3-flash to chat completions by @jasonharrison in #15922fix(ai):preserve literal data while dereferencing schemas by @jchanghong023 in #15927fix(utils):preserve invalid backtick fences as prose by @jchanghong023 in #15928fix(ai):keep auth-gateway chat-completions SSE streams alive during upstream silence by @radkawar in #15940fix(session):preserved next prompt state after interrupted setup by @roboomp in #15947fix(task):publish user-resumed message results to agent:// and parent by @roboomp in #15949fix(natives):reported ast-grep patterns that parse to an ERROR node by @roboomp in #15958fix(catalog):omittedtool_choicefor openrouter muse models by @roboomp in #15911feat(coding-agent):add opt-in auto-prewalk routing with native judgment by @taibenvenuti in #16026feat(coding-agent):add focused read-only session seance by @anatoli-tsinovoy in #15036chore(coding-agent):remove stale rs-parking-lot TTSR rule by @H4vC in #16034
New Contributors
@zcyoung2000 made their first contribution in #15982 @ca-io-systems made their first contribution in #16010 @matthewrball made their first contribution in #15622 @adi-IL made their first contribution in #15770 @nhthung made their first contribution in #15897
Full Changelog: v18.11.2...v18.11.3
原文入口
阅读原文(github.com)原文将在新窗口打开。收录时间不是内容更新时间;正文、译文与解读的版权归原作者/来源所有,本站仅作个人阅读辅助并保留原文入口;页面时间均为北京时间。
了解来源批准与收录规则