<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Codex on heyaohua's Blog</title><link>https://blog.heyaohua.com/tags/codex/</link><description>Recent content in Codex on heyaohua's Blog</description><image><title>heyaohua's Blog</title><url>https://blog.heyaohua.com/og-image.png</url><link>https://blog.heyaohua.com/og-image.png</link></image><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Fri, 08 May 2026 14:51:00 +0800</lastBuildDate><atom:link href="https://blog.heyaohua.com/tags/codex/index.xml" rel="self" type="application/rss+xml"/><item><title>OpenClaw、Hermes、OpenCode、Claude Code 与 Codex：到底怎么选？</title><link>https://blog.heyaohua.com/posts/2026/05/openclaw-hermes-opencode-claude-codex/</link><pubDate>Fri, 08 May 2026 14:51:00 +0800</pubDate><guid>https://blog.heyaohua.com/posts/2026/05/openclaw-hermes-opencode-claude-codex/</guid><description>对比 OpenClaw、Hermes、OpenCode、Claude Code 与 Codex 的定位和适用场景：写代码优先选 Codex 或 Claude Code，OpenCode 适合可换模型的开源编码 Agent，OpenClaw 更偏入口控制，Hermes 更偏长期记忆、技能沉淀和长期自动化。</description><content:encoded><![CDATA[<h2 id="背景">背景</h2>
<p>最近 AI Agent 工具越来越多，名字也越来越容易混在一起：OpenClaw、Hermes、OpenCode、Claude Code、Codex，看起来都像能“帮你干活”，但它们解决的问题其实不一样。</p>
<p>如果只看宣传词，很容易得出一个错误结论：哪个更像 Agent、哪个功能更多、哪个更会自动化，就应该装哪个。实际使用时不是这样。工具选型首先要看任务类型，而不是看它是不是更“智能”。</p>
<p>这篇文章整理一个实用判断框架：如果目标是写代码，优先看 Codex 和 Claude Code；如果想要开源、可换模型的编码 Agent，看 OpenCode；如果想让 AI 接管手机、电脑或聊天入口，看 OpenClaw；如果想做长期记忆、技能沉淀、自我改进和长期自动化，再考虑 Hermes。</p>
<h2 id="结论">结论</h2>
<p>先给结论：</p>
<table>
  <thead>
      <tr>
          <th>工具</th>
          <th>最适合做什么</th>
          <th>不适合做什么</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>Codex</td>
          <td>在真实代码仓库里读代码、改代码、跑命令、修 bug、写文章或工程文档</td>
          <td>直接当手机助手或长期自治系统</td>
      </tr>
      <tr>
          <td>Claude Code</td>
          <td>高质量代码理解、重构、解释复杂工程、命令行协作</td>
          <td>跨设备入口控制</td>
      </tr>
      <tr>
          <td>OpenCode</td>
          <td>开源编码 Agent，可换模型，可自托管，可按团队需求改造</td>
          <td>追求最强闭源模型体验时未必省心</td>
      </tr>
      <tr>
          <td>OpenClaw</td>
          <td>手机、电脑、聊天入口控制，多端操作和技能触发</td>
          <td>作为主要编码 Agent 未必最优</td>
      </tr>
      <tr>
          <td>Hermes</td>
          <td>长期记忆、技能沉淀、自我改进、长期自动化任务</td>
          <td>单纯写代码时通常过重</td>
      </tr>
  </tbody>
