[开源框架-实战]用 Hermes Agent 搭一个微信播报机器人

简介: 30 分钟,零 Python 代码,搭出一个每天早上 9 点把 GitHub Trending 推送到你微信的机器人。顺带把 Hermes 的 Skill、Gateway、Cron 四个招牌能力全用上。

30 分钟,零 Python 代码,搭出一个每天早上 9 点把 GitHub Trending 推送到你微信的机器人。顺带把 Hermes 的 Skill、Gateway、Cron 四个招牌能力全用上。


一、目标长什么样

明天早上 9 点,你的微信收到:

  📰 GitHub Trending 今日热门(中文摘要)

  1. xxx/yyy ⭐ 1.2k
     一句话摘要:xxx 是一个 ……

  2. aaa/bbb ⭐ 980
     一句话摘要:……

  ……

每天自动跑,你出门关电脑也不影响。如果你还不熟 Hermes 的设计,可以先看 框架详解篇 再回来。


二、步骤 1:装好 Hermes(5 分钟)

# macOS / Linux / WSL2
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

# 跟着向导走完
hermes setup

hermes setup 会问你选哪个 LLM 提供商。新手建议

推荐选 OpenRouter:
  ✓ 一个 Key 用 200+ 模型,方便对比
  ✓ 充值 $5 起,按用量扣
  ✓ 可以选便宜的 Llama / Qwen 模型先跑通流程

  注册:https://openrouter.ai
  拿到 Key 后填到 hermes setup 向导里

三、步骤 2:把微信接上(10 分钟)

微信通道基于腾讯 iLink Bot API,采用长轮询(Long Polling)通信,不需要公网地址、不需要 Webhook,在国内网络环境下开箱即用。

注意:这是个人微信通道(iLink Bot 身份),不是企业微信(WeCom)。企业微信请使用 WeCom 适配器。

3.1 安装依赖

pip install aiohttp cryptography

# 可选:终端二维码渲染支持
pip install hermes-agent[messaging]

3.2 扫码绑定微信

hermes gateway setup

向导会列出可用平台,选择 Weixin。接下来:

1. 向导从 iLink API 申请一个二维码
2. 二维码显示在终端(或打印一个 URL 供你扫码)
3. 打开手机微信 → 扫一扫 → 确认登录
4. 向导自动保存凭据到 ~/.hermes/weixin/accounts/

看到 "微信连接成功,account_id=xxxxx" 就通了。

3.3 配置环境变量

扫码完成后,编辑 ~/.hermes/.env

# 必填:扫码后自动获得的 account_id
WEIXIN_ACCOUNT_ID=your-account-id

# Token 通常由扫码自动保存,一般不用手动填
# WEIXIN_TOKEN=your-bot-token

# 访问策略(可选)
WEIXIN_DM_POLICY=open
# WEIXIN_ALLOWED_USERS=user_id_1,user_id_2

# 首页频道(可选,用于 cron 定时推送的目标)
WEIXIN_HOME_CHANNEL=chat_id
WEIXIN_HOME_CHANNEL_NAME=Home

3.4 启动网关

hermes gateway

适配器会恢复已保存的凭据,连接 iLink API,开始长轮询接收消息。

测试一下:在微信里找到你的 iLink Bot,给它发"你好"。能回应就算通了。

⚠️ 常见坑与注意:
  • iLink Bot 身份(xxx@im.bot)≠ 普通微信账号,
    通常无法被邀请进普通微信群,群消息功能受限
  • 主要使用场景是 DM(私聊),这是最稳定可靠的
  • Token 别提交到 Git
  • 如果报 "Another local Hermes gateway is already using this Weixin token",
    说明已经有一个实例在跑,先停掉再启动
  • Session 过期(errcode=-14)时需要重新扫码:
    hermes gateway setup

四、步骤 3:让 Agent 自学一个 Skill(10 分钟)

这是 Hermes 最有意思的地方——你不写代码,你只是和它对话

打开 hermes 进入 CLI,告诉它:

你:帮我写一个流程,包含 4 步:
    1) 用 curl 抓 https://github.com/trending
    2) 从 HTML 里提取前 5 个仓库:名字、简介、星数
    3) 把每个仓库的简介翻译成中文,写一句话摘要
    4) 把结果整理成 Markdown 输出,每个仓库一段

    现在跑一遍给我看看效果。

Agent 会自己:

1. 调 shell 工具:curl + grep/awk 把 HTML 处理出来
2. 调 LLM:翻译 + 写摘要
3. 整理 Markdown
4. 把结果打印出来给你

看一下效果对不对。可能第一遍格式不太合心意,比如星数没显示、摘要太长。直接告诉它:

你:摘要再短一点,每个仓库一句话就够。
    星数用 ⭐ 表情显示。

Agent 改完再给你看。反复几次直到你满意。然后说:

你:完美。把这整个流程存成一个 Skill,命名为 "github-trending-zh"。

Agent:✓ Skill "github-trending-zh" 已保存到 ~/.hermes/skills/
        触发方式:自然语言提到"GitHub trending 摘要"或直接 /skill github-trending-zh

