Hermes

Hermes

明廷盛 嘻嘻😁

第零章 写在前面

① plugin
② tools ② tools / plugin / mcp
③ skills ③ skills
④ mcp
⑤ memory....

第一章 Plugin

第一节 Tools

  • 正常的Plugin: link
  • 开启 Plugins
HERMES_ENABLE_PROJECT_PLUGINS=true
  • 调试 Tools
HERMES_PLUGINS_DEBUG=1 hermes plugins list

第二节 Hook

Hermes 里 hook 到底有什么用

- pre_tool_call : 工具执行前拦截,可阻止调用。适合权限校验、参数风控、敏感命令拦截。
- post_tool_call : 工具执行后观察。适合记日志、埋点、统计、触发告警。
- pre_llm_call : 在一轮对话开始前给模型“塞上下文”。适合把外部状态、缓存摘要、当前 app 信息注入给模型。
- transform_tool_result : 改写工具结果再交给模型。适合把原始输出标准化、裁剪、脱敏。
- 其他 session / gateway hooks: 更偏生命周期管理,不是业务编排核心。

第二章 MCP

第三章 Skill

编排 任务流:
输入: 帮我看下我昨天做了什么, 顺便规划下今天的任务
调用 xxxskill -> 调用tool① ->思考 ->调用tool②–>输出

  • Hermes Skill 解释: link
  • Skill 和 Tool 的区别 + 创建Skill: link

第一章 skill的基本格式

  • 格式: link
  • metadata:
    1. tool 与 skill 的调用: link (e.g. 如果toolA使用了, 就不调用这个skill)
  • 测试:
hermes chat --toolsets skills -q "Use the X skill to do Y"

第二节 多个skill加载

第三节 Hermes自动创建skill

第四节 下载 与 发布skill

第四章 子Agent

第五章 调试Hermes

  • Session: link

README.md

* dney
- 系统设置
- 隐私与安全性
- 完全磁盘访问权限 ( Full Disk Access )w

示例需求

我对Herms的理解是, 工作流的确定用Skill; 然后skill串联很多的tools
`调用 xxxskill -> 调用tool① ->思考 ->调用tool②-->输出`
tools(plugin注入的)只是工具, 最终让skill去调用
1. 我的理解对吗? 请贴出Hermes的官方文档
2. 对于我的需求, 如果我的理解正确, 那skill很难完成, 因为①scree_time每天能返回什么样的应用是不确定的, 我难道要在skill中这样写吗?

流程开始
①调用screen_time tools获取用户在干什么
②如果 应用有 b站, 调用`b站_tools1`, `b站_tools2`, `b站_tools3` 进行进一步分析
如果应用有chrome浏览器, 调用 `chrome_tools1` .....
③将上述分析内容汇总, 总结告知用户
我想要编排这样的带有拓展的工作流, Hermes如何实现?
你尽可能简洁回复, 不要废话

Skill怎么玩

不能100%完成需求; 但是很灵活

  • 需求的完成情况 和 模型挂钩 (与模型强相关)
2. 你的需求怎么做

- 你这个需求是“动态分支、可扩展编排”, 不要把所有分支硬写死在 skill 里 。
- Skill 可以写成很抽象的策略,例如:
- 先调用 screen_time
- 检查返回的 app 列表
- 对命中的 app,调用对应领域工具
- 汇总结果
- 这在 skill 里是能写的,但它是“指导 agent 思考”, 不是强保证 。

Tool怎么实现

能100%实现, 但是很不灵活

  • 优点: 即使模型的能力很差, 任务也可以完成很好
  • 缺点: 很不灵活, 一点很小的需求, 都要去改代码
如果你要稳定、可扩展
- 最推荐:做一个 编排型 tool ,比如 analyze_daily_app_usage
- 里面做:
1. 调 screen_time
2. 遍历结果里的 app
3. 命中 B站 就调 b站_tools*
4. 命中 Chrome 就调 chrome_tools*
5. 汇总输出
- 这样才是“确定性工作流”
  • Title: Hermes
  • Author: 明廷盛
  • Created at : 2026-06-16 14:41:20
  • Updated at : 2026-06-16 10:52:00
  • Link: https://blog.20040424.xyz/2026/06/16/⏸️VibeCoding/Hermes/
  • License: All Rights Reserved © 明廷盛