Agent工坊

【Agent工坊】Hermes Agent Skill开发实战:5分钟构建你的第一个自动化技能

【Agent工坊】Hermes Agent Skill开发实战:5分钟构建你的第一个自动化技能

不需要写一行服务端代码,一个YAML文件就能让AI Agent拥有新能力——这就是Hermes Agent的Skill系统。


为什么你需要自定义Skill

AI Agent的价值不在于"能聊天",而在于能执行具体任务。Hermes Agent通过Skill机制,让创业者可以像搭乐高一样,给Agent装上各种自动化能力。


举个例子:你想让Agent每天自动扫描GitHub上Hermes Agent的最新Release,提取changelog,然后生成一篇公众号草稿。传统做法需要写Python脚本、配置定时任务、处理API认证……而用Skill,你只需要一个Markdown文件


今天这篇教程,带你从零构建一个可用的Skill。


Skill文件结构拆解

一个完整的Skill文件是带YAML前置元数据的Markdown文档。最小结构如下:


<hr>
name: my-first-skill
description: 我的第一个Automation Skill
triggers:

  - 用户说"扫描GitHub"
  - 定时任务触发
<hr>


三要素:


字段说明示例
name唯一标识符,用于delegate_task调用github-release-scanner
description简短描述,出现在Agent工具列表里扫描GitHub仓库最新Release
triggers触发条件,支持关键词匹配和cron"检查更新"、"每日早报"

⚠️ 踩坑提醒triggers 中的关键词必须精确匹配用户的完整输入(case-sensitive)。"扫描github"不会匹配"帮我扫描一下 GitHub",除非你在指令段中用自然语言说明匹配意图。


实战:构建一个HN热点监控Skill

假设我们想监控Hacker News上关于AI Agent工具的最新讨论。完整Skill代码如下:


步骤1:创建Skill文件

<hr>
name: hn-ai-agent-scanner
description: 扫描Hacker News上AI Agent工具的讨论,生成热点简报
triggers:

  - 扫描HN热点
  - hn scan
  - AI Agent 行业快讯
<hr>
# HN AI Agent Scanner

你是一个专注于AI Agent赛道的热点监控Agent。

## 执行流程

1. 访问 https://hn.algolia.com/api/v1/search_by_date?query=AI%20agent&tags=story&hitsPerPage=10
2. 过滤最近的5条结果(过去24小时内)
3. 对每条结果,检查标题是否包含关键词:agent、tool、automation、MCP、Claude Code、Hermes、OpenClaw
4. 输出简报,格式:标题 + URL + 在HN上的points/comments数
5. 保存到 ~/ai-neican/research/hn-daily-{date}.md

## 输出格式

# HN AI Agent 赛道日报 | {date}

| 标题 | Points | Comments | 链接 |
|------|--------|----------|------|
| ... | ... | ... | ... |

## 注意事项

- 使用 `terminal` 工具执行 curl 调用 HN API
- API返回JSON,用 Python one-liner 解析
- 如果API无响应,回退到直接访问 news.ycombinator.com


步骤2:在Hermes Agent中加载Skill

将上述内容保存为 ~/.hermes/skills/hn-scanner.md,然后对话中直接说"扫描HN热点",Agent会自动匹配trigger并执行。


你也可以用 delegate_task 在另一个Skill中调用它:


delegate_task(
    goal="扫描HN上AI Agent工具的最新讨论,生成今日简报",
    context="保存到 ~/ai-neican/research/hn-daily-{date}.md",
    toolsets=["terminal", "file"],
    role="leaf"
)


触发与测试

Skill写好后,最简单的测试方式是直接对话。比如:


"扫描HN热点,看看今天有什么AI Agent新工具"


Agent会加载对应Skill,按你定义的流程执行。


调试技巧

# 查看Agent是否加载了你的Skill
ls ~/.hermes/skills/

# 查看Skill被加载时的日志(如果有)
grep "hn-ai-agent-scanner" ~/.hermes/logs/*.log


⚠️ 常见坑:YAML前置元数据必须用 --- 包裹,且前后都不能有空格或多余字符。一个多余的空格会让整个Skill加载失败且没有任何报错


常见踩坑与解决方案

坑1:关键词触发不生效

现象:说了触发词但Agent没反应。


原因:trigger匹配是完全字符串匹配,不含模糊搜索。


解决:在triggers里多用几个变体,覆盖不同说法。


triggers:

  - 扫描HN
  - hn scan
  - 查看HN热点
  - Hacker News 快讯
  - 今天AI圈有什么新闻


坑2:工具权限不足

现象:Skill里写了terminal操作但Agent说"我没有terminal权限"。


原因:Skill自身不控制工具权限,权限由调用方传入。


解决:用delegate_task时确保toolsets包含需要的工具。


delegate_task(
    goal="...",
    toolsets=["terminal", "file", "web"],  # 必须显式授权
    role="leaf"
)


坑3:Skill文件路径错误

现象:Skills目录有文件,但Agent加载不到。


原因:Hermes只扫描 ~/.hermes/skills/ 目录下的 .md 文件,子目录中的文件不会被递归加载。


解决:把所有Skill文件放在 ~/.hermes/skills/ 根目录,或使用软链接。


坑4:output格式不匹配下游

现象:生成的简报格式混乱,下游Skill读不懂。


原因:不同Agent产出的Markdown格式没有统一约定。


解决:在Skill指令中用固定模板约束输出格式,并附上example


## 输出格式(必须严格遵守)

| 标题 | Points | Comments | 链接 |
|------|--------|----------|------|
| OpenAI 发布 GPT-5.5 | 342 | 89 | https://example.com |


高阶技巧:多Skill协作

单Skill能做的事有限,真正的威力在于装配线模式——多个Skill串联:


scanner-skill → 发现热点
     ↓
filter-skill → 筛选值得写的
     ↓
outline-skill → 生成大纲
     ↓
writer-skill → 写出初稿
     ↓
reviewer-skill → 审核打分


每个Skill只做一件事,通过共享Markdown文件传递数据。这就是AI创业内参背后的完整流水线架构。


生产级Skill的3个设计原则

  1. 单一职责:一个Skill只做一个任务,方便测试和替换
  2. 文件契约:输入和输出都落在Markdown文件,不依赖内存状态
  3. 容错输出:即使部分步骤失败,也要输出部分结果,不崩溃

总结

Hermes Agent的Skill系统把"写自动化脚本"变成了"写Markdown指令"。对于AI创业者来说,这意味着:


  • 零编程门槛:不需要Python/Node.js,会写Markdown就行
  • 可组合:多个Skill像乐高一样拼出完整流水线
  • 即时生效:修改Skill文件后下一次对话立即生效,无需重启
  • 可分享:Skill文件就是知识资产,可以交易和复用

行动建议:现在就打开编辑器,把你日常重复做的一件事(比如检查数据、整理信息、生成报告)写成一个Skill。5分钟后,你就拥有了第一个"AI员工"。


#AI创业 #HermesAgent #Skill开发 #一人公司 #AI自动化


本文由AI辅助创作,经人工审核编辑发布