HoRain云--Hermes Agent 插件开发与生产实践
📅 2026/7/9 17:44:38
👁️ 次浏览
HoRain 云小助手个人主页⛺️生活的理想就是为了理想的生活!⛳️ 推荐前些天发现了一个超棒的服务器购买网站性价比超高大内存超划算忍不住分享一下给大家。点击跳转到网站。目录⛳️ 推荐插件开发入门实例Hook 系统实例可用的 Hook 点注册自定义工具实例从 OpenClaw 迁移实例主要概念对照生产环境最佳实践安全清单实例实例Token 成本控制实例多 Profile 网关监控实例更新策略实例本章面向进阶用户如何通过插件系统扩展 Hermes、如何从 OpenClaw 迁移以及将 Hermes 部署到生产环境的安全与成本最佳实践。插件开发入门Hermes 支持三种类型的插件通用插件工具 Hook、记忆提供者、上下文引擎。实例# 交互式管理已安装插件hermes plugins# 命令行管理hermes plugins listhermes plugins install pathhermes plugins enable namehermes plugins disable name可以在仪表盘 管理插件使用以下命令启动 Dashboard仪表盘hermes dashboard浏览器打开仪表盘打开左侧插件列表可以看到已安装的插件Hook 系统最常用的插件能力是 Hook——在 Agent 生命周期的关键节点注入自定义逻辑实例# 文件路径插件目录/logging_plugin.py# 简单插件示例记录所有 LLM 调用from hermes.plugins import Plugin, hookclass LoggingPlugin(Plugin):name logging-pluginhook(pre_llm_call)async def before_call(self, ctx):# 每次 LLM 调用前触发print(f[LOG] 即将调用 LLM当前上下文长度{len(ctx.messages)})hook(post_llm_call)async def after_call(self, ctx, response):# 每次 LLM 调用后触发print(f[LOG] LLM 调用完成回复长度{len(response.content)})可用的 Hook 点Hook触发时机典型用途pre_llm_callLLM 调用前记录上下文、修改 Promptpost_llm_callLLM 调用后记录响应、统计分析pre_tool_call工具调用前可拦截/修改权限校验、参数过滤post_tool_call工具调用后结果审计、日志记录on_message_received收到用户消息时消息预处理、敏感词过滤on_session_start会话开始时初始化资源、注入上下文on_session_end会话结束时清理资源、生成摘要注册自定义工具通过插件为 Agent 添加全新的工具能力实例# 文件路径插件目录/my_tools.py# 注册自定义工具——Agent 可以像调用内置工具一样使用它from hermes.plugins import Pluginclass MyPlugin(Plugin):name my-toolsdef register_tools(self, ctx):# 注册自定义工具Agent 在系统提示词中可见ctx.register_tool(namemy_custom_tool,description这个工具做某件事当用户需要 X 时使用,parameters{type: object,properties: {input: {type: string,description: 输入参数说明}},required: [input]},handlerself.my_tool_handler)async def my_tool_handler(self, **kwargs):# 工具的实际执行逻辑input_text kwargs.get(input, )# ... 处理逻辑 ...return {result: done}从 OpenClaw 迁移如果你正在使用 OpenClaw官方提供了零停机迁移方案实例# 导出 OpenClaw 配置openclaw export --format hermes openclaw-config.json# 导入到 Hermeshermes import --from openclaw openclaw-config.json# 验证迁移结果hermes doctor主要概念对照概念OpenClawHermes代理定义JSON Agent 配置SOUL.md config.yaml工作流程手动编写 YAML 流程技能SKILL.md记忆后端外部数据库内置 SQLite 可插拔技能/工具代码插件Markdown 技能文件多实例多进程配置Profile 系统生产环境最佳实践安全清单生产部署时的推荐安全配置实例# 文件路径~/.hermes/config.yaml# 生产环境推荐安全配置terminal:backend: docker # 必须隔离 Agent 命令执行环境approvals:mode: smart # 危险命令需审批或 manual 更严格cron_mode: deny # 定时任务遇到危险命令默认拒绝security:redact_secrets: true # 日志中自动脱敏敏感信息默认开启环境变量中的访问控制实例# 文件路径~/.hermes/.env# 生产环境访问控制配置GATEWAY_ALLOW_ALL_USERSfalse # 绝不允许所有用户TELEGRAM_ALLOWED_USERS你的用户ID # 明确白名单Token 成本控制辅助任务使用更便宜的模型大幅降低运营成本实例# 文件路径~/.hermes/config.yaml# 辅助任务使用独立模型降低 Token 费用auxiliary:background_review:provider: openroutermodel: google/gemini-3-flash-preview # 不必用主模型vision:provider: openroutermodel: google/gemini-2.5-flash-previewsession_search:provider: openroutermodel: google/gemini-3-flash-preview多 Profile 网关监控实例# 同时查看所有 Profile 的网关状态hermes profile list# 批量重启所有网关for profile in coder assistant researcher; do$profile gateway restartdone更新策略一条命令同时更新代码和所有 Profile 的内置技能实例# 一次更新代码 为所有 Profile 同步新内置技能hermes update# → 代码更新12 个提交# → 技能同步# default已是最新# coder2 新增技能# assistant2 新增技能用户修改过的技能永远不会被覆盖。更新只同步内置技能中的新增和变更部分。❤️❤️❤️本人水平有限如有纰漏欢迎各位大佬评论批评指正如果觉得这篇文对你有帮助的话也请给个点赞、收藏下吧非常感谢! Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧
WinFR 界面版 v2.0.0 深度评测:3种扫描模式实战对比与恢复率分析当你在Windows系统中误删了重要文件,或是遭遇硬盘格式化、分区损坏等突发情况时,数据恢复工具的选择往往决定了文件能否成功找回。WinFR界面版作为微软Windows File Recovery的…
📅 2026/7/9 17:44:38
行业背景与筛选维度说明 在江阴,名表回收市场呈现出蓬勃发展的态势。随着人们生活水平的提高,名表的拥有量逐渐增多,而对于闲置名表的处理需求也日益增长。市场上名表回收机构众多,格局较为复杂,有正规的实体门店&…
📅 2026/7/9 17:43:37
博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…
📅 2026/7/9 17:43:37
案例一:时间错位导致的金属不平衡
背景
某印尼红土镍矿HPAL项目,月报显示Ni回收率异常偏高(106%),明显违反物质守恒定律。
错误过程 步骤 操作 问题 1 当月矿石进料量取自地磅系统(截止日期为每月最后一天24:00) 正确 2 当月MHP产品产量取自包装车间日报(截止…
📅 2026/7/9 18:46:24
如何用backgroundremover实现高效背景移除?5个实用技巧轻松上手 【免费下载链接】backgroundremover Background Remover lets you Remove Background from images and video using AI with a simple command line interface that is free and open source. 项目地…
📅 2026/7/9 18:46:24
🚀 30款热门AI模型一站整合,DeepSeek/GLM/Qwen 随心用,限时 5 折。 👉 点击领海量免费额度 在自动化生产线和物流分拣系统中,皮带输送机是实现物料连续、高效传输的核心设备。然而,当输送路径需要改变方…
📅 2026/7/9 18:46:24
Windows苹果触控板终极优化:mac-precision-touchpad完整使用指南 【免费下载链接】mac-precision-touchpad Windows Precision Touchpad Driver Implementation for Apple MacBook / Magic Trackpad 项目地址: https://gitcode.com/gh_mirrors/ma/mac-precision-t…
📅 2026/7/9 18:46:24
1. 项目概述:为什么需要C操作Word文档?如果你是一名C开发者,曾经遇到过需要自动化生成报告、批量处理合同模板,或者将业务数据动态填充到格式复杂的Word文档中的需求,你可能会感到一丝头疼。传统的做法无外乎几种&…
📅 2026/7/9 18:46:24
openEuler-bootstrap安全指南:构建安全可靠的引导包 【免费下载链接】openEuler-bootstrap Build new openEuler architecture bootstrap rpms from scratch 项目地址: https://gitcode.com/openeuler/openEuler-bootstrap
前往项目官网免费下载:…
📅 2026/7/9 18:45:23
掌握Docker多阶段构建镜像优化技巧在容器化技术日益普及的今天,Docker已成为开发与运维领域的基石工具。然而,随着应用复杂度提升,构建出的Docker镜像体积庞大、层数繁多、安全性欠佳等问题逐渐凸显,直接影响着部署效率、传输速度…
📅 2026/7/9 0:00:13
在当今快速迭代的IT运维与开发领域,自动化已成为提升效率、保障一致性的核心支柱。Ansible作为一款强大的IT自动化工具,以其无代理、简单易用的特点广受欢迎。而AWX,作为Ansible上游项目提供的企业级Web界面、API及任务引擎,则将A…
📅 2026/7/9 0:00:13
1. 项目概述:当动画成为性能瓶颈在Unity项目开发的中后期,尤其是涉及大规模场景、海量角色或复杂特效时,动画系统往往会成为性能的“阿喀琉斯之踵”。传统的骨骼动画(Skinned Mesh Renderer)虽然功能强大,但…
📅 2026/7/9 0:00:13
1. 项目背景与核心需求 在嵌入式系统开发中,快速精确的数据检索是一个常见但极具挑战性的需求。特别是在工业控制、医疗设备和物联网终端等场景下,系统往往需要在毫秒级时间内完成关键参数的读取和写入操作。传统基于Flash存储的方案存在擦写次数有限、操…
📅 2026/7/9 15:10:35
1. 工业电流环信号传输的基础认知在工业自动化领域,4-20mA电流环传输技术已经持续服役超过半个世纪。这种看似简单的信号传输方式之所以能经久不衰,核心在于其独特的抗干扰能力——电流信号在长距离传输时几乎不受线路电阻和电压波动的影响。我曾在化工厂…
📅 2026/7/9 14:14:01
最近在项目里尝试用 YOLO 做目标检测,从环境搭建到模型训练,再到推理部署,整个过程踩了不少坑。网上的资料虽然多,但要么版本老旧,要么步骤零散不成体系,对于刚入门的新手来说,很容易卡在某个环…
📅 2026/7/9 15:10:36
目录
第一步:选对模板,省心一半
第二步:打开扫码点餐功能
开启功能按钮
桌台管理与桌码生成
第三步:个性化设计,打造品牌感
调整点餐页面
设置点餐规则 你还在让顾客站着排队点餐吗?2025年ÿ…
📅 2026/7/9 15:10:36
在业务中快速构建一个能理解私有文档、准确回答专业问题的智能助手,是很多开发团队面临的共同挑战。传统方案往往需要从零开始搭建复杂的 RAG(检索增强生成)系统,涉及文档解析、向量化、检索、大模型调用等多个环节,整…
📅 2026/7/9 15:10:36
FAE放射组学分析工具:医学影像特征探索的完整解决方案 【免费下载链接】FAE FeAture Explorer 项目地址: https://gitcode.com/gh_mirrors/fae/FAE
你是否曾经面对海量医学影像数据感到无从下手?想要从CT、MRI等影像中提取有价值的定量特征&#…
📅 2026/7/9 15:10:36