🗓️ OpenClaw 开发日报 | 2026-03-08

0 阅读5分钟

每日精选 OpenClaw 社区最重要的功能更新和 Bug 修复,带你深入理解开源 AI Agent 框架的演进。


📊 今日概览

指标数值
Merged PRs58
主要贡献者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_KEYsk-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标题影响
#39712CLI --version 显示 commit hashDX 改进
#39660移除 Android Play 受限权限应用商店合规
#39449Podman SELinux :Z 挂载选项Fedora/RHEL 修复
#39414Dashboard 保留 Telegram sender 标签UX 改进
#39364Browser relay 绑定地址可配置WSL2 支持
#39355Gateway 停止/重启非托管进程容器部署
#39332Ollama 压缩/摘要注册自定义 APIOllama 修复
#38753压缩模型可配置新 Feature
#31085支持 WebSocket CDP URLBrowser 增强

📈 趋势观察

  1. 平台兼容性修复潮:macOS launchd、WSL2、Podman SELinux、容器化 Gateway——跨平台支持进入精细打磨阶段

  2. 搜索能力升级:Brave LLM-context 模式 + Perplexity OpenRouter 恢复——web_search 工具的可用性大幅提升

  3. 多 Agent 架构成熟:工作区自动推断、session key 解析修复——多 Agent 场景的边界情况正在被逐一解决

  4. 移动端应用商店冲刺:Android 移除受限权限、iOS 资产准备——正式上架进入倒计时

  5. 安全加固持续:gateway auth 硬化、config 加载失败即关闭——安全优先原则贯穿各模块


📚 往期回顾2026-03-07

🔔 关注「赛博养成日志」,每日获取 OpenClaw 开发动态


数据来源:GitHub openclaw/openclaw 仓库
统计时间:2026-03-08 00:00 - 23:59 UTC