乐于分享
好东西不私藏

Windows环境下OpenClaw+Hermes安装部署实战(直接拿去用)

Windows环境下OpenClaw+Hermes安装部署实战(直接拿去用)

Windows跑OpenClaw,WSL跑Hermes,目录怎么划?这套方案我琢磨了好久,感触颇深,分享出来给需要的朋友参考。


为什么这样设计

刚开始折腾OpenClaw和Hermes的时候,我也纠结过这个问题:两个Agent到底该怎么部署?都放Windows?还是都放Linux?

试了一圈下来,发现OpenClaw必须跑在Windows原生环境。原因很简单——微信、钉钉这些国内常用的软件,基本上只有Windows版本。你要做公众号推送、企业微信消息,绕不开Windows。

Hermes只能跑在WSL里。这个工具本身就是基于Linux生态开发的,依赖一堆Linux工具链,硬要搬到Windows上反而麻烦。

所以最后就成了现在这个样子:Windows + WSL双环境。刚开始觉得有点复杂,用久了发现其实挺合理的——各跑各的擅长领域,通过共享目录通信,互不干扰。

下面这套目录结构,就是在这个过程中慢慢摸索出来的。


目录结构

先看一下整体的目录布局:

D:\

├─ Hermes\                           # Hermes程序目录(WSL中访问)

│   └─ workspace\                   # Hermes工作空间

└─ AI_Workspace\                     # 【全局统一共享根目录】

    │

    ├─ Hermes_Work\                 # Hermes私有(WSL独写)

    │   ├─ skills\                  # Hermes专属技能

    │   ├─ memory\                  # Hermes记忆库

    │   ├─ logs\                    # 运行日志

    │   └─ cache\                   # 临时缓存

    │

    ├─ OpenClaw_Work\               # OpenClaw工作目录(Windows端)

    │   ├─ brands\                  # 多项目内容资产

    │   ├─ skills\                  # OpenClaw技能库

    │   ├─ platforms\               # 各平台/API配置

    │   ├─ memory\                  # OpenClaw记忆库

    │   └─ drafts\                  # 待审核输出

    │

    └─ Public_Resource\              # 公共共享区(双方读写)

        ├─ queue\                    # 任务队列(Hermes写入→OpenClaw读取)

        ├─ results\                  # 执行结果(OpenClaw写入→Hermes读取)

        ├─ assets\                   # 共享素材(图片、文档等)

        ├─ templates\                # 通用模板

        └─ video\                    # 视频/多媒体素材

大概就是这样。看起来有点多,但其实逻辑很清晰:私有的各自管,共享的放一起


每个目录是干嘛的

D:\Hermes\ — Hermes程序目录

这个目录放Hermes的程序文件和workspace。之所以单独放在D盘根目录,是因为WSL访问Windows文件需要通过/mnt/d/这个挂载点。

把Hermes放在D:\Hermes\,在WSL里对应的路径就是/mnt/d/Hermes,比较短,配置起来方便。而且程序和我的工作数据分开,以后升级Hermes也不会影响到其他东西。

AI_Workspace\OpenClaw_Work\ — OpenClaw工作区

如果你之前已经在用OpenClaw,应该有个D:\openclaw\目录。把这个文件夹整个拖到AI_Workspace\OpenClaw_Work\里面就行,原来的配置、cron作业、技能都不用改,迁移成本几乎为零。

这里面包含了: – brands/:不同品牌或项目的内容资产 – skills/:OpenClaw的技能库 – platforms/:各个平台的配置(比如微信公众号的appid什么的) – memory/:OpenClaw的记忆库 – drafts/:待审核的输出内容

AI_Workspace\Public_Resource\ — 公共共享区

这是两个Agent唯一的”见面地点”,其他目录它们是不会互相访问的。

里面有三个重要的子目录: – queue/:任务队列。Hermes理解完用户需求后,会在这里创建一个JSON文件,OpenClaw检测到新文件就开始执行 – results/:执行结果。OpenClaw完成任务后,把结果写到这里,Hermes读取后反馈给用户 – assets/templates/video/:一些共享的素材、模板、视频文件

这种设计的好处是,两个Agent不会同时操作同一个文件,避免了冲突。出了问题也容易排查——要么查queue,要么查results,范围很小。


它们是怎么通信的

简单来说,就是通过queue和results这两个文件夹传递消息。

