AI-Agent-Hermes-agent-gateway源码概要

hermes agent

1. 主要是 provider --LLM 
2. 多渠道支持 --gateway 
3. 工具注册模式 tool
4. skill的方式

hermes 插件机制
-01. memory 
-02. context_engine
    hermes memory
       memory_provider.py  memory_manager.py 
	   plugins/memory 
	from plugins.context_engine import discover_context_engines, load_context_engine
	 agent/context_engine.py 抽象的基类
     agent/context_compressor.py 实现了默认的上下文压缩

hermes agent 插件系统

 采用动态导入+模块级注册的插件架构,无基类,纯 鸭子类型(Duck Typing)是程序设计中的动态类型机制

步骤

01.初步了解 功能列表
02.核心机制和原理
03.演化机制
     字节跳动 推出的 DeerFlow
    通过 entry_points 获取所有注册的插件。
    用 frozenset 记录已加载的插件名,避免重复加载。
    用 pkgutil 作为后备方案,自动发现某目录下的模块(当没有显式入口点时) 
 2025年 03月 Manus凭借“通用AI智能体”产品横空出	 
 2026年 03月 openclaw

记忆管理和技能管理

  推理时学习 基于强化学习的训练型自进化
   进化记忆系统
  进化出问题了会怎样?--识别   
数据-data : trajectory 轨迹-从日常交互中持续提炼技能	
	  持续学习,通过网络搜索、代码提取和记忆调用来获取新技能;
	  自我反思,通过内省和知识图谱探索来精炼已有技能。
	     失败驱动的发现机制 分析失败原因,
		                     判断是因为缺少某种能力,还是现有技能用错了场景。
		                     前者触发新技能的生成,后者触发对现有技能边界条件的修
hermes-agent 做的一件事我觉得挺有价值:
把”持续学习”从口号变成了代码。几个机制层层叠加,才构成一个真正能”grow with you”的系统,单独拿出来任何一个都不够。
	hermes 的 nudge 机制隐约在往这个方向走,但 nudge 是外部注入的,不是 agent 自己发起的。
    hermes-agent 有技能自改进机制

nanobot 的 Dream 机制的演化
      现在 Dream 按 cron 定时触发(默认每 2 小时一次),本质上是被动的。
      把”记忆整合”变成 agent 可以主动调用的工具呢?让它在感觉”我刚学到了重要的东西”时自己触发蒸馏。
    nanobot 的 skill-creator 可以更新技能,但靠用户触发,不是自动的
      如何从零构建高质量技能库,
	  已有技能的描述优化  
	  生态构建-团队共享的知识积累系统
	没有人介入时,agent 能不能主动感知到自己偏了、主动触发状态整合

发布

数据真不真实,迭代快不快-- 宣发和研发同步走
	别人发布模型是,闭门造车 → 开发布会 → 上线慢慢改
    MiMo 是匿名实测 → 收数据 → 迭代模型 → 再官宣 

hook plugins 
provider gateway tool skill

gateway

   1.1.gateway/platforms/base.py
     class BasePlatformAdapter(ABC)
	     connect   disconnect send  edit_message
		 send_image  send_animation 
         set_message_handler
      消息的类型 
        class MessageType(Enum):
             """Types of incoming messages."""
             TEXT = "text"
             LOCATION = "location"
             PHOTO = "photo"
             VIDEO = "video"
             AUDIO = "audio"
             VOICE = "voice"
             DOCUMENT = "document"
             STICKER = "sticker"
             COMMAND = "command"  # /command style
     class MessageEvent    class SendResult:
      from gateway.platforms.base import (
          BasePlatformAdapter,
          MessageEvent,
          MessageType,
          SendResult,
          SUPPORTED_DOCUMENT_TYPES,
          cache_document_from_bytes,
          cache_image_from_url,
          cache_audio_from_bytes,
          cache_image_from_bytes,
      )
	  
	1.2 from gateway.config import Platform, PlatformConfig
	    class Platform(Enum):  
		class HomeChannel:
		class PlatformConfig:
		lass GatewayConfig: Manages all platform connections, session policies, and delivery settings.
	1.3 gateway/platforms/feishu.py
	
	2.1.gateway/delivery.py
	2.2.gateway/session.py
	
	
	3. gateway/run.py
           This module provides:
          - start_gateway(): Start all configured platform adapters
          - GatewayRunner: Main class managing the gateway lifecycle

给大模型的一些内容

GATEWAY_SECRET_CAPTURE_UNSUPPORTED_MESSAGE = (
"Secure secret entry is not supported over messaging. "
"Load this skill in the local CLI to be prompted, or add the key to ~/.hermes/.env manually."
 )

 chat_id 
 message_id
  等别人把能做的都做了,把能占的坑都占了,到时候你做到了,还有哪些价值--新动能变成新基建(淘汰和演化)

参考

 https://zhuanlan.zhihu.com/p/2025649855939223991 
posted @ 2026-04-16 08:33  辰令  阅读(70)  评论(0)    收藏  举报