</table>
<p>最重要的一句话是：</p>
<blockquote>
<p>不要为了“看起来更 Agent”而盲目装 Hermes。先问自己：我到底是在写代码、换模型、控设备，还是做长期自动化？</p>
</blockquote>
<h2 id="五类工具的定位">五类工具的定位</h2>
<h3 id="codex面向真实工程的编码协作">Codex：面向真实工程的编码协作</h3>
<p>Codex 更适合放在真实代码仓库里工作。它的优势不是“聊天”，而是能围绕一个项目持续做工程动作：</p>
<ul>
<li>阅读代码结构。</li>
<li>修改文件。</li>
<li>运行构建、测试、检查脚本。</li>
<li>根据失败输出继续修。</li>
<li>写技术文档、博客文章、迁移说明。</li>
<li>在一个 workspace 里把任务推进到可验证状态。</li>
</ul>
<p>如果你的主要任务是：</p>
<ul>
<li>修 bug</li>
<li>改前端页面</li>
<li>写后端接口</li>
<li>补测试</li>
<li>重构模块</li>
<li>写项目文档</li>
<li>发布 Hugo 博客</li>
</ul>
<p>那么 Codex 这类代码工作区 Agent 是更自然的选择。它贴近开发者日常：读文件、改文件、跑命令、看输出、再改。</p>
<h3 id="claude-code强代码理解和重构协作">Claude Code：强代码理解和重构协作</h3>
<p>Claude Code 的定位也很清楚：它是面向命令行和代码仓库的编程助手。它擅长长上下文理解、复杂代码解释、架构梳理、重构建议和多文件修改。</p>
<p>如果你更依赖 Claude 的语言理解、代码解释和重构风格，Claude Code 是非常强的选择。它和 Codex 的重叠度很高，差异更多在模型偏好、工作流体验、生态集成和团队习惯上。</p>
<p>简单说：</p>
<ul>
<li>想要强工程执行体验：Codex 很合适。</li>
<li>想要 Claude 的代码理解和重构风格：Claude Code 很合适。</li>
<li>两者都不是“手机控制中心”，也不是长期记忆系统。</li>
</ul>
<h3 id="opencode可换模型的开源编码-agent">OpenCode：可换模型的开源编码 Agent</h3>
<p>OpenCode 的关键词是：开源、编码 Agent、可换模型。</p>
<p>它适合以下场景：</p>
<ul>
<li>不想完全绑定某个闭源编码工具。</li>
<li>希望接入不同模型服务。</li>
<li>希望在本地或自有服务器上跑。</li>
<li>希望改造 Agent 行为、权限、上下文管理或工具调用。</li>
<li>团队想把编码 Agent 做成自己的平台能力。</li>
</ul>
<p>OpenCode 的优势不是一定比 Codex 或 Claude Code 更强，而是自由度更高。你可以换模型、换 provider、改策略、接内部工具。</p>
<p>代价也很明确：自由度越高，自己要负责的东西越多。模型质量、上下文策略、工具权限、安全边界、失败恢复，都要自己调。</p>
<p>所以 OpenCode 更像“可改造的开源编码底座”，不是一个开箱即用就一定最省心的选择。</p>
<h3 id="openclaw偏手机电脑和聊天入口控制">OpenClaw：偏手机、电脑和聊天入口控制</h3>
<p>OpenClaw 的优势更偏“入口”和“控制”。</p>
<p>它适合把 AI 接到：</p>
<ul>
<li>手机</li>
<li>桌面</li>
<li>浏览器</li>
<li>聊天工具</li>
<li>自动化入口</li>
<li>技能插件</li>
</ul>
<p>也就是说，OpenClaw 更像一个多端 Agent 操作系统或入口层。它可以通过 Skill、插件、连接器去触发不同能力，让 AI 帮你操作设备、处理信息、执行任务。</p>
<p>如果你的目标是“让 AI 在手机或电脑上帮我做事”，OpenClaw 的方向更贴近。如果你的目标是“深度改一个代码仓库”，那 Codex、Claude Code 或 OpenCode 往往更直接。</p>
<p>OpenClaw 可以参与开发工作，但它不是我会优先推荐的纯编码 Agent。</p>
<h3 id="hermes长期记忆技能沉淀和长期自动化">Hermes：长期记忆、技能沉淀和长期自动化</h3>
<p>Hermes 的关键词不是“写代码”，而是长期性：</p>
<ul>
<li>长期记忆</li>
<li>技能沉淀</li>
<li>自我改进</li>
<li>长期自动化</li>
<li>跨任务经验积累</li>
<li>更像持续运行的个人或团队 Agent</li>
</ul>
<p>如果你只是要修一个 bug、写一篇文章、改一个页面，Hermes 通常太重。它的价值在于长期运行和积累，而不是一次性任务。</p>
<p>更适合 Hermes 的场景是：</p>
<ul>
<li>让 Agent 长期观察某些系统。</li>
<li>把反复出现的流程沉淀成技能。</li>
<li>让 Agent 记住偏好、项目习惯、历史决策。</li>
<li>做定期任务、监控任务、跨天推进任务。</li>
<li>让自动化流程越来越熟悉你的工作方式。</li>
</ul>
<p>但这也意味着 Hermes 需要更多治理：记忆怎么写、技能怎么更新、权限怎么收敛、错误经验怎么清理、自动化边界在哪里。这些都不是白送的。</p>
<h2 id="选择逻辑图">选择逻辑图</h2>
<p>可以按这个顺序判断：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-text" data-lang="text"><span style="display:flex;"><span>我要做什么？
</span></span><span style="display:flex;"><span>  │
</span></span><span style="display:flex;"><span>  ├─ 主要是在代码仓库里写代码、修 bug、改项目？
</span></span><span style="display:flex;"><span>  │     │
</span></span><span style="display:flex;"><span>  │     ├─ 想要成熟闭源编码体验 → Codex / Claude Code
</span></span><span style="display:flex;"><span>  │     └─ 想要开源、可换模型、自托管 → OpenCode
</span></span><span style="display:flex;"><span>  │
</span></span><span style="display:flex;"><span>  ├─ 主要是让 AI 操作手机、电脑、聊天入口？
</span></span><span style="display:flex;"><span>  │     └─ OpenClaw
</span></span><span style="display:flex;"><span>  │
</span></span><span style="display:flex;"><span>  ├─ 主要是长期记忆、技能沉淀、长期自动化？
</span></span><span style="display:flex;"><span>  │     └─ Hermes
</span></span><span style="display:flex;"><span>  │
</span></span><span style="display:flex;"><span>  └─ 只是觉得 Agent 很酷，想先装一个？
</span></span><span style="display:flex;"><span>        └─ 先别装 Hermes，先明确任务类型
</span></span></code></pre></div><h2 id="按任务场景选择">按任务场景选择</h2>
<h3 id="场景一我要写代码">场景一：我要写代码</h3>
<p>优先级：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-text" data-lang="text"><span style="display:flex;"><span>Codex / Claude Code &gt; OpenCode &gt; OpenClaw / Hermes
</span></span></code></pre></div><p>原因很简单：写代码不是只生成代码片段，而是要读仓库、理解上下文、改文件、跑测试、处理错误、尊重现有代码风格。Codex 和 Claude Code 都围绕这个场景做得更直接。</p>
<p>OpenCode 也适合写代码，但更适合你明确需要开源、可换模型、自托管或二次开发的情况。</p>
<p>OpenClaw 和 Hermes 不是不能写代码，而是不应该作为“写代码优先工具”来选。</p>
<h3 id="场景二我要一个开源编码-agent">场景二：我要一个开源编码 Agent</h3>
<p>优先看 OpenCode。</p>
<p>它的核心价值在于你可以控制更多东西：</p>
<ul>
<li>模型可以换。</li>
<li>provider 可以换。</li>
<li>部署方式可以自己掌握。</li>
<li>工具链可以改。</li>
<li>团队可以定制自己的编码 Agent 行为。</li>
</ul>
<p>如果你对数据、成本、模型供应商、私有化部署有要求，OpenCode 会比闭源编码工具更适合。</p>
<h3 id="场景三我要-ai-控制入口">场景三：我要 AI 控制入口</h3>
<p>优先看 OpenClaw。</p>
<p>这里的“入口”包括手机、桌面、浏览器、聊天界面、技能触发和外部系统连接。它更像一个 Agent 控制层，而不是专门针对代码仓库优化的开发工具。</p>
<p>如果你希望 AI 帮你跨应用执行任务，OpenClaw 的方向比纯编码 Agent 更贴近。</p>
<h3 id="场景四我要长期自动化和记忆">场景四：我要长期自动化和记忆</h3>
<p>这时才考虑 Hermes。</p>
<p>Hermes 的价值不在于“今天帮我写一次代码”，而在于“长期理解我的工作方式，并把经验沉淀下来”。它适合反复发生、跨时间推进、需要记忆和技能积累的任务。</p>
<p>但如果你没有明确的长期自动化需求，就不要为了“看起来更 Agent”而装 Hermes。</p>
<h2 id="为什么不要盲目装-hermes">为什么不要盲目装 Hermes</h2>
<p>Hermes 听起来很吸引人：长期记忆、自我改进、技能沉淀、自动化。问题是，这些能力都需要治理成本。</p>
<p>长期记忆如果没有边界，会变成噪音。技能沉淀如果没有验证，会把错误经验固化。长期自动化如果没有权限控制，会带来安全风险。自我改进如果没有审查机制，会越来越难解释。</p>
<p>所以 Hermes 不是“更高级的编码 Agent”，而是一个更长期、更复杂的 Agent 系统方向。你应该在这些条件成立时再考虑：</p>
<ul>
<li>有明确的长期任务。</li>
<li>有反复出现的流程。</li>
<li>有可验证的自动化结果。</li>
<li>能接受配置、维护和治理成本。</li>
<li>知道哪些权限可以给，哪些不能给。</li>
</ul>
<p>如果只是写代码，先用 Codex 或 Claude Code；如果只是想换模型，先看 OpenCode；如果只是想操作手机电脑，先看 OpenClaw。</p>
<h2 id="推荐组合">推荐组合</h2>
<p>对大多数开发者，我会建议这样组合：</p>
<table>
  <thead>
      <tr>
          <th>需求</th>
          <th>推荐</th>
      </tr>
  </thead>
  <tbody>
      <tr>
          <td>日常写代码</td>
          <td>Codex 或 Claude Code</td>
      </tr>
      <tr>
          <td>想要开源编码 Agent</td>
          <td>OpenCode</td>
      </tr>
      <tr>
          <td>想要多端控制入口</td>
          <td>OpenClaw</td>
      </tr>
      <tr>
          <td>想要长期自动化和记忆</td>
          <td>Hermes</td>
      </tr>
      <tr>
          <td>还没想清楚</td>
          <td>先不要装 Hermes</td>
      </tr>
  </tbody>