用户在Hermes那边说”帮我写一篇关于AI的文章”,Hermes理解完需求后,会在queue目录下创建一个类似task-20260424-001.json的文件,里面写着任务的具体要求。

OpenClaw会一直监控queue目录,发现新文件后就开始干活——调用相应的技能、生成内容、处理数据等等。做完之后,把结果写到results目录下的一个JSON文件里。

Hermes检测到results里有新文件,就读取出结果,然后告诉用户”文章已经写好了”。

整个过程就像传纸条一样,两个人不直接对话,而是通过中间的信箱传递信息。这样做的好处是,两边不会同时操作同一个文件,不会出现冲突。

需要注意的规则: – Hermes只负责往queue里写任务,从results里读结果 – OpenClaw只负责从queue里读任务,往results里写结果 – 不要让它俩直接访问对方的私有目录,容易乱


这么设计有什么好处

用了这段时间,感觉主要有这么几个优点:

第一,稳定。 两个Agent各有自己的地盘,配置文件、日志、缓存都是独立的,不会出现这个改了那个受影响的情况。

第二,好排查问题。 如果Hermes出问题了,就去Hermes_Work/logs/看日志;OpenClaw有问题,查它自己的日志;要是通信出了问题,就看queue和results这两个目录。范围很明确,不用到处找。

第三,可以并行处理多个任务。 queue目录里可以同时放好几个任务文件,OpenClaw可以一个一个处理,也可以根据需要并行处理。对于我这种有多个公众号要运营的人来说,这点挺实用的。


能拿来做什么

我现在主要用它来做内容自动化,比如:

每天早上让它自动搜索AI行业的热点,然后根据热点写几篇文章,再生成封面图,最后推送到公众号的草稿箱。我只需要早上打开草稿箱,看看有没有想发的,点一下发布就行。

除了内容创作,还可以做数据处理——连接数据库提取销售数据,自动生成报表,然后通过邮件发送。或者做情报收集——定义好采集规则,让它定期抓取竞品信息,整理成报告。

底层都是同一套目录结构和通信机制,只是调用的技能不一样。你可以根据自己的需求,组合不同的技能来实现各种自动化流程。


适合什么样的人

如果你觉得以下情况符合你,那这套方案可能适合:

  • 需要在Windows环境下同时运行OpenClaw和Hermes
  • 有多个任务需要并行处理(比如多个公众号、多个项目)
  • 有一些重复性的工作想自动化(日报、周报、数据监控之类的)
  • 对WSL有一定了解,能自己搭建基本环境

但如果只是偶尔用一下,或者没有WSL环境,那可能就没必要搞这么复杂了。毕竟配置还是需要花点时间的。


具体怎么部署

如果你决定要试试,可以按照下面的步骤来:

第一步,装WSL。 在PowerShell里运行wsl --install,等它安装完成。如果已经装了可以跳过。

第二步,建目录。 按照上面给出的目录结构,在D盘创建所有文件夹。可以用命令行,也可以直接在资源管理器里新建。

第三步,装OpenClaw。 在Windows环境下安装OpenClaw,然后把工作目录配置为AI_Workspace\OpenClaw_Work\。先跑个简单的任务试试,确保能正常工作。

第四步,装Hermes。 在WSL环境里安装Hermes,程序目录设为/mnt/d/Hermes/,然后配置好queue和results的监控路径。

第五步,联调测试。 让Hermes创建一个任务文件,看看OpenClaw能不能检测到并执行,执行完后结果能不能正确写回。这一步很重要,确保通信正常。

建议一步一步来,每完成一步都测试一下,这样出问题了好定位。


最后说几句

这套目录结构用了一段时间,整体来说还是挺顺手的。核心思路就是:OpenClaw跑Windows,Hermes跑WSL,通过queue和results单向通信

刚开始可能会觉得有点复杂,但用习惯了就会发现,这种隔离的设计确实能避免很多问题。特别是当你有多个项目要同时运行时,各管各的目录,不会互相影响。

如果你是第一次部署,建议先从单个Agent开始,比如先只用OpenClaw,熟悉了之后再加入Hermes。循序渐进,不容易出错。

希望这套方案对你有帮助。如果有问题,欢迎交流。


华崟智能 | 企业AI数字化转型专家让每一家企业都拥有AI数字员工