这一步发生了什么?Hermes 把刚才对话里你认可的整套动作(命令序列、Prompt、格式偏好)打包成了一个可重复调用的 Skill。下次你说一句"跑一下 trending",它就会照着这个 Skill 干,不用再教。


五、步骤 4:让它每天 9 点自动跑(5 分钟)

Hermes 自带 cron 调度,还是用自然语言

你:每天早上 9 点(北京时间),跑一次 github-trending-zh,
    结果通过微信发给我。

Agent:✓ 已加入定时任务
       Cron 表达式:0 9 * * * (Asia/Shanghai)
       投递目标:微信(iLink Bot)
       下次执行:明天 09:00:00 (CST)

完事。关机也不影响——只要 hermes gateway 进程在运行(建议跑在你的 $5 VPS 上),任务到点就会自动执行。

微信通道支持 WEIXIN_HOME_CHANNEL 配置,cron 推送会自动发到这个频道。你也可以在对话中指定具体的聊天目标。

想确认一下?

你:列一下我现在的所有定时任务。

Agent:当前定时任务(1 个):
       ├── github-trending-zh
       │   时间:0 9 * * * (Asia/Shanghai)
       │   投递:微信
       │   状态:✓ 已启用

六、微信通道的技术细节(了解即可)

如果你好奇微信通道底层做了什么,这里简要说明:

📡 长轮询通信
   不需要公网 IP / Webhook / WebSocket
   Hermes 主动轮询 iLink API,35 秒超时
   断线自动重连 + 指数退避

🔐 AES-128-ECB 加密 CDN
   微信媒体文件走加密 CDN
   上传/下载自动加解密,你不需要管

📝 Markdown 原生支持
   微信客户端直接渲染 Markdown
   标题、表格、代码块保持原格式

✂️ 智能分片
   4000 字符以内的消息保持单条
   超长消息在段落/代码块边界自动切分
   分片间隔 0.3s,防止限流

⌨️ 输入状态
   Agent 处理消息时自动显示"正在输入…"

🔒 安全特性
   SSRF 防护:出站 URL 校验
   5 分钟滑动窗口去重
   Token 锁:同一 Token 只允许一个网关实例

七、这个例子用到了 Hermes 的哪些招牌能力

✅ Skill 自动沉淀
   第一次教会它做这件事,永久存下来变成"能力"。
   下次你说一句话就能复用。

✅ 网关分发
   同一个 Agent,结果可以送微信、Telegram、Discord、Slack 任何平台。
   想换平台?改一行不用重写。

✅ 内置 cron
   自然语言 → 定时任务,不用碰 crontab、不用搞 systemd timer。

✅ 多后端(如果你愿意)
   想让它跑在 Modal/Daytona 上、关电脑也不影响?换一下 hermes tools 配置。

整个过程没写一行 Python。这是 Hermes 区别于 LangChain / CrewAI 的地方——它假设 Agent 自己会写代码,你只需要描述目标


八、想再玩深一点?

试试这些改造:

  → 把 GitHub Trending 换成 HackerNews / Product Hunt
    (改 Skill 的提示词就行)

  → 加一个"只推送 AI / Web 相关"的过滤
    (让 Agent 在 Skill 里加判断)

  → 早上 9 点推 Trending,
    晚上 9 点推一份"今日你在 GitHub 上的活动总结"
    (加一个 Skill,加一条 cron)

  → 把推送同时发到微信 + 自己的邮箱
    (网关支持多平台并行)

  → 让家人也能用:WEIXIN_DM_POLICY=open
    任何人私聊你的 Bot 都能得到播报

每个改造都是和 Agent 对话,不是改代码。这就是 Hermes 的玩法。


九、什么时候这套方案不合适

❌ 别用 Hermes 做这些:
  • 给客户的生产产品
    (Skill 自我修改 → 行为不可预测 → 出锅没法回滚)
  • 多用户共享的服务
    (记忆是单用户深度建模,多人会互相污染)
  • 严要求确定性的任务(金融对账、医疗)
    (概率系统不适合)
  • 需要进普通微信群自动回复的场景
    (iLink Bot 身份通常收不到普通群消息)

✅ 但这些场景闭眼用:
  • 个人助手 / 信息聚合
  • Hobby 项目 / 自动化你自己的工作流
  • 内部小工具(自己用 + 信得过 Skill 漂移)
  • 通过微信 DM 做个人播报、提醒、问答

声明:本博客内容素材来源于网络,文章由AI技术辅助生成。如有侵权或不当引用,请联系作者进行下架或删除处理。


参考

