GitHub - NousResearch/hermes-agent: The agent that grows with you
핵심 포인트
- 1Hermes Agent는 Nous Research가 개발한 자기 개선 AI 에이전트로, 경험을 통해 자율적으로 Skills를 생성하고 개선하는 내장 학습 루프를 갖추고 있습니다.
- 2이 에이전트는 다양한 LLM과 Cloud VM, VPS 또는 로컬 환경에서 실행 가능하며, CLI 외에도 Telegram, Discord 등 여러 Messaging 플랫폼을 통해 접근할 수 있습니다.
- 3Hermes Agent는 Cron 스케줄링을 통한 자동화, 병렬 작업을 위한 Subagents 생성, 그리고 연구 목적의 Trajectory 생성 및 압축 기능을 제공합니다.
Hermes Agent는 Nous Research가 개발한 자기 개선(self-improving) AI 에이전트로, 내장된 학습 루프(learning loop)를 통해 경험으로부터 Skill을 생성하고, 사용 중에 이를 개선하며, 지식을 영속화(persist knowledge)하고, 과거 대화를 검색하여 사용자에 대한 심층적인 모델을 구축하는 데 중점을 둡니다.
핵심 방법론 및 기능:
이 에이전트의 핵심은 지속적인 학습과 적응을 가능하게 하는 클로즈드 러닝 루프(closed learning loop)에 있습니다. 이는 여러 구성 요소를 통해 구현됩니다.
- 메모리 및 사용자 모델링 (Memory and User Modeling):
- Agent-curated memory: 에이전트가 자체적으로 선별하고 관리하는 메모리 시스템을 갖추고 있습니다. 이는
MEMORY.md및USER.md파일 등을 통해 사용자 프로필 및 대화 컨텍스트를 저장합니다. - 주기적 알림 (Periodic nudges): 학습된 지식을 주기적으로 상기시키고 통합하여 기억을 영속화하도록 에이전트 자신에게 알림을 보냅니다.
- FTS5 session search with LLM summarization: 과거 대화 세션을 FTS5 (Full-Text Search)를 사용하여 검색하고, LLM(Large Language Model)이 이를 요약하여 교차 세션 회상(cross-session recall) 능력을 향상시킵니다.
- Honcho dialectic user modeling: 사용자 상호작용을 통해 사용자의 선호도, 행동 패턴 등을 학습하여 점진적으로 더 깊은 사용자 모델을 구축합니다.
- Agent-curated memory: 에이전트가 자체적으로 선별하고 관리하는 메모리 시스템을 갖추고 있습니다. 이는
- Skill 생성 및 개선 (Skill Creation and Improvement):
- Autonomous skill creation: 복잡한 작업을 수행한 후 에이전트가 자율적으로 새로운 Skill을 생성할 수 있습니다. 이는 에이전트의 문제 해결 능력을 확장합니다.
- Skills self-improve during use: 한 번 생성된 Skill은 사용될수록 성능이 향상됩니다. 이는 에이전트가 실제 사용 경험을 통해 Skill의 효율성과 정확성을 최적화하는 메커니즘을 내포합니다.
- Skill Hub 및 agentskills.io 표준 호환: Skill을 체계적으로 관리하고 공유하며,
agentskills.io오픈 표준과 호환됩니다.
- 도구 활용 및 실행 환경 (Tool Usage and Execution Environment):
- RPC를 통한 도구 호출 (RPC-based tool calling): Python 스크립트를 통해 RPC(Remote Procedure Call) 방식으로 도구를 호출하여 다단계 파이프라인을 효율적으로 처리할 수 있습니다.
- 다양한 터미널 백엔드 (Multiple terminal backends):
local,Docker,SSH,Daytona,Singularity,Modal등 6가지 터미널 백엔드를 지원하여 다양한 환경에서 작업을 수행할 수 있습니다. 특히Daytona와Modal은 유휴 상태일 때 거의 비용이 들지 않는 서버리스 지속성(serverless persistence)을 제공합니다. - 하위 에이전트 생성 및 병렬 작업 (Subagent spawning and parallel workstreams): 격리된 하위 에이전트를 생성하여 병렬 작업 흐름을 처리할 수 있으며, 이는 복잡한 작업을 분해하고 동시에 처리하는 데 유용합니다.
- 연구 준비성 (Research Readiness):
- Batch trajectory generation: 대규모의 궤적(trajectory)을 생성할 수 있어, 에이전트의 행동 패턴 데이터를 수집하는 데 활용됩니다.
- Atropos RL environments: RL(Reinforcement Learning) 환경인 Atropos와 통합되어 있습니다.
- Trajectory compression: 궤적 데이터를 압축하여 다음 세대 Tool-calling model 훈련을 위한 효율적인 데이터셋을 구축합니다. 이는 에이전트의 Tool 사용 능력을 개선하기 위한 강화 학습 연구에 활용될 수 있음을 시사합니다.
사용자 인터페이스 및 호환성:
- 다양한 LLM 지원: Nous Portal, OpenRouter (200+ 모델), z.ai/GLM, Kimi/Moonshot, MiniMax, OpenAI 또는 사용자 자체 엔드포인트 등 다양한 LLM 공급자를 지원하며,
hermes model명령으로 쉽게 전환할 수 있습니다. - 다중 플랫폼 상호작용: CLI(Command Line Interface) 외에도 Telegram, Discord, Slack, WhatsApp, Signal 등 다양한 메시징 플랫폼과 연동되는 게이트웨이 프로세스를 통해 대화할 수 있습니다. 음성 메모(Voice memo) 전사(transcription) 및 교차 플랫폼 대화 연속성(cross-platform conversation continuity)을 지원합니다.
- 정교한 터미널 인터페이스 (TUI): 멀티라인 편집, 슬래시 명령 자동 완성, 대화 기록, 작업 중단 및 재지정(interrupt-and-redirect), 스트리밍 도구 출력 기능을 갖춘 완전한 TUI를 제공합니다.
- 스케줄링 (Scheduled automations): 내장된 cron 스케줄러를 통해 일일 보고서, 야간 백업, 주간 감사 등 자연어 기반의 자동화된 작업을 예약하고 원하는 플랫폼으로 전송할 수 있습니다.
설치 및 사용:
Hermes Agent는 Linux, macOS, WSL2, Android (Termux 경유)에서 작동하며, curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash 명령으로 간편하게 설치할 수 있습니다. 설치 후 hermes 명령으로 CLI를 시작하거나, hermes gateway 명령으로 메시징 게이트웨이를 실행할 수 있습니다. hermes model, hermes tools, hermes config set, hermes setup, hermes update, hermes doctor 등 다양한 CLI 명령을 통해 에이전트를 설정하고 관리합니다.
OpenClaw 마이그레이션:
OpenClaw에서 Hermes로의 이전을 지원하며, hermes claw migrate 명령을 통해 persona 파일, 메모리, Skill, 명령 허용 목록, 메시징 설정, API 키, TTS 자산 등을 자동으로 가져올 수 있습니다.
기여:
개발 환경 설정, 코드 스타일, PR(Pull Request) 프로세스에 대한 가이드를 제공하며, git submodule update --init tinker-atropos 및 uv pip install -e "./tinker-atropos"를 통해 RL/Tinker-Atropos 통합 작업에 기여할 수 있습니다.