> 2026年5月,OpenClaw 迎来了多个重磅更新,从让记忆"活起来"的 Active Memory 插件,到企业级安全执行的 Auto Mode,再到存档和网络的安全加固——这一轮更新让 OpenClaw 从"好用的 AI 助手"正式迈向"可信赖的个人 AI 运行时"。本文聚焦这几个核心新功能,提供完整的配置指南和实战代码示例。
一、Active Memory:让 AI 记住真正重要的事
1.1 旧版的问题:静态记忆的尴尬
在 2026.4 之前,OpenClaw 的记忆机制是这样的:每次新会话启动时,Agent 读取 MEMORY.md 作为初始化上下文,然后就"静止"了——会话过程中产生的关键决策、教训、新知识,都无法自动沉淀到 MEMORY.md 中。
这带来一个现实问题:你必须手动告诉 AI 去更新 MEMORY.md,否则它每次重启都会忘记上次学到的东西。
1.2 Active Memory 工作原理
Active Memory(2026.4.10 引入,2026.4.12 完善)改变了这一点。它是一个基于向量检索的动态记忆层,核心思路是:
- 写时提取(On-write):每次会话结束后,Active Memory 自动分析本轮对话中的关键信息(决策、结论、教训),写入向量数据库。
- 读时召回(On-read):新会话启动时,根据当前对话上下文,语义检索相关的历史记忆,注入到 Agent 上下文。
简单说:你不用想着"保存记忆",AI 会自己判断什么是值得记住的,并主动召回。
1.3 配置 Active Memory
首先,确保 openclaw.yaml 中启用了 memory 插件:
openclaw.yaml
plugins:
memory:
driver: lance # 向量数据库驱动
dimension: 1536 # 嵌入维度(OpenAI text-embedding-3-small)
top_k: 5 # 召回条数
relevance_threshold: 0.7 # 最低相关度阈值
memory:
auto_index: true # 自动索引会话内容
index_on_write: true # 写时建立索引
corpus:
- memory/*.md # 监控目录
- sessions/**/* # 会话记录
1.4 实战:验证 Active Memory 效果
第一步:触发一次包含重要决策的对话
用户:帮我规划一下未来三个月学习 AI 编程的路径,目标是能独立开发一个 React + AI 的 Web 应用。
AI 的回复中会包含具体的学习路线和时间节点,这些内容在会话结束后会被 Active Memory 自动索引。
第二步:在新会话中测试召回
用户:我的 AI 学习目标是什么?
启用了 Active Memory 的 Agent 会自动从向量数据库中检索相关记忆,并给出类似回答:"根据之前的记录,你的目标是在三个月内学习 AI 编程,能够独立开发 React + AI 的 Web 应用..."
1.5 手动管理 Active Memory
有时候 AI 的自动提取不够精准,这时可以手动干预:
// 手动写入一条记忆
await ctx.tools.memory_search({
corpus: 'memory',
query: '王的学习目标和计划',
maxResults: 3,
});
// 手动删除一条错误记忆
await ctx.tools.memory_delete({
memory_id: 'mem_xxxxx',
});
你也可以直接编辑 MEMORY.md,Active Memory 会在下次索引周期(默认 5 分钟)自动同步。
1.6 Active Memory 维护
长期使用后,向量数据库会积累大量记录,需要定期清理:
查看当前记忆数量
openclaw memory stats
清理 30 天以上的低相关度记忆
openclaw memory prune --older-than 30d --min-relevance 0.5
导出记忆到文件备份
openclaw memory export --output /root/.openclaw/workspace/memory-backup.json
最佳实践:每月运行一次 memory prune,可以有效控制向量数据库体积,同时提升召回精度。
---
二、Auto Mode:企业级安全执行,让审批更智能
2.1 为什么需要 Auto Mode
在团队或企业场景中使用 OpenClaw,最头疼的问题是执行权限。默认情况下,OpenClaw 对所有 exec 操作都会暂停等待人工审批——这在个人使用场景下没问题,但在需要 AI 自动运行后台任务的场景下,每次执行都弹窗审批就成了瓶颈。
Auto Mode 就是来解决这个矛盾的:它通过策略引擎来判断命令的风险等级,低风险操作自动放行,高风险操作才触发审批。
2.2 Auto Mode 的三种策略
OpenClaw 官方的 Auto Mode 提供了三种安全级别:
| 策略 | 适用场景 | 特点 |
|------|---------|------|
| auto:deny | 高安全要求 | 所有 exec 都需要人工审批 |
| auto:policy | 企业标准 | 策略引擎判断,低风险自动放行 |
| auto:allow | 开发者/个人 | 所有命令自动执行(危险,仅测试用)|
2.3 配置 Auto Mode(policy 模式)
openclaw.yaml - Gateway 配置
gateway:
exec:
auto_mode: policy
policy_file: /root/.openclaw/workspace/policies/default.yaml
policies:
- name: default
rules:
# 允许读操作和查看命令
- match: "cat|head|tail|ls|ps|git status|git log"
action: allow
reason: "只读操作"
# 允许无害的网络请求
- match: "curl.*http|GET|POST.*localhost|wget"
action: allow
reason: "本地网络请求"
# 需要审批的操作
- match: "rm -rf|/etc|sudo|chmod 777|drop table"
action: approve
reason: "高风险操作,需要人工确认"
# 拒绝危险操作
- match: "fork bomb|shutdown|reboot|:(){:|:&};:"
action: deny
reason: "危险操作,自动拒绝"
2.4 审批工作流
当 AI 发起一个需要审批的命令时,OpenClaw 会:
1. 暂停执行,生成审批请求(含命令内容、匹配规则、风险说明)
2. 通知审批人(可通过 Telegram/邮件/webhook)
3. 等待审批(默认超时 5 分钟)
4. 执行或拒绝
你可以通过 webhook 集成到现有的 IT 流程中:
在 policy 中配置 webhook 通知
match: "approve.*"
action: approve
webhook:
url: https://your-it-system.com/api/approve
method: POST
headers:
Authorization: "Bearer YOUR_WEBHOOK_TOKEN"
body: |
{
"command": "{{command}}",
"user": "{{user}}",
"timestamp": "{{timestamp}}"
}2.5 查看审批记录
查看所有待审批请求
openclaw approvals list审批一个请求
openclaw approvals approve <request-id>拒绝一个请求
openclaw approvals deny <request-id>---
三、安全加固:2026年5月更新关键修复
2026年5月的更新重点修补了三个安全风险,值得所有用户关注:
3.1 存档文件 symlink 逃逸漏洞
风险:攻击者通过构造含 symlink 的 TAR/ZIP 文件,让 OpenClaw 在解压时覆盖系统文件。
修复版本:>= 2026.5.26
修复方式:所有存档解压现在通过临时目录原子操作完成,解压路径与原始存档完全隔离。
自检方法:
检查当前版本
openclaw --version如果 < 2026.5.26,建议立即升级
openclaw upgrade3.2 FTP 命令注入漏洞(CVE-2026-XXXX)
风险:FTP 处理程序中,文件名参数未正确转义,攻击者可通过 CRLF 序列注入任意 FTP 命令。
影响版本:4.9 ~ 2026.5.25
修复方式:所有 FTP 文件名参数现在经过标准化转义,不允许出现
\r\n序列。如果你的工作流涉及 FTP:
// 使用修复后的 FTP 插件 const ftp = require('@openclaw/plugins/ftp');// 安全文件名(自动转义)
const safeName = ftp.escapeFilename(userProvidedName);3.3 SSRF 链式攻击风险
风险:浏览器导航后,安全检查未重新执行,导致请求体和请求头在跨域重定向时被携带,可能导致 SSRF 链式攻击。
修复:跨域重定向时自动剥离请求体和敏感头。
---
四、快速上手:完整配置清单
以下是一个完整的
openclaw.yaml参考配置,整合了 Active Memory、Auto Mode 和安全设置:/root/.openclaw/workspace/openclaw.yaml── 基本信息 ──
app:
name: MyClaw
version: "2026.5.31"── Active Memory ──
plugins:
memory:
driver: lance
dimension: 1536
top_k: 5
relevance_threshold: 0.7
auto_index: true
index_on_write: truememory:
auto_index: true
corpus:
- memory/*.md
- sessions/**/*── Gateway 与执行安全 ──
gateway:
host: 0.0.0.0
port: 18789
exec:
auto_mode: policy
policy_file: /root/.openclaw/workspace/policies/default.yaml── 审批策略 ──
policies:
- name: default
rules:
- match: "cat|head|tail|ls|ps|git status|git log|grep|find"
action: allow
reason: "只读操作"
- match: "curl.*http|wget.*http|npm install|pip install"
action: allow
reason: "常见网络请求"
- match: "rm -rf /|sudo|:(){|:&}"
action: deny
reason: "危险操作"── 消息渠道 ──
channels:
telegram:
enabled: true
bot_token: "${TELEGRAM_BOT_TOKEN}"
chat_ids:
- "${PRIVATE_CHAT_ID}"---
五、版本升级指南
如果你的版本低于 2026.5.26,建议尽快升级:
查看当前版本
openclaw --version升级到最新版
openclaw upgrade验证安装完整性
openclaw doctor查看版本变更日志
openclaw changelog --since 2026.5.0升级后建议运行:
清理旧缓存并重建 Active Memory 索引
openclaw memory rebuild --force测试安全策略
openclaw policy test --dry-run --command "rm -rf /tmp/test"---
六、总结
本次更新的三个核心能力,各自解决一个关键痛点:
| 功能 | 解决什么问题 |
|------|------------|
| Active Memory | AI 记忆需要手动维护、跨会话无法召回 |
| Auto Mode (policy) | exec 命令要么全放行、要么全审批,无法按风险分级 |
| 安全修复 | 存档解压、FTP传输、重定向存在潜在攻击面 |这三个能力组合在一起,让 OpenClaw 在保持开源透明的同时,有了进入企业级场景的技术基础。如果你是在团队中推广 OpenClaw,Auto Mode 是说服 IT 部门的关键;如果你关心 AI 记忆的可用性,Active Memory 是最值得开启的功能。
---
*本文基于 OpenClaw 2026.5.31 版本编写,功能细节可能随版本迭代而变化,建议定期
openclaw upgrade保持最新。关注我的 CSDN 付费专栏「AI分享」,获取更多 AI 工具实战技巧。*
630

被折叠的 条评论
为什么被折叠?



