每日精选 OpenClaw 社区最重要的功能更新和 Bug 修复,带你深入理解开源 AI Agent 框架的演进。
📊 今日概览
| 指标 | 数值 |
|---|---|
| Merged PRs | 58 |
| 主要贡献者 | vincentkoc, obviyus, steipete, altaywtf, Takhoffman |
| 活跃模块 | agents, gateway, telegram, browser, cli |
🚀 Top 3 Features
1. Brave LLM-Context 搜索模式 [#39906]
PR: feat(tools): add Brave llm-context mode for web_search
作者: @steipete | 规模: M (+438/-7)
背景:Brave Search API 新增了专为 LLM 优化的 /res/v1/llm/context 端点,返回结构化上下文而非原始搜索结果。
新功能:
- 新增
tools.web.search.brave.mode配置项 - 支持
web(默认)和llm-context两种模式 llm-context模式返回更适合 Agent 消费的结构化内容
配置示例:
tools:
web:
search:
brave:
mode: llm-context # 启用 LLM 优化模式
核心改动:
// llm-context 模式使用不同的 API 端点
const endpoint = mode === 'llm-context'
? '/res/v1/llm/context'
: '/res/v1/web/search';
影响:Agent 的搜索结果质量显著提升,减少了需要额外处理的冗余信息。
2. TUI 工作区自动推断 [#39591]
PR: feat(tui): infer workspace agent when launching TUI
作者: @arceus77-7 | 规模: M (+231/-3)
背景:多 Agent 场景下,用户需要手动指定 --session agent:xxx 才能使用对应 Agent。
新功能:
- 在 Agent 工作区目录内启动
openclaw tui时自动推断 Agent - 支持最长路径前缀匹配(精确到子目录)
- 显式
--session agent:<id>参数仍然优先
使用示例:
cd ~/.openclaw/workspace-ops
openclaw tui # 自动使用 ops agent
影响:多 Agent 用户的日常工作流更加流畅。
3. 可配置的语音静默超时 [#39607]
PR: feat: add configurable silence timeout
作者: @danodoesdesign | 规模: M (+198/-25)
背景:Talk Mode 的静默检测超时是硬编码的(macOS 默认 0.7s),不同用户的语速和停顿习惯差异很大。
新功能:
- 新增
talk.silenceTimeoutMs配置项 - 支持 macOS、iOS、Android 全平台
- 可通过 Dashboard 或配置文件调整
配置示例:
talk:
silenceTimeoutMs: 1500 # 1.5 秒后才结束录音
影响:语速较慢或需要思考停顿的用户不再被频繁打断。
🐛 重要 Bugfix
1. macOS Gateway launchd 重启崩溃 [#39763]
PR: fix(darwin): remove self-kickstart from launchd gateway restart
作者: @daymade | 规模: XS (+20/-17)
问题:macOS 用户执行配置变更或插件安装后,Gateway 重启失败,LaunchAgent 被永久卸载。
根因:launchctl kickstart -k 从服务内部调用时,与 launchd 的异步 bootout 状态机产生竞态。2 秒超时过期后,服务进入 EIO 状态。
修复:
// Darwin/launchd 环境下跳过 self-kickstart
// 依赖 KeepAlive=true + exitProcess(0) 实现重启
if (isDarwin && isLaunchd) {
exitProcess(0); // launchd 会在 ~1s 内自动重启
}
影响:macOS 用户的 Gateway 重启恢复稳定。
2. Perplexity OpenRouter 兼容性恢复 [#39937]
PR: fix(web-search): restore OpenRouter compatibility for Perplexity
作者: @obviyus | 规模: L (+631/-81)
问题:v2026.3.x 移除了 OpenRouter 代理的 Perplexity 搜索支持,使用 OPENROUTER_API_KEY 或 sk-or-... 的用户无法搜索。
修复:
- 恢复 OpenRouter auth 检测
- 恢复 OpenRouter 兼容路径的 chat-completions 路由
- 直接 Perplexity API key 仍使用原生 Search API
// 根据 API key 前缀判断路由
const isOpenRouterKey = apiKey?.startsWith('sk-or-');
const endpoint = isOpenRouterKey
? 'https://openrouter.ai/api/v1/chat/completions'
: 'https://api.perplexity.ai/search';
影响:OpenRouter 用户的 Perplexity 搜索恢复正常。
3. Zalo Provider 生命周期循环重启 [#39892]
PR: Zalo: fix provider lifecycle restarts
作者: @darkamenosa | 规模: L (+590/-63)
问题:Zalo channel 启动后立即返回 { stop } 对象,导致 Gateway 在死循环中不断重启 provider。
根因:monitorZaloProvider 返回 { stop } 而不是阻塞到 abort signal。
修复:
// 改为阻塞等待
export async function monitorZaloProvider(...): Promise<void> {
try {
await waitForAbort(abortSignal);
} finally {
log.info('Zalo provider stopped');
}
}
影响:Zalo 用户的 channel 不再刷日志和消耗 API 配额。
4. 多 Agent 工作区路径解析错误 [#39875]
PR: fix(hooks): use resolveAgentIdFromSessionKey in runBeforeReset
作者: @rbutera | 规模: M (+192/-16)
问题:多 Agent 配置下,/new 和 /reset 将 session-memory 写入错误的工作区。
根因:"agent:navi:main".split(":")[0] 返回 "agent" 而不是 "navi"。
修复:
// 使用专用解析函数
const agentId = resolveAgentIdFromSessionKey(params.sessionKey);
// "agent:navi:main" → "navi"
影响:多 Agent 用户的 session 记忆文件现在写入正确的工作区。
5. kimi-coding 多轮对话崩溃 [#39841]
PR: fix(transcript-policy): don't preserve thinking signatures for kimi-coding
作者: @VarunChopra11 | 规模: XS (+12/-1)
问题:使用 kimi-coding/k2p5 模型时,第二轮对话触发 JSON 解析错误导致 session 终止。
根因:kimi-coding 使用 modelApi: "anthropic-messages" 但不支持 thinkingSignature 回传。
修复:
const preserveSignatures = isAnthropic && provider !== "kimi-coding";
影响:kimi-coding 用户的多轮对话恢复正常。
🔧 其他值得关注
| PR | 标题 | 影响 |
|---|---|---|
| #39712 | CLI --version 显示 commit hash | DX 改进 |
| #39660 | 移除 Android Play 受限权限 | 应用商店合规 |
| #39449 | Podman SELinux :Z 挂载选项 | Fedora/RHEL 修复 |
| #39414 | Dashboard 保留 Telegram sender 标签 | UX 改进 |
| #39364 | Browser relay 绑定地址可配置 | WSL2 支持 |
| #39355 | Gateway 停止/重启非托管进程 | 容器部署 |
| #39332 | Ollama 压缩/摘要注册自定义 API | Ollama 修复 |
| #38753 | 压缩模型可配置 | 新 Feature |
| #31085 | 支持 WebSocket CDP URL | Browser 增强 |
📈 趋势观察
-
平台兼容性修复潮:macOS launchd、WSL2、Podman SELinux、容器化 Gateway——跨平台支持进入精细打磨阶段
-
搜索能力升级:Brave LLM-context 模式 + Perplexity OpenRouter 恢复——web_search 工具的可用性大幅提升
-
多 Agent 架构成熟:工作区自动推断、session key 解析修复——多 Agent 场景的边界情况正在被逐一解决
-
移动端应用商店冲刺:Android 移除受限权限、iOS 资产准备——正式上架进入倒计时
-
安全加固持续:gateway auth 硬化、config 加载失败即关闭——安全优先原则贯穿各模块
📚 往期回顾:2026-03-07
🔔 关注「赛博养成日志」,每日获取 OpenClaw 开发动态
数据来源:GitHub openclaw/openclaw 仓库
统计时间:2026-03-08 00:00 - 23:59 UTC