OpenClaw 没有意图识别,为什么还有很多人用它?
OpenClaw 没有意图识别,为什么还有很多人用它?
一个关于 Agent 产品设计的深度讨论
01. 先说结论
昨天和同事聊了一个很有价值的问题:OpenClaw 没有复杂的意图识别层,为什么还有很多人用它?
答案很简单:
02. OpenClaw 没有意图识别,它做了什么替代?
轻量的安全过滤,而非语义理解
OpenClaw 在 LLM 执行之前,只做了三层安全过滤:
第一层:Mention 检测
正则匹配机器人名字/emoji,决定是否触发响应。
用户说 "默默,在吗?" → 匹配到名字 "默默" → 触发 AI用户说 "今天天气不错" → 没有匹配 → 不触发 AI
第二层:dmPolicy 配置
安全准入控制,三种模式:
|
|
|
|---|---|
pairing |
|
allowlist |
|
open |
|
第三层:Per-Agent 工具隔离
每个 Agent 只能看到被允许的工具,LLM 不会从一堆无关工具里选错。
Agent A 的工具:[日历, 邮件, 文件]Agent B 的工具:[代码, Git, CI/CD]
真正的理解发生在 LLM 层
当消息通过上述三层过滤后,OpenClaw 把以下内容全部传给 LLM:
用户消息 + SOUL.md + USER.md + MEMORY.md + SessionHistory + ToolsManifest ↓LLM 自己决定:调用哪个工具?用什么参数?
03. 工具规模化问题:几百、几千个工具怎么办?
这是必须要回答的问题。
矛盾所在
如果把 1000 个工具的 Schema + 描述全部传给 LLM:
OpenClaw 的解法:多层过滤
用户消息 ↓Gateway 入口层 — Mention + dmPolicy + 命令检测 ↓Session + Agent 层 ↓Per-AgentAllowlist — 每个 Agent 只能看到被允许的工具 ↓ToolPolicy — Gateway 全局 + Profile 基线 + Sandbox 隔离 ↓LLM 看到的是:经过过滤后的工具子集(通常 20-50 个)
业界其他解法(供参考)
如果 Per-Agent allowlist 依然不够,业界还有:
用户消息 → 向量数据库检索 top-K 相关工具 → 只把这 K 个工具传给 LLM
用户消息 → DispatcherAgent(理解意图,粗分类) → 路由到 SpecialistAgent(执行具体工具)
04. 为什么很多人喜欢用 OpenClaw?
原因一:安装即用,零配置
curl -fsSL https://openclaw.bot/install.sh | bashopenclaw onboard
两步安装,自动引导配置。不需要写一行代码,不需要理解 Agent 概念,就能跑起来。
对比其他平台:写 Prompt、调参数、配工具、上线——没有两三天搞不定。
原因二:Workspace 文件设计很聪明
SOUL.md — AI 的人设(我是谁,我要什么)USER.md — 用户信息(你是谁,你的偏好)MEMORY.md — 跨会话的长期记忆
这三个文件解决了 Agent 的核心问题:
原因三:多 Channel 接入非常方便
飞书/Telegram/Discord/WhatsApp……接一个需要折腾半天。
OpenClaw 的做法是:扫码授权,自动配置。
openclaw plugins install @openclaw/feishu→ 终端弹出二维码→ 飞书扫码→ 自动完成所有配置
原因四:多 Agent 隔离,场景分离
defaultAgent — 日常助手coding Agent — 写代码专用analyst Agent — 数据分析专用
每个 Agent 有独立的 workspace、独立的工具、独立的记忆。不用担心里程碑和代码任务互相干扰。
原因五:完全开源,可定制
代码开源,可以自己改。可以写插件,可以加 Skill,可以接入自己的工具。
05. 为什么说「不做意图识别」是它的优点?
因为它本来就不需要。
个人助手的场景,和企业场景完全不同:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
极低 |
|
|
|
|
|
|
|
|
OpenClaw 把「理解」这件事完全交给 LLM,在个人场景里是完全合理的工程权衡。
06. 企业 Agent 怎么考虑?
如果要做一个企业级 Agent,需要额外考虑这些问题:
问题一:精准意图识别
需要在意图分类层加置信度校验,低于阈值时主动追问。
问题二:答案的可靠性
问题三:费用控制
日均万级调用不能每条都走 LLM。需要多级缓存 + 简单查询走规则。
核心思路
把「理解」和「执行」解耦个人 Agent:LLM 是大脑,什么都能做企业 Agent:LLM 是执行器,理解靠上游,LLM 只负责生成和调用
07. 一句话总结
企业级应用?有另外的设计思路,但那不是 OpenClaw 解决的问题。
夜雨聆风