</table>
<p>更现实的组合是：</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#282a36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"><code class="language-text" data-lang="text"><span style="display:flex;"><span>Codex / Claude Code：主力写代码
</span></span><span style="display:flex;"><span>OpenCode：开源可换模型备选
</span></span><span style="display:flex;"><span>OpenClaw：设备和聊天入口控制
</span></span><span style="display:flex;"><span>Hermes：等长期自动化需求明确后再引入
</span></span></code></pre></div><p>这样分工会比“全都装上”更清楚。</p>
<h2 id="小结">小结</h2>
<p>这几个工具不是线性排名关系，而是定位不同：</p>
<ul>
<li>Codex 和 Claude Code 更适合写代码。</li>
<li>OpenCode 更适合可换模型、开源、自托管的编码 Agent。</li>
<li>OpenClaw 更适合手机、电脑、聊天入口控制。</li>
<li>Hermes 更适合长期记忆、技能沉淀、自我改进和长期自动化。</li>
</ul>
<p>最终选择标准不是“谁更像 Agent”，而是“我的任务到底是什么”。</p>
<p>如果任务是写代码，优先 Codex / Claude Code。如果任务是开源可控的编码 Agent，选 OpenCode。如果任务是入口控制，选 OpenClaw。如果任务是长期自动化，再认真评估 Hermes。</p>
<p>不要为了“看起来更 Agent”而盲目装 Hermes。工具越强，越需要清楚边界；否则不是效率提升，而是复杂度转移。</p>
]]></content:encoded></item></channel></rss>