目录
相关文章
|
1月前
|
自然语言处理 JavaScript 前端开发
《Python脚本到OpenClaw技能:解锁Agent原生能力的转换指南》
本文深入探讨了将Python脚本转换为OpenClaw技能的核心逻辑与完整实践路径,指出这一过程本质是从"命令式执行"到"意图式响应"的范式转变,而非简单的代码迁移。文章重点解析了OpenClaw独特的三级渐进式披露技能架构,详细阐述了脚本解构、目录结构创建、说明文件编写、脚本适配、依赖管理及测试发布的全流程操作要点,同时分享了提升技能触发准确率、利用状态管理实现复杂交互的高级技巧与常见开发陷阱。最后,文章揭示了技能转换对提升脚本价值、参与社区贡献及个人技术变现的重要意义。
210 8
|
28天前
|
人工智能 供应链 算法
从“小单困局”到供应链Agent:成本结构、博弈逻辑与人机协同的技术推演
本文剖析C2M服装供应链中“小单困局”的本质——切换成本在极小批量下不可摊销的数学必然。通过Agent集群实现成本透明化、智能拼单与品类感知,推动供应链从零和砍价转向正和协同。人机分工明确:AI做“数字包工头”,人当“关系架构师”。(239字)
|
4天前
|
人工智能 安全 前端开发
面试官问:什么是 Harness 工程?AI Agent 时代,测试人必须补上的新能力
Harness工程是AI Agent时代的“工作台”,聚焦为其构建稳定、可控、可验证的工程环境。它涵盖上下文管理、工具调用、沙箱权限、测试验证、日志观测与反馈回路,解决Agent在真实项目中因缺上下文、缺工具、缺反馈、缺边界导致的失控问题。本质是让Agent“能做事、做得对、出错可修复”。
|
1月前
|
人工智能 安全 开发工具
[理论篇-12]Multi-Agent(多智能体系统)—— 不是"AI 越多越好",而是"什么时候该让 AI 拆开干"
用最朴素的话讲清楚"多 Agent 系统"是什么、它解决了什么问题、为什么 2024 年大家狂吹它、2025 年又有人喊"千万别建多 Agent",到 2026 年才终于摸清门道。读完这一篇,不管你是开发者、产品经理、运营、还是只是听过别人提起"我们公司在搞多智能体系统"的旁观者,都能用自己的话把这件事讲清楚——它什么时候是金矿,什么时候是大坑,什么时候你只是被一个名词忽悠了。
272 0
|
1月前
|
人工智能 监控 安全
[理论篇-14]大模型评估与可观测性——如何知道你的 AI 到底行不行
用最通俗的话讲清楚,为什么 AI 应用上线前必须"考试"、上线后必须"体检",以及 2025-2026 年业界最实用的评估和监控方法。不管你是开发者、产品经理、还是企业管理者,读完这篇,你就知道怎么判断一个 AI 系统"到底好不好"。
188 3
|
4天前
|
人工智能 缓存 运维
AI智能体协同实战:Hermes Agent+Claude Code接入阿里云百炼Token Plan完整教程
2026年,AI智能体已经从单一代码助手,进化为能够协同工作的虚拟开发团队。Hermes Agent与Claude Code的组合,成为当前最成熟、最高效的AI开发搭档:Hermes Agent负责任务规划、需求拆解、记忆沉淀与流程调度,扮演技术主管角色;Claude Code专注代码生成、文件修改、命令执行与工程落地,承担核心开发工作。二者配合,可实现从需求分析到代码落地的全流程自动化,大幅提升研发效率。
652 3
|
1月前
|
人工智能 开发工具 开发者
[理论篇-9]Skill系统与能力封装
用最直白的话讲清楚 **Skill(技能)** 是什么、为什么 2025 年下半年它从一个小众概念变成了 AI 行业的新基建,以及它会怎么改变你和 AI 的相处方式——不管你是开发者、产品经理、运营、还是只想让 AI 多帮自己干点活的普通用户。
407 4
|
29天前
|
人工智能 前端开发 JavaScript
告别排版烦恼,让公众号写作效率翻倍:TypeZen 完全指南
工欲善其事,必先利其器。TypeZen 的目标很简单:**让公众号创作者回归内容本身,把排版交给工具**。 如果你也是 Markdown 的重度用户,或者正在为公众号排版效率发愁,不妨试试 TypeZen。
260 1
告别排版烦恼,让公众号写作效率翻倍:TypeZen 完全指南
|
4天前
|
存储 SQL 安全
【Java并发编程】JMM Java内存模型:原子性、可见性、有序性、happens-before原则(附《思维导图》+《面试高频考点清单》)
Java内存模型(JMM)是Java并发编程的基石,抽象定义主内存与线程工作内存的交互规则,系统解决可见性、原子性、有序性三大核心问题,并通过happens-before、volatile、synchronized等机制保障多线程安全与跨平台一致性。
|
1月前
|
人工智能 机器人 调度
[理论篇-10]AI 工作流(AI Workflow)—— 让 AI 像流水线一样干活 ⚠️ 已逐步被多 Agent 架构替代
用最直白的话讲清楚什么是 AI 工作流、它和"扔给 AI 一个 Prompt"有什么本质区别、为什么 2025 年之后所有真正能落地的 AI 产品几乎都长成"工作流"的样子——不管你是开发者、产品经理、运营、还是只想自己搭一个 AI 助手的普通用户,这一篇读完都能看懂背后在发生什么。
1571 2