你想让 AI 查看一份小店配送规则,再核对订单并整理成结果文件。聊天机器人可以根据你粘贴的文字回答;Agent 还能在允许的范围里读取文件、调用工具,再把处理结果写回工作区。我们用 OpenClaw 和本机 Qwen 做了这个小例子:它先把系统当天误当成下单日期,给出错误判断;明确限制工具和补充规则后,才按资料得出正确结果。这个过程说明,Agent 会行动,也需要你检查它的依据和权限。

先分清聊天和 Agent

聊天机器人通常根据当前对话生成回答。它也可以接入工具,所以“能不能调用工具”不是两者唯一的区别。

OpenClaw 的 Agent 会围绕一次任务运行一个循环:整理当前上下文,让模型决定下一步,需要时执行工具,再把工具结果交回模型,直到生成回复或任务结束。官方执行循环把这个过程描述为接收任务、组装上下文、模型推理、工具执行和保存会话。

你要做的事 直接聊天通常够用 Agent 更合适
改写一段已经贴进对话的文字 ✓
从工作区文件查找一条规则 需要你自己打开并粘贴 ✓ 可在权限允许时读取
按几条规则核对订单并写一份结果 需要你逐步操作 ✓ 可连续读取、判断和写文件

是否让 Agent 写文件、运行命令或发消息,取决于配置里开放了哪些工具和权限。模型说“我会安全操作”不等于权限已经被限制。工具目录列出的工具仍要经过工具策略、权限模式和可用插件的筛选。

准备好本机模型和练习资料

本次使用 OpenClaw 2026.10.1、Ollama 0.35.1 和 Qwen3.8-27B。模型文件约 16GB;在 M1 Max、64GB 内存的电脑上,单次任务实测约 1.5–2 分钟。实际速度会受电脑、模型和上下文长度影响。

准备项 需要什么
电脑 macOS、Windows 或 Linux;本例在 M1 Max、64GB 内存上运行
Node.js OpenClaw 当前要求 Node.js 24.16+ 或 26.1+;如果用 nvm 切换到受支持的版本
模型 已安装并能在本机 Ollama 运行的工具调用模型;本例使用 Qwen3.8-27B
资料 练习包里的虚构店铺规则和一行订单,不含真实顾客数据
费用 软件免费;下载模型需要网络和磁盘,推理占用本机资源

如果还没安装,可以先看OpenClaw 本地部署教程和Ollama 安装教程。OpenClaw 自动发现 Ollama 模型时,会检查模型是否支持工具调用和足够的上下文;具体以你的向导结果为准。Ollama 官方接入说明

给练习单独开一个受限配置

首次试用时,别把 Agent 直接接到微信、邮件或真实订单。先创建一个独立 profile 和空工作区,只接本机 Ollama,不装后台服务,也不配置聊天渠道。

openclaw --profile shop-demo onboard \
  --non-interactive --accept-risk --auth-choice ollama \
  --custom-base-url http://127.0.0.1:11434 \
  --custom-model-id qwen3.8-27b:latest \
  --workspace "$HOME/openclaw-shop-demo" \
  --skip-daemon --skip-channels --skip-hooks --skip-skills \
  --skip-search --skip-ui --skip-health --skip-bootstrap

再把这个练习 profile 的可用工具限制为文件读取和写入,并把文件工具限制在工作区内:

openclaw --profile shop-demo config set tools.allow '["read","write"]'
openclaw --profile shop-demo config set tools.deny '["apply_patch","group:runtime","group:web","group:messaging","browser"]'
openclaw --profile shop-demo config set tools.fs.workspaceOnly true

write 仍能改动工作区里的文件,所以这里只放练习资料,不要放配置、密钥或真实订单。OpenClaw 对兼容模型可能把 write 扩展为 apply_patch,因此示例额外拒绝了 apply_patch、命令执行、联网和消息工具。想让 Agent 只回答、不写文件时,把 write 从允许列表去掉。OpenClaw 的权限说明也提醒,工具白名单和工作区范围是不同的限制,敏感资料要使用更窄的目录。权限说明

解压练习包,把 shop-policy.md 和 order.csv 放进 $HOME/openclaw-shop-demo。然后发起一次本机任务:

openclaw --profile shop-demo agent --local \
  --session-id shop-audit \
  --message '读取 shop-policy.md 和 order.csv。只依据文件里明确写出的事实,判断配送范围、配送费和是否能判断当日营业;把依据和结果写入 delivery-result.md。缺少日期时不要猜。'

Agent 需要读取两份文件、比较订单金额和配送规则,再创建结果文件。检查它有没有把工作区外的信息当成订单事实,也要打开结果文件核对金额和日期。

我们实测时发现的错误

第一次让 Agent 自动生成订单审核报告时,订单文件只有商品金额和写字楼距离,没有下单日期。模型却把运行当天的日期带进结果,称当天是周日,因此商店不营业。这个判断不是订单资料给出的,不能拿来处理真实订单。

随后我们把工具范围收紧为 read、write,并限定文件只能在独立工作区里读写。再次运行时,模型调用了两次读取、一次写入,约 2 分钟完成。它正确判断订单距离 2 公里,符合 3 公里配送范围;26 元未满 30 元,配送费为 5 元;由于没有下单日期,无法判断当日是否营业。

这才是 Agent 与普通问答最实际的差别:它能把任务拆成几步并操作文件;同时,一步错用上下文就可能改变结论。先用虚构资料试跑,逐项核对输出,再考虑接入真实流程。

记忆不是模型脑子里的秘密

OpenClaw 的记忆可以存进工作区里的 Markdown 文件,再由记忆工具按需检索。官方记忆说明列出了 MEMORY.md、每日记录等文件。没有写进文件、没有被当前配置加载或检索到的内容,不要假设 Agent 一定记得。

本次练习验证了工具调用和文件操作,没有测试跨会话记忆、定时任务、联网搜索或消息渠道。想了解安全配置,可以继续看OpenClaw 安全须知。

常见问题

聊天机器人也能调用工具,怎么区分?

它们没有绝对的产品边界。你可以把 Agent 理解为带有任务循环、上下文管理和工具权限的运行方式。是否可靠,仍要看模型、工具实现、权限和验证步骤。

为什么不能只靠提示词限制操作?

提示词表达了任务要求,工具策略才决定工具是否可用。在没有收紧工具白名单的试跑里,模型曾调用 exec;后来才把允许工具限制为 read、write。不要把“不要运行命令”当成系统层面的禁止。

长期记忆会自动记住所有聊天吗?

不会。OpenClaw 的记忆基于工作区文件和索引;哪些内容被保存、何时检索,取决于当前配置。先确认保存位置和清理方式,再放入长期资料。

工具清单

工具 用途 入口
OpenClaw 自托管 Agent 和本机控制台 官方安装文档
Ollama 在本机运行语言模型 Ollama 官网
Qwen 本例使用的本地模型 Ollama 模型页