
如果你最近在折腾AI Agent应该看过这四组名字OpenClaw、Hermes Agent、Claude Code、Codex CLI。我后台私信里问得最多的就是“到底装哪个”说实话这个问题本身就把两类完全不同的东西混在一起了。Claude Code和Codex CLI是编程型AgentOpenClaw和Hermes Agent是个人助手型Agent。把OpenClaw装去改项目代码或者拿Claude Code去当家庭助理都会用得很别扭。这篇就把它们的定位、部署方式和实际使用场景彻底拆开讲清楚顺便把安装过程中那些高频报错一次说完。1. 先分清两类Agent这是两条完全不同的赛道1.1 一款工具解决什么问题看它的“出生环境”就知道了OpenClaw是由Moltbot/Clawdbot那个谱系演化来的本质是一个跑在Node.js环境里的个人自动化助手“Gadget”。它最典型的用法是接上Telegram、飞书、Discord你在聊天窗口里发一句话它就帮你去执行日程管理、定时任务、联网查资料、调用外部服务。大家搜“OpenClaw部署”“OpenClaw安装教程”“OpenClaw对接魔塔”基本都是想把它做成一个能说话的机器人助理。Hermes Agent则是更重、更完整的个人助理框架。它包含语音识别、人脸识别、摄像头识别、消息通道、MQTT智能家居联动甚至能和Node-RED串起来做自动化。装完之后你等于在家里的局域网里养了一个常驻大脑可以通过对话、语音、手机消息去指挥它它也能主动做提醒。所以搜索词里出现“Hermes Agent Windows本地安装”“麒麟V10部署局域网Hermes Agent”“Hermes Agent安装桌面版”都很正常因为这玩意儿本身就是偏整套部署的。Claude Code是Anthropic官方出的命令行编程Agent直接跑在终端里它会读你的项目目录分析代码结构执行命令跨文件修改代码就像把一个资深工程师请进了终端。搜索里大量出现“Claude Code使用教程”“VSCode配置Claude Code”“Claude Code客户端”说明大家是把它当编程工具在用的。Codex CLI是OpenAI开源的终端编程Agent用Rust写的和后端Codex引擎一脉相承。它可以在终端里以对话方式完成代码任务也能把会话同步到ChatGPT桌面端。高频搜索词“unable to locate the codex cli binary”是安装和调用过程中的典型报错后面我会专门讲。1.2 编程Agent vs 个人助手Agent一个管代码一个管事情很多人把这两类工具搞混是因为它们都叫Agent。我自己给朋友解释时用过一个比喻编程型Agent是你雇来的“驻场开发工程师”你给它仓库它给你改代码、跑测试、出方案个人助手型Agent是你雇来的“办公室助理”你不需要给它代码只需要在聊天里说“帮我查一下明天的天气”“两小时后提醒我开会”“去把那个网页内容抓下来存成文件”它就去牵头干活。这个区别决定了后面所有事情选型看什么、部署在哪、怎么配置、遇到瓶颈时怎么排查。用编程Agent去调度消息平台纯属浪费它没有对话通道的概念用个人助手Agent去改代码库则会发现它根本没有文件系统级的权限设计顶多能做到调用API接口而已。如果你本质上是个开发者日常痛点是“代码改起来太繁琐”“跨文件重构太啰嗦”那你的正菜是Claude Code和Codex CLIOpenClaw和Hermes Agent属于锦上添花。如果你本质上是想给团队或家庭搞一个自动处理消息、定时任务、语音指令的数字助理那就反过来主菜是OpenClaw和Hermes Agent。1.3 选型前先明确你手头有什么资源个人折腾这么久我建议选型前先列三个资源第一你手头有没有一台24小时开机或能随时唤醒的机器第二你能接受多少部署复杂度第三你主要靠什么入口和Agent交互。只有终端或开发机入口就是命令行首选Claude Code或Codex CLI。有一台NAS、服务器或者旧电脑想长期跑一个助理服务入口是聊天软件OpenClaw最合适因为部署轻、依赖少。有智能家居设备或者想要语音、人脸识别这些感知能力并愿意折腾Docker和一堆组件才值得上Hermes Agent。想塞进安卓手机在Termux里原生跑不装proot那种重容器那就OpenClaw轻量属性在这时候体现得很明显。2. 编程型Agent的底层逻辑Claude Code与Codex CLI是怎么“读代码、改代码”的2.1 Claude Code的工作方式把终端给Agent当“操作台”Claude Code在2025年火起来不是没道理。它把整个终端变成了一个可操作环境启动后在项目根目录运行claude它会先扫描目录结构、读关键配置文件比如package.json、pyproject.toml、go.mod建立对代码库的初步认知。然后你下指令它调用文件读写、bash命令执行等工具来完成任务。和普通代码补全工具完全不一样的是反馈闭环。普通工具只能给建议改错了你要自己手动回滚。Claude Code是直接改文件、跑命令、看报错、再改文件直到实现目标。比如让它“把项目里所有HTTP调用统一封装到apiClient.ts里”它真会去遍历几十个文件逐个替换然后执行tsc --noEmit检查类型错误。这个能力对动辄几千文件的中大型仓库特别有价值。它还有子Agent机制和Skills机制。子Agent可以让主干流程拆分成并行小任务Skills则是通过SKILL.md描述文件给Agent注入专有技能。你想让它按团队规范写代码就把规范写进Skills下次遇到同类任务它会自动按规范执行。搜索热词里“Claude Code skills 安装”指的就是这个。2.2 Codex CLI的差异沙箱安全策略与多模型可配Codex CLI和Claude Code表面功能几乎一样都是终端里对话、改代码、执行命令但实现思路有明显差异。Codex CLI用Rust写的安装包就是单个二进制占用小、启动快。更关键的是它的安全机制设计得比较细命令执行分三层默认全读、白名单可写、命令需审批。新手最容易忽略的是~/.codex/config.toml这个配置文件。你要指定用哪个模型比如GPT-5-Codex或兼容OpenAI协议的第三方模型服务都要在这里改。这一下把灵活性拉高了如果你的网络环境访问官方服务不稳定或者公司内部有统一的API网关只要接口兼容配置一下base_url就能用。和ChatGPT桌面端协同是Codex CLI比较讨喜的功能。终端里跑完的任务会自动出现在ChatGPT的Codex标签页里你在对话框里能基于上一次终端会话继续提问。反过来你在ChatGPT网页端开一个Codex任务也可以让它在本地终端继续执行相当于网页和本地开发环境串成了一条线。2.3 同一个需求两边用下来有什么区别以“写一个脚本批量重命名当前目录下所有图片文件”为例。Claude Code的路径是“先读目录、列文件、写脚本、跑脚本、校对结果”因为它对上下文和文件系统的感知更主动几乎不需要你告诉它目录里都有什么。Codex CLI同样能做但它更依赖你把需求描述精确比如“只处理jpg和png”“保留原始修改时间”这些边界条件你没说它就懒得猜。这条差异在实际开发里会被放大Claude Code适合做大型重构和跨文件变更Codex CLI适合做任务边界清晰的脚本活、批处理、工具链组装。模型策略方面Claude Code官方主打Claude系列Sonnet是日常主力Opus用来处理高难度重构你可以在会话里用/model快速切换。Codex CLI默认走OpenAI系模型。对于有自建模型网关的团队Codex CLI因为配置开放反而更好接Claude Code在官方模型下体验最无缝接第三方网关需要改环境变量。3. 个人助手型Agent的部署实战OpenClaw与Hermes Agent最容易翻车的几个环节3.1 OpenClaw部署从WSL2报错到Termux原生运行OpenClaw的部署分成几种路线不同路线踩的坑完全不一样。最常见的Windows用户走WSL2路线然后就会遇到那个让无数人头痛的报错openclaw could not safely verify the WSL2 environment.这个报错不是说你机器没装WSL2而是安装脚本在验证WSL2环境时没得到可靠结果。原因通常是三个一是WSL内核太旧wsl --update一直没跑过二是默认版本不是2你那个发行版实际跑在WSL1上三是脚本对Windows终端环境的某些命令输出做了强判断被安全软件或终端编码干扰了。解决顺序很固定。先打开PowerShell执行wsl --update更新内核然后wsl --set-default-version 2确认默认版本再用wsl -l -v看每个发行版的实际版本号。确认是2之后重开终端再跑安装脚本。如果还报错多半是脚本拿不到环境变量把OpenClaw换成Docker跑直接跳过了WSL2验证这个环节。另一个很香的路线是安卓Termux原生部署。很多人以为在手机上跑这种服务必须用proot开个完整Linux容器其实不需要OpenClaw依赖Node.js运行环境不依赖特定系统库Termux里直接装Node.js和npm就能跑。搜索热词里那句“在安卓Termux原生部署OpenClaw无proot轻量”说的就是这个方案。好处是省电、启动快、不吃内存我把OpenClaw部署在旧手机上待机功耗可以忽略不计。3.2 Hermes Agent的安装桌面版、Docker与局域网部署Hermes Agent的安装要比OpenClaw重不少原因在于它的模块多。人脸识别要装OpenCV相关依赖语音功能要装STT/TTS引擎消息通道要连Redis做任务队列整体架构更像一个完整系统而不是小工具。Windows本地安装是踩坑重灾区。常见问题包括Python版本不对导致依赖编译失败、Redis服务没启动导致面板转圈、摄像头权限被系统拦截导致识别模块报错。安装前强烈建议先新建一个干净的Python虚拟环境我一般用python -m venv hermes-venv然后激活再pip install hermes-agent不要直接往全局环境里塞。Docker路线省心很多拉镜像、起容器、映射端口就行隔离做得干净卸载也方便。局域网部署时重点检查两块一是数据库和消息队列的端口映射容器里互相访问没通面板就会出现“请求的名称有效但无法连接”这类网络错误二是如果机器有防火墙必须放行面板端口不然手机在局域网里根本访问不了管理界面。搜索热词“Hermes Agent安装 请求的名称有效”就是这类问题的典型报错本质上是主机解析到了名字但TCP连接被拒和DNS关系不大。国内服务器部署还有一个实际痛点直接拉官方Docker镜像经常超时。解决办法是给Docker配置镜像加速器在/etc/docker/daemon.json里加registry-mirrors配置然后重启Docker服务。这个思路在麒麟V10这类国产系统上同样适用部署流程和普通Linux没有本质区别。3.3 部署失败后的通用排查顺序不管是OpenClaw还是Hermes Agent我建议都按“环境变量→网络→依赖→权限”四层顺序排查。先确认PATH里能拿到命令很多“找不到二进制”的报错其实就是PATH没配好再看网络能不能连API服务或镜像源很多卡在下载的坑都是网络层问题然后检查Python或Node依赖版本这两个生态的依赖冲突极其常见我见过太多人卡在某个gyp ERR!消息上一整天最后发现是Python版本太低最后才看文件权限比如OpenClaw要写配置目录Hermes要访问摄像头和麦克风权限不足的表现往往不是直接报错而是功能静默失效。4. 消息接入与终端接入四个“入口”决定了它们怎么被你使用4.1 飞书场景长输出被截断的真相与解法“OpenClaw在飞书输出容易被截断”是热词里一个很实际的痛点。为什么偏偏是飞书因为飞书机器人的消息通道对单条消息长度和回调超时都有硬限制。Agent在处理稍复杂的任务时输出内容超过限制或者处理时间太长飞书那边就会把消息掐掉有时候是后半段不见有时候是整条消息变成“发送失败”。解决办法不是去调飞书后台而是改自己的使用习惯和Agent配置。第一把长任务拆成“开始执行”和“结果汇报”两步先秒回一句“收到正在处理”处理完再单独发结果第二结果太长时让Agent先落到本地文件或笔记应用再把链接发出来这比硬拼单条消息长度优雅得多第三如果是异步轮询模式检查超时时间设置超时阈值太短任务没跑完回调就断了自然会被截断。这背后是一个通用原则消息类Agent的输出不是越长越好而是越适合通道越好。终端可以接受几万字的滚动输出飞书消息不行微信群消息也不行。你在给Agent写Prompt时就要约束输出格式让它学会分块汇报。4.2 桌面端、VS Code、纯终端编程类Agent的集成体验差异Claude Code在2025年更新了桌面客户端有独立聊天窗口能查看文件差异和命令执行历史比纯终端体验好了不少。很多人还在VSCode里通过集成终端跑Claude Code再配合官方的Claude Code扩展查看diff。我的感受是如果做多文件重构VSCode集成终端更顺手因为改完的代码可以立刻在编辑器上下文里检查如果纯粹是让Agent独立完成一个任务桌面客户端更适合免得终端和编辑器之间来回切。Codex CLI也支持在Windows Terminal、iTerm2、VS Code集成终端里跑毕竟本质就是个命令行程序。它在VS Code里没有Claude Code那种一对一官方扩展但你可以直接开个终端跑codex一样能用。实际用下来Codex CLI的轻量和快速启动让我更愿意在小任务上使用它比如“统计一下这个目录下每个文件的行数”“把这段日志里的错误码去重列出来”。4.3 手机端与局域网个人助手Agent的两种常驻形态OpenClaw跑在手机Termux里的形态很特别等于你随身带了一个Agent服务只要手机有网聊天软件里喊一声它就响应。缺点是不能息屏休眠否则进程会被杀掉我一般配合Termux的唤醒锁插件使用保持CPU不休眠代价是电量会掉但旧手机专门干这事也无所谓。Hermes Agent更多是跑在家庭局域网里的形态因为它装了摄像头识别和语音模块后定位就不是“随身助手”而是“家庭中枢”。比如戴眼镜走回家摄像头识别到人脸触发欢迎语音小孩按了门口按钮消息推送到你手机。这类场景强依赖局域网内设备联动手机端反而只是它的一个遥控器。选择哪种常驻形态关键是看Agent是否需要访问你的物理环境。只处理数字信息、聊天、日程、网络任务选OpenClaw这种轻量消息型涉及语音、视觉、家居设备联动就往Hermes Agent这种重框架上靠。5. 最终选型按你手里的场景而不是按热度5.1 如果你是写代码的人我的建议很直接主力选Claude Code副手选Codex CLI两个都装上不冲突。Claude Code适合吃进整个仓库后做跨文件重构它的上下文感知能力是四款里最突出的Codex CLI适合快速跑小任务、写一次性脚本因为启动快、交互轻不会动不动就把上下文拉满。预算敏感的话重点用Codex CLI它的模型配置灵活实际运行成本通常比Claude Code低尤其是轻量任务上token消耗差异可以肉眼可见地拉开。但如果你主要用Anthropic模型或者团队已经统一了Claude生态那Claude Code的体验无缝对接没必要为了省钱牺牲工作流的一致性。5.2 如果你想给团队或家庭配一个常驻助理先看你的入口是什么。团队协作群里需要一个能回答内部信息、执行定时任务的机器人OpenClaw是首选因为部署轻、接入飞书/Telegram方便改配置也快。家里需要一个能语音交互、能识别访客、能和智能家居联动的常驻助手Hermes Agent更合适但一定要做好长期维护的心理准备它不是装完就完事的依赖更新、模型API调优、摄像头误报都要你花时间调。有一点必须提醒个人助手型Agent的“智能程度”取决于你给它接了什么能力。默认安装的OpenClaw只能做基础任务接入MCP工具、接入更多API之后才会变得好用。很多人装完觉得“好蠢”其实是没有做能力扩展。5.3 我的个人组合与使用习惯我现在的组合是开发机上Claude Code处理日常重构和代码评审Codex CLI负责批处理脚本和临时工具类任务旧手机上OpenClaw常驻接飞书负责日程提醒、网页抓取、定时推送家里一台NAS上跑Hermes Agent做人脸识别和语音留言偶尔通过MQTT控制灯和插座。这套组合看起来“杂”但每款工具干的都是自己最擅长的事。我不追求一个Agent包办一切那会让每个场景都打折扣。编程任务交给编程型Agent助理任务交给个人助手型Agent它们各占各的入口各干各的活反而互不干扰。最后再分享一个建议不管你选哪款第一次部署一定用最小配置跑通“一句指令→一个动作→一个结果”的闭环再逐步增加功能。很多人卡在半路都是因为一上来就想配齐所有插件和通道结果报错一个叠一个根本分不清是环境问题还是配置问题。先让它“会跑”再让它“跑得花哨”这个顺序能替你省下大量排查时间。