
简介OpenClaw橙皮书是一份深度解析开源自主Agent系统OpenClaw的技术手册面向希望从零上手多平台AI Agent部署与技能生态构建的开发者、运维人员内容从核心架构、记忆系统到Session识别系统梳理了入门到精通的完整路径。资源包为单个PDF文件大小仅4.44MB便携易读目录涵盖部署指南、渠道接入、ClawHub技能市场、模型配置、安全与成本等八大模块并附FAQ、命令速查表和资源链接。目前已有524人学习下载对追踪前沿Agent技术的人群具有较高参考价值。文档具体给出了本地、Docker、国内云厂商三种部署方式及首次配置步骤覆盖国际与国内消息平台接入、热门Skills推荐与自建Skill指南同时针对国内外大模型与本地Ollama模型提供配置建议并结合安全事件与成本控制策略能有效帮助读者快速搭建自己的“数字员工”降低真实落地中的试错成本。1. OpenClaw到底是什么先把它放对位置1.1 一句话理解OpenClawOpenClaw是一个基于开源架构的自主Agent系统核心在于让大模型驱动的智能体能真正接管“干活”这件事——不只是在对话框里聊天而是可以调用工具、操作文件、执行命令、对接外部服务最终把任务跑完。如果你接触过Agent开发应该知道市面上很多框架把重心放在“对话编排”上OpenClaw的思路更野一点它把自己定位成一个常驻的自主体像一个替你盯着终端的助手你交代任务它自己拆解、执行、反馈出错了还能自己尝试修。我在本地部署完第一版的时候第一感受是这玩意儿不是一个“问答机器人”而是一个“操作员”。你给它一个workspace它能真的在里面建目录、写文件、跑脚本、记录过程甚至因为某步报错而去查日志、改参数、重试。这种模式在Agent圈子里越来越流行而OpenClaw把这套逻辑做成了开箱即用的开源实现这也是它在GitHub上关注度涨得飞快的原因。1.2 它和云上API型Agent有什么本质区别很多人会问我在云端调GPT-4或者通义千问的API也能做Agent为什么要本地部署OpenClaw区别在于两点控制权和安全边界。云上API型Agent你的上下文、工具调用记录、文件内容都经过第三方服务很多企业内部数据根本不敢传上去OpenClaw是本地优先架构模型可以接本地推理服务也可以接云端API但执行环境是你自己的机器或服务器。相当于你自己开了一个“Agent工厂”原料数据和产线工具都自己管。另外OpenClaw在“技能生态”上花了很大功夫。普通的Agent框架工具是一等公民但OpenClaw把“Skill技能”做成了可独立开发、独立分发、独立加载的单元。从热词里也能看到大家都在搜“openclaw skill”“agent skills”说明这已经是一个实打实的能力构建方向。这篇文章我就从部署、配置、技能开发到排错把整个过程走一遍适合刚接触Agent开发、想从零搭一个自主执行体的朋友参考。2. 多平台部署实操从Windows到云端的完整路径2.1 Windows 11下用PowerShell安装含指定目录技巧先说Windows。OpenClaw在Windows上的安装主力方式就是PowerShell。我在Win11上试过直接复制官方文档的安装命令到PowerShell执行即可但有几个细节不处理会踩坑。第一执行策略。PowerShell默认的脚本执行策略是Restricted直接跑安装脚本会报“无法加载文件...因为在此系统上禁止运行脚本”。我都是在安装前先执行这条命令Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser这类策略设置范围尽量按用户级生效别用管理员身份全局放开安全上更稳。第二热词里有人搜“powershell安装openclaw 能指定目录吗”答案是能。默认情况下安装脚本会把主程序放到用户目录下但你想放到D盘或自定义路径可以先设置环境变量再执行安装$env:OPENCLAW_HOME D:\OpenClaw irm https://openclaw.example.com/install.ps1 | iex注意OPENCLAW_HOME只决定主程序位置运行时的配置和工作目录始终优先读取~/.openclaw这个后面讲。第三Win11下如果开了内核隔离或内存完整性安装过程中某些执行步骤可能被安全中心拦截。我当时卡了十几分钟最后是把PowerShell加入开发人员模式的排除项才顺利跑完。建议装之前先检查系统安全中心有没有拦截提示。2.2 Linux服务器与云端部署要点Windows适合本地体验但真正要让Agent当“数字员工”跑任务我还是推荐Linux服务器或云主机。热词里“如何在云端部署openclaw”排得很靠前说明大家都有这个诉求。Linux下安装路径很清晰依赖只有curl或wget安装命令长这样curl -fsSL https://openclaw.example.com/install.sh | bash装完之后二进制会放到/usr/local/bin或者~/.openclaw/bin取决于你用什么用户执行。云端部署我建议不要用root直接跑Agent。原因很实际Agent有执行命令的能力root权限一旦操作失误责任面太大。我习惯单独建一个agent用户useradd -m -s /bin/bash agent su - agent curl -fsSL https://openclaw.example.com/install.sh | bash再配合systemd服务托管进程实现开机自启和崩溃自动拉起。systemd单元文件核心部分大概是[Service] Useragent WorkingDirectory/home/agent ExecStart/home/agent/.openclaw/bin/openclaw serve Restarton-failure RestartSec10这个配置实测下来很稳Agent进程崩溃后10秒内会自动拉起日志也能交给journalctl统一查看。2.3 云端部署的网络与端口注意事项云端部署还有一个容易忽略的点OpenClaw可能会启动一个本地服务用于Web界面或API回调。默认监听地址如果绑定在127.0.0.1本地访问没问题但你要从外部管理就需要通过SSH隧道或反向代理暴露。我实际用的方案是Caddy做反向代理只暴露HTTPS端口上游指向OpenClaw本地端口。比直接改监听地址安全得多。以我踩过的坑来说千万别图省事直接把端口暴露到公网因为Agent执行接口一旦暴露等于给陌生人一个远程操作终端的机会。3. 核心配置与目录结构那些容易被忽略的细节3.1 .openclaw工作目录到底藏了什么OpenClaw默认会在用户目录下创建一个.openclaw文件夹整个运行时的所有状态都在这。我第一次部署完就好奇里面到底是什么直接打印了一下目录树大概是这样~/.openclaw/ ├── workspace/ # Agent可操作的默认工作目录 ├── skills/ # 技能包存放目录 ├── config.json # 主配置文件 ├── exec-approvals.json # 命令授权记录 ├── logs/ # 运行日志 └── keys/ # 存储各种服务密钥很多人从热词里提到的“workspace: c:\users\administrator.openclaw\workspace”就是Windows下的工作区路径。简单理解这个文件夹是Agent的“工位”允许它读写文件都限定在这个范围内避免Agent在系统里到处乱逛。实测中我建的所有中间文件、生成的脚本、输出的结果全部落在workspace里。我强烈建议你定期备份.openclaw目录。我的习惯是用一个Git仓库管住skills、config.json和exec-approvals.json日志和workspace内置的临时文件不进版本库。这样升级版本或迁移机器十分钟就能恢复一套完整的Agent环境。3.2 exec-approvals.json授权机制与常见报错这个文件是OpenClaw的特色也是热词里“legacy exec approvals exist at /root/.openclaw/exec-approvals.json”这条信息指向的关键。它的作用简单说就是记录“哪些命令被允许执行”。Agent要执行Shell命令时会先查这个授权列表。如果命令在列表里直接执行如果不在它会尝试申请授权。这个设计思路类似于手机App要拿摄像头权限时的弹窗——防止Agent失控执行系统级危险命令。我遇到的一次典型报错是这样的Agent准备调用pip install但授权列表里没有系统直接终止执行并提示需要更新exec-approvals.json。解决思路和热词里那条差不多——手动把对应命令加入白名单。编辑该文件增加一条规则{ pattern: pip install *, allowed: true }不过我有两个建议第一尽量用通配符限定可执行范围别图方便直接放行全部命令第二在Linux服务器上Agent默认用户不是root涉及系统安装类的命令我通常单独配一个sudo白名单进一步降低风险。3.3 workspace设定与上下文隔离workspace不只是“放文件的地方”它还承担着上下文隔离的作用。每跑一个任务我习惯在workspace里建一个独立子目录比如tasks/20260113_report_generate/Agent读写的所有中间文件都在这个目录内。好处显而易见不同任务之间互不干扰出问题时把整个子目录删掉即可重置现场不需要反复清理。同时我还会在config.json里为每次任务的会话配置独立的model参数、temperature参数、最大步数。我常用配置长这样{ model: { provider: nvidia-nim, name: meta/llama-3.1-70b-instruct, temperature: 0.2 }, workspace: ~/.openclaw/workspace/tasks/20260113_report_generate, max_steps: 100 }temperature设低一点能让Agent执行任务时更稳定、更少“发散”做工程化任务特别重要。4. Skills技能生态构建从用别人到写自己的4.1 Skills机制和Tools的区别很多人刚接触OpenClaw时分不清“Skill”和“Tool”的概念。我用一句话概括Tool是Agent的“手”Skill是“完整的工作方法”。比如“执行Python脚本”是一个Tool而“分析一份销售报表并生成PPT摘要”是一个Skill——它内部会拆解成读取文件、调用Python脚本处理数据、调用办公软件生成PPT等一串操作。热词里“人工智能skills” “agent skills”搜得多说明这已经是Agent开发者的普遍关注点。OpenClaw的官方技能仓库里已经有大量现成skill有的是联网搜索有的是文件格式转换有的是对接第三方API。如果你只是想验证能力直接安装别人写好的skill就够了。但真正的价值在于针对你自己的业务流程写一套私有skill。比如我做内容发布自动化就写了一个“文章批量排版”的skill它会自动调用标题分级、关键词分布检查、图片占位替换这套流程发布前跑一遍效率提升很明显。4.2 如何开发一个自定义SkillSkill的目录结构很简单一个文件夹加一个描述文件。我的标准做法是这样skills/ └── report-generator/ ├── SKILL.md └── scripts/ └── generate_report.pySKILL.md是技能描述文件里面用YAML头定义元信息下面用自然语言写清楚这个技能“能干什么”“怎么用”“依赖什么环境”。我写了一个模板--- name: report-generator description: 根据原始数据生成结构化分析报告 version: 1.0.0 parameters: - name: input_path type: string required: true description: 输入数据文件路径 - name: output_format type: string enum: [markdown, html] default: markdown --- # report-generator 该技能读取指定目录下的数据文件自动分析数据分布和异常值 生成包含摘要、图表建议、结论的结构化报告。之后把可执行脚本放在scripts/里OpenClaw在加载skill时能根据描述文件自动识别调用方式。实测下来技能越“具体”越好用。“生成报告”这种描述会让Agent自由发挥输出质量不稳定而“根据指定列的均值、汇总、缺失值情况生成报告”这种输出质量稳定得多。4.3 对接NVIDIA NIM等外部推理服务热词里“openclaw配置nvidia nim”是我很关注的一条因为本地部署Agent时推理模型的选择直接影响成本和可控性。NVIDIA NIM是NVIDIA推出的推理微服务方案核心价值是把模型发布成标准API服务你在OpenClaw里调用它就像调用一个本地服务一样方便模型跑在自己的GPU上数据不出内网。我在一台双卡A6000服务器上部署了Llama 3.1 70B的NIM服务OpenClaw侧配置特别简单{ model: { provider: nvidia-nim, base_url: http://192.168.1.100:8000/v1, api_key: nim-local-key, name: meta/llama-3.1-70b-instruct } }配置完之后OpenClaw调用模型时底层走的就是NIM服务。对比直接使用云端API延迟明显下降而且内网传输没有数据外泄的顾虑。如果你的GPU显存不够跑70B模型也可以先部署8B或13B的小模型做测试流程完全一致。5. 踩坑实录与常见问题排查5.1 安装环节的高频报错我在多个环境部署OpenClaw时碰到的问题有很强的共性。整理成一个速查表方便大家直接对照排查现象可能原因解决方案PowerShell提示禁止运行脚本执行策略未放开执行Set-ExecutionPolicy RemoteSigned -Scope CurrentUser安装后命令找不到环境变量未刷新重开终端或手动把OPENCLAW_HOME/bin加入PATH云端部署启动即退出依赖服务如Redis未启动检查依赖服务状态再查看logs/下最新日志Agent一执行命令就终止exec-approvals.json没有对应授权编辑授权文件增加匹配规则模型调用超时base_url配了外网地址或端口不通确认模型服务可达推荐同机或同内网部署5.2 运行时的异常处理经验有一类错误特别迷惑人热词里“agent execution terminated due to error”就是典型。第一次遇到这种错误Agent执行到一个环节突然终止日志只显示一句笼统的说明。我的排查经验是先不要看表面信息直接定位到执行上下文。具体做法打开logs/下对应的会话日志找到终止前最后几步的操作记录。绝大多数情况是某个命令在授权列表里没匹配上或是某个中间文件路径不存在。我遇到最多的情况就是——Agent在workspace子目录里生成脚本然后想执行它但执行路径写成了相对路径而工作目录不匹配。解决办法在配置里固定working_directory同时授权列表中加入针对工作目录的通配规则。另外一个容易踩坑的是升级版本后旧的exec-approvals.json格式不兼容。有次我升级后Agent所有命令执行都报错最后发现是旧文件的JSON结构少了字段。解决办法也很简单把旧文件重命名备份让Agent重新生成一份再把必要的授权规则一条一条加回去。5.3 一条实测稳定的部署路线速查最后分享一套我反复验证过的推荐路线。先从本地开始跑通再上服务器本地装好PowerShellWin或bashLinux/macOS执行对应安装脚本。配置好模型接口本地开发阶段我推荐用NVIDIA NIM或任意兼容OpenAI格式的推理服务血泪教训是别在没配好模型的情况下先测技能费半天劲全在空转。创建workspace测试目录写一个最简单的技能读一个文本文件统计单词数输出到另一个文件。跑通之后再逐步加授权、加更复杂的技能。最后迁移到服务器用systemd托管配合访问控制正式投入实际任务。按这条路走基本半小时内能完成从零到第一个skill运行的闭环。6. 资源与学习路线进阶的方向在哪里6.1 官方文档与社区资源优先级刚开始学OpenClaw很多人会陷入“什么文档都看”的困境。我的建议是抓主线官方文档优先重点看三块——部署指南、skill开发规范和配置参数说明。有了基础之后再去GitHub看issues和discussions。开源项目的实战技巧往往不在文档里而在开发者问答中。比如热词里“openclaw便携包”“openclaw 2.0”这类信息很多就是从社区讨论中被带起来的。关注这些内容能帮你提前了解版本方向而不是等升级了手忙脚乱。6.2 从Agent使用者走向Agent开发者OpenClaw本身是一个很好的学习样本读它的源码你可以理解一个自主Agent系统的骨架到底是什么——模型调用层、工具执行层、授权管理层、上下文管理这套分层设计思路放之四海皆准。我建议的进阶路线是第一阶段熟练安装配置跑通官方技能第二阶段写自己的skill并把任务分装成多个skill联动第三步研究源码中模型调用和授权管理部分尝试给OpenClaw贡献代码或魔改出适合自己的版本。我在实际使用中最大的体会是这类框架真正考验人的不是“装起来”而是“调明白”——通过自定义配置和技能把Agent打磨得贴合自己的业务习惯。踩过几次坑之后你会对整个Agent运行机制理解得特别透。最后再分享一个小技巧把Agent的授权管理当成项目安全基线来维护定期审查白名单能省去未来大量不可控的麻烦。本文还有配套的精品资源点击获取