/workflow 命令来了!CodeWhale v0.8.67 发布 —— 模型选择 fleet 自动继承



新增 codewhale doctor --json 命令,可以诊断 ~/.deepseek 到 ~/.codewhale 的迁移状态,标记未迁移或双根数据(#3727)。
新增 Hotbar 快速切换槽(#3796, #3788),Alt+1 到 Alt+8 可以快速切换工具,还有一个引导卡片解释用法。
新增 token/cache/cost scorecard 命令,用于离线发布门控、基线回归检查和每轮成本可视化(#3388)。
sakana/fugu 别名子 agent 的 fanout(扇出)和锁竞争热路径做了大幅优化:独立子 agent 启动改为并行批处理、子 agent 侧边栏从只读快照渲染、磁盘 I/O 移出写锁、UI 路径使用 try_lock 避免阻塞(#3783, #3801, #3803, #3805, #3804)。
cargo publish/npm publish 强制审批(#3735)--version、--help)不再被标记为破坏性操作(#3730)升级方式:
npm install -g codewhale
完整更新日志:GitHub Release v0.8.66
📢 关注我,获取最新开源更新日志和开发者工具动态。
#CodeWhale #v0.8.66 #AI编程工具 #LLM更新报告 #AI写代码的小任

大上下文会话现在默认开启自动压缩,而且压缩时会把摘要带到下一段 prompt,不会因为压缩就丢掉上下文脉络(#3376)。之前的压缩偶尔会「偷偷」清掉一些关键内容,现在默认走稳定路径,想关也可以手动 opt-out。
本地应用自动化新增了一个 loopback-only 的开发服务器就绪检测原语,Agent 可以在浏览器接管之前先等 TCP 或 HTTP 健康检查通过。来自 @cyq1017 的贡献(#3376)。
/model pro 和 /model flash 现在可以直接解析到当前的 DeepSeek V4 路由这一版有一批集中的安全修复:
serve / app-server 子进程支持 OS 级的父进程死亡清理(#3378)升级方式:
npm install -g codewhale
完整更新日志:GitHub Release v0.8.64
📢 关注我,获取最新开源更新日志和开发者工具动态。
#CodeWhale #v0.8.64 #AI编程工具 #LLM更新报告 #AI写代码的小任

这是一个全新的路由层:统一的 RouteResolver 负责将 provider、model、offering 解析为 ReadyRouteCandidate(包含端点、协议、模型 ID、上下文窗口、价格等信息)。可执行客户端现在从解析结果直接构建,而不是从配置重新推导。内置的 Models.dev 风格目录提供真实的上下文窗口和定价数据,支持无密钥的缓存查询。
Fleet 分布执行模式有了完整的类型定义和配置:支持持久化 manager 恢复、工作区 agent-profile 加载、task spec 中的负载意图、以及持久化解析结果的 receipts。Worker 状态统一展现在 /fleet 表面。
/provider 新增了运行状态仪表盘,展示:
/model 搜索(带滚动和 type-ahead)<think> 推理流路由/modeldb 模型参考浏览器新增只读命令 /modeldb(别名 model-reference, modelref),打开一个分页器显示所有 bundled 模型的真实上下文窗口、最大输出、多模态能力和价格,按 provider/类型分组。不选择、不路由——只展示事实。
[providers.<name>]3120+ 行的 config 拆分为独立模块:ProviderKind、harness posture、provider 默认 seed 等各归其位。AppMode 策略通过统一的 base_policy_for_mode 解析。
/config preset <name>,首发 calm 预设(calm 模式、低动效)/models 实时获取层/mode 选择器和 composer 的 Vim 模式指示器现支持全部 7 种语言升级方式:
npm install -g codewhale
cargo install codewhale-cli codewhale-tui --locked
完整更新日志:GitHub Release v0.8.65
📢 关注我,获取最新开源更新日志和开发者工具动态。
#CodeWhale #v0.8.65 #RouteResolver #Fleet #AI编程工具 #LLM更新报告 #AI写代码的小任

子智能体的并发问题在之前版本里一直处于"能跑就行"的状态。高扇出 Workflow 一旦启动,瞬间拉起几十甚至上百个子 agent——调度器没炸全靠运气。v0.8.63 用两个参数终结了这种不确定性。
• [subagents] max_admitted——准入水位控制:之前的并发控制只限制了同时运行的 agent 数量(max_concurrent),但没有限制"排队中"的数量。高扇出场景下,大量的 agent 同时在队列中等待调度,内存和状态管理跟着膨胀。max_admitted 解决了这个问题——它定义了整个运行中能"存在"的子 agent 总数上限,包括正在运行的、正在入队排队的、以及正在排空的。超出上限的 agent 请求会被直接拒绝而非排队等待。这对于需要精确控制系统负载的场景是根本性的改进。
• [subagents] token_budget——聚合 Token 天花板:之前 Token 限制只作用于单个 agent 调用。现在你可以给一个根 agent 及其所有子孙 agent 设定一个共享的 Token 预算池。根 agent 启动时分配一笔总额,所有子任务消耗的模型 Token 从同一个池子里扣除。池子耗尽后,整个 agent 子树停止工作。这对于在预算敏感的环境中使用 agent 来说是一道硬约束——不再依赖"模型应该收敛"的软性期望。
这两个参数配合使用,CodeWhale 的多 agent 并发模型从"尽力而为"变成了"严格受控"。
如果说 [subagents] token_budget 是宏观预算控制,那么 #3321 引入的 per-worker Token 预算就是微观层面的精确制导。
之前你在单个 agent 调用上设置 max_tokens,它能约束这个调用的完成回合数,但无法在模型实际消耗 Token 的层面上施加限制。v0.8.63 的 token_budget / max_tokens 字段现在作用于单个 worker 的生命周期内——一旦该子 agent 累计的模型 Token 超过了设置的上限,它不会硬崩也不会无限等待,而是以 budget_exhausted 状态干净地停止,并带回已经产出的结果。
这意味着你可以给"快速探索型"子 agent 设置低预算、给"深度分析型"设置高预算,同时在根级别设置一个总额封顶。预算体系有了层级结构。
不同 provider 的延迟、成本、并发特性差异巨大。之前所有 provider 共用一套子 agent 配置,DeepSeek 和 Claude 的调度参数一样——这显然不合理。
[subagents.providers.<provider>] 配置段允许你针对每个 provider 独立覆盖以下参数:
• enabled——是否允许此 provider 启动子 agent
• max_concurrent——该 provider 下的最大并行数
• max_admitted——该 provider 下的最大准入数
• launch_concurrency——该 provider 的启动并发(控制初始扇出速度)
• max_depth——子 agent 嵌套深度
• Token budget——该 provider 特有的预算上限
• API 超时 & 心跳超时——provider 级别的通信超时
一个典型配置场景:Claude 子 agent 给高预算高并发,DeepSeek 给低预算低并发,本地模型关闭子 agent 功能。在同一个 Workflow 中混合使用不同 provider 的子 agent,现在每一条路线都有自己的行为规则。
子 agent 一旦跑起来就"丢进黑箱"是之前版本的痛点。你不知道它在干嘛、卡在哪、能否取消它。v0.8.63 的 agent 工具新增三个运行时操作:
• status——查询子 agent 的实时状态(running / waiting / completed / exhausted)
• peek——查看子 agent 当前的中间输出(不等待完成)
• cancel——终止一个正在运行的子 agent
配合 worktree: true 参数——为子 agent 创建独立的 git worktree 和分支——实现了完整的任务隔离。一个子 agent 的文件操作不会影响另一个 agent 的工作区。这对于需要并行修改同一仓库不同模块的场景非常有用。
v0.8.63 的修复清单比功能清单长,这本身说明团队在稳定性上花的功夫。
• 模式与工具目录正确性修复:之前在某些边缘情况下,agent 选择的模式或工具与实际可用集不匹配。现在做了全链路的目录校准。
• 子智能体编排恢复:当子 agent 遇到 provider 临时超时(比如 API 限流瞬时飙升),之前直接失败。现在子 agent 会自动重试 transient 超时,大大降低了高并发场景下的偶发失败率。
• DeepSeek 思考模式工具调用修复:启用推理时,显式传入 tool_choice 会导致 DeepSeek 返回异常。现在推理启用时自动省略 tool_choice,终于能在思考模式下正常使用工具了。
• Config 显示脱敏:之前 codewhale config show 可能暴露 API key 等敏感信息。现在递归地 mask 配置输出中的所有密钥字段——有密文就不会明文输出。
• 任务侧边栏快捷方式和归属修复:Task 侧边栏的快捷键和 attribution 显示做了修正,多 agent 场景下哪个 agent 产生了哪条信息现在一目了然。
• 侧边栏默认恢复为 pinned:之前某次更新中侧边栏的默认状态变成了 unpinned,现在恢复为 pinned——打开 CodeWhale 就能看到侧边栏,不需要再手动固定一次。
• JavaScript 执行代理环境变量处理改进:解决了一些环境中 child_process 继承环境变量时的兼容性问题。
• 遗留认证加固和非回环地址安全:Legacy app-server 的非回环访问路径做了安全加固,.deepseek 状态写入迁移和 Windows 状态子目录校验也一并修复了。
codewhale update # 已安装用户(推荐)
npm install -g codewhale
cargo install codewhale-cli codewhale-tui --locked
docker pull ghcr.io/hmbown/codewhale:latest
完整更新日志:https://github.com/Hmbown/CodeWhale/releases/tag/v0.8.63
📢 关注我,获取最新开源更新日志和开发者工具动态。
#CodeWhale #版本更新 #AI写代码的小任 #LLM更新报告
都不是大改架构的版本,但每一条都在把 agent 从"能跑"推向"好用"。

• GLM-5.2 成为 Z.AI 默认直达模型:之前走 Z.AI provider 还要选模型,现在 z-ai 路由默认指向 GLM-5.2,跟智谱新一代模型对齐。对国内用户来说,这是开箱即用的升级——不用配置任何东西就能用上 GLM 最新能力。
• GLM-5-Turbo 注册为正式模型,作为 explore 类 sub-agent 的快速兄弟:这不是简单的"多加一个模型",而是一种架构姿态——GLM-5-Turbo 被明确视为更快的探索性子 agent,任务类型决定模型选择。这比单纯提供一个模型选择器聪明得多:CodeWhale 在帮你做模型路由决策,而不是把选择权丢给你。Agent 框架发展到这个阶段,真正的竞争壁垒不是模型数量,而是模型路由的智能程度。
• #3102 引入了一等公民的 request_user_input 工具:当 agent 遇到模糊指令时,不再绕圈子或者直接猜测一个方向走下去,而是弹出一个模态框问你"我该怎么做?"。这个变化把 agent 交互从"你说它做"的单向模式,变成了真正的对话。虽然只是一个 tool,但在交互语义上是质变——之前 agent 面对歧义只有两条路:猜(然后做错)或者沉默(然后用户以为它在思考其实它卡住了)。现在有了第三条路。用过的开发者应该很快会意识到,这种模式比"在提示词里写'不确定时请向我确认'"可靠得多,因为它不依赖模型的自我认知。
这一组更新让人感觉 CodeWhale 开始认真对待"agent 安全"了。
• #3296 CodeWhale-only skill 发现门控:Skill 现在有了命名空间归属——可以标记哪些 skill 只允许 CodeWhale 调用,其他 agent 框架拿不到。这看起来像是一个小权限开关,但背后的意图是大的:CodeWhale 在把自己的 skill 生态做成一个受管的命名空间,而不是谁都能读的杂物堆。
• #3295 Permission/Ask 运行时规则:Agent 在执行敏感操作前可以配置"需要询问用户"的运行时规则。类似手机 app 的权限弹窗,但跑在 agent 的工具调用链路里。之前这类控制完全靠 prompt 约束("你可以直接执行命令"),现在有了运行时强制。Agent 框架从信任本位走向验证本位,是个必然的方向。
• 无进展工具循环检测:Agent 卡在工具调用循环里空转,是每个深度用户都遇到过的事。以前只能手动掐断或者等模型自己意识到错了——现在系统层面有了兜底:当 agent 反复调用工具但没有产生实质性进展时,guardrail 会介入。这类保护机制在 changelog 里不耀眼,但在日常使用中你会频繁感谢它的存在。代码写到一半,agent 突然开始反复读同一个文件——这种事终于有系统级的上限了。
• Sub-agent completion draining 和嵌套溯源:之前 sub-agent 任务完成后,它的状态在 parent 视角里是突然消失的。现在有了 completion draining——子 agent 的任务输出会被完整排空,parent 能看到每一步发生了什么。"嵌套溯源"则意味着一个深入三层的 agent 调用链,每一层都保留了出处。这对调试复杂 agent 流程来说是刚需,之前只能靠猜。
• Plan 确认清单可见性提升:Plan mode 之前的确认清单藏得太深,用户经常不清楚 sub-agent 规划了什么、确认了没有。现在这个清单在界面中更明显了。听起来是个微不足道的 UI 调整,但 Plan mode 的核心价值就在于"执行前你先看看计划对不对",清单不可见的话,这个模式等于不存在。
• Transcript 超链接 via OSC 8(#3029):终端中的交互记录现在支持 OSC 8 转义序列超链接。这意味着你在 terminal 里看到的输出链接可以真正点击了,而不是一堆需要手动复制粘贴的 URL。终端体验的细节——但这对每天在终端里看 agent 输出的开发者来说,少了一次"复制-粘贴-回车"的动作,久而久之就是节省的时间。
• 基础提示词和 Delegate Skill 指导更新:Sub-agent 的 prompt 做了针对并行探索场景的优化,delegate skill 引导信息也更明确。说明团队意识到"多 agent 并行"不仅仅是架构问题,提示词的引导策略一样重要。
• Config 注释保留:之前 CodeWhale 写 config 文件时会吃掉所有注释,现在不会了。如果你习惯在配置文件里写中文注释说明每项配置的用途,这个修复会直接改善你的体验——没有什么比升级后 config 注释全被清空更让人恼火的了。
• Poppler pdftotext 检测修复(#1667):之前检测 pdftotext 是否存在时用了 --version,但 poppler 的实现只接受 -v。结果是你的系统明明装了 poppler,CodeWhale 却告诉你没装。现在用 pdftotext -v 检测了——这种 5 分钟能修好的 bug,但卡过的人知道有多烦:一个 PDF 解析功能,第一反应是装包而不是检查版本号写法。
• Agent synthesis guardrails 上线:除了无进展循环检测,还有 synthesis 阶段的输出保护,防止 agent 在综合多个来源时产生不一致的结论。这层保护在复杂多步推理场景中开始有用。
回看 v0.8.62,它没有 v0.8.61 那种架构重构的冲击力,也没有 v0.8.59 的功能密集度。它更像是一个"成熟的标志"——当项目开始关心 agent 问问题的方式、关心权限怎么做、关心模型路由策略怎样更智能,说明它的发展重心已经从"能不能用"转向了"好不好用"。
#已安装用户(推荐,走 GitHub Release 二进制)
codewhale update
#npm
npm install -g codewhale
#Cargo
cargo install codewhale-cli --locked
cargo install codewhale-tui --locked
#Docker
docker pull ghcr.io/hmbown/codewhale:latest
#Nix
nix run github:Hmbown/CodeWhale
#Scoop
scoop install codewhale
#Homebrew
brew tap Hmbown/deepseek-tui && brew install deepseek-tui
完整更新日志:GitHub Release
📢 关注我,获取最新开源更新日志和开发者工具动态。
#CodeWhale #版本更新 #AI写代码的小任 #LLM更新报告
v0.8.61 的核心目标就是干掉这个 blocker。结果不止修了卡死,顺带把 sub-agent 的运行时架构整体重构了——不夸张地说,这是 CodeWhale 进入"多 agent 调度"时代的第一个版本。

如果你用过多个 agent 并行工作的场景(同时发几个探索任务或让一个 agent 验证另一个 agent 的输出),你应该遇到过这些问题:
这些问题的根因:sub-agent 的运行时就是"从主进程 fork 出去,共享一切"的设计。v0.8.61 用 WhaleFlow 运行时框架彻底改了这一点。
WhaleFlow 不是 UI 层的改动,而是 5 个新运行时服务的集合(#3217, #3071, #3072, #3073):
角色画像(Worker Profile):每个 sub-agent 启动时带一份完整的运行时描述——角色(scout / synthesis / verifier)、权限范围、shell 能力、可用工具集、模型路由。子 agent 派生出来的后代 agent,权限只能收缩不能扩张(non-escalating child derivation)。这意味着你可以创建一个只读的 verifier agent,它永远不会打开 shell 执行命令。
跨 Provider 模型注册表:之前模型信息分散在各个 provider 适配器里。现在有一个中心注册表,离线也能查询模型能力和上下文窗口大小。新 provider 只需注册自己的模型规格,路由系统就知道这个模型能做什么、成本多少。
Provider 就绪检测 + 上下文预算 + 资源遥测:三个配套服务,确保 sub-agent 启动前就知道目标 provider 是否可达、预算够不够、当前资源状态如何。如果 provider 不可用,agent 不会傻等着超时,而是直接报"provider 不可用"然后等调度器决定下一个路由。
这是 #2027 和 #1768 合并的结果。sub-agent 现在可以按角色指定模型和 provider:
# 配置示意 - 非实际文件名
[subagents.roles]
scout = { model = "gpt-4o-mini", provider = "openai" }
verifier = { model = "claude-sonnet-4", provider = "anthropic" }
synthesis = { model = "deepseek-chat", provider = "deepseek" }
explore 类任务被文档化为「推荐走快速模型、关闭 thinking」的场景,synthesis 类任务则默认走更强模型。Plan mode 被锁定为只读(没有 shell 工具),确保规划阶段的 agent 不会意外执行命令(#3218)。
之前 sub-agent 的目标只在单轮生效——agent 完成一个任务后就忘了上下文。v0.8.61 引入了跨轮次的持久目标跟踪(#3215, #891, #1976, #2058, #2029),带 token/时间计量和一个 verifier-as-judge 门控机制:sub-agent 报告"目标达成"之后,系统会用一个独立的 verifier agent 验证是否真的完成了,验证通过才算真正的 complete。
#3227 修复了最隐蔽的 bug:provider 和 model 状态现在是 session-local 的。两个 sub-agent 各跑各的 provider session,一个 agent 触发 context_length_exceeded 不再影响另一个的运行。系统还会预检上下文窗口,超过限制直接拦下来而不再循环重试(#3204)。
file_search、grep_files、list_dir 这些同步工具之前不能取消——你发起一个大范围文件搜索,想在中途取消,没用。它们会一直跑完。v0.8.61 让这些工具变成了可取消的(#1791),不再阻塞 turn 的关闭。
大架构变动之外,这次还修了一堆日常使用中很烦人的问题:
Composer 大修:Ctrl+S 发送替代了之前的模糊键绑定(#3203, #3224),底部加了一个 busy/idle 指示器让你知道当前输入状态(#2982),CJK 文本终于正常换行了不再挤成一团(#963),sidebar 的 stop 按钮变可点击(#3028),还加了实时的 token 吞吐量显示(#3190)。tui 里自动过期的 sub-agent 卡片现在会自己消失而不是一直占着位置(#3078)。
Provider 相关:Provider 列表改为字母排序,不再把 DeepSeek 硬编码在第一位(#3076)。Novita 用户之前 chat completions 直接 404,因为没有对齐到 /openai/v1 端点,现在已经默认正确路由(#3255)。Kimi/Moonshot 的空函数参数问题也修了——不传参数时自动补一个根对象 schema(#3265)。
更新和安装:自更新系统现在会重试瞬时的 GitHub 元数据/资产下载失败,如果 REST API 不行,会自动 fallback 到公开的 releases/latest 重定向(#3232)。Linux glibc 在更新路径中加了预检提示(#3207, #1067)。之前 deepseek update 还会尝试唤起不存在的二进制,现在统一转到 codewhale(#2960, #2924, #2917)。
低频但重要的体验修复:MCP stdio 代理的启动提示不再阻塞非交互式运行(#2475),后台 shell 恢复失败和 sub-agent API 超时都做了可配置处理(#1737, #1786, #1806)。数字键 1-8 现在正常输入文字了,热栏需要用 Alt+1-Alt+8 触发(#3243)。粘贴大量文本后在 composer 中仍然可编辑,提交时自动以文件备份追加给模型存取(#3267)。
# 推荐(已有安装)
codewhale update
# 首次安装
npm install -g codewhale
# 或从源码编译
cargo install codewhale-cli --locked
cargo install codewhale-tui --locked
⚠️ npm 包与 GitHub Release 可能有短暂延迟,codewhale update 直接走 GitHub Release 二进制,不受 npm 滞后影响。
完整更新日志:GitHub Release
📢 关注我,获取最新开源更新日志和开发者工具动态。
#CodeWhale #WhaleFlow #多Agent协作 #AI开发工具 #SubAgent调度

CodeWhale 的 codewhale fleet run 之前一直跑在本地模拟解释器上——听起来像真的在调度,其实只是在本机模拟 worker 行为。v0.8.60 切到了真实的 headless worker:通过 codewhale exec --output-format stream-json 拉起真正的无头进程,worker 结束时释放 lease,队列里的后续 fleet 任务继续跑。
简单说,之前 fleet 跑的是一个"假"的分布式,现在跑的是真的。这个 cutover 由 #3154/#3096 两个 PR 共同完成,涉及了 lease 管理、worker 生命周期、stream-json 输出格式的多层改动。不是那种一改就完的配置开关——是真正的架构迁移。
CodeWhale 想做的那个「多 agent 并行作业」的故事,从这个版本开始才真正可以信任。
代码审查场景里最常见的模式:同时 grep 几个目录查问题、同时 cat 几个配置确认差异、同时 ls 检查文件存在——这些操作根本不改系统状态,但之前的 shell 引擎一律串行处理。
v0.8.60 加入了只读 shell 并行的能力(#2983):引擎自动识别 bash/sh/zsh -c 包装的只读命令,让它们并发执行。而写操作、stdin、后台 TTY 任务、管道、重定向、命令替换、以及 tail -f 这种 follow 模式,依然保持串行。
这个选择很务实:不是一刀切说「全部并行」或者「全部串行」——是只对可安全并发执行的路径开绿灯。代价不大,但用 CodeWhale 做代码审查的人感受会很直接:以前堵在等 grep 返回的四五个 shell,现在同时跑完。
v0.8.60 引入了 GLM-5.2(智谱新一代),同时新增三组 first-party provider 路线:
step-3.7-flash 路线加入,阶跃的模型在代码生成评测里一直属于中上梯队非 DeepSeek 的模型生态越来越完整了。CodeWhale 从 DeepSeek-TUI 改名为 CodeWhale 时,意图就是做一个模型无关的 agent 工具。现在 Z.ai、StepFun、MiniMax 都上了自有路线,这个方向的落地比预期快。
Declarative JS/TS WhaleFlow 创作(#3097):WhaleFlow 现在接受编译时 workflow({...}) 的 JS/TS 声明形式,只做静态校验,不执行用户脚本。对用 JS 写 agent workflow 的人来说,写起来更像写代码而非配 YAML。
Slash 菜单 Ctrl+P/Ctrl+N(#3196): slash 命令菜单的键盘导航,不用退出菜单去调出全局文件选择器了。日常高频操作,反而很少人注意到这个之前竟然是缺失的。
Sub-agent eval 不再默认阻塞: agent_eval 之前会等子进程的 provider 调用完成才返回结果。现在返回当前快照,后续输入流式跟进。传 block:true 还是可以等。不阻塞是合理的默认——等你发现问题了再去细看详情就行,不需要每次都等子 agent 跑完。
Z.ai GLM thinking trace 修复: Z.ai 的思考痕迹之前没走通——reasoning_content 被丢弃、GLM 推理流不被识别。现在对齐了 Z.ai 的 thinking 接口格式,ultracode 也作为最大努力别名接入。
Claude skill 存档兼容性(#2743): /skill install 现在能正确处理 Claude 风格的单技能文件夹存档,同时明确拒绝多技能 Claude 插件包,而不是静默只装第一个。
升级:
# 已安装用户 — 直走 GitHub Release 二进制,最快
codewhale update
# 首次安装(npm wrapper 自动下载双二进制)
npm install -g codewhale
# Cargo 安装(Linux/macOS)
cargo install codewhale-cli codewhale-tui --locked
完整更新日志:GitHub Release
📢 关注我,获取最新开源更新日志和开发者工具动态。
#CodeWhale #AgentFleet #开源工具 #AI编程

Moonshot/Kimi provider 现在默认指向 kimi-k2.7-code 模型,kimi/kimi-k2 别名都解析到这个模型。旧版 kimi-k2.6 仍可选,OpenRouter 上也加了 moonshotai/kimi-k2.7-code 注册行。
Kimi 在 coding 领域的持续发力——K2.7 Code 主打代码能力,对用 Moonshot 做编程的团队来说是个直接升级。
/voice、/voice-send、/voice-control 三个命令正式内置了。通过 sox/rec/arecord 录音,走当前 provider 的 chat-completions API 转写,插入到 composer 光标位置。还配了 voice.toggle hotbar 动作。
语音命令的 help 和 status 文本也已经本地化到 7 种语言。对国内用户来说,在终端里用中文语音输入指令不再是 demo 级功能。
GUI 客户端现在可以调 POST /v1/threads/{id}/undo、/patch-undo、/retry 来 fork、回滚或重跑最近的对话轮次。POST /v1/snapshots/{id}/restore 可以按 ID 恢复工作区快照。
对桌面端用户来说,误操作后回退不再靠手翻历史——多了程序化的 undo 能力。
Hugging Face Inference Providers 现在有了一等公民的配置、环境变量、文档和注册中心覆盖。支持 huggingface/hugging-face/hugging_face/hf 四个别名和 HUGGINGFACE_*/HF_* 环境变量回退。
如果你在 HF 上跑自建模型,现在配置起来跟其他 provider 一样简单了。
简洁 Verbosity 模式(#3052):CLI 非交互模式默认精简 prompt/output,直到被 config/env/--verbosity 覆盖。TUI 不受影响。
Provider 回退链(#2773):配置 fallback_providers 后,主 provider 挂了自动走 fallback,TUI 可报告/切换/重置 fallback 状态,footer 可见。
Provider-wait 可观测性(#3095):footer 卡住原因现在显示具体 provider/model、空闲秒数、stream budget,fanout 计划是否还在 0 running。
交互式 fanout 门控(#3095):sub-agent 子任务排队在可配置的信号量后([subagents] interactive_max_launch,默认 4),等待时显示原因。
SSE 无空格兼容(#3152):某些 provider 发 data:{...}(无空格)之前被拒绝——现在 data: {...} 和 data:{...} 都接受。
升级:
codewhale update
npm install -g codewhale
⚠️ npm 包可能有短暂延迟,codewhale update 直接走 GitHub Release 二进制。
完整更新日志:GitHub Release
v0.8.59 是 CodeWhale 改名以来功能密度最高的一个版本——语音、HF provider、线程回退、Kimi 新模型,每条线都不浅。
📢 关注我,获取最新开源更新日志和开发者工具动态。
#CodeWhale #Kimi #语音助手 #HuggingFace #版本更新
v0.8.58 把这几根骨头一次性掰正了。
