OpenClaw的5项安全措施
2025 年底,一个开源项目突然出现,以 GitHub 历史上最快的速度获得了星标。它的名字是 Clawdbot。它不仅是一个可以聊天的 AI,而且是一个可以实际操作计算机并完成任务的 AI 代理,震惊了科技界。
但道路绝非一帆风顺:短短两个月内,该公司经历了戏剧性的转折,包括三次更名、一场加密货币骗局、严重的安全问题和与 Anthropic 的商标纠纷。
在这个"AI 之年",像 ChatGPT、Claude 和 Gemini 这样的优秀工具层出不穷。然而,当您每天使用它们时,是否感觉缺了什么?
"它们写的句子很好,但从来不会点击电子邮件上的发送按钮。""它们编写代码,但当出现错误时,您必须自己调试。""当我关闭浏览器标签时,从那一刻开始的所有对话和上下文都会重置。"
是的,现有的 AI 仅仅是"浏览器中的顾问",而不是充当您手脚的"合作伙伴"。
这就是 Clawdbot 登场的地方。
Clawdbot 不仅仅是一个聊天机器人——它是 一个在您的本地机器(PC 或服务器)上运行并为您执行实际任务的自主个人 AI 代理,同时保护您的数据。
这是一个开源个人 AI 助手,让您可以通过多个消息平台与 Claude Code 交互,包括 WhatsApp、Telegram、Discord 和 Slack。
同时,Ollama 是一个运行时,让您可以轻松地在本地安装开源 LLM(如 Meta Llama 和 Mistral),并通过 API 访问它们。
将这两个平台结合在一起,您可以构建一个没有 API 费用的 AI 助手环境,在您自己的 PC 上完全可用,并且可以交换您喜欢的模型。
所以,让我给您展示一个实时聊天机器人的快速演示,向您展示我的意思。
我会问聊天机器人两个问题:"使用 html、css 和 javescripts 生成一个小应用程序",如果您看看聊天机器人如何生成输出,您会发现代理作为一个分层、自我治理的代理系统工作,而不是单个提示-响应模型:当用户发送输入(通过 Slack、WhatsApp、UI 或 API 的网关)时,首先应用(由基础设施和挂钩强制执行的硬约束,例如工具权限和安全规则)。
接下来,代理按照 AGENTS.md 中定义的固定、刻意的顺序加载其提示:它使用 SOUL.md(个性、价值观、语气)锚定行为,然后应用 IDENTITY.md(名称、角色、人设),结合 USER.md(用户偏好和关系上下文),最后引用来自内存日志的相关持久内存。
通过这种结构化上下文,代理评估它是否已经具备完成请求所需的技能;如果没有,它会自主搜索 ClawHub 以获取缺失的功能,或者如果有可用的 Workspace Skills,则根据需要安装或优先考虑它们。
然后使用可用工具和技能执行请求,同时 LLM 在软约束(提示层次结构、角色定义)和硬约束(系统强制执行)的指导下生成响应。
产生输出后,代理将相关结果记录到持久内存中,更新其工作区(如果学习了新技能或行为),并且——由于工作区由 Git 管理——这些变化保持透明、可逆转,并由用户控制。
1、为什么 OpenClaw 引起关注
- "个人"的意义已经改变
ChatGPT 和 Claude 也很有用,但它们不是"个人的"。对话历史存储在云端,定制能力有限。OpenClaw 字面上就是"您自己的 AI 在您自己的机器上运行。"
- 适合您现有的工作流程
无需打开新应用程序。您可以直接通过 Slack 或 WhatsApp 等常用应用与 AI 对话。这是一个微妙但重要的功能。
2、自我复制:OpenClaw 的核心
OpenClaw 最独特的功能是自我进化,这不仅是定制,还指代理可以扩展自己的机制。
自我更新流程:自动获取技能以响应用户请求并积累学习结果
2.1 ClawHub(技能自动发现)
ClawHub 是一个技能注册表(市场)。当用户请求"做某事"时,如果所需的技能不可用,OpenClaw 本身将搜索 ClawHub 并安装所需的技能。
无需人类给出诸如"添加此技能"之类的指令。代理将做出自己的决定并扩展其能力。
2.2 可自我破解
OpenClaw 可以自我修复。这不是隐喻;它实际上发生过。
"我的 @openclaw 根据它本身与 Antigravity 认证的方式,为 @zeddotdev 添加了 Antigravity 认证。"
一位用户,OpenClaw,为他自己的 Zed 编辑器添加了认证功能,这是受到了他如何与 Antigravity 认证的启发。
这种"增强自身"的能力使它与其他 AI 助手区别开来。正如一位用户评论的那样:
"它可以被破解(更重要的是可以自我破解)并且可以在本地托管的事实将确保此类技术占据主导地位。"
2.3 Workspace Skills(特定于用户的技能)
技能有三层:
- Bundled Skills —— OpenClaw 中内置的核心功能
- Managed Skills —— 由 ClawHub 策展的公共技能
- Workspace Skills —— 用户创建的技能
只需将 Markdown 文件 ~/.openclaw/workspace/skills/<skill>/SKILL.md 放入,即可添加 Workspace Skills。如果有同名的技能,Workspace Skills 将优先。
2.4 持久内存和 Git 管理
OpenClaw 将您的日常对话记录在持久内存的 memory/YYYY-MM-DD.md 中。
更重要的是,整个代理工作区可以是一个 Git 存储库。
cd ~/.openclaw/workspace
git init
git add AGENTS.md SOUL.md TOOLS.md IDENTITY.md USER.md memory/
git commit -m "Add agent workspace"
如果代理在其学习中犯了错误,可以使用 git revert 回滚。这在允许人类控制 AI 的"学习"方面是突破性的。
3、它如何作为代理工作
这次使用 OpenClaw 后,我觉得它制作得非常好。此外,我想创建的东西之一是"类人 AI 代理",所以我非常感兴趣它是如何工作的。
3.1 网关
OpenClaw 有一个称为网关的机制。它具有内置的 API 服务器功能,可以接受来自外部应用程序的请求。例如,您可以让 AI 通过 Slack 或 Discord 在外出时接收到您智能手机上发表的评论,并自动执行任务。
向本地运行的 Clawdbot 发送请求需要使用另一个工具,例如 ngrok,这有点麻烦,但结果证明非常实用。
我个人觉得有趣的是它如何作为自主助手行为。
以下是一些使用 Google NotebookML 解释的幻灯片摘录。
如图所示,OpenClaw 具有分层提示结构,如下所示:
- 系统规则:高层级规则。必须遵循的规则。
- 操作规则:行为策略(提示加载标准等)
- 个性核心:价值观、个性等,对应于人类"心脏"的部分
- 身份:名称、口头禅、个性等。根据与其交互的人不同而有不同方面的人的信息。
- 用户信息:与您交互的人(即您)的信息
其独特之处在于它不会将所有信息整合在一个地方,而是将其分为多个部分并按层组织。而且,据我理解,AI 的问题之一是"提示不能 100% 保证。"
我也对此感到好奇,所以我问了 AI,它给了我以下解释:
正如您指出的,LLM(大规模语言模型)的提示仅仅是"概率权重",不像程序代码那样作为"绝对禁令"发挥作用。OpenClaw 认识到这一局限性,并通过结合 "通过提示强制执行上下文(软约束)"与"系统基础设施物理阻止(硬约束)"使其分层规则有效。
系统强制执行的约束也通过 Claude Code 的挂钩实现。另一个有趣的部分是以下解释:
通过"加载顺序"和"角色定义"修复上下文(软约束)
OpenClaw 不会一次性将所有信息传递给 AI,而是提供信息的结构化优先级理解。
- 绝对高层级约定(系统提示):根据解释材料,系统在顶层(系统/开发者层)固定"安全、工具操作和表达规则"。这些被视为比用户定义的提示具有更强权威性的指令,促使 AI 遵守此框架。
- 明确的"读取规则规则"(AGENTS.md):文件 AGENTS.md 充当"操作规则",指定加载什么以及按什么顺序加载(SOUL → USER → memory)。与其简单地传递文件,指令(提示)指定思维过程本身——"首先参考个性(SOUL),然后应用设置(IDENTITY)"——以 防止对规则优先级的误解(例如设置覆盖个性)。
通过这种方式结合各种约束,似乎可以实现作为助手的类人行为。
我个人觉得这非常有趣,所以我将更深入地研究它。我甚至可能会写另一篇关于我在过程中学到的东西的文章。
3.2 代理工作区结构
代理工作区目录结构:每个文件定义代理的个性、记忆和能力
工作区 ~/.openclaw/workspace/ 位于中,由以下文件组成:
文件|角色 ---|--- AGENTS.md|代理操作规则和内存使用指南 SOUL.md|个性、语气和对话边界 USER.md|用户信息、命名偏好 TOOLS.md|关于本地工具的注释 IDENTITY.md|代理名称、角色、表情符号 memory/|每日内存日志 skills/|自定义技能
特别是 SOUL.md 是定义代理"个性"的文件,通过编辑它,您可以根本性地改变 OpenClaw 的行为。
4、安全风险
这次使用后,我觉得有一些风险比以前的 AI 代理更高。
我觉得随着与各种聊天工具的集成增加以及与这些工具的接触点,存在可能从外部无意发送指令的可能性。特别是,如果没有此类知识的人草率地设置它,很可能会出现问题。
如果单独使用 AI,唯一的问题将是成本,但由于它充当助手,问题在于它可以访问您的私人信息。
如果助手是人,它将能够确定谁在给出指令并适当地处理它们,但对于 AI,交流仅限于文本,因此在某些情况下,完全有可能处理进度并且信息可能会泄露。
目前,可能的措施包括缩小访问范围或在辅助环境中运行它。
然而,便利性和风险总是同一枚硬币的两面,所以我认为现在就开始用它进行验证并探索代理的未来是个好主意。
如果您实际上计划构建环境,请务必在试用时记住这些事项。
还有关于安全的官方文档,我也建议阅读。文档包括 OpenClaw 作为标准提供的安全检查命令,并建议您在更新设置时始终运行它。
安全检查
$ openclaw security audit --deep
5、五项确保安全使用的措施
对于那些想要使用 OpenClaw 的人,我们总结了应该遵守的最低安全措施。
5.1 确保启用网关认证
网关认证在最新版本中现在是强制性的,但您必须设置令牌、密码或 Tailscale 服务器 ID。"无"模式已被删除。
# 检查是否有任何安全警告。
openclaw doctor # 验证没有安全警告。
4.2 不要直接发布到互联网
反向代理背后的信任边界问题是许多问题的原因。仅在您的本地网络中使用它或通过 VPN 访问它。
5.3 不要轻易安装第三方技能
研究表明,31,000 个代理技能中有 26% 包含漏洞。仅在必要时使用技能,并在安装之前检查代码。
5.4 在虚拟机中运行
建议在 VM 或容器中沙箱运行,而不是直接在主机操作系统上运行。
5.4 不要信任默认设置
~/.openclaw/ 目录中的配置文件和内存以纯文本存储。考虑结合使用加密工具。如果您使用默认设置操作,安全专家建议假设您已被入侵。
6、OpenClaw 设置
首先,让我向您展示如何安装 Clawdbot。
它只需要一个命令;实际上不难,非常简单。
以下命令适用于 Mac、Windows 和 Linux。我选择在 Windows 上部署和测试。
PS:我想在这里做一个严肃的声明。这是我留在公司的测试笔记本电脑。我想提醒大家注意安全问题。如果没有必要,请不要在您的主机上安装它。您必须使用备用机器。我必须提前给您这个警告。这个东西有很高的权限,所以要小心。
如果您直接在主机上运行它,而 AI 恰好执行**rm -rf /**,您计算机上的所有隐私和学习材料都将丢失。
请不要责怪我当您的 重要文件被删除 = =
这个命令非常简单:
# Windows
iwr -useb https://molt.bot/install.ps1 | iex
# macOS / Linux / Ubuntu / Debian
curl -fsSL https://molt.bot/install.sh | bash -s -- --install-method git
请记住在运行此命令之前安装 Node.js;它必须是版本 22 或更高版本,否则您将收到错误。
然后您会看到它开始安装。
在入职过程中,您可以交互式地设置网关的端口、工作区、频道、技能等,这里创建的配置文件将作为后来调整模型和代理细节的基础。
完成向导后,网关将作为用户服务驻留,因此当您的 PC 启动时,Clawdbot 将自动启动,创建您自己的个人 AI 中心,可以随时通过聊天调用。
npm install -g openclaw@latest
openclaw onboard --install-daemo
这句话的要点是:我理解这只龙虾非常有能力,但风险极高。您确定要继续吗?
只有您选择"是",它才会让您继续到下一步。
如果您选择"否",并且过程直接关闭,那是一个非常不公平和任意的条款。
在您说是之后,您会看到一个选项。
第一个选项是快速启动,然后使用 clawdbot configure 配置信息。第二个选项是首先手动配置。
它会告诉您配置模型。
我们将跳过模型,因为我们要使用 Ollama,但我想告诉您永远不要使用您的 Claude Max 信用限额链接到 Clawdbot。Anthropic,那个无赖,现在只允许该信用限额在 Claude Code 上使用。如果您使用 Clawdbot 授权它,您的帐户很可能会立即被封禁。在 X 上有很多此类案例。
当您选择 QuickStart 时,您会被要求选择您想要使用的模型。
由于这次我想使用 Ollama,我现在选择 Skip 并选择 All providers。但请随意选择您想要的任何模型。
然后我将手动输入模型
而我将得到的模型是 ollama/gpt-oss:20 b。我尝试像所有开发人员那样使用此方法,但它不起作用,如您在屏幕上可以看到找不到模型。但稍后,我将向您展示如何修复它。
入职后,Clawdbot 生成一个基于 JSON 的内部配置文件,用于管理"模型列表"、"默认模型"、"每个模型的连接信息"等。
GitHub 文档解释了如何从 CLI 配置模型以及 Models 部分中的 OAuth/API 密钥轮换功能。使用 Ollama 时,这被写为"通过 HTTP 的本地模型"。
仔细设计此模型定义使您能够根据目的智能地在模型之间切换,例如"用于日常对话的轻量级模型"、"用于代码审查的较大模型"和"用于摘要的更长上下文模型"。
这一部分全部来自海外,普通人不使用这些东西,所以您可以选择最后一个并跳过它。我们可以稍后教您如何使用 Lark 启动它。
然后,它会问您是否要配置它提供的技能;只需毫不犹豫地说"是"。
然后您会被要求选择要使用哪个管理器进行安装。我个人更喜欢 npm,如果您已经安装了 Node.js,它会自动包含。
然后,您会得到一堆技能……
每个都有一个描述,所以您可以选择您喜欢的任何装备。如果您懒得选择,您可以只是跳过它,因为您可以稍后通过与他交谈来装备它。
就这样——现在运行网关服务器。然后它会问最后的问题,例如您是否要在 UI 中运行此机器人。当然,您应该选择"在 UI 中孵化",这是为您准备的 UI——OpenClaw 中的一个仪表板,您可以在其中查看事情如何进行。您可以在浏览器中访问您安装的 OpenClaw 云开始与 OpenClaw 聊天,这非常惊人。
看看这个——有一些问题,所以我们只去概述。您可以看到此 OpenClaw 实例的状态目前是已断开。
要使其已连接,我们将运行此命令来修复它,因为它目前已断开。我们将完全按照我的操作复制此命令,停止终端,将其粘贴到终端中并按 Enter。我这样做的那一刻,您可以看到红屏幕消失了,健康状况现在正常。
如果我转到概述,您可以看到它现在已连接,这意味着我的 OpenClaw 已连接并准备好接受聊天和命令。如果我在这里尝试聊天,我会准确地告诉您会发生什么。
例如,如果我在这里说"嗨",您可以看到它显示它正在运行,但实际上没有任何反应,因为它不响应任何答案。这发生是因为我们还没有设置 Ollama。
接下来,我们将设置Ollama 设置。确保您已经下载了 Ollama。然后单击设置并将上下文长度调整为 64,000 个标记,因为 OpenClaw 需要更大的上下文窗口才能与模型正常工作。
如果您还没有安装模型,我们将使用此命令安装模型。安装后,
ollama pull gpt-oss:20b
我们复制此命令 'ollama launch',这配置 OpenClaw 使用 Ollama 并启动网关。如果网关已经在运行,无需进行任何更改,因为网关将自动重新加载更改。
ollama launch openclaw
然后我们将告诉 OpenClaw 进入其设置的**"web"部分的配置向导**。这是您设置与网络相关的工具的地方,例如网络搜索(以及可选的网络获取),因此代理可以浏览或搜索互联网。
OpenClaw 不自动知道如何开箱即用进行网络搜索或网络获取——这些功能需要 API 密钥或设置。
openclaw configufe - section web
7、结束语
我仍然不确定我们是否真的需要 AI 代理。我是工程师,所以我对 Claude Code 没问题。
最重要的是,这是一个本地程序,所以如果我关闭终端,没有其他人可以使用它。这就是为什么购买像 Mac mini 这样便宜而强大的机器并在其上运行它如此受欢迎。
然而,通过提供一个我可以使用 AI 代理的环境,我认为这将是一个巨大的好处,不使用 ClaudeCode 的非工程师团队成员和经理也将能够使用 AI 代理。
能够随意提出诸如"当时发生了什么?"或"当前项目进展如何?"之类的问题
而不占用任何人的时间,这非常吸引人。
我真诚地希望这篇文章会对某人有所帮助。
原文链接: OpenClaw + Ollama + Security Guide: The ULTIMATE LOCAL AI Assistant Agent has ARRIVED!
汇智网翻译整理,转载请标明出处