Hermes Agent: 실무자를 위한 참고 가이드 (2026)
# Nous Research에서 개발한 오픈 소스 자기 개선형 AI 에이전트 Hermes Agent의 실무 참고 가이드입니다. 제공업체 인증과 OAuth, 설정 파일, 스킬 시스템, 멀티플랫폼 메시징 게이트웨이로 실행하는 방법을 다룹니다.
TL;DR: Hermes Agent는 Nous Research의 오픈 소스 자가 개선 AI agent입니다. CLI 및 멀티 플랫폼 메시징 gateway로 실행되며, 디스크에 지속 가능한 identity와 영구 memory를 저장하고, 사용할수록 향상되는 skill을 집계하며, Nous Portal, OpenRouter, Anthropic, GitHub Copilot, z.ai, Kimi, MiniMax, DeepSeek, Qwen Cloud, Hugging Face, Google, xAI/SuperGrok 또는 자체 self-hosted endpoint를 포함한 모든 OpenAI-compatible LLM provider와 함께 작동합니다.1219 v0.14.0(2026년 5월 16일)부터 Hermes는 grok-4.3 1M context를 갖춘 SuperGrok OAuth, OAuth provider를 위한 OpenAI-compatible local proxy(
hermes proxy), first-classx_search, PyPI 설치 지원(v0.19.0에서 deprecated됨 — one-line installer가 지원되는 경로입니다), lazy dependency install, LINE 및 SimpleX Chat을 포함한 28개 메시징 플랫폼,/handoff, write 후 LSP semantic diagnostics, 통합된video_generate, non-Anthropic provider를 위한 cua-driver 기반computer_use, native Windows beta, 그리고 12개 P0 / 50개 P1 종료 항목을 추가했습니다.19 대부분의 신규 사용자에게 가장 어려운 부분은 provider authentication입니다. Hermes는 약 20개의 first-class provider와 custom endpoint, 그리고 3가지 구분되는 auth path(.env의 API key,hermes model을 통한 OAuth, 또는config.yaml의 custom endpoint)를 지원합니다. auth model은 가장 먼저 익혀야 할 부분입니다. 나머지는 모두 어떤 provider가 resolved되는지에 따라 결정됩니다.
Hermes Agent는 chat wrapper가 아니라 완전한 agent runtime으로 작동합니다. filesystem을 읽고, sandboxed backend에서 command를 실행하며, web을 scrape하고, subagent를 spawn하고, scheduled cron job을 실행하며, 하나의 gateway process에서 Telegram/Discord/Slack/WhatsApp/Signal/Email과 대화하고, 경험을 바탕으로 자체 skill을 만듭니다.1 CLI는 run_agent.py의 conversation loop 위에 구축된 terminal UI이며, gateway는 메시징 플랫폼의 메시지를 동일한 conversation loop로 routing하는 장기 실행 process입니다.3
가볍게 사용하는 Hermes와 전문가 수준의 Hermes 사용을 가르는 차이는 5가지 system에 있습니다. 이를 익히면 Hermes는 강력한 force multiplier가 됩니다.
- Provider resolution: auth flow가 API call에 매핑되는 방식
- Configuration hierarchy:
config.yaml+.env+auth.json+SOUL.md+AGENTS.md - Tool + toolset system: agent가 할 수 있는 작업과 플랫폼별 gate 방식
- Skills system: agent가 만들고 발전시키는 procedural memory
- Gateway + cron + profiles: Hermes를 현재 위치뿐 아니라 일상 속에서 실행하는 방식
핵심 요점
- Provider auth에는 하나가 아닌 3가지 path가 있습니다.
.env의 API key,hermes model/hermes auth를 통한 OAuth, 또는config.yaml의 custom endpoint입니다. 익숙하게 느껴지는 path가 아니라 provider에 맞는 path를 선택하세요. - Provider 전환은 command 하나로 할 수 있습니다.
hermes model은 OAuth login을 포함한 모든 지원 provider를 대화형으로 안내하며,/model provider:model은 history를 잃지 않고 session 중간에 전환합니다.2 - 사용자가 편집할 수 있는 config surface는 2개 파일입니다.
~/.hermes/config.yaml에는 설정이,~/.hermes/.env에는 secret이 저장됩니다.auth.json,SOUL.md,MEMORY.md,skills/는 Hermes가 직접 관리합니다.SOUL.md는 직접 편집할 수 있지만, 나머지는 agent가 자체적으로 수정합니다.4 - Hermes는 OpenClaw의 후속작입니다. 마이그레이션하는 경우
hermes claw migrate가 30개 이상의 state category를 자동으로 가져옵니다.5 - 서비스 품질은 auxiliary model에 따라 달라집니다. vision, web summarization, compression, memory flush는 모두 별도의 auxiliary LLM를 사용합니다. 기본적으로는 auto-detection(OpenRouter → Nous → Codex)을 통해 Gemini Flash가 사용됩니다. 이들 중 어느 것도 설정되어 있지 않으면 auxiliary slot을 main provider로 지정하기 전까지 이러한 기능은 조용히 성능이 저하됩니다.4
v0.14의 변경 사항
v0.14.0은 하나의 대표 기능보다 Hermes를 실행할 수 있는 범위를 넓히면서 setup drag를 줄이는 데 초점을 둡니다.19 주요 운영상 변경 사항은 다음과 같습니다.
- 설치와 시작이 더 가벼워졌습니다.
pip install hermes-agent는 PyPI에서 작동하고, 무거운 adapter는 처음 사용할 때 lazy-install되며, launch path는 충분한 작업을 지연해 cold start를 약 19초 줄입니다. (v0.19.0에서는 이후 pip install이 deprecated되었습니다 — Installation을 참조하세요.) - Subscription을 local API endpoint로 사용할 수 있습니다.
hermes proxy는 Claude Pro, ChatGPT Pro, SuperGrok 같은 OAuth-backed provider를 Codex, Aider, Cline, Continue 같은 tool을 위한 OpenAI-compatible local endpoint로 바꿉니다. - Gateway 도달 범위가 확장됩니다. LINE과 SimpleX Chat으로 플랫폼 수가 22개가 되었고, Microsoft Teams는 end-to-end로 연결되었으며, Discord history backfill은 기본적으로 켜져 있고, Telegram/Discord의
clarifyprompt는 이제 native button을 사용합니다. - Write-time verification이 개선됩니다. edit 후 Hermes는 다음 turn 전에 turn별 file-mutation summary와 language-server semantic diagnostics를 표시할 수 있어 evidence-driven agent 작업에 더 가까워집니다.
- Desktop 및 media tooling이 확장됩니다.
computer_use는 non-Anthropic provider에서 cua-driver를 통해 작동하고,video_generate는 pluggable backend 뒤에서 통합되며,vision_analyze는 실제로 볼 수 있는 model에 raw pixel을 전송합니다.
아래의 모든 section은 hermes-agent.nousresearch.com/docs의 upstream documentation과 github.com/NousResearch/hermes-agent의 source tree를 기반으로 합니다. 모든 사실 주장은 출처가 된 구체적인 upstream page를 가리키는 footnote를 포함합니다.
경로 선택
| 필요한 작업 | 이동할 곳 |
|---|---|
| Hermes 설치 | Installation — one-line installer 또는 manual step |
| Provider 로그인 | Authentication & Providers — 이 가이드에서 찾으신 section |
| Session 중간에 model 전환 | /model syntax는 The hermes auth Command 및 Custom & Self-Hosted Endpoints를 참조하세요 |
| Local LLM 실행 | Custom & Self-Hosted Endpoints — Ollama, vLLM, SGLang, llama.cpp, LM Studio |
| 메시징 플랫폼 연결 | Messaging Gateway — Telegram, Discord, Slack, WhatsApp, Signal, Google Chat, LINE, SimpleX Chat(총 22개) |
| skill 작성 또는 설치 | Skills System — progressive disclosure + skill hub |
| 모든 CLI command의 심층 reference | 계속 읽어 보세요 — CLI Commands로 직접 연결할 수도 있습니다 |
Hermes 작동 방식: 이해를 위한 핵심 개념
Hermes는 모든 진입점에서 호출할 수 있는 단일 대화 루프를 중심으로 구성되어 있어요. 진입점에는 CLI (cli.py), 메시징 gateway (gateway/run.py), 편집기 통합용 ACP 어댑터, 배치 실행기, API 서버가 있어요.3 이 진입점들은 결국 모두 run_agent.py의 AIAgent.run_conversation()을 호출하며, 이 메서드는 다음 작업을 수행해요.
prompt_builder.py를 통해SOUL.md,MEMORY.md,USER.md, skill, context 파일, 도구 안내를 조합해 시스템 프롬프트를 만들어요.3runtime_provider.py를 통해 런타임 제공자를 결정해요. 이 단계에서 인증 방식, 기본 URL, API 모드를 선택해요.3chat_completions,codex_responses,anthropic_messages중 하나의 API 모드로 제공자를 호출해요.3- 반환된 모든 도구 호출을
model_tools.py와 중앙 도구 레지스트리(tools/registry.py)를 통해 전달해요.3 - 모델이 최종 응답을 생성할 때까지 루프를 반복한 다음, 세션을 FTS5가 적용된 SQLite에 저장해요.3
이 루프를 이해해야 하는 이유는 personality, 메모리, skill, 압축, fallback 등 모든 기능이 이 단계 중 하나에 연결되기 때문이에요. 설정 키를 보면서 어떤 역할을 하는지 궁금하다면, 대개 “위 루프의 1, 2, 3, 4단계 중 하나를 조절하는 옵션”이라고 보면 돼요.
플랫폼에 구애받지 않는 핵심 구조. 하나의 AIAgent 클래스가 CLI, gateway, ACP, 배치, API 서버를 모두 지원해요. 플랫폼별 차이는 agent 자체가 아니라 진입점에 있어요.3 따라서 터미널과 Telegram에서 동일한 슬래시 명령을 사용할 수 있어요. 두 환경 모두 hermes_cli/commands.py의 공용 COMMAND_REGISTRY를 통해 명령을 전달해요.6
디렉터리 구조 자체가 시스템이에요. Hermes는 모든 항목을 ~/.hermes/ 아래에 저장해요. 기본값이 아닌 profile에서는 $HERMES_HOME을 사용해요.4
~/.hermes/
├── config.yaml # Settings (model, terminal, TTS, compression, etc.)
├── .env # API keys and secrets
├── auth.json # OAuth provider credentials (Nous Portal, Codex, Anthropic)
├── SOUL.md # Primary agent identity (slot #1 in system prompt)
├── memories/ # Persistent memory (MEMORY.md, USER.md)
├── skills/ # Bundled + agent-created + hub-installed skills
├── cron/ # Scheduled jobs
├── sessions/ # Gateway session state
└── logs/ # agent.log, gateway.log, errors.log (secrets auto-redacted)
위의 각 파일은 서로 겹치지 않는 고유한 역할을 맡고 있어요. “Hermes는 X를 어디에 저장하나요?”라는 궁금증이 있다면, 답은 이 파일 중 하나에 있어요.
v0.20.0의 새로운 기능(The Herald Release)
Hermes Agent v0.20.0(태그 v2026.8.3, 2026년 8월 3일)은 현재 기능 릴리스예요. v0.20.1(8월 13일)과 v0.20.2(8월 16일)는 이를 기반으로 한 안정화 태그이며, v0.20.3(태그 v2026.8.16.2, 8월 17일 공개)과 v0.20.4(태그 v2026.8.18, 8월 18일)도 각자 새로운 기능을 포함한 채 연속 rollup 릴리스를 이어가요. 자세한 내용은 아래 하위 섹션을 참고하세요. v0.19.0 이후의 기간에는 650명이 넘는 기여자가 참여해 약 3,650개의 커밋과 1,400개의 병합된 PR을 만들었고, 1,200개의 이슈를 해결했어요.24
다음 3가지 변경 사항으로 인해 이 가이드의 이전 버전에서 안내했던 방법을 더 이상 사용할 수 없어요. 다른 내용을 읽기 전에 먼저 확인하세요.
- 이제 Node 26이 필요해요. 설치 프로그램은
NODE_VERSION="26"으로 버전을 고정하고, 이전 런타임에서는 “Node.js … is too old (Hermes requires Node >=26).”라는 메시지와 함께 설치를 거부해요. 설치 프로그램,heal,upgrade모두 이 요구 사항을 적용해요. 문서 사이트의 설치 페이지에는 여전히 Node v22라고 나와 있지만, 설치 스크립트와 릴리스 노트가 더 최신인 공식 기준이에요.24 - pip과 Homebrew는 단순히 지원 중단이 예고된 것이 아니라 완전히 종료되었어요. 원문에는 “brew + pip/PyPI wheel channels retired (shell installer / Docker / Nix are the supported channels).”라고 명시되어 있어요. 아직 pip 또는 brew 설치를 사용하고 있다면 해당 경로로는 더 이상 릴리스가 제공되지 않아요.24
- 기본 도구 호출 반복 횟수 제한이 90회에서 500회로 늘어났어요. 이제 장시간 자율 실행이 인위적인 제한에 걸리지 않으며, 아래의 모든 예산 압박 임곗값도 새로운 상한을 기준으로 계산돼요.
read_file의 기본값도 500줄에서 2,000줄로 늘어났어요.24
그 밖의 릴리스 내용은 다음과 같아요.
- 대화형 음성. 끼어들기와 기기 내 wake word를 지원하는 스트리밍 TTS가 추가되었어요.24
- A2A v1.0. agent 간 통신 프로토콜 플러그인이 추가되어 오랫동안 요청되었던 이슈 #514가 해결되었어요.24
- 서명된 아웃바운드 webhook. 이전의
hermes webhook은 인바운드만 지원했지만, v0.20.0에서는 세션, turn, 도구 이벤트를 위한 HMAC 서명 아웃바운드 수명 주기 webhook이 추가되었어요.24 - 근거가 뒷받침된 인용. 사실 확인 모드를 갖춘 새로운 skill이 추가되었어요.24
- 고급 사용자를 위한 CLI 기능 물결.
!command는 모델 turn을 소모하지 않고 셸 명령을 즉시 실행해요./init은 프로젝트를 스캔해AGENTS.md를 작성하거나 업데이트하고,/diff는 어느 화면에서든 스테이징된 변경 사항, 전체 변경 사항 또는 세션 변경 사항을 보여줘요./context는 context 창을 무엇이 채우고 있는지 분석하며,/focus는 숨겨진 줄을 복원할 수 있는 간소화된 출력 보기를 제공해요. Ctrl+S를 누르면 작성 중인 프롬프트를 임시 보관할 수 있어요.hermes import-agent를 사용하면 Claude Code 또는 Codex CLI 설정을 명령 하나로 이전할 수 있어요.24 - 비밀 정보 관리 기능 추가. 모든 vault와 조합할 수 있는 명령 도우미 비밀 정보 소스, 실행 가능한 시작 오류 안내가 포함된 단일 명령 토큰 교체, Bitwarden용 선택적 암호화 긴급 접근 캐시, profile 홈별로 범위가 제한된 vault 주입 키,
config.yaml과 MCP 설정 사이의${env:VAR}SecretRef 동등 지원이 추가되었어요. 아래에서 설명하는 3가지 경로의 인증 모델은 바뀌지 않았어요.24 - 더 빨라진 웜 스타트.
hermes -w콜드 스타트 시간이 약 14초에서 1.8초로 줄었어요.24 - 데스크톱이 하나의 플랫폼으로 자리 잡았어요. 버전이 지정된 카드와 샌드박스 기반 실시간 미리 보기를 지원하는 아티팩트, Kanban을 최초의 데스크톱 플러그인으로 제공하는 Plugin SDK, 빠른 입력을 위한 전역 단축키, 여러 GUI 창, SSH 원격 백엔드 모드, RFC 8252 네이티브 로그인이 추가되었어요.24
v0.20.3 및 v0.20.4 rollup(8월 17~18일)
v0.20.0 이후 프로젝트는 태그가 지정된 rollup을 매우 빠른 주기로 출시하고 있으며, 최신 버전 2개는 단순한 안정화 릴리스가 아니에요. 두 릴리스 모두 “full curated release notes for this window will ship with v0.21.0”이라고 밝혔어요. 따라서 아래 요약은 선별된 기능 목록이 아니라 각 릴리스에서 직접 설명한 해당 기간의 변경 사항을 바탕으로 해요.23
v0.20.3(v0.20.2 이후 커밋 약 250개, PR 약 125개):
- 2026-07-28 무상태 프로토콜을 지원하는 MCP 2.x SDK 이전. Hermes는 최신 MCP SDK 세대로 전환하고 프로토콜의 무상태 개정판을 지원해요.23
- Bot Mode가 번들 플러그인으로 제공돼요. (
hermes-bots) 핵심 팀원 프로토콜을 포함해요.23 - CommandCode 제공자 플러그인이 제공자 목록에 추가되었어요.23
- 컴퓨터 사용을 위한 Cua Driver 0.20 런타임 계약과 하위 프로세스 Python 런타임 소유권 강화(PYTHONHOME/PYTHONPATH 격리)가 추가되었어요.23
- 안정성 개선 사항으로 cron 스케줄러 자체 복구(EMFILE 복구, 오래된 claim 조정, 멈춘 작업 재실행), 세션 인계 시 데이터 손실 수정, 데스크톱 원격 gateway 연결 자체 복구, 다양한 생태계 개선(플러그인 설치 보안 검사,
/worktree,/rollback실행 시 수동 편집 내용 보존, UTF-16 파일 읽기)이 포함되었어요.23
v0.20.4(v0.20.3 이후 커밋 약 146개, PR 약 74개):
- 데스크톱의 유리 표면: 프로스트 선택기와 macOS 사전 선택 기능을 포함한 무광 유리 및 반투명 효과가 추가되었어요.23
- 봇별 숨기기와 표시 기능을 갖춘 탭 방식의 SESSIONS|BOTS 사이드바와 Bot Mode 그룹 채팅 수정 사항(장시간 실행되는 구성원 turn, Markdown 렌더링, 여러 기기 간 라우팅)이 추가되었어요.23
- skill 설치 시 NVIDIA SkillEvaluator Tier 1 자문 검사를 수행해요. skill을 설치할 때 라이선스와 보안 검사가 실행돼요.23
- cron 미디어 전송 강화(설정 가능한 시간 초과, 수동 실행 첨부 파일, 놓친 실행 시점 표시), SessionDB 이벤트 루프 스레드 및 경합 수정,
hermes update의 보류된 브랜치 상태를 정확하게 안내하는 기능, Kanban 네이티브 운영 체제 알림이 추가되었어요.23
업데이트 방법은 바뀌지 않았어요. 기존 설치에서는 hermes update를 사용하고, 새로 설치할 때는 셸 설치 프로그램을 사용하세요.23
v0.19.0의 새로운 기능 (The Quicksilver Release)
Hermes Agent v0.19.0(태그 v2026.7.20, 2026년 7월 20일)은 전령 신의 속도에서 이름을 따왔습니다. 이번 릴리스의 핵심은 순수한 반응성으로, 모든 플랫폼에서 첫 턴의 첫 토큰까지 걸리는 시간이 약 80% 줄었습니다. 여기에 터미널 결제, 비밀번호 관리자 시크릿 소스, 기본 스마트 승인, 관찰 가능한 subagent, 장애에도 안전한 응답 전송이 더해졌습니다. v0.18.0 이후 기간은 프로젝트 역사상 가장 규모가 큽니다. 약 2,245개의 커밋, 약 1,065개의 병합된 PR, 약 3,300개의 해결된 이슈, 그리고 450명 이상의 커뮤니티 기여자가 참여했습니다.25
- 어디서나 첫 토큰까지 약 80% 빨라졌습니다. 콜드 제출→디스패치 시간이 CLI, gateway, TUI, desktop, cron 전반에서 약 4.3초에서 약 0.9초로 줄었습니다. Discord 기능 감지를 중요 경로에서 분리했고, 알려진 비-Ollama provider에서는 Ollama 프로브를 건너뛰며, agent 초기화 과정에서 블로킹 작업을 제거했습니다. 체감 지연 시간도 개선했습니다. 이제 reasoning model은 기본적으로 사고 과정을 실시간 스트리밍하며(
display.show_reasoning이 ON), 응답 상자는 줄 단위가 아니라 토큰 단위로 렌더링합니다.25 - Desktop 및 TUI 렌더링 개선. desktop app에는 약 20개의 PR에 걸친 속도 개선이 적용되었습니다. 증분 블록 렉싱으로 스트리밍 Markdown 분할기의 CPU 사용량을 14배 줄였고, review pane diff를 가상화했으며, 대용량 transcript에서도 session 전환이 빨라졌고, 토큰마다 sidebar와 tool row가 다시 렌더링되는 문제도 제거했습니다. 이제 TUI도 스트리밍 Markdown을 블록별로 점진적으로 렌더링합니다.25
- pip 및 Homebrew 설치가 deprecated되었습니다. 두 경로 모두 “unsupported legacy” 설치로 표시되었고 제거가 예정되었습니다. 이 제거는 이후 v0.20.0에서 이루어졌습니다. brew 및 pip/PyPI wheel 채널은 종료되었으며, 현재 지원되는 채널은 shell installer, Docker, Nix입니다.2524
- 비밀번호 관리자에서 시크릿을 가져올 수 있습니다. 새로운 플러그형
SecretSource인터페이스는 로드 시 Bitwarden과 1Password(op://참조)에서 시크릿을 가져옵니다. 여러 vault를 동시에 활성화할 수 있고, 결정론적인 우선순위, 충돌 경고, 변수별 출처 정보를 제공합니다. 이제 API 키를 평문.env에 둘 필요가 없습니다. 향후 vault provider도 plugin으로 추가할 수 있습니다.25 - 이제 스마트 승인이 기본값입니다. Hermes가 플래그된 명령을 실행하려 할 때마다 사용자에게 묻는 대신, 독립적인 LLM reviewer가 이를 평가합니다. 각 판단은 해당 정확한 명령에만 적용됩니다. 사용자가 정의한 deny rule은 YOLO mode에서도 일치하는 명령을 차단하고,
/deny <reason>은 거부 이유를 전달해 agent가 방향을 수정하도록 하며, pluginpre_tool_callapprove action은 rule key와 함께 다시 도입되어 tool call을 사람의 승인 단계로 올립니다.25 - 터미널 결제:
/subscription및/topup. 터미널을 떠나지 않고 Nous Portal 요금제를 관리할 수 있습니다. 요금제와 남은 allowance를 확인하고, 업그레이드 비용 또는 다운그레이드 적용 시점을 정확히 미리 본 뒤, 실행 및 취소할 수 있습니다. desktop app에도 이에 대응하는 결제 설정 탭이 추가됩니다.25 - subagent 작업을 지켜보고, 완료된 답변을 잃지 마세요.
delegate_task디스패치는 subagent가 시작되는 순간tail -f로 확인할 수 있는 실시간 transcript 파일을 반환합니다. 각 child마다 모든 tool call, 결과, 스트리밍 응답을 담은 사람이 읽을 수 있는 로그 1개가 생성됩니다. 백그라운드 delegation 완료 상태는 재시작 이후에도 유지되며, 최종 gateway 응답은state.db의 delivery-obligation ledger에 기록되어 gateway가 전송 중 중단되면 다음 부팅 시 다시 전송됩니다.max_async_children설정 옵션은 통합 delegation 동시성 제한을 위해 deprecated되었습니다.25 - 하나의 gateway, 여러 profile. 하나의 bot token을 공유하는 단일 multiplexed gateway가 특정 guild, channel 또는 thread를 서로 다른 profile로 라우팅할 수 있습니다. 각 profile은 config, skill, memory, secret이 완전히 분리됩니다.
GATEWAY_MULTIPLEX_PROFILESoverride도 제공합니다. 라우팅 인덱스는state.db로 이동했으며,sessions.json은 이제 선택적인 legacy mirror입니다.25 - Providers 및 models 개선. Fireworks AI가 1급 지원으로 추가되었습니다. 비용 추정 기능과 provider picker의 2위 슬롯을 제공하며, DeepInfra 및 Upstage Solar도 함께 추가되었습니다. catalog에는 GPT-5.6(Sol/Terra/Luna + Pro, 엔드투엔드 연결), grok-4.5(GA), kimi-k3(kimi-k2.x는 retired), 그리고 완전히 연결된 Claude Sonnet 5가 추가됩니다. provider별
enabled: false플래그와excluded_providersconfig로 사용하지 않는 provider를/modelpicker와 resolution에서 제외할 수 있습니다.25 - Reasoning effort가 조절 가능한 설정이 됩니다. 새로운
max및ultraeffort tier가 모든 surface에 추가됩니다. config의 model별 override, MoA preset의 slot별 effort(advisor는 깊이 사고하고 synthesizer는 빠르게 유지), auxiliary model의 task별 effort, 그리고 CLI의 session 범위/reasoning을 지원합니다.25 - CLI 및 MCP 기능 확장.
hermes sessions export는 opt-in--redact정리 기능과 함께 Markdown, Quarto, HTML, prompt-only, Hugging Face trace 형식으로 내보냅니다./model --once는 한 턴에만 적용되는 model override를 제공하고, slash-skill 호출은 누적할 수 있으며(/skill-a /skill-b do XYZ),--safe-mode는 문제 해결을 돕고,hermes config get/unset은 config 관리를 완성합니다.hermes serve는 진정한 headless backend가 되었고, MCP tool은mcp__server__tool명명 규칙을 따릅니다.25
v0.18.x에서 업그레이드한다면 다른 무엇보다 먼저 두 가지 변경 사항에 주의하세요. pip 또는 Homebrew 설치는 이제 unsupported legacy로 경고되므로 one-line installer로 마이그레이션해야 하며, max_async_children는 통합 delegation 동시성 제한을 위해 deprecated되었습니다. 나머지는 모두 추가 기능입니다. 업그레이드해야 할 핵심 이유는 첫 턴 지연 시간을 약 80% 줄인 점, 스마트 승인, 그리고 완료된 답변을 장애로부터 안전하게 만드는 delivery ledger입니다.
v0.18.0의 새로운 기능 (The Judgment Release)
Hermes Agent v0.18.0(태그 v2026.7.1, 2026년 7월 1일)은 판단에서 이름을 따왔습니다. 성공했다고 주장하는 대신 agent가 자신의 작업을 검증하고, 실제로 살펴볼 수 있는 ensemble reasoning을 제공합니다. 또한 전체 P0/P1 backlog를 마무리했습니다. 12일 동안 가장 높은 우선순위의 항목 약 692개를 해결했습니다.22
- 1급 model로 제공되는 Mixture-of-Agents. 이제 MoA는 모든 인터페이스에서 다른 model처럼 선택할 수 있으며, ensemble reasoning도 표시됩니다. 각 reference model의 전체 출력이 라벨이 붙은 독립 블록으로 렌더링되고 답변이 실시간으로 스트리밍되므로, 불투명하게 병합된 답변을 받는 대신 ensemble의 사고 과정을 볼 수 있습니다.22
/goal을 위한 completion contract. agent는 성공을 주장하는 대신 목표가 완료되었다고 보고하기 전에 프로젝트 검사를 실행하여 자신의 작업을 검증합니다. 즉, 자신에게 판단을 적용합니다.22/learn— 무엇이든 설명해서 skill로 만드세요. workflow를 설명하면 재사용 가능한 skill로 만들 수 있습니다. 생성된 skill은 repo의 CONTRIBUTING.md 규칙을 자동으로 준수합니다.22/journeytimeline. 시간에 따른 memory와 skill의 시각적 기록을 편집 기능과 함께 제공하며, desktop에는 memory graph도 표시됩니다.22- 백그라운드 subagent fan-out. 대화를 차단하지 않고 동시에 실행되는 여러 task를 delegation할 수 있습니다. v0.17.0의 단일 백그라운드 subagent가 하나의 fleet로 확장되었습니다.22
- Desktop Projects. project/repo/lane 구성 모델을 사용하는 1급 coding Projects를 제공합니다.22
- Scale-to-zero gateway. gateway는 유휴 상태일 때 dormant 상태로 전환할 수 있으며, 원활한 배포를 위해 drain을 조정합니다. Hermes를 상시 실행 서비스로 운영하는 사람에게 의미 있는 기능입니다.22
- Google Vertex AI 지원. 자동 OAuth2 token refresh를 지원하는 GCP service account를 통해 Gemini에 접근할 수 있으며, provider catalog에 합류합니다.22
/prompteditor command. 입력 줄에서 어려움을 겪는 대신$EDITOR를 열어 여러 줄 prompt를 작성할 수 있습니다.22
v0.17.x에서 업그레이드한다면 여기에는 CLI를 깨는 변경 사항이 없습니다. 업그레이드해야 할 핵심 이유는 completion contract(스스로 검증하는 goal), 확인 가능한 ensemble을 갖춘 1급 MoA, 그리고 skill 캡처를 위한 /learn입니다.
v0.17.0의 새로운 기능 (도달 범위 릴리스)
Hermes Agent v0.17.0(태그 v2026.6.19, 2026년 6월 19일)은 이제 에이전트가 닿는 범위를 뜻하는 이름이에요. 새 메시징 채널, 새 모델 제공업체, 더 깊어진 데스크톱 및 대시보드 제어 기능을 담고 있어요. v0.16.x에 기능을 추가한 버전이며 CLI 표면은 바뀌지 않았어요.21
- 새 메시징 채널. 이제 iMessage는 Photon Spectrum을 통해 Mac 릴레이 없이 작동해요(디바이스 코드 OAuth,
hermes photon login). WhatsApp Business Cloud API는 브리지 프로세스 요구 사항을 대체하는 공식 Meta 어댑터예요. SimpleX에는 그룹, 네이티브 첨부 파일, 텍스트 배치 처리, 자동 수락 기능이 추가됐고, Raft는 개인정보 보호 계약 기반 웨이크 채널 설계를 갖춘 번들 플랫폼 플러그인으로 합류했어요.21 - 새 모델 및 제공업체. 카탈로그에
z-ai/glm-5.2(1M 컨텍스트),anthropic/claude-fable-5,laguna-m.1,nemotron-3-ultra,grok-composer-2.5-fast(xAI OAuth를 통한 Cursor 모델, 200k 컨텍스트)가 추가됐어요. xAI 기본값은grok-build-0.1로 변경됐고, Anthropic 적응형 모델은 이제 최신 사고 계약을 따라reasoning필드를 전송하지 않아요.21 - 데스크톱 및 대시보드. Desktop에는 위임된 활동을 실시간 “watch-windows” 스트리밍으로 보여 주는 백그라운드 서브에이전트(
delegate_task(background=true)), Composer 모델 선택기, 다시 바인딩할 수 있는 키보드 단축키, 네이티브 OS 알림, 스레드별 Composer 초안, VS Code Marketplace 테마, 일본어 및 중국어 번체 UI가 추가됐어요. 대시보드에는config.yaml을 편집하지 않고 모델/skill/MCP를 설정하는 전체 profile 빌더, 전역 profile 전환기, 보안 스캔을 갖춘 개편된 Skills Hub, 그리고 양식, 슬래시 명령, 대화, 문서 전반에서 사용하는 매개변수화 템플릿인 Automation Blueprints가 추가됐어요. 또한 OAuth 게이트 뒤에서 401을 반환하는 안전한 로그인이 제공돼요.21 - Skills 및 도구.
image_generate는 이제 지원되는 모든 이미지 제공업체에서 이미지를 처음부터 생성하는 것뿐 아니라 원본 이미지를 편집하고 변환할 수 있어요.memory도구에는 단일 호출에서 원자적으로 일괄 추가/교체/제거를 수행하는operations배열이 추가됐어요. 새simplify-codeskill은 Chesterton’s-Fence 위험 등급으로 제어되는 병렬 3개 에이전트 검토 및 정리 과정을 실행해요. 또한 불리언write_approval이 3상태write_mode를 대체해요.21 - 아키텍처. 백그라운드 서브에이전트는 즉시 핸들을 반환하고 결과를 새 턴으로 다시 입력해요. MCP elicitation handler는 도구 호출 중간에 확인을 받을 수 있게 하며, 늦게 연결되는 MCP 도구는 턴 사이에 노출돼요(캐시 안전). cron은 Chronos 관리형 cron 제공업체를 갖춘 플러그형 CronScheduler가 되었고, 새 Managed scope(
/etc/hermes)를 사용하면 관리자가 사용자가 변경할 수 없는 config를 고정할 수 있어요. 여기에 다중 gateway 토폴로지를 위한 Gateway-Gateway 릴레이도 추가됐어요.21 - 새 명령어.
/version,/billing(대화형 터미널 청구),hermes photon login(iMessage 인증),hermes curator run --consolidate가 추가됐어요. 통합은 이제 옵트인 방식이므로 일상적인 백그라운드 큐레이션에는 토큰 비용이 들지 않아요.21 - 보안. v0.17.0은 셸 이스케이프 거부 목록 우회 문제를 해결하고, 승인 모듈 및 자체 정책 gateway 어댑터가 없을 때 안전하게 실패하도록 했어요. 또한 cron 작업 스크립트 하위 프로세스의 환경을 정리하고, 요청 디버그 덤프에서 secret을 가리며, MCP stdio config에서 유출 패턴을 검사하고, CVE 해결을 위해 urllib3 및 PyJWT를 업데이트했어요.21
v0.16.x에서 업그레이드한다면, 여기의 어떤 변경도 CLI를 깨지 않아요. 같은 에이전트에 새 채널, 모델, 표면을 더한 버전이에요. 릴레이 없는 iMessage, 공식 WhatsApp 어댑터, 관리자용 Managed scope가 주요 업그레이드 이유예요.
v0.16.0의 새로운 기능 (표면 릴리스)
Hermes Agent v0.16.0(태그 v2026.6.5, 2026년 6월 5일)은 CLI 우선 에이전트 앞에 새 표면을 제공한다는 의미로 이름 붙였어요. 핵심은 Hermes가 더 이상 터미널 전용이 아니라는 점이에요.20
- 네이티브 데스크톱 앱. Hermes Desktop은 macOS, Linux, Windows용 새 Electron 앱으로, 원클릭 설치와 앱 내 자체 업데이트를 제공해요. 스트리밍 채팅 창, 드래그 앤 드롭 파일, 클립보드 이미지 붙여넣기,
Cmd+K팔레트, 보관 및 검색 기능이 있는 세션 목록, 상태 표시줄 모델 선택기를 제공해요. profile별 원격 호스트와 교차 profile@session참조로 연결된 동시 다중 profile 세션을 지원하며, OAuth 또는 사용자 이름/비밀번호로 인증해 안전한 WebSocket를 통해 원격 Hermes gateway에 연결할 수 있어요. 데스크톱 UI는 타입이 지정된 i18n 계층(display.language)을 통해 중국어 간체(简体中文) 전체 번역도 제공하며, 기본 언어는 영어로 유지돼요.20 - 브라우저 관리자 패널. 로컬 웹 대시보드는 상태 보기에서 전체 관리 패널로 발전했어요. 활성화/비활성화 토글이 있는 MCP 카탈로그, 자격 증명 관리, webhook 및 hook 생성, memory 설정, gateway 제어, 업데이트 전 확인 및 원클릭 Debug Share가 있는 System 페이지를 제공해요. 새 Channels 페이지에서는 브라우저에서 Telegram, Discord, Slack 등을 포함한 모든 gateway 메시징 플랫폼을 설정할 수 있어요. 인증은 이제 플러그형이에요. 사용자 이름/비밀번호 로그인, 일반적인 자체 호스팅 OIDC 제공업체, 자체 호스팅 OAuth 클라이언트용
hermes dashboard register, refresh-token 세션 순환을 지원해요.20 - 새 CLI 및 슬래시 명령어.
/undo [N]은 마지막 N개의 사용자 턴을 prefill 및 소프트 삭제와 함께 백업하며, CLI, TUI, 모든 메시징 플랫폼에서 작동해요. 구성 가능한 기본 인터페이스(cli또는tui)가--cli재정의와 함께 추가됐어요. TUI에는 통합/model명령과 Sessions 오버레이가 추가됐어요.hermes portal은 Nous Portal 온보딩 흐름을 사람이 읽기 쉬운 형태로 부르는 별칭이며, 새 Quick Setup 및 Full Setup 첫 실행 경로가 제공돼요.hermes prompt-size와hermes sessions optimize라는 2개의 진단 도구도 추가됐어요.20 - 새 모델 및 제공업체. 선택기에
deepseek-v4-flash,MiniMax-M3(1M 컨텍스트, 네이티브 MiniMax 제공업체),qwen3.7-plus(Nous + OpenRouter),gemini-3.5-flash(Gemini OAuth + API 키)가 추가됐어요. 일급 xAI Grok OAuth 제공업체가 데스크톱 런처에 추가됐고, 모델 선택기는 모든 표면에서 퍼지 검색을 지원하게 됐어요. 다중 엔드포인트 제공업체는 한 행으로 그룹화되며, 카탈로그 새로 고침 주기는 일간에서 시간별로 변경됐어요.20 - 간결해진 skills 및 점진적 공개. 기본 skill 세트에서 중복되거나 사용되지 않는 skill을 제거했어요. Spotify는 네이티브 플러그인으로 이동했고, Linear는
hermes mcp install linear로 이동했으며, 오래된 여러 항목이 제거됐어요. 더 많은 항목을 선택 사항으로 옮겼고, 요청 전까지 컨텍스트별 skill을 인덱스에서 제외하는environments:프런트매터 관련성 게이트(kanban/docker/s6)를 추가했어요. 이제NVIDIA/skills는 OpenAI, Anthropic, HuggingFace와 함께 기본 신뢰 Skills Hub 탭이에요. MCP 및 플러그인 도구에는 점진적(범위 지정) 도구 공개가 추가됐고, 토큰을 얻지 못했을 때 잘못된 OAuth 성공을 보고하던 MCP 버그도 수정됐어요.20 - 보안. v0.16.0은 CVE-2026-48710(BadHost)에 대응해 패치된 Starlette(≥1.0.1)를 고정하고, 비동기 경로에서 SSRF URL 검사를 이벤트 루프 밖으로 옮겼어요. 또한 subprocess 환경에서 Bedrock 추론 bearer token을 제거하고, 파일 안전 읽기 가드에
bws_cache.json을 추가했으며, 위험 패턴 목록에docker restart/stop/kill을 추가하고, 검증된 skill 콘텐츠의 보이지 않는 유니코드를 정리했어요. 이 릴리스는 P0 이슈 2개와 P1 이슈 62개를 해결했으며, 그중 16개는 보안 태그가 지정된 이슈였어요.20
v0.15.x에서 업그레이드한다면, 이 변경 사항은 어느 것도 CLI 자체를 깨지 않아요. 같은 에이전트에 표면과 제공업체를 추가한 버전이에요. 터미널을 사용하지 않는 사용자를 위해 Hermes를 운영하거나 브라우저에서 원격 gateway를 관리하려면, 데스크톱 앱과 관리자 패널이 업그레이드 이유가 돼요.
설치
한 줄 설치 프로그램이 지원되는 설치 경로입니다. Python, uv, Node.js, ripgrep, ffmpeg, 저장소 복제, 가상 환경, 전역 hermes 명령을 처리합니다.7
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
pip 및 Homebrew 설치는 v0.19.0부터 사용 중단되었습니다. v0.14.0에서 도입된 PyPI 패키지(
pip install hermes-agent)와 Homebrew formula는 이제 “unsupported legacy” 설치로 표시됩니다. Hermes가 이를 감지하면 모든 화면에서 차단 없이 경고하며, PyPI/Homebrew 배포 중단도 예정되어 있습니다. pip 또는 brew로 설치했다면 위 설치 프로그램으로 마이그레이션하세요.25
Linux, macOS, WSL2, Android/Termux에서 작동합니다(Termux를 자동으로 감지해 검증된 Android 번들로 전환합니다).7 Native Windows는 이제 초기 베타 v0.14.0이 제공했던 수준이 아니라 Tier 1 플랫폼입니다. iex (irm https://hermes-agent.nousresearch.com/install.ps1)로 설치하세요. 문서에서 명확히 언급하는 한 가지 주의 사항은 macOS 지원이 Apple Silicon 전용이며 Intel Mac은 지원하지 않는다는 점입니다.24 과거에는 v0.14.0이 PowerShell 설치 프로그램을 통해 초기 베타 Native Windows 지원을 추가했지만, Windows 경로가 성숙할 때까지 프로덕션 환경에서는 WSL2가 더 안전한 권장 사항으로 남아 있습니다.19
설치가 끝나면 다음을 실행하세요.
source ~/.bashrc # or ~/.zshrc
hermes # Start chatting
유일한 사전 요구 사항은 git입니다. 설치 프로그램은 uv를 통해 Python 3.11을 자동으로 프로비저닝하며(sudo 불필요), Node.js 26(브라우저 자동화 및 WhatsApp bridge용), ripgrep, ffmpeg도 설치합니다. v0.20.0부터 Node 26은 필수 최소 버전입니다. 설치 프로그램은 더 오래된 버전을 거부하고 Hermes가 관리하는 Node를 대신 설치합니다.247
설치 확인
hermes version # Check version
hermes doctor # Diagnose config/dependency issues
hermes status # Show current configuration + auth state
hermes dump # Copy-pasteable setup summary for debugging
hermes doctor는 누락된 항목과 해결 방법을 정확히 알려 줍니다.7 hermes dump는 도움을 요청할 때 GitHub issue 또는 Discord thread에 붙여넣는 진단 명령입니다. secrets가 삭제된 전체 설정의 일반 텍스트 요약을 제공합니다.8
수동 설치
사용자 지정 Python 버전, 특정 extra, Nix/NixOS 통합처럼 완전한 제어가 필요하다면 수동 절차가 upstream 설치 가이드에 단계별로 문서화되어 있습니다.7 uv pip install -e ".[<extras>]"와 함께 조합할 수 있는 주요 선택적 extra는 다음과 같습니다.
| Extra | 추가되는 기능 |
|---|---|
all |
아래의 모든 항목 |
messaging |
Telegram 및 Discord gateway |
cron |
Cron expression 파싱 |
cli |
설정 wizard용 터미널 메뉴 UI |
modal |
Modal cloud execution backend |
voice |
CLI 마이크 입력 및 오디오 재생 |
tts-premium |
ElevenLabs premium voices |
honcho |
AI-native memory(Honcho 통합) |
mcp |
Model Context Protocol 지원 |
homeassistant |
Home Assistant 통합 |
acp |
ACP editor 통합 지원 |
slack |
Slack 메시징 |
pty |
PTY terminal 지원(대화형 CLI tools) |
dev |
pytest 및 테스트 유틸리티 |
termux |
검증된 Android 번들(cron, cli, pty, mcp, honcho, acp 포함) |
Termux 설치 명령은 다릅니다. uv pip가 아니라 constraints 파일과 함께 pip를 사용합니다.
python -m pip install -e ".[termux]" -c constraints-termux.txt
Android에서 .[all]은 voice extra를 통해 faster-whisper를 가져오기 때문입니다. 이는 Android용으로 배포되지 않은 ctranslate2 wheels에 의존합니다.7
인증 및 Provider
Hermes는 약 22개의 퍼스트 클래스 provider와 custom endpoint를 지원하며(v0.19.0에서 Fireworks AI, DeepInfra, Upstage Solar 추가), 3가지 별도의 인증 경로를 제공합니다. 보유한 항목에 맞는 경로를 찾을 수 있도록 전체 인증 범위를 경로별로 정리했습니다.
3가지 인증 경로
Hermes의 모든 provider는 다음 3가지 인증 패턴 중 하나에 속합니다.
경로 1 — .env의 API key. ~/.hermes/.env에 key를 넣으면 Hermes가 시작 시 읽어 옵니다. OpenRouter, AI Gateway, z.ai/GLM, Kimi/Moonshot, MiniMax(MiniMax China 포함), Alibaba Cloud/DashScope, Kilo Code, OpenCode Zen, OpenCode Go, DeepSeek, Hugging Face, Google/Gemini 및 대부분의 타사 provider에서 사용합니다.2 v0.19.0부터는 key를 평문 파일에 둘 필요가 없습니다. 플러그형 SecretSource 인터페이스가 로드 시 Bitwarden 또는 1Password(op:// 참조)에서 secret을 가져올 수 있으며, 여러 vault를 동시에 활성화하고, 결정론적 우선순위, 충돌 경고, 변수별 출처 정보를 제공합니다. .env는 계속 fallback으로 유지됩니다. (이는 provider key를 하나의 token 뒤에 통합한 v0.15.0의 Bitwarden Secrets Manager bootstrap token과는 다릅니다. SecretSource는 평문 파일 자체를 대체하며, 향후 vault provider는 plugin으로 추가할 수 있습니다.)25
경로 2 — hermes model 또는 hermes auth를 통한 OAuth. device code flow를 시작하고 브라우저를 열며, 자격 증명을 ~/.hermes/auth.json에 저장합니다(Claude Code 또는 Codex CLI 같은 도구의 기존 자격 증명도 가져올 수 있습니다). Nous Portal, OpenAI Codex(ChatGPT 계정), GitHub Copilot 및 Anthropic(Claude Pro/Max)에서 사용합니다.2
경로 3 — config.yaml의 Custom endpoint. Ollama, vLLM, SGLang, llama.cpp, LM Studio, LiteLLM proxy, Together AI, Groq, Azure OpenAI 또는 자체 호스팅 서버 등 OpenAI-compatible API에 사용할 수 있습니다. hermes model → Custom endpoint에서 한 번 설정하면 config.yaml에 유지됩니다.2
전체 Provider 매트릭스
다음은 퍼스트 클래스 provider의 전체 목록과 각각의 정확한 설정 흐름입니다.2
| Provider | 인증 경로 | 설정 |
|---|---|---|
| Nous Portal | OAuth | hermes model (OAuth 로그인, 구독 기반) |
| OpenAI Codex | OAuth | hermes model (ChatGPT device code, Codex 모델 사용) |
| GitHub Copilot | OAuth 또는 token | hermes model (OAuth device code), 또는 COPILOT_GITHUB_TOKEN / GH_TOKEN / gh auth token |
| GitHub Copilot ACP | 로컬 subprocess | hermes model (PATH에 copilot CLI 필요 + copilot login) |
| Anthropic | OAuth 또는 API key | hermes model (Claude Code 자격 증명 우선 사용), 또는 ANTHROPIC_API_KEY, 또는 ANTHROPIC_TOKEN setup-token |
| OpenRouter | API key | ~/.hermes/.env의 OPENROUTER_API_KEY |
| AI Gateway (Vercel) | API key | ~/.hermes/.env의 AI_GATEWAY_API_KEY (provider: ai-gateway) |
| z.ai / GLM (ZhipuAI) | API key | ~/.hermes/.env의 GLM_API_KEY (provider: zai) |
| Kimi / Moonshot | API key | ~/.hermes/.env의 KIMI_API_KEY (provider: kimi-coding). v0.19.0에서 catalog에 kimi-k3가 추가되었습니다(kimi-k2.x는 retired).25 |
| MiniMax (global) | API key | ~/.hermes/.env의 MINIMAX_API_KEY (provider: minimax) |
| MiniMax China | API key | ~/.hermes/.env의 MINIMAX_CN_API_KEY (provider: minimax-cn) |
| Alibaba Cloud (Qwen) | API key | ~/.hermes/.env의 DASHSCOPE_API_KEY (provider: alibaba, alias: dashscope, qwen) |
| Kilo Code | API key | ~/.hermes/.env의 KILOCODE_API_KEY (provider: kilocode) |
| OpenCode Zen | API key | ~/.hermes/.env의 OPENCODE_ZEN_API_KEY (provider: opencode-zen) |
| OpenCode Go | API key | ~/.hermes/.env의 OPENCODE_GO_API_KEY (provider: opencode-go) |
| DeepSeek | API key | ~/.hermes/.env의 DEEPSEEK_API_KEY (provider: deepseek) |
| Hugging Face | API key | ~/.hermes/.env의 HF_TOKEN (provider: huggingface, alias: hf) |
| Google / Gemini | API key | ~/.hermes/.env의 GOOGLE_API_KEY 또는 GEMINI_API_KEY (provider: gemini) |
| Fireworks AI | API key | model picker에 비용 추정 및 캐시된 가격 열을 갖춘 퍼스트 클래스 provider이며, provider picker에서 #2 슬롯으로 승격되었습니다. v0.19.0의 신규 기능입니다.25 |
| DeepInfra | API key | 강화된 통합을 제공하는 퍼스트 클래스 provider입니다. v0.19.0의 신규 기능입니다.25 |
| Upstage Solar | API key | 퍼스트 클래스 provider입니다. v0.19.0의 신규 기능입니다.25 |
| xAI (Grok) | Native provider / SuperGrok OAuth | 직접 API 접근 및 model catalog를 갖춘 퍼스트 클래스 provider입니다(v0.9.0+). v0.14.0에서 SuperGrok OAuth가 추가되고, 권한이 있는 계정의 grok-4.3 context window가 1M으로 늘어났습니다.21619 v0.17.0에서 grok-composer-2.5-fast(xAI OAuth를 통한 Cursor의 모델, 200k context)가 추가되었고 xAI 기본값이 grok-build-0.1로 변경되었습니다.21 v0.19.0에서 grok-4.5가 catalog의 GA로 이동했습니다.25 |
| xAI Custom Voices | API key | 음성 복제를 지원하는 TTS provider입니다. v0.13.0에서 추가되었으며, config.yaml의 tts: 아래에서 설정하고 .env에 xAI key를 제공합니다.18 |
| Xiaomi MiMo | Native provider | 설정 wizard와 model catalog를 갖춘 퍼스트 클래스 provider입니다. 보조 작업에는 Nous Portal에서 무료 MiMo v2 Pro를 사용할 수 있습니다(v0.9.0+).1615 |
| Google AI Studio | API key | ~/.hermes/.env의 GOOGLE_API_KEY 또는 GEMINI_API_KEY. models.dev registry를 통한 자동 감지 context length를 지원하는 직접 Gemini 접근입니다(v0.8.0+).15 |
| Qwen Cloud | OAuth | portal 요청을 지원하는 OAuth provider입니다(v0.8.0+). v0.14.0에서 provider 이름이 Alibaba Cloud에서 Qwen Cloud로 변경되었으며, 기존 config key는 계속 작동합니다.1519 |
| Custom endpoint | config.yaml | hermes model → “Custom endpoint” (config.yaml에 저장) |
v0.19.0부터는 사용하지 않는 provider를 정리할 수도 있습니다. provider별 enabled: false flag와 excluded_providers config key를 사용하면 /model picker와 내장 provider resolution에서 제거됩니다.25
Anthropic: 3가지 인증 방법
Hermes는 Claude로 연결하는 3가지 별도 경로를 지원하므로 Anthropic에는 별도 섹션이 필요하며, 올바른 방법을 선택하는 것이 중요합니다. upstream docs는 다음과 같습니다.2
# Method 1: API key (pay-per-token)
export ANTHROPIC_API_KEY=***
hermes chat --provider anthropic --model claude-sonnet-4-6
# Method 2: OAuth through hermes model (preferred)
# Uses Claude Code's credential store when available
hermes model
# Method 3: Manual setup-token (fallback/legacy)
export ANTHROPIC_TOKEN=***
hermes chat --provider anthropic
# Auto-detect Claude Code credentials
hermes chat --provider anthropic # reads Claude Code files automatically
hermes model을 통해 Anthropic OAuth를 선택하면 Hermes는 token을 ~/.hermes/.env에 복사하는 대신 Claude Code의 자체 credential store를 우선 사용합니다. 이렇게 하면 갱신 가능한 Claude 자격 증명을 계속 갱신할 수 있습니다.2 같은 컴퓨터에서 이미 Claude Code를 사용 중이라면 이것이 가장 깔끔한 경로입니다.
config.yaml에 Anthropic를 영구적으로 고정하려면 다음을 사용하세요.
model:
provider: "anthropic"
default: "claude-sonnet-4-6"
--provider claude와 --provider claude-code도 --provider anthropic의 축약형으로 사용할 수 있습니다.2
GitHub Copilot: 2가지 모드
Copilot은 직접 Copilot API(권장)과 Copilot ACP(로컬 Copilot CLI를 subprocess로 실행)의 2가지 모드를 지원합니다.2
# Direct Copilot API
hermes chat --provider copilot --model gpt-5.4
# Copilot ACP (requires the Copilot CLI in PATH + an existing copilot login)
hermes chat --provider copilot-acp --model copilot-acp
upstream docs에 따르면 인증은 다음 순서로 확인됩니다.2
1. COPILOT_GITHUB_TOKEN 환경 변수
2. GH_TOKEN 환경 변수
3. GITHUB_TOKEN 환경 변수
4. gh auth token CLI fallback
5. hermes model을 통한 OAuth device code 로그인
token 유형이 중요합니다. Copilot API는 classic Personal Access Token(ghp_*)을 지원하지 않습니다. 지원되는 유형은 OAuth token(gho_*), Copilot Requests 권한이 있는 fine-grained PAT(github_pat_*), GitHub App token(ghu_*)입니다. gh auth token이 ghp_* token을 반환하면 대신 hermes model을 사용하여 OAuth로 인증하세요.2
중국 AI Provider(퍼스트 클래스 지원)
Hermes는 전용 provider ID를 사용하여 z.ai/GLM, Kimi/Moonshot, MiniMax(global + China endpoint), Alibaba Cloud를 기본 지원합니다.2
# z.ai / ZhipuAI GLM
hermes chat --provider zai --model glm-5 # Requires: GLM_API_KEY
# Kimi / Moonshot AI
hermes chat --provider kimi-coding --model kimi-for-coding # Requires: KIMI_API_KEY
# MiniMax (global)
hermes chat --provider minimax --model MiniMax-M2.7 # Requires: MINIMAX_API_KEY
# MiniMax (China)
hermes chat --provider minimax-cn --model MiniMax-M2.7 # Requires: MINIMAX_CN_API_KEY
# Alibaba Cloud / DashScope (Qwen)
hermes chat --provider alibaba --model qwen3.5-plus # Requires: DASHSCOPE_API_KEY
GLM_BASE_URL, KIMI_BASE_URL, MINIMAX_BASE_URL, MINIMAX_CN_BASE_URL 또는 DASHSCOPE_BASE_URL 환경 변수로 base URL을 재정의할 수 있습니다.2
Z.AI는 endpoint를 자동 감지합니다. z.ai/GLM provider를 사용하면 Hermes가 여러 endpoint(global, China, coding variant)를 탐색하여 사용자의 API key를 허용하는 endpoint를 찾습니다. 작동하는 endpoint는 자동으로 캐시되므로 대부분의 사용자는 GLM_BASE_URL이 필요하지 않습니다.2
xAI (Grok)는 prompt caching을 자동으로 활성화합니다. base URL에 x.ai가 포함되면 Hermes는 모든 요청에 x-grok-conv-id header를 보내 대화 session 내에서 동일한 server로 라우팅하고, 캐시된 system prompt와 history를 재사용합니다.2 자동으로 작동하며 config가 필요하지 않습니다.
hermes auth 명령
hermes auth는 pool과 OAuth 자격 증명을 관리하는 명령입니다.6
hermes auth # Interactive wizard
hermes auth list # Show all credential pools
hermes auth list openrouter # Show one provider's pool
hermes auth add openrouter --api-key sk-or-v1-xxx
hermes auth add anthropic --type oauth
hermes auth remove openrouter 2 # Remove by index
hermes auth reset openrouter # Clear cooldowns
credential pool을 사용하면 동일한 provider의 여러 API key 또는 OAuth token을 순환할 수 있습니다. 코드를 변경하지 않고 여러 key에 rate limit를 분산할 때 유용합니다.6 기존 hermes login / hermes logout 명령은 제거되었으므로, 대신 hermes auth를 사용하세요.6
Custom 및 Self-Hosted Endpoint
Hermes는 모든 OpenAI-compatible API endpoint와 작동합니다. server가 /v1/chat/completions를 구현한다면 Hermes가 해당 server를 사용하도록 지정할 수 있습니다.2
대화형 설정(권장):
hermes model
# Select "Custom endpoint (self-hosted / VLLM / etc.)"
# Enter: API base URL, API key, Model name
수동 config.yaml:
model:
default: your-model-name
provider: custom
base_url: http://localhost:8000/v1
api_key: your-key-or-leave-empty-for-local
두 방법 모두 main-model, provider, base URL의 단일 source of truth인 config.yaml에 유지됩니다.2 기존 환경 변수 OPENAI_BASE_URL와 LLM_MODEL은 더 이상 main-model configuration에 사용되지 않습니다. hermes model을 사용하거나 config.yaml을 직접 수정하세요.2 (OPENAI_BASE_URL + OPENAI_API_KEY는 보조 provider: "main" routing path의 fallback으로는 계속 적용되므로, 해당 용도로 사용 중이라면 무작정 삭제하지 마세요.)4
session 중간에 custom endpoint 전환하기:
/model custom:qwen-2.5 # Custom endpoint with explicit model
/model custom # Auto-detect the model from the endpoint
/model custom:local:qwen-2.5 # Named custom provider "local"
/model custom:work:llama3 # Named custom provider "work"
/model openrouter:claude-sonnet-4 # Back to a cloud provider
/model custom(model name 없이 단독 사용)은 endpoint의 /v1/models API를 조회하고 정확히 하나의 model만 로드되어 있으면 자동 선택합니다. 단일 model을 실행하는 local server에 유용합니다.2
로컬 LLM Server(설정 템플릿)
upstream docs에는 Ollama, vLLM, SGLang, llama.cpp, LM Studio의 전체 설정 가이드가 있습니다. 다음은 실제로 실행할 핵심 명령입니다. 각각 Hermes가 연결할 수 있는 작동하는 endpoint를 만들도록 설계되었습니다.2
Ollama — 가장 쉬운 로컬 경로, config 불필요:
ollama pull qwen2.5-coder:32b
OLLAMA_CONTEXT_LENGTH=32768 ollama serve # Raise from 4k default
hermes model # Custom endpoint → http://localhost:11434/v1 → qwen2.5-coder:32b
중요한 Ollama 주의사항: Ollama는 기본 context length가 매우 낮습니다(24GB 미만 VRAM에서는 4,096 token). OLLAMA_CONTEXT_LENGTH 또는 Modelfile로 늘려야 합니다. OpenAI-compatible API는 client의 context length를 허용하지 않으므로 Hermes가 대신 설정할 수 없습니다.2 agent 용도라면 최소 16k–32k로 설정하세요.
vLLM — 고성능 GPU serving:
pip install vllm
vllm serve meta-llama/Llama-3.1-70B-Instruct \
--port 8000 \
--max-model-len 65536 \
--tensor-parallel-size 2 \
--enable-auto-tool-choice \
--tool-call-parser hermes
tool calling에는 --enable-auto-tool-choice와 --tool-call-parser <name>가 필요합니다. 지원 parser는 hermes(Qwen 2.5, Hermes 2/3), llama3_json, mistral, deepseek_v3, deepseek_v31, xlam, pythonic입니다. 이 flag가 없으면 tool call이 plain text로 반환됩니다.2
SGLang — KV cache 재사용을 위한 RadixAttention 기반 빠른 serving:
pip install "sglang[all]"
python -m sglang.launch_server \
--model meta-llama/Llama-3.1-70B-Instruct \
--port 30000 \
--context-length 65536 \
--tp 2 \
--tool-call-parser qwen
SGLang 주의사항: 기본 max_tokens는 128입니다. 응답이 잘리면 server에서 --default-max-tokens를 설정하거나 config.yaml에서 model.max_tokens를 설정하세요.2
llama.cpp / llama-server — CPU 및 Apple Silicon Metal:
./build/bin/llama-server \
--jinja -fa \
-c 32768 \
-ngl 99 \
-m models/qwen2.5-coder-32b-instruct-Q4_K_M.gguf \
--port 8080 --host 0.0.0.0
tool calling에는 --jinja가 필요합니다. 이 옵션이 없으면 llama-server가 tools parameter를 완전히 무시하고 model이 응답 text에 JSON를 작성하여 tool을 호출하려 합니다. Hermes는 이를 실제 tool call로 parse할 수 없습니다.2
LM Studio — GUI를 갖춘 desktop app:
LM Studio app에서 server를 시작하세요(Developer tab → Start Server). 또는 CLI에서 lms server start(port 1234에서 시작) 및 lms load qwen2.5-coder --context-length 32768를 실행하세요.2 그런 다음 hermes model이 http://localhost:1234/v1을 사용하도록 지정하세요.
중요한 LM Studio 주의사항: LM Studio는 model metadata에서 context length를 읽지만, 많은 GGUF model은 기본값으로 2048 또는 4096을 보고합니다. LM Studio model 설정에서 항상 context length를 명시적으로 설정하세요. model picker 옆의 gear icon을 클릭하고 “Context Length”를 최소 16384(권장 32768)로 설정한 뒤 model을 다시 로드하세요.2
이름이 지정된 Custom Provider
예를 들어 local dev server와 remote GPU server처럼 여러 custom endpoint를 사용한다면 config.yaml에 이름이 지정된 custom provider로 정의하세요.2
custom_providers:
- name: local
base_url: http://localhost:8080/v1
# api_key omitted — Hermes uses "no-key-required" for keyless local servers
- name: work
base_url: https://gpu-server.internal.corp/v1
api_key: corp-api-key
api_mode: chat_completions # optional, auto-detected from URL
- name: anthropic-proxy
base_url: https://proxy.example.com/anthropic
api_key: proxy-key
api_mode: anthropic_messages # for Anthropic-compatible proxies
그런 다음 triple syntax를 사용해 session 중간에 전환할 수 있습니다.
/model custom:local:qwen-2.5
/model custom:work:llama3-70b
/model custom:anthropic-proxy:claude-sonnet-4
대화형 hermes model 메뉴에서도 이름이 지정된 custom provider를 선택할 수 있습니다.2
플러그형 Provider Architecture(v0.13.0+)
v0.13.0은 ProviderProfile ABC와 plugins/model-providers/ directory를 제공하므로 타사 inference provider를 core 수정 없이 추가할 수 있습니다.18 provider가 OpenAI-, Anthropic-, 또는 Codex-compatible API mode를 지원한다면, auth path, base URL, model catalog, caching header를 선언하는 ProviderProfile subclass를 구현할 수 있습니다. Hermes는 내장 provider가 사용하는 동일한 runtime_provider.py path를 통해 이를 resolve합니다. 이것이 v0.13.0 provider 확장의 architectural change입니다. provider를 추가하기 위해 core code를 수정하는 대신 plugin을 배포합니다.
OpenAI-Compatible Local Proxy(v0.14.0+)
hermes proxy는 Hermes가 이미 로그인한 OAuth provider(Claude Pro, ChatGPT Pro, SuperGrok 또는 호환되는 다른 configured provider)를 기반으로 OpenAI-compatible local endpoint를 제공합니다.19 즉, Codex CLI, Aider, Cline, Continue 또는 custom script를 포함하여 OpenAI 스타일 API를 기대하는 tool이 별도의 API key 없이 subscription 기반 Hermes auth를 재사용할 수 있습니다. proxy는 local developer infrastructure로 취급하세요. 의도적으로 bind하고, 광범위하게 노출하지 말며, provider별 약관을 유의하세요.
Context Length 감지
upstream docs에 따르면 다음 두 설정은 자주 혼동됩니다.2
context_length— 전체 context window입니다(입력 + 출력 token budget의 합계. 예: Claude Opus 4.7은 1,000,000, Sonnet 4.6은 200,000). Hermes는 이를 사용해 history를 언제 compress할지 결정합니다.model.max_tokens— 출력 상한입니다(model이 한 번의 응답에서 생성할 수 있는 최대 token 수). history length와는 관련이 없습니다.
자동 감지가 window size를 잘못 파악할 때는 context_length를 설정하세요.
model:
default: "qwen3.5:9b"
base_url: "http://localhost:8080/v1"
context_length: 131072 # tokens
Hermes는 context window를 감지하기 위해 multi-source resolution chain을 사용합니다. config override → custom provider per-model → persistent cache → endpoint /models → Anthropic /v1/models → OpenRouter API → Nous Portal → models.dev(3,800개 이상 model을 제공하는 community-maintained registry) → fallback default(128K) 순입니다.2 시스템은 provider-aware이므로 동일한 model이라도 제공하는 provider에 따라 context limit가 다를 수 있습니다(예: claude-opus-4.6은 직접 Anthropic에서 1M이지만 GitHub Copilot에서는 128K입니다).2
Smart Model Routing: Provider Rotation 및 Fallback
Hermes는 하나의 provider에서 하나의 model만 사용하도록 고정하지 않습니다. Smart model routing은 특정 요청을 실제로 처리할 provider와 model을 결정하는 메커니즘 집합입니다. credential pool은 여러 key에 부하를 분산하고, primary가 실패하면 configured fallback이 대신 처리하며, 아래의 auxiliary slot은 main model과 독립적으로 부수 작업을 저렴한 model에 라우팅합니다.26 이 3가지를 함께 설정하세요. rate limit에서 멈추는 agent와 계속 작업하는 agent를 가르는 차이입니다.
Credential pool. 같은 provider에 여러 API key가 있다면 hermes auth로 rotation strategy를 설정하세요. 여러 key에 rate limit를 분산하는 방법입니다.6
Fallback model. primary model이 실패할 때(rate limit, server error, auth failure) Hermes가 자동 전환할 backup provider:model을 설정하세요.2
fallback_model:
provider: openrouter # required
model: anthropic/claude-sonnet-4 # required
# base_url: http://localhost:8000/v1 # optional, for custom endpoints
# api_key_env: MY_CUSTOM_KEY # optional, env var name
fallback은 conversation을 잃지 않고 session 중간에 model과 provider를 전환합니다. session당 최대 한 번만 실행됩니다.2 fallback 지원 provider: openrouter, nous, openai-codex, copilot, copilot-acp, anthropic, huggingface, zai, kimi-coding, minimax, minimax-cn, deepseek, ai-gateway, opencode-zen, opencode-go, kilocode, alibaba, custom.2
Auxiliary Model
Hermes는 image analysis, web page summarization, browser screenshot analysis, 위험한 command 승인 분류, context compression, session search summarization, skill matching, MCP tool dispatch, memory flush와 같은 부수 작업에 경량 “auxiliary” model을 사용합니다.4 기본적으로 이 작업은 auto-detection(OpenRouter → Nous → Codex)을 통해 Gemini Flash를 사용합니다.
각 auxiliary 작업에 사용할 model과 provider를 설정할 수 있습니다. 모든 auxiliary slot은 provider, model, base_url이라는 동일한 3가지 설정을 사용합니다.4
auxiliary:
vision:
provider: "auto" # "auto", "openrouter", "nous", "codex", "main", etc.
model: "" # e.g. "openai/gpt-4o", "google/gemini-2.5-flash"
base_url: "" # Custom OpenAI-compatible endpoint
api_key: "" # Falls back to OPENAI_API_KEY
timeout: 30
download_timeout: 30
web_extract:
provider: "auto"
model: ""
timeout: 360
approval:
provider: "auto"
model: ""
timeout: 30
compression:
timeout: 120
session_search: { provider: "auto", model: "", timeout: 30 }
skills_hub: { provider: "auto", model: "", timeout: 30 }
mcp: { provider: "auto", model: "", timeout: 30 }
flush_memories:{ provider: "auto", model: "", timeout: 30 }
"main" provider option은 “내 main agent가 사용하는 provider를 사용”한다는 뜻이며, auxiliary:, compression:, fallback_model: config 내에서만 유효합니다. 최상위 model.provider 설정에는 유효하지 않습니다. main model로 custom OpenAI-compatible endpoint를 사용한다면 model: section에서 provider: custom을 설정하세요.4
이것이 중요한 이유: Anthropic OAuth만 설정했고(OpenRouter key 없음) vision, web summarization, compression 기능이 저하되거나 실패한다면, 기본 auxiliary fallback chain이 먼저 OpenRouter를 시도하기 때문입니다. auxiliary 작업용 OPENROUTER_API_KEY를 추가하거나, 각 auxiliary slot이 main provider를 사용하도록 다시 설정하세요.
auxiliary:
vision:
provider: "main"
web_extract:
provider: "main"
이것은 신규 Hermes 사용자가 가장 자주 겪는 “내 기능이 조용히 작동하지 않아요” 문제입니다.
구성 시스템
Hermes에는 계층형 구성 시스템이 있습니다. 상위 계층이 하위 계층을 재정의하며, 계층 중 하나는 config.yaml에서 볼 수 없는 전역 provider 레지스트리이므로 우선순위를 이해하는 것이 중요해요.
구성 파일 레이아웃
업스트림 문서에 따르면 Hermes 구성은 다음 파일로 이루어져 있어요:4
~/.hermes/
├── config.yaml # All settings (model, terminal, TTS, compression, memory, toolsets, ...)
├── .env # Secrets (API keys, bot tokens, passwords)
├── auth.json # OAuth provider credentials (Nous Portal, Codex, Anthropic)
├── SOUL.md # Primary agent identity (slot #1 in system prompt)
├── memories/ # Persistent memory (MEMORY.md, USER.md)
├── skills/ # Bundled + agent-created + hub-installed skills
├── cron/ # Scheduled jobs
├── sessions/ # Gateway session state
└── logs/ # agent.log, gateway.log, errors.log (secrets auto-redacted)
config.yaml과 .env — 둘 다 설정되어 있으면 비밀 정보 이외의 설정에는 config.yaml이 우선 적용돼요.4 규칙은 다음과 같아요:
- 비밀 정보 (API 키, bot 토큰, 비밀번호) → .env
- 그 외 모든 항목 (모델, 터미널 백엔드, 압축 설정, 메모리 제한, toolset) → config.yaml
shell 스타일 보간을 사용해 config.yaml에서 비밀 정보를 참조할 수 있어요:4
auxiliary:
vision:
api_key: ${GOOGLE_API_KEY}
base_url: ${CUSTOM_VISION_URL}
delegation:
api_key: ${DELEGATION_KEY}
구성 관리
hermes config # View current configuration
hermes config show # Same as above
hermes config edit # Open config.yaml in your editor
hermes config set KEY VAL # Set a specific value
hermes config get KEY # Print a single value (v0.19.0+)
hermes config unset KEY # Remove a key so the default applies again (v0.19.0+)
hermes config path # Print the config file path
hermes config env-path # Print the .env file path
hermes config check # Check for missing options (after updates)
hermes config migrate # Interactively add missing options
예시:4
hermes config set model anthropic/claude-opus-4
hermes config set terminal.backend docker
hermes config set OPENROUTER_API_KEY sk-or-... # Saves to .env
hermes config check와 hermes config migrate는 hermes update를 실행할 때마다 실행해야 하는 명령어예요. 아직 파일에 없는 새 구성 옵션을 찾아줘요.6
구성 우선순위
Hermes는 여러 소스에서 구성을 불러와요. 여러 소스가 같은 값을 설정하면 우선순위가 더 높은 소스가 적용돼요:4
- CLI 인수 —
hermes chat --model anthropic/claude-sonnet-4(호출별 재정의) - 환경 변수 — 프로세스 시작 시 적용돼요
config.yaml— 기본 설정 파일이에요.env— 비밀 정보 전용이에요- 내장 기본값 — 다른 어떤 소스도 값을 설정하지 않을 때 적용돼요
CLI 플래그는 해당 단일 호출에서 항상 우선 적용돼요. 장기적인 기준 구성은 config.yaml이에요.
현지화 (v0.13.0+)
v0.13.0에서는 CLI 및 gateway 메시지용으로 7개 로케일이 추가됐어요. 중국어(간체), 일본어, 독일어, 스페인어, 프랑스어, 우크라이나어, 터키어예요.18 v0.14.0에서는 모든 gateway 명령어와 웹 대시보드를 현지화하고, 로케일을 8개 더 추가해 총 16개로 늘렸어요.19 현재 문서는 zh-Hans로만 현지화되어 있어요. 로케일은 LC_ALL / LANG 환경 변수 또는 config.yaml의 명시적인 locale: 키를 통해 결정돼요. 영어는 기본값으로 유지되며, 아직 번역에서 다루지 않은 모든 문자열의 기준이에요.
Profiles — 여러 개의 격리된 Hermes 인스턴스
profile을 사용하면 각각 자체 구성, 세션, skill, 메모리, gateway PID를 가진 여러 격리된 Hermes 인스턴스를 만들 수 있어요. 서로의 상태를 보지 못하게 하면서 “업무용 Hermes”와 “개인용 Hermes”를 나란히 실행하는 방법이에요.6
hermes profile list
hermes profile create work --clone # Clone from current profile
hermes profile use work # Set sticky default
hermes profile alias work --name h-work # Create wrapper script
hermes profile export work -o work-backup.tar.gz
hermes profile import work-backup.tar.gz --name restored
hermes -p work chat -q "Hello from work profile" # One-off without switching
각 profile에는 자체 HERMES_HOME(기본값은 ~/.hermes-<name>/)이 할당되므로, 여러 profile에서 서로 충돌하지 않고 gateway를 동시에 실행할 수 있어요.63
CLI 명령어
이 섹션은 최상위 CLI 명령어를 위한 실무자 참고 자료입니다. 코드에서 파생된 공식 참고 자료는 업스트림 CLI Commands Reference를 참조하세요.6
전역 옵션
hermes [global-options] <command> [subcommand/options]
| 옵션 | 설명 |
|---|---|
--version, -V |
버전을 표시하고 종료 |
--profile <name>, -p <name> |
사용할 Hermes profile 선택 |
--resume <session>, -r <session> |
ID 또는 제목으로 세션 재개 |
--continue [name], -c [name] |
가장 최근 세션을 재개하거나 제목과 일치하는 세션 재개 |
--worktree, -w |
격리된 git worktree에서 시작 |
--yolo |
위험한 명령어 승인 프롬프트 우회 |
--safe-mode |
문제 해결 플래그 — 시작 문제를 격리하기 위해 최소한의 안전 모드로 Hermes 시작 (v0.19.0+)25 |
--pass-session-id |
agent의 system prompt에 세션 ID 포함 |
최상위 명령어
| 명령어 | 용도 |
|---|---|
hermes chat |
대화형 또는 일회성 채팅 |
hermes model |
기본 provider와 model을 대화형으로 선택 |
hermes gateway |
메시징 gateway 실행 또는 관리 |
hermes setup |
대화형 설정 마법사 |
hermes auth |
자격 증명 관리 — 추가, 목록 조회, 제거, 재설정, 전략 설정 |
hermes status |
agent, auth, 플랫폼 상태 표시 |
hermes cron |
cron 스케줄러 검사 및 실행 |
hermes webhook |
동적 webhook 구독 관리 |
hermes doctor |
config 및 종속성 문제 진단 |
hermes dump |
지원 및 디버깅을 위한 복사-붙여넣기 가능한 설정 요약 |
hermes logs |
agent, gateway, 오류 로그 조회, 실시간 추적 및 필터링 |
hermes config |
configuration 표시, 편집, 마이그레이션, 조회 |
hermes pairing |
메시징 페어링 코드 승인 또는 취소 |
hermes skills |
skill 탐색, 설치, 게시, 감사 |
hermes honcho |
Honcho 교차 세션 memory 관리 |
hermes memory |
외부 memory provider 구성 |
hermes acp |
Hermes를 ACP server로 실행 (editor integration) |
hermes mcp |
MCP server config 관리, Hermes를 MCP server로 실행 |
hermes plugins |
plugins 관리 |
hermes tools |
플랫폼별 활성화된 tools 구성 |
hermes sessions |
세션 탐색, 내보내기, 정리, 삭제. v0.19.0에서는 hermes sessions export가 Markdown, Quarto, HTML, prompt-only, Hugging Face trace 형식으로 확장되었으며, 선택적으로 사용할 수 있는 --redact 시크릿 삭제 처리와 기간/workspace/platform 필터를 제공합니다25 |
hermes insights |
token/cost/activity analytics 표시 |
hermes claw |
OpenClaw 마이그레이션 도우미 |
hermes profile |
profile 관리 (여러 격리 인스턴스) |
hermes completion |
shell completion 스크립트 출력 (bash/zsh) |
hermes whatsapp |
WhatsApp bridge 구성 및 페어링 |
hermes version |
버전 정보 출력 |
hermes update |
최신 코드 가져오기 및 종속성 재설치 |
hermes uninstall |
시스템에서 Hermes 제거 (--full은 config/data도 삭제) |
hermes backup |
config, 세션, skill, memory 전체 백업 (v0.9.0+)16 |
hermes import |
백업 아카이브에서 복원 — 머신 간 마이그레이션 또는 롤백 (v0.9.0+)16 |
hermes dashboard |
브라우저 기반 agent 관리를 위한 로컬 web dashboard 실행 (v0.9.0+)16 |
hermes serve |
backend API server를 headless로 실행 — v0.19.0부터는 web UI를 빌드하거나 마운트하지 않음25 |
hermes debug share |
문제 해결 시 공유할 수 있도록 전체 debug report를 pastebin에 업로드 (v0.9.0+)16 |
hermes chat — 주요 진입점
인수 없이 hermes를 실행하면 대화형 채팅으로 진입합니다. hermes chat은 옵션을 명시하는 형식입니다.6
hermes chat -q "Summarize the latest PRs" # One-shot, non-interactive
hermes chat --provider openrouter --model anthropic/claude-sonnet-4.6
hermes chat --toolsets web,terminal,skills # Enable specific toolsets
hermes chat --quiet -q "Return only JSON" # Programmatic mode
hermes chat --worktree -q "Review repo and open a PR"
주요 옵션:
| 옵션 | 설명 |
|---|---|
-q, --query "..." |
일회성 비대화형 프롬프트 |
-m, --model <model> |
이번 실행에 사용할 model 재정의 |
-t, --toolsets <csv> |
쉼표로 구분된 toolset 집합 활성화 |
--provider <provider> |
provider 강제 지정 (전체 목록 참조) |
-s, --skills <name> |
이 세션에 하나 이상의 skill 미리 로드 |
-v, --verbose |
자세한 출력 |
-Q, --quiet |
프로그래밍 방식 모드 (배너, 스피너, 미리 보기 없음) |
--resume <session> |
chat에서 직접 세션 재개 |
--worktree |
격리된 git worktree 생성 |
--checkpoints |
파괴적인 변경 전 filesystem checkpoint 활성화 |
--yolo |
승인 프롬프트 건너뛰기 |
--source <tag> |
세션 source tag (기본값: cli, integration에는 tool 사용) |
--max-turns <N> |
턴당 최대 tool-calling 반복 횟수 (기본값: 90) |
hermes setup — 전체 마법사
전체 설정 마법사를 실행하거나 특정 섹션으로 바로 이동합니다.6
hermes setup # Full wizard
hermes setup model # Provider and model only
hermes setup terminal # Terminal backend only
hermes setup gateway # Messaging platforms only
hermes setup tools # Tool enable/disable per platform
hermes setup agent # Agent behavior only
hermes setup --non-interactive
hermes setup --reset # Reset config to defaults before setup
hermes logs — 구조화된 로그 조회
hermes logs는 수준, 세션 ID, 시간 범위로 동시에 필터링할 수 있으므로 로그 파일에서 tail -f를 사용하는 것보다 강력합니다.6
hermes logs # Last 50 lines of agent.log
hermes logs -f # Follow in real time
hermes logs gateway -n 100 # Last 100 lines of gateway.log
hermes logs --level WARNING --since 1h # Warnings from the last hour
hermes logs --session abc123 # Filter by session ID substring
hermes logs errors --since 30m -f # Follow errors.log from 30m ago
hermes logs list # List all log files with sizes
로그 파일은 ~/.hermes/logs/에 있습니다.6
- agent.log — 모든 agent 활동 (API 호출, tool dispatch, 세션 수명 주기, INFO 이상)
- errors.log — 경고 및 오류만 포함 (agent.log의 필터링된 하위 집합)
- gateway.log — 메시징 gateway 활동 (플랫폼 연결, dispatch, webhooks)
Python의 RotatingFileHandler를 통해 자동으로 순환됩니다. agent.log.1, agent.log.2 등을 확인하세요.6
hermes doctor — 진단
문제가 발생했을 때 가장 먼저 실행할 명령어는 hermes doctor [--fix]입니다. 이 명령어는 config 유효성, 종속성 존재 여부, API key 사용 가능 여부, service 상태를 확인하며 --fix로 자동 복구를 시도할 수 있습니다.6
다른 사람과 진단 정보를 공유하려면 hermes dump를 사용하세요. API key가 가려진 간결한 일반 텍스트 요약을 생성하므로 GitHub issue 또는 Discord thread에 바로 붙여넣을 수 있습니다.6
슬래시 명령어
슬래시 명령어는 활성 채팅 세션(CLI 또는 메시징 플랫폼)에서 실행됩니다. 공유 COMMAND_REGISTRY에서 hermes_cli/commands.py로 전달되므로 대부분의 명령어는 모든 환경에서 동일하게 작동해요.9
세션 제어
| 명령어 | 설명 |
|---|---|
/new (별칭 /reset) |
새 세션 시작 |
/clear |
화면 지우기 + 새 세션 시작 |
/history |
대화 기록 표시 |
/save |
현재 대화 저장 |
/retry |
마지막 메시지 다시 시도 |
/undo |
마지막 사용자/assistant 교환 삭제 |
/title <name> |
현재 세션의 제목 설정 |
/compress |
대화 컨텍스트 수동 압축 |
/rollback [number] |
파일 시스템 checkpoint 목록 표시 또는 복원 |
/stop |
실행 중인 모든 백그라운드 프로세스 종료 |
/queue <prompt> |
다음 턴에 사용할 prompt를 queue에 추가합니다. 주의: /q는 /queue와 /quit 모두에 할당되어 있어요. 마지막 등록이 적용되므로 실제로 /q는 /quit로 해석됩니다. 항상 /queue를 명시적으로 입력하세요.9 |
/resume [name] |
이전에 이름을 지정한 세션 재개 |
/statusbar (별칭 /sb) |
컨텍스트/model 상태 표시줄 전환 |
/background <prompt> (별칭 /bg) |
별도의 백그라운드 세션에서 prompt 실행 |
/btw <question> |
일시적인 보조 질문(도구 미사용, 저장되지 않음) |
/plan [request] |
실행 대신 계획을 작성하도록 번들 plan skill 로드 |
/branch [name] (별칭 /fork) |
현재 세션 분기 |
/goal <target> |
여러 턴에 걸쳐 작업을 유지하도록 agent를 target에 고정합니다. Ralph-loop 패턴을 기본 기능으로 제공해요. 턴 예산을 설정할 수 있습니다. v0.13.0에서 새로 추가되었습니다.18 |
/subgoal <criterion> |
loop를 다시 시작하지 않고 활성 /goal에 성공 기준을 추가합니다. v0.14.0에서 새로 추가되었습니다.19 |
/handoff <target> |
메시지, tool call, 컨텍스트를 포함한 활성 세션을 다른 model, persona 또는 profile로 이전합니다. v0.14.0에서 새로 추가되었습니다.19 |
설정 및 Model
| 명령어 | 설명 |
|---|---|
/config |
현재 설정 표시 |
/model [model-name] |
현재 model 표시 또는 변경 |
/provider |
사용 가능한 provider와 현재 provider 표시 |
/personality [name] |
personality overlay 설정 |
/verbose |
tool 진행 상황 표시 순환 |
/reasoning |
reasoning effort와 표시를 관리합니다. v0.19.0에서는 max 및 ultra effort tier를 추가하고, config의 model별 및 MoA slot별 effort override와 함께 /reasoning을 세션 범위로 변경했습니다25 |
/skin |
표시 skin/theme 표시 또는 변경 |
/voice [on\|off\|tts\|status] |
CLI 음성 모드 전환 |
/yolo |
YOLO 모드 전환(승인 prompt 건너뛰기). v0.19.0부터는 YOLO 모드에서도 사용자가 정의한 deny 규칙이 일치하는 명령을 계속 차단합니다25 |
/fast |
Fast Mode 전환 — OpenAI 및 Anthropic model을 위한 우선 처리(v0.9.0+)16 |
/debug |
모든 플랫폼에서 빠른 진단 실행(v0.9.0+)16 |
/subscription |
terminal에서 Nous Portal plan을 관리합니다 — plan 및 남은 allowance, upgrade/downgrade 비용 미리 보기, undo를 포함한 적용(v0.19.0+)25 |
/topup |
terminal을 벗어나지 않고 Nous Portal 잔액에 credit을 추가합니다(v0.19.0+)25 |
/model 명령어는 세션 중간에 provider를 전환할 때 핵심 역할을 해요.9
/model # Show current model and options
/model claude-sonnet-4 # Switch model (auto-detect provider)
/model zai:glm-5 # Switch provider:model
/model custom:qwen-2.5 # Use model on custom endpoint
/model custom # Auto-detect model from custom endpoint
/model custom:local:qwen-2.5 # Named custom provider
/model openrouter:anthropic/claude-sonnet-4 # Back to cloud
v0.19.0에서는 /model --once를 추가했습니다. 이는 응답 후 이전 model로 자동 복귀하는 한 턴짜리 model override예요.25
Tools, Skills 및 정보
| 명령어 | 설명 |
|---|---|
/tools [list\|disable\|enable] [name...] |
현재 세션의 tool 관리 |
/toolsets |
사용 가능한 toolset 목록 표시 |
/browser [connect\|disconnect\|status] |
로컬 Chrome CDP 연결 관리 |
/skills |
skill 검색, 설치, 검사 또는 관리 |
/cron |
예약된 작업 관리 |
/reload-mcp |
config.yaml에서 MCP 서버 다시 로드 |
/plugins |
설치된 plugin 목록 표시 |
/help |
모든 명령어 표시 |
/usage |
token 사용량, 비용, 기간 표시 |
/insights |
사용량 분석 표시(최근 30일) |
/platforms |
메시징 플랫폼 상태 표시 |
/profile |
활성 profile 이름과 home 표시 |
동적 Skill 슬래시 명령어
설치된 모든 skill은 자동으로 슬래시 명령어로 노출됩니다.9
/gif-search funny cats
/axolotl help me fine-tune Llama 3 on my dataset
/github-pr-workflow create a PR for the auth refactor
/excalidraw # Just the skill name loads it and lets the agent ask what you need
v0.19.0부터 슬래시 skill 호출은 누적됩니다. /skill-a /skill-b do XYZ는 한 턴에서 두 skill을 순서대로 로드하며, 연결된 이름에 대한 자동 완성과 ghost text도 제공해요.25
config.yaml에서 짧은 이름을 더 긴 prompt의 별칭으로 지정하는 quick command도 정의할 수 있어요.9
quick_commands:
review: "Review my latest git diff and suggest improvements"
deploy: "Run the deployment script at scripts/deploy.sh and verify the output"
morning: "Check my calendar, unread emails, and summarize today's priorities"
그런 다음 CLI에서 /review, /deploy 또는 /morning을 입력하세요.
Prefix Matching
명령어는 prefix matching을 지원합니다. /h를 입력하면 /help로, /mod를 입력하면 /model로 해석돼요. prefix가 모호한 경우 registry 순서상 먼저 등록된 항목이 적용됩니다. 전체 명령어 이름과 등록된 별칭은 항상 prefix match보다 우선합니다.9
메시징 전용 명령어
일부 명령어는 메시징 플랫폼(Telegram, Discord, Slack, WhatsApp, Signal, Email, Home Assistant)에서만 작동합니다.9
/status— 세션 정보 표시/sethome(별칭/set-home) — 현재 채팅을 플랫폼 home으로 표시/approve [session|always]— 대기 중인 위험한 명령 승인/deny [reason]— 대기 중인 위험한 명령 거부. v0.19.0부터/deny <reason>은 거부 사유를 agent에 전달하므로 무작정 재시도하지 않고 작업 방향을 수정합니다25/update— Hermes Agent를 최신 버전으로 업데이트/commands [page]— 모든 명령어와 skill 탐색(page 단위)
또한 일부는 CLI 전용입니다. /skin, /tools, /toolsets, /browser, /config, /cron, /skills, /platforms, /paste, /statusbar, /plugins.9
Tools & Toolsets
Hermes에는 웹 검색, 브라우저 자동화, 터미널 실행, 파일 편집, 메모리, 위임, RL 학습, 메시지 전송, Home Assistant 통합 등을 포괄하는 폭넓은 기본 제공 도구 레지스트리가 포함되어 있습니다.10 도구는 플랫폼별로 활성화하거나 비활성화할 수 있는 논리적 toolset으로 구성됩니다.
상위 수준 카테고리
| 카테고리 | 예시 | 설명 |
|---|---|---|
| 웹 | web_search, web_extract |
웹을 검색하고 페이지 콘텐츠를 추출합니다 |
| 터미널 및 파일 | terminal, process, read_file, patch |
명령을 실행하고 파일을 조작합니다 |
| 브라우저 | browser_navigate, browser_snapshot, browser_vision |
텍스트와 비전을 활용하는 대화형 브라우저 자동화 |
| 미디어 | vision_analyze, video_analyze, video_generate, image_generate, text_to_speech |
멀티모달 분석과 생성. video_analyze는 Gemini 우선 방식이며 호환되는 멀티모달 provider를 위한 확장 가능한 지원을 제공합니다(v0.13.0+). v0.14.0에서는 플러그형 provider backend를 갖춘 통합 video_generate를 추가하고, 활성 모델이 비전 기능을 지원할 경우 vision_analyze를 통해 원시 픽셀을 전송합니다.1819 |
| Agent 오케스트레이션 | todo, clarify, execute_code, delegate_task |
계획, 명확화, 코드 실행, subagent 위임 |
| 컴퓨터 사용 | computer_use |
cua-driver backend를 통한 데스크톱 제어. v0.14.0에서는 비전 기능을 지원하는 Anthropic 이외의 provider에서도 작동합니다.19 |
| 메모리 및 검색 | memory, session_search |
영구 메모리 + 세션 검색 |
| 자동화 및 전송 | cronjob, send_message |
예약된 작업, 발신 메시지 |
| 통합 | ha_*, MCP 도구, rl_* |
Home Assistant, MCP, RL 학습 |
일반적인 toolset 이름에는 web, terminal, file, browser, vision, image_gen, moa, skills, tts, todo, memory, session_search, cronjob, code_execution, delegation, clarify, homeassistant, rl이 있습니다.10
도구 관리
hermes chat --toolsets "web,terminal" # Use specific toolsets
hermes tools # Interactive per-platform tool config
hermes tools --summary # Print enabled-tools summary
/tools disable <name> 및 /tools enable <name>을 통해 세션 도중에도 도구를 전환할 수 있으며, 새 도구 세트가 적용되도록 세션이 재설정됩니다.9
터미널 Backend
터미널 도구는 6가지 환경에서 명령을 실행할 수 있습니다.10
| Backend | 사용 사례 |
|---|---|
local |
사용자 컴퓨터에서 실행(기본값) — 개발, 신뢰할 수 있는 작업 |
docker |
격리된 컨테이너 — 보안, 재현성 |
ssh |
원격 서버 — sandbox, agent를 자체 코드에서 분리 |
singularity |
HPC 컨테이너 — 클러스터 컴퓨팅, rootless |
modal |
서버리스 클라우드 실행 |
daytona |
클라우드 sandbox workspace — 영구적인 원격 개발 환경 |
hermes config set terminal.backend <name>으로 backend를 전환하거나 config.yaml에서 설정할 수 있습니다.
terminal:
backend: docker # or: local, ssh, singularity, modal, daytona
cwd: "." # Working directory
timeout: 180 # Command timeout in seconds
SSH backend(보안을 위해 권장 — agent가 자체 코드를 수정할 수 없음):10
terminal:
backend: ssh
# In ~/.hermes/.env
TERMINAL_SSH_HOST=my-server.example.com
TERMINAL_SSH_USER=myuser
TERMINAL_SSH_KEY=~/.ssh/id_rsa
Docker backend:
terminal:
backend: docker
docker_image: python:3.11-slim
컨테이너 리소스(docker, singularity, modal, daytona에 적용):10
terminal:
container_cpu: 1
container_memory: 5120 # MB (default 5GB)
container_disk: 51200 # MB (default 50GB)
container_persistent: true # Persist filesystem across sessions
container_persistent: true를 사용하면 설치한 패키지, 파일, 설정이 세션 간에도 유지됩니다.10
모든 컨테이너 backend는 보안 강화 설정으로 실행됩니다. 읽기 전용 루트 파일 시스템(Docker), DAC_OVERRIDE, CHOWN, FOWNER를 제외한 모든 Linux capability 삭제, 권한 상승 방지, PID 제한(256개 프로세스), 전체 namespace 격리, volume을 통한 영구 workspace가 적용됩니다.10
백그라운드 프로세스
터미널 도구는 명시적인 프로세스 관리와 함께 백그라운드 실행을 지원합니다.10
terminal(command="pytest -v tests/", background=true)
# Returns: {"session_id": "proc_abc123", "pid": 12345}
process(action="list") # Show all running processes
process(action="poll", session_id="proc_abc123") # Check status
process(action="wait", session_id="proc_abc123") # Block until done
process(action="log", session_id="proc_abc123") # Full output
process(action="kill", session_id="proc_abc123") # Terminate
process(action="write", session_id="proc_abc123", data="y") # Send input
PTY 모드(pty=true)는 Codex 및 Claude Code 같은 대화형 도구를 활성화합니다.10
Sudo
명령에 sudo가 필요하면 Hermes가 비밀번호를 요청합니다(세션 동안 캐시됨). 또는 ~/.hermes/.env에 SUDO_PASSWORD를 설정하세요.10
Multi-Agent Kanban (v0.13.0+)
v0.13.0은 multi-agent 협업을 일급 기본 요소로 만듭니다. 즉, agent와 재시작을 거쳐 작업, 상태, worker identity를 추적하는 영구 Kanban 보드입니다.18 이 보드는 Hermes worker 무리가 막힌 handoff에서 멈추지 않고 실제로 작업을 완료하게 해 줍니다.
| 메커니즘 | 기능 |
|---|---|
| Heartbeat | 각 worker는 작업을 소유하는 동안 pulse를 보냅니다. heartbeat가 누락되면 worker는 의심 상태로 표시되고 작업은 다시 가져갈 수 있도록 해제됩니다. |
| Reclaim | 다른 worker가 전체 작업 상태와 이전의 부분 출력을 유지한 채 버려진 작업을 이어받을 수 있습니다. |
| Zombie 감지 | 작업 완료 표시 없이 종료한 worker는 새 작업을 claim하지 못하도록 자동 차단되어, swarm에 죽은 identity가 쌓이는 일을 방지합니다. |
| Hallucination gate | gate를 통과하지 못한 출력은 완료로 표시되지 않고 사유가 기록된 채 작업을 보드로 되돌립니다. |
작업별 max_retries |
취약하다는 것을 알고 있는 작업에서 기본 재시도 예산을 재정의합니다. |
| 다중 프로젝트 보드 | 하나의 Hermes home에서 여러 독립적인 보드를 호스팅할 수 있습니다. |
Kanban 보드는 대상 측면에서는 /goal(locked-target Ralph loop)과, spawn 의미론에서는 기존 delegate_task 도구와 자연스럽게 연동됩니다. 그 결과 모든 agent가 다음에 무엇을 해야 하는지, 누가 수행 중인지, 무엇이 막혔는지에 관한 단일 진실 공급원을 공유하는 swarm 패턴이 만들어집니다.
Hermes Swarm이란 무엇인가요?
swarm은 하나의 공유 Kanban 보드에 대해 병렬로 실행되는 여러 Hermes worker입니다. 별도로 활성화하는 하위 시스템이 아닙니다. 보드가 가능하게 하는 것이 바로 swarm입니다. 보드는 병렬 agent가 스스로 제공할 수 없는 한 가지를 제공합니다. 즉, 다음에 어떤 작업을 가져와야 하며, 이미 누군가 그 작업을 맡고 있는가?에 대한 단일한 권위 있는 답입니다.
v0.15.0에서는 이를 패턴에서 지원되는 topology로 승격했습니다. 병렬 worker 조정을 위한 swarm topology, 상위 수준 목표를 subtask로 나누는 auto-decomposition, 작업별 모델 재정의, 예약된 작업, 병렬 worker가 같은 checkout에서 충돌하지 않도록 하는 worktree 관리가 추가되었습니다.28
| 순진한 multi-agent 설정의 문제 | 보드가 대신 수행하는 일 |
|---|---|
| 두 worker가 같은 작업을 가져감 | worker identity가 기록된 상태로 작업 소유권을 claim합니다 |
| worker가 작업 도중 종료되어 작업이 사라짐 | heartbeat가 만료되고 이전 부분 출력을 유지한 채 작업을 reclaim합니다 |
| 충돌한 worker가 작업을 영구히 “점유”함 | Zombie 감지가 새 작업 claim을 차단합니다 |
| 모든 subtask에 비싼 모델 하나를 사용함 | 작업별 모델 재정의 — 기계적인 subtask에는 저렴한 모델 사용 |
| 병렬 worker가 같은 파일을 편집함 | worktree 관리가 각 worker의 checkout을 격리합니다 |
실제 방식은 이렇습니다. swarm에 목표를 부여하고, auto-decomposition이 이를 보드 작업으로 나누게 한 뒤,
worker가 claim, 실행, 결과 반환을 하도록 합니다. 재시도 예산은 작업별(max_retries)이므로
취약한 subtask 하나가 전체 실행의 허용 범위를 소진하지 않습니다. 보드는
영구적이므로 swarm은 재시작 후에도 유지됩니다. worker가 다시 연결되어 동일한 상태에서 재개합니다.
swarm의 품질은 분해의 품질에 달려 있습니다. 보드는 worker를 조정할 뿐, 잘못 나눈 목표를 좋은 목표로 바꾸지는 못합니다. 숨겨진 상태를 공유하는 작업은 여전히 충돌합니다. worktree를 사용해도 마찬가지입니다.
Skills 시스템
Skills는 필요할 때 에이전트가 불러올 수 있는 온디맨드 지식 문서입니다. 토큰 사용량을 최소화하기 위해 점진적 공개 패턴을 따르며, agentskills.io 오픈 표준과 호환됩니다.11
모든 skill은 ~/.hermes/skills/에 저장됩니다 — 기본 디렉터리이자 신뢰할 수 있는 단일 소스입니다. 새로 설치하면 번들 skill이 저장소에서 복사됩니다. Hub에서 설치하거나 에이전트가 생성한 skill도 여기에 저장됩니다.11
점진적 공개
Level 0: skills_list() → [{name, description, category}, ...] (~3k tokens)
Level 1: skill_view(name) → Full content + metadata (varies)
Level 2: skill_view(name, path) → Specific reference file (varies)
에이전트는 실제로 필요할 때만 전체 skill 콘텐츠를 불러옵니다.11
SKILL.md 형식
---
name: my-skill
description: Brief description of what this skill does
version: 1.0.0
platforms: [macos, linux] # Optional — restrict to OS platforms
metadata:
hermes:
tags: [python, automation]
category: devops
fallback_for_toolsets: [web] # Conditional activation
requires_toolsets: [terminal] # Conditional activation
config: # Config.yaml settings
- key: my.setting
description: "What this controls"
default: "value"
prompt: "Prompt for setup"
---
# Skill Title
## When to Use
Trigger conditions for this skill.
## Procedure
1. Step one
2. Step two
## Pitfalls
- Known failure modes and fixes
## Verification
How to confirm it worked.
조건부 활성화
Skills는 사용 가능한 도구에 따라 스스로 표시하거나 숨길 수 있습니다. 이는 fallback skills에 특히 유용합니다. 즉, 프리미엄 도구를 사용할 수 없을 때만 표시되어야 하는 무료 또는 로컬 대안입니다.11
| 필드 | 동작 |
|---|---|
fallback_for_toolsets |
나열된 toolset을 사용할 수 있으면 skill을 숨깁니다 |
fallback_for_tools |
동일하지만 개별 도구를 확인합니다 |
requires_toolsets |
나열된 toolset을 사용할 수 없으면 skill을 숨깁니다 |
requires_tools |
동일하지만 개별 도구를 확인합니다 |
예시: 기본 제공 duckduckgo-search skill은 fallback_for_toolsets: [web]를 사용합니다. FIRECRAWL_API_KEY가 설정되어 있으면 web toolset을 사용할 수 있고 에이전트는 web_search를 사용합니다. 이때 DuckDuckGo skill은 숨겨집니다. API 키가 없으면 DuckDuckGo skill이 fallback으로 자동 표시됩니다.11
에이전트 관리 Skills
에이전트는 skill_manage 도구를 통해 자체 skill을 생성, 업데이트, 삭제할 수 있습니다. 이는 에이전트의 절차적 메모리입니다. 에이전트가 단순하지 않은 워크플로를 파악하면 이후에 재사용할 수 있도록 해당 접근 방식을 skill으로 저장합니다.11
에이전트가 skill을 생성하는 경우:11 - 복잡한 작업(도구 호출 5회 이상)을 성공적으로 완료한 후 - 오류나 막다른 길에 부딪힌 뒤 작동하는 경로를 찾았을 때 - 사용자가 접근 방식을 수정해 주었을 때 - 단순하지 않은 워크플로를 발견했을 때
작업:11
| 작업 | 용도 |
|---|---|
create |
새 skill을 처음부터 생성 |
patch |
특정 수정에 사용(권장 — 토큰 효율이 가장 높음) |
edit |
대규모 구조 개편 |
delete |
skill 전체 제거 |
write_file |
지원 파일 추가 또는 업데이트 |
remove_file |
지원 파일 제거 |
Skill Hub
온라인 레지스트리에서 skill을 탐색, 검색, 설치, 관리할 수 있습니다.611
hermes skills browse # Browse all hub skills
hermes skills browse --source official # Browse official optional skills
hermes skills search kubernetes # Search all sources
hermes skills search react --source skills-sh # Search skills.sh directory
hermes skills inspect openai/skills/k8s # Preview before installing
hermes skills install openai/skills/k8s # Install with security scan
hermes skills install skills-sh/anthropics/skills/pdf --force
hermes skills check # Check for upstream updates
hermes skills update # Reinstall changed hub skills
hermes skills audit # Re-scan installed hub skills
hermes skills uninstall k8s
hermes skills publish skills/my-skill --to github --repo owner/repo
hermes skills tap add myorg/skills-repo # Add custom GitHub source
통합 Hub 소스:11
| 소스 | 예시 | 참고 |
|---|---|---|
official |
official/security/1password |
Hermes와 함께 제공되는 선택적 skill(기본 신뢰) |
skills-sh |
skills-sh/vercel-labs/agent-skills/vercel-react-best-practices |
Vercel의 공개 skill 디렉터리 |
well-known |
well-known:https://mintlify.com/docs/.well-known/skills/mintlify |
/.well-known/skills/index.json을 게시하는 사이트의 URL 기반 검색 |
github |
openai/skills/k8s |
직접 GitHub 저장소/경로 설치 |
clawhub |
— | 서드 파티 skill 마켓플레이스 |
lobehub |
— | LobeHub 에이전트 카탈로그 변환 |
browse-sh |
— | Browserbase skill 소스 |
기본 GitHub 탭(설정 없이 탐색 가능): openai/skills, anthropics/skills, huggingface/skills, NVIDIA/skills, garrytan/gstack. claude-marketplace 소스는 v0.20.0에서 제거되었고, 소스 목록에서는 browse-sh가 이를 대체했습니다.1124
보안 검사
Hub에서 설치한 모든 skill은 데이터 유출, 프롬프트 인젝션, 파괴적인 명령, 공급망 신호 및 기타 위협을 확인하는 보안 스캐너를 거칩니다.11
신뢰 수준:11
| 수준 | 소스 | 정책 |
|---|---|---|
builtin |
Hermes와 함께 제공 | 항상 신뢰 |
official |
저장소의 optional-skills/ |
기본 신뢰, 서드 파티 경고 없음 |
trusted |
신뢰할 수 있는 레지스트리(openai/skills, anthropics/skills) |
더 완화된 정책 |
community |
그 외 모든 항목 | 위험하지 않은 결과는 --force로 무시할 수 있지만, dangerous 판정은 계속 차단됨 |
--force는 community skill에 적용된 위험하지 않은 정책 차단을 무시할 수 있습니다. 하지만 dangerous 검사 판정은 무시하지 못합니다.11
외부 Skill 디렉터리
로컬 디렉터리와 함께 검사할 추가 skill 디렉터리를 Hermes에 지정할 수 있습니다.11
skills:
external_dirs:
- ~/.agents/skills
- /home/shared/team-skills
- ${SKILLS_REPO}/skills
경로는 ~ 확장과 ${VAR} 환경 변수 대체를 지원합니다. 외부 디렉터리는 읽기 전용입니다. 에이전트가 skill을 생성하거나 수정할 때는 항상 ~/.hermes/skills/에 작성합니다. 같은 이름의 skill이 두 위치에 있으면 로컬 항목이 우선합니다.11
영구 메모리
Hermes에는 세션 간에 유지되는 용량 제한형의 선별된 메모리가 있습니다. 에이전트의 메모리는 ~/.hermes/memories/에 저장되는 다음 두 파일로 구성됩니다.12
| 파일 | 용도 | 문자 제한 |
|---|---|---|
MEMORY.md |
에이전트의 개인 메모 — 환경 정보, 규칙, 학습한 내용 | 2,200자 (~800토큰) |
USER.md |
사용자 profile — 선호도, 소통 방식, 기대 사항 | 1,375자 (~500토큰) |
두 파일은 모두 세션 시작 시 고정된 스냅샷으로 system prompt에 주입됩니다. 에이전트는 memory tool을 통해 add, replace, remove 방식으로 자신의 메모리를 관리합니다.12
고정된 스냅샷 패턴: system prompt 주입 내용은 세션 시작 시 한 번만 캡처되며 세션 중간에는 절대 변경되지 않습니다. 이는 의도된 동작으로, 성능을 위해 LLM의 prefix cache를 유지합니다. 세션 중 변경한 내용은 즉시 디스크에 저장되지만, 다음 세션이 시작될 때까지 system prompt에는 반영되지 않습니다.12
저장할 내용
다음 내용은 저장하세요(에이전트가 선제적으로 수행합니다):12
- 사용자 선호도: “저는 TypeScript보다 JavaScript을 선호합니다” → user
- 환경 정보: “이 서버는 PostgreSQL 16이 설치된 Debian 12를 실행합니다” → memory
- 수정 사항: “Docker 명령에는 sudo를 사용하지 마세요. 사용자가 docker group에 속해 있습니다” → memory
- 규칙: “프로젝트는 탭, 120자 줄 너비, Google 스타일 docstring을 사용합니다” → memory
- 완료한 작업: “2026-01-15에 데이터베이스를 MySQL에서 PostgreSQL로 마이그레이션했습니다” → memory
다음 내용은 건너뛰세요:12 - 사소하거나 명백한 정보 - 쉽게 다시 찾을 수 있는 사실 - 원본 데이터 덤프(메모리에 저장하기에는 너무 큼) - 세션에만 해당하는 일시적 정보 - 이미 context 파일에 있는 정보
세션 검색
MEMORY.md와 USER.md 외에도 에이전트는 session_search tool을 사용해 과거 대화를 검색할 수 있습니다. 모든 CLI 및 메시징 세션은 FTS5 전문 검색이 적용된 SQLite(~/.hermes/state.db)에 저장됩니다. 쿼리는 Gemini Flash 요약과 함께 관련 과거 대화를 반환합니다.12
| 기능 | 영구 메모리 | 세션 검색 |
|---|---|---|
| 용량 | 총 ~1,300토큰 | 무제한(모든 세션) |
| 속도 | 즉시(system prompt 내) | 검색 + LLM 요약 필요 |
| 사용 사례 | 핵심 정보를 항상 사용할 수 있음 | 특정 과거 대화 찾기 |
| 관리 | 에이전트가 수동으로 선별 | 자동 — 모든 세션 저장 |
| 토큰 비용 | 세션당 고정(~1,300토큰) | 필요할 때만 발생 |
외부 메모리 provider
MEMORY.md와 USER.md를 넘어 더 깊은 영구 메모리가 필요하다면, Hermes는 Honcho, OpenViking, Mem0, Hindsight, Holographic, RetainDB, ByteRover, Supermemory의 8개 외부 메모리 provider plugin을 제공합니다.12
외부 provider는 내장 메모리를 대체하지 않고 함께 실행되며 knowledge graph, semantic search, 자동 사실 추출, 세션 간 사용자 모델링 같은 기능을 추가합니다.612
hermes memory setup # Pick a provider and configure it
hermes memory status # Check what's active
hermes memory off # Disable external provider (built-in only)
한 번에 활성화할 수 있는 외부 provider는 하나뿐입니다. 내장 메모리는 항상 활성화되어 있습니다.6
세션 자동 재개(v0.13.0+)
v0.13.0에서는 에이전트 작업 중단에도 복구할 수 있습니다. gateway는 재시작 후 중단된 세션을 자동으로 재개하고, /update 재시작은 업그레이드 과정에서도 세션 상태를 유지하며, 개발 중 source 파일을 다시 로드해도 새 세션을 강제하지 않고 활성 세션을 유지합니다.18 실질적으로는 장시간 실행되는 gateway 작업과 cron 기반 작업이 프로세스 재시작 시 더 이상 context window를 초기화하지 않습니다.
Checkpoints v2(v0.13.0+)
v0.13.0에서는 상태 지속성이 실제 pruning, 디스크 가드레일, orphan shadow repo 없음을 갖춘 단일 저장소 설계로 다시 작성되었습니다.18 이전 checkpoint 시스템은 장시간 실행되는 profile 전반에서 디스크에 상태를 누적했습니다. v2 저장소는 로컬 checkpoint 저장 공간에 엄격한 상한을 두고 이러한 증가를 유발하던 중복된 관리 작업을 제거합니다. 사용자 대상 설정 변경은 필요하지 않으며, 다음 checkpoint 쓰기부터 v2 경로를 사용합니다.
Personality 및 SOUL.md
SOUL.md는 Hermes 인스턴스의 기본 정체성입니다. system prompt의 #1 슬롯을 차지하며, 하드코딩된 기본 정체성을 대체합니다.13
Hermes는 기본 SOUL.md를 ~/.hermes/SOUL.md에 자동으로 생성합니다(custom profile의 경우 $HERMES_HOME/SOUL.md). 기존 사용자 파일은 절대 덮어쓰지 않습니다. Hermes는 HERMES_HOME에서만 SOUL.md를 로드하며 현재 작업 디렉터리는 확인하지 않습니다. 따라서 프로젝트 전반에서 personality를 예측 가능하게 유지할 수 있습니다.13
SOUL.md에 포함할 내용
지속적인 말투와 personality 지침에 사용하세요.13 - 어조 - 소통 방식 - 직접성의 수준 - 기본 상호작용 방식 - 스타일 측면에서 피할 내용 - Hermes가 불확실성, 이견, 모호성을 처리하는 방식
다음 용도로는 덜 사용하세요:13 - 일회성 프로젝트 지침 - 파일 경로 - repo 규칙 - 임시 workflow 세부 사항
이런 내용은 SOUL.md가 아니라 AGENTS.md에 넣어야 합니다.
SOUL.md와 AGENTS.md
이는 Hermes 정체성 관리에서 가장 중요한 구분입니다.13
SOUL.md — 정체성, 어조, 스타일, 기본 소통 방식, personality 수준의 동작.
AGENTS.md — 프로젝트 아키텍처, 코딩 규칙, tool 선호도, repo별 workflow, 명령, port, 경로, 배포 메모.
유용한 기준은 다음과 같습니다. 어디서나 따라야 하는 내용이라면 SOUL.md에 넣으세요. 프로젝트에만 속하는 내용이라면 AGENTS.md에 넣으세요.13
내장 Personality
Hermes에는 /personality로 전환할 수 있는 내장 personality가 포함되어 있습니다.13
| 이름 | 설명 |
|---|---|
helpful |
친근한 범용 assistant |
concise |
짧고 핵심적인 응답 |
technical |
상세하고 정확한 기술 전문가 |
creative |
혁신적이고 틀에 얽매이지 않는 사고 |
teacher |
명확한 예시를 제공하는 친절한 교육자 |
kawaii |
귀여운 표현, 반짝임, 열정 |
catgirl |
고양이 같은 표현을 쓰는 Neko-chan |
pirate |
기술에 능통한 해적 선장 Hermes |
shakespeare |
극적인 분위기의 음유시인 문체 |
surfer |
느긋한 bro 분위기 |
noir |
하드보일드 탐정 내레이션 |
uwu |
uwu-speak를 사용하는 최고 수준의 귀여움 |
philosopher |
모든 질문을 깊이 사색 |
hype |
최고 에너지 |
custom personality는 config.yaml에서 설정합니다.13
agent:
personalities:
codereviewer: >
You are a meticulous code reviewer. Identify bugs, security issues,
performance concerns, and unclear design choices. Be precise and constructive.
그런 다음 /personality codereviewer로 전환하세요.
SOUL.md와 /personality
SOUL.md는 기본 말투입니다. /personality는 세션 수준의 overlay입니다.13 실용적인 기본 SOUL.md를 유지한 다음, 튜터링 대화에는 /personality teacher를 사용하고 브레인스토밍에는 /personality creative를 사용하세요.
Nous Tool Gateway (v0.10.0+)
Hermes Agent v0.10.0(2026-04-16)부터 유료 Nous Portal 구독자는 기존 Portal 자격 증명을 통해 엄선된 도구 모음에 관리형으로 액세스할 수 있어요. 별도로 관리할 API 키는 필요하지 않아요.30 Hermes CLI 자체는 계속 MIT 라이선스의 완전한 오픈 소스로 제공돼요. 달라진 점은 Portal 인증으로 모델 추론뿐 아니라 더 많은 기능을 사용할 수 있게 되었다는 거예요.
gateway에 포함된 도구
| 도구 | 제공업체 | 사용 사례 |
|---|---|---|
| 웹 검색 | Firecrawl | 최신 정보가 필요한 에이전트의 정보 검색 |
| 이미지 생성 | FAL / FLUX 2 Pro | FAL 키를 설정하지 않고 인라인으로 이미지 생성 |
| 텍스트 음성 변환 | OpenAI TTS | 메시징 gateway에서 음성 출력 |
| 브라우저 자동화 | Browser Use | 헤드리스 탐색 및 스크래핑 |
작동 방식
gateway는 새로운 use_gateway 설정 필드를 통해 도구별로 선택 활성화할 수 있어요. hermes auth에 Portal 자격 증명이 있고 도구에 gateway를 활성화하면, 해당 도구 호출은 Portal을 거쳐 전달돼요. 그렇지 않으면 직접 설정한 API 키가 있는 경우 그 키가 사용돼요.
# config.yaml — per-tool gateway opt-in
tools:
web_search:
provider: firecrawl
use_gateway: true # route via Nous Portal subscription
image_generation:
provider: fal
use_gateway: true
런타임 우선순위: gateway를 사용할 수 있고 도구에 use_gateway: true가 설정되어 있으면, 직접 API 키도 구성되어 있더라도 Hermes는 gateway를 우선 사용해요. 이는 청구에 영향을 줘요. gateway 호출은 직접 API 키 잔액이 아니라 Portal 구독에서 차감돼요.
gateway 활성화
hermes model # select Nous Portal (OAuth flow)
hermes tools # per-platform tool picker integrates gateway tools
hermes status # confirms gateway/subscription detection
구독은 hermes auth에 이미 있는 Portal OAuth 자격 증명에서 자동으로 감지되므로 별도의 로그인 단계가 필요하지 않아요. v0.19.0부터는 세션 내에서도 구독 자체를 관리할 수 있어요. /subscription은 요금제와 남은 할당량을 보여주고, 업그레이드 비용이나 다운그레이드 적용 시점을 정확히 미리 보여 준 뒤 예약 변경 배너와 실행 취소 기능을 통해 변경을 적용해요. /topup은 크레딧을 추가해요. 데스크톱 앱에도 이에 대응하는 청구 설정 탭이 있어요.25
가격 및 액세스
가격과 티어 이름은 Nous Portal 가격 페이지(https://portal.nousresearch.com/pricing)에 게시되어 있어요. 티어는 Hermes CLI가 아닌 Portal 제품의 책임 범위이고 Hermes 릴리스와 독립적으로 변경되므로, 이 가이드에서는 티어를 나열하지 않아요. https://portal.nousresearch.com/에서 가입한 후 가격 페이지에서 현재 티어를 확인하세요.
지원 중단 안내
HERMES_ENABLE_NOUS_MANAGED_TOOLS환경 변수는 v0.10.0에서 제거되었어요. 이제 관리형 도구는 도구별use_gateway설정 필드로 활성화되며 Portal 구독 상태에 따라 제한돼요.30
관점: 이번 릴리스가 아닌 것
Hermes Agent CLI는 구독 뒤에 잠겨 있지 않아요. 프로젝트는 여전히 MIT 라이선스이며, 모든 핵심 기능(CLI, skill, 메모리, 메시징 gateway, cron, MCP, 로컬 dashboard, 모든 제공업체용 BYOK)은 누구에게도 비용을 지불하지 않고 처음부터 끝까지 사용할 수 있어요. v0.10.0은 이미 Nous Portal에 비용을 지불하는 사용자를 위한 편의 경로를 추가할 뿐, 무료 경로에서 아무것도 제거하지 않아요.
메시징 Gateway
Hermes는 단일 gateway 프로세스에서 28개 메시징 플랫폼에 연결하는 장기 실행 gateway 프로세스로 실행할 수 있어요. 지원 플랫폼은 Telegram, Discord, Slack, WhatsApp, Signal, SMS, Email, Home Assistant, Mattermost, Matrix, DingTalk, Feishu/Lark, WeCom, Weixin (WeChat), BlueBubbles (iMessage), QQBot, Microsoft Teams, Tencent Yuanbao, Google Chat, LINE, SimpleX Chat 및 일반 Webhook 어댑터예요.329171819 v0.9.0에는 BlueBubbles를 통한 iMessage가 추가되었으며, 자동 Webhook 등록, 설정 마법사, 충돌 복원력을 제공해요. 또한 기업 앱을 위한 WeCom 콜백 모드와 함께 iLink Bot API를 통한 네이티브 WeChat 지원도 추가되었어요.16 v0.11.0에는 QQBot이 추가되었어요.29 v0.12.0에는 Microsoft Teams와 Tencent Yuanbao가 추가되었어요.17 v0.13.0에는 20번째 플랫폼으로 Google Chat이 추가되었고, 동일한 플러그형 어댑터 아키텍처를 사용해요. IRC와 Microsoft Teams도 일반 env_enablement_fn / cron_deliver_env_var 플러그인 훅을 사용하는 새 어댑터 패턴으로 이전되었어요.18 v0.14.0에는 LINE과 SimpleX Chat이 추가되었으며, Graph 인증, Webhook 리스너, 파이프라인 런타임, 발신 전송을 포함해 Microsoft Teams 스택이 처음부터 끝까지 완성되었어요.19 v0.17.0(2026년 6월 19일)에는 Photon Spectrum을 통한 relay 없는 iMessage가 추가되었어요. hermes photon login을 사용한 디바이스 코드 OAuth로 Mac/BlueBubbles relay가 필요하지 않아요. 또한 브리지 프로세스 요구 사항을 대체하는 공식 WhatsApp Business Cloud API 어댑터, SimpleX 그룹 및 네이티브 첨부 파일, 번들 플랫폼 플러그인인 Raft도 추가되었어요.21
설정
hermes gateway setup # Interactive platform configuration
hermes gateway install # Install as user service (systemd/launchd)
hermes gateway start # Start the installed service
hermes gateway stop
hermes gateway restart
hermes gateway status
hermes gateway run # Run in foreground (debugging)
대화형 설정은 각 플랫폼을 연결하는 과정을 안내해요. 여기에는 API 토큰, 봇 ID, 채널 매핑, 허용 목록이 포함돼요.6
메시지 흐름 방식
업스트림 아키텍처 문서에서 발췌했어요.3
Platform event → Adapter.on_message() → MessageEvent
→ GatewayRunner._handle_message()
→ authorize user
→ resolve session key
→ create AIAgent with session history
→ AIAgent.run_conversation()
→ deliver response back through adapter
모든 메시징 플랫폼은 CLI와 동일한 AIAgent 대화 루프를 거쳐 실행돼요. 따라서 두 환경에서 슬래시 명령이 동일하게 작동하고, Telegram에서 예약한 cron 작업이 Discord로 결과를 전송할 수 있어요. 플랫폼 간 차이는 가장자리 계층에만 있어요.3
v0.19.0에는 profile 기반 메시지 라우팅과 내구성 있는 전송이 추가되었어요. 하나의 봇 토큰을 공유하는 단일 다중화 gateway는 특정 guild, 채널 또는 thread를 서로 다른 profile로 라우팅할 수 있어요. 각 profile은 완전히 격리된 설정, skill, 메모리, 비밀 정보를 가지며 GATEWAY_MULTIPLEX_PROFILES 재정의도 지원해요. 또한 하드닝 작업으로 잘못 구성된 profile 하나가 전체 gateway를 중단시킬 수 없게 되었어요. 내부적으로 라우팅 인덱스는 state.db로 이동했고(sessions.json은 이제 선택적인 레거시 미러예요), 최종 응답은 플랫폼 전송 과정 주변의 내구성 있는 전송 의무 ledger에 기록돼요. 완료된 응답이 gateway 충돌을 만나면 조용히 손실되는 대신 다음 부팅 시 다시 전송돼요.25
사용자 인증 및 페어링
hermes pairing list # Show pending and approved users
hermes pairing approve <platform> <code>
hermes pairing revoke <platform> <user-id>
hermes pairing clear-pending
페어링 코드는 무작위 낯선 사람이 gateway와 대화하지 못하도록 막아 줘요. 사용자가 메시징 플랫폼에서 페어링 코드를 전송하면 hermes pairing approve로 승인하세요. 그 후부터 해당 사용자는 인증된 상태가 돼요.6
예약 작업 (Cron)
Hermes에는 작업이 셸 명령이 아니라 에이전트 작업인 일급 cron 시스템이 있어요. 예약된 각 작업은 구성된 프롬프트와 선택적으로 연결된 skill을 사용해 새 AIAgent에서 실행되며, 결과를 모든 플랫폼으로 전송할 수 있어요.36
hermes cron list
hermes cron create --prompt "Check HN for AI news and summarize" --schedule "0 9 * * *" --deliver telegram
hermes cron edit <id>
hermes cron pause <id>
hermes cron resume <id>
hermes cron run <id> # Trigger now on the next tick
hermes cron remove <id>
hermes cron status # Check if scheduler is running
hermes cron tick # Run due jobs once and exit
또는 메시징 채팅 안에서 대화형으로 만들 수 있어요.
Every morning at 9am, check Hacker News for AI news and send me a summary on Telegram.
에이전트가 도구를 통해 cron 작업을 설정해요. 작업은 JSON에 지속적으로 저장되며 재시작 후에도 유지돼요.3
MCP 통합
Hermes는 클라이언트와 서버 양쪽 모두에서 Model Context Protocol을 지원해요.6
클라이언트로서 — Hermes를 외부 MCP 서버에 연결해 도구 범위를 확장할 수 있어요.
hermes mcp add <name> --url https://example.com/mcp
hermes mcp add <name> --command npx --args "-y,@modelcontextprotocol/server-github"
hermes mcp list
hermes mcp test <name>
hermes mcp remove <name>
hermes mcp configure <name> # Toggle individual tool selection
또는 config.yaml에서 직접 설정하세요.14
mcp_servers:
github:
command: npx
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxx"
v0.19.0부터 MCP 도구는 mcp__server__tool 명명 규칙으로 모델에 노출돼요. 모든 도구 이름에 서버 이름이 포함되므로 같은 도구를 제공하는 두 서버가 더 이상 충돌하지 않아요. 또한 MCP 서버 로그 알림은 agent.log에 표시돼요.25
서버로서 — Hermes 대화를 다른 에이전트에 노출할 수 있어요.
hermes mcp serve
hermes mcp serve -v # Verbose
컨텍스트 압축
Hermes는 모델의 컨텍스트 창 안에 대화를 유지하기 위해 긴 대화를 자동으로 압축합니다. 압축 요약기는 별도의 LLM 호출이므로 어떤 provider나 endpoint로도 지정할 수 있습니다.4
compression:
enabled: true
threshold: 0.50 # Compress at this % of context limit
target_ratio: 0.20 # Fraction to preserve as recent tail
protect_last_n: 20 # Min recent messages to keep uncompressed
summary_model: "google/gemini-3-flash-preview"
summary_provider: "auto" # "auto", "openrouter", "nous", "codex", "main", etc.
summary_base_url: null # Custom OpenAI-compatible endpoint
Provider 옵션:4
summary_provider |
summary_base_url |
결과 |
|---|---|---|
auto (기본값) |
설정하지 않음 | 사용 가능한 최적의 provider를 자동 감지 |
nous / openrouter / 기타 |
설정하지 않음 | 해당 provider를 강제하고 해당 인증 사용 |
| 아무 값 | 설정 | custom endpoint를 직접 사용 (provider 무시) |
summary_model은 압축을 위해 대화의 전체 중간 հատված을 받으므로, 메인 모델의 컨텍스트 길이 이상을 지원해야 합니다.4
예산 압박 경고
agent가 tool 호출이 많은 복잡한 작업을 수행하면, 이를 인지하지 못한 채 iteration 예산(기본값: v0.20.0 기준 500 turns, 이전 90에서 증가)을 소진할 수 있습니다. 예산 압박은 모델에 자동으로 경고합니다.4
| 임계값 | 수준 | 모델에 표시되는 내용 |
|---|---|---|
| 70% | 주의 | [BUDGET: 350/500. 150 iterations left. Start consolidating.] |
| 90% | 경고 | [BUDGET WARNING: 450/500. Only 50 left. Respond NOW.] |
스트림 타임아웃
LLM streaming 연결에는 local provider(localhost, LAN IP)에 맞춰 자동 조정되는 2개의 timeout 계층이 있습니다.4
| Timeout | 기본값 | Local provider | Env var |
|---|---|---|---|
| Socket read timeout | 120s | 1800s로 자동 증가 | HERMES_STREAM_READ_TIMEOUT |
| Stale stream detection | 180s | 자동 비활성화 | HERMES_STREAM_STALE_TIMEOUT |
| API 호출 (non-streaming) | 1800s | 변경 없음 | HERMES_API_TIMEOUT |
local LLM는 첫 번째 token을 생성하기 전에 큰 context의 prefill에 몇 분이 걸릴 수 있으므로, local endpoint의 socket read timeout은 30분으로 늘어납니다.4
Local Web Dashboard (v0.9.0+)
브라우저 기반 dashboard로 로컬에서 Hermes Agent를 관리할 수 있습니다. config 파일이나 terminal을 건드리지 않고 설정을 구성하고, session을 모니터링하며, skill을 탐색하고, gateway를 관리할 수 있습니다.16 hermes dashboard로 실행하세요. GUI를 선호하는 신규 사용자에게 가장 쉬운 onboarding 경로입니다.
Background Process Monitoring (v0.9.0+)
watch_patterns를 사용하면 background process 출력에서 모니터링할 pattern을 설정하고, 일치할 때 실시간 알림을 받을 수 있습니다.16 오류를 모니터링하거나 특정 event(“listening on port”)를 기다리고, build log를 감시할 수 있으며 polling은 필요하지 않습니다. v0.8.0의 notify_on_complete(background task 완료 시 알림)와 함께 사용하면 Hermes는 완전한 background process observability 계층을 제공합니다.15
Pluggable Context Engine (v0.9.0+)
이제 context 관리는 hermes plugins를 통해 pluggable slot으로 제공됩니다. 각 turn에서 agent가 보는 내용을 제어하는 custom context engine을 교체할 수 있습니다. 즉 filtering, summarization, domain-specific context injection을 적용할 수 있습니다.16 이를 통해 context 전략이 core agent loop와 분리되어 프로젝트별 또는 domain별 context customization이 가능해집니다.
Backup & Restore (v0.9.0+)
hermes backup은 config, session, skill, memory의 전체 archive를 생성합니다. hermes import는 backup archive에서 복원합니다.16 이를 사용해 machine 간에 이전하고, 큰 변경 전 snapshot을 만들거나, 검증된 configuration을 팀원과 공유할 수 있습니다.
Termux / Android Support (v0.9.0+)
Hermes는 Termux를 통해 Android에서 native로 실행됩니다. Android 기기에서 설치 경로 조정, mobile screen용 TUI 최적화, voice backend 지원, /image command를 사용할 수 있습니다.16
Security Hardening (v0.13.0+)
v0.13.0에서는 P0 security issue 8건을 해결하고 사용자에게 유리한 방향으로 기본값 1개를 변경했습니다.18 이어진 v0.14.0에서는 sudo brute-force / sudo-stdin hardening, dangerous-command bypass 수정, 모델 재주입 전 tool-error sanitization, dashboard plugin API 인증, skills-hub SSRF 적용 범위, 설치 중 supply-chain advisory scanning을 포함해 P0 12건과 P1 50건을 추가로 해결했습니다.19
| 수정 사항 | 변경 내용 |
|---|---|
| Secret redaction 기본 활성화 | 이전에는 opt-in이었습니다. 명시적으로 비활성화하지 않는 한 log와 hermes debug share upload에서 secret을 redaction합니다. v0.12.0에서는 payload-corruption 보고 이후 redaction이 기본적으로 비활성화되었지만, v0.13.0에서는 더 안전한 기본 기준으로 다시 활성화합니다. |
| Discord cross-guild DM bypass (CVSS 8.1) | Discord role allowlist가 이제 guild 범위로 제한되어, 한 guild의 사용자 role이 모든 guild의 DM을 승인하던 경로를 차단합니다. |
| WhatsApp 기본 제한 | WhatsApp adapter는 기본적으로 모르는 사람을 거부하며 self-chat에는 절대 응답하지 않습니다. |
| MCP OAuth TOCTOU window | MCP OAuth flow에서 credential을 저장할 때 발생하던 race condition을 해결했습니다. |
CLI auth.json TOCTOU |
CLI auth store의 credential writer에서 유사한 TOCTOU window를 해결했습니다. |
| Browser SSRF 최소 방어선 | Hybrid routing은 169.254.169.254 및 동등한 주소에 도달하려는 request에 대해 cloud-metadata SSRF 최소 방어선을 적용합니다. |
| Cron prompt-injection scanning | cron job이 실행되기 전에 조합된 prompt(로드된 skill content 포함)를 대상으로 prompt injection을 검사합니다. |
hermes debug share redaction |
Debug share upload는 write 시점뿐 아니라 upload 시점에도 log content를 redaction합니다. |
Hermes deployment를 유지 관리한다면 v0.13.0과 v0.14.0을 단순한 feature release가 아니라 security-relevant upgrade로 취급하세요. v0.13.0은 Discord cross-guild bypass와 2개의 TOCTOU window를 해결하며, v0.14.0은 sudo 처리, tool-error 재주입, plugin API, skills-hub SSRF, dependency advisory 전반에 추가 hardening을 적용합니다.
실무자를 위한 아키텍처
이 섹션은 내부에서 어떤 일이 일어나는지 이해해 디버깅, 확장 또는 성능 판단에 활용하려는 사람을 위한 내용입니다. 업스트림 아키텍처 문서를 종합했습니다.3
진입점 → AIAgent
Hermes의 모든 진입점은 최종적으로 AIAgent.run_conversation()을 호출합니다.
┌──────────────────────────────────────────────────────────────────┐
│ Entry Points │
│ │
│ CLI (cli.py) Gateway (gateway/run.py) ACP (acp_adapter/) │
│ Batch Runner API Server Python Library │
└──────────┬──────────────┬───────────────────────┬────────────────┘
│ │ │
▼ ▼ ▼
┌──────────────────────────────────────────────────────────────────┐
│ AIAgent (run_agent.py) │
│ │
│ ┌─────────────┐ ┌──────────────┐ ┌──────────────┐ │
│ │ Prompt │ │ Provider │ │ Tool │ │
│ │ Builder │ │ Resolution │ │ Dispatch │ │
│ └──────┬──────┘ └──────┬───────┘ └──────┬───────┘ │
│ │ │ │ │
│ ┌──────┴───────┐ ┌──────┴───────┐ ┌──────┴───────┐ │
│ │ Compression │ │ 3 API Modes │ │ Tool Registry│ │
│ │ & Caching │ │ chat_compl │ │ 47 tools │ │
│ │ │ │ codex_resp │ │ 20 toolsets │ │
│ │ │ │ anthropic │ │ │ │
│ └──────────────┘ └──────────────┘ └──────────────┘ │
└──────────────────────────────────────────────────────────────────┘
업스트림 아키텍처 문서를 바탕으로 수정한 다이어그램입니다.3
배너의 “47 tools / 20 toolsets”와 “28 tools” 차이. “47 tools” 수는 모든 toolset에 걸쳐 Hermes가 소스 코드와 함께 제공하는 모든 도구를 포함한 업스트림 저장소의 전체 도구 레지스트리입니다. 실제 실행 중인 CLI의 시작 배너에는 더 적은 수가 표시됩니다(이 가이드에서 확인한 설치 환경에서는 28 tools / 89 skills로 보고됩니다). 이는 버그가 아닙니다. 메시징 플랫폼 어댑터, 브라우저 자동화, 더 무거운 스크래핑 도구 등 많은 toolset은 선택 사항이며 config.yaml의 toolsets: 아래에서 명시적으로 활성화해야 합니다. 레지스트리 총계는 “사용 가능한 항목”이고, 배너 수는 “현재 profile에서 활성화된 항목”입니다. hermes tools --list로 활성화된 toolset을 확인하고, ~/.hermes/config.yaml의 toolsets: 블록에서 개별 toolset을 활성화하거나 비활성화하세요(실행 중인 세션 안에서는 /tools list / /tools enable <name> / /tools disable <name>을 사용합니다. 도구를 제거하면 agent가 도구 매니페스트를 다시 구성하도록 세션이 재설정됩니다).
3가지 API 모드
Hermes는 provider 간 차이를 3가지 API 모드로 추상화하며, 런타임에 자동으로 선택합니다.3
| API 모드 | 사용 대상 |
|---|---|
chat_completions |
OpenRouter, z.ai, Kimi, MiniMax, DeepSeek, Alibaba, 대부분의 custom endpoint, 모든 OpenAI 호환 서버 |
codex_responses |
OpenAI Codex (ChatGPT OAuth 경유) |
anthropic_messages |
Anthropic API (native), Anthropic OAuth, Anthropic 호환 proxy |
runtime_provider.py resolver는 18개 이상의 provider에 대해 (provider, model) 튜플을 (api_mode, api_key, base_url)로 매핑하며, OAuth 흐름, credential pool, alias resolution을 처리합니다.3
CLI 세션의 데이터 흐름
User input → HermesCLI.process_input()
→ AIAgent.run_conversation()
→ prompt_builder.build_system_prompt()
→ runtime_provider.resolve_runtime_provider()
→ API call (chat_completions / codex_responses / anthropic_messages)
→ tool_calls? → model_tools.handle_function_call() → loop
→ final response → display → save to SessionDB
업스트림 아키텍처 페이지에서 가져왔습니다.3
Prompt 조립 순서
Prompt stack에는 다음이 포함됩니다.13
SOUL.md(agent 정체성 — 사용할 수 없을 때는 내장 fallback)- 도구 인식 동작 가이드
- 메모리/사용자 context(
MEMORY.md,USER.md) - skill 가이드
- context 파일(
AGENTS.md,.cursorrules) - timestamp
- 플랫폼별 형식 지정 힌트
/personality와 같은 선택적 system-prompt overlay
SOUL.md가 기반이며, 그 위에 나머지 모든 요소가 쌓입니다.13
세션 저장소
FTS5 full-text search를 사용하는 SQLite 기반 세션 저장소입니다. 세션은 계보 추적(compression 간 parent/child), 플랫폼별 격리, contention 처리가 포함된 atomic write를 지원합니다.3
Plugin 시스템
탐색 소스는 3가지입니다. ~/.hermes/plugins/(사용자), .hermes/plugins/(프로젝트), pip entry point입니다. Plugin은 context API를 통해 도구, hook, CLI command를 등록합니다. Memory provider는 plugins/memory/ 아래의 특수 plugin 유형입니다.3
hermes plugins # Interactive enable/disable UI
hermes plugins install <repo> # Install from Git URL or owner/repo
hermes plugins enable <name>
hermes plugins disable <name>
hermes plugins list
설계 원칙
업스트림 아키텍처 페이지에서 가져왔습니다.3
| 원칙 | 실무에서의 의미 |
|---|---|
| Prompt 안정성 | System prompt는 대화 도중 변경되지 않습니다. 명시적인 사용자 작업(/model) 외에는 cache를 깨는 변경이 없습니다 |
| 관찰 가능한 실행 | 모든 tool call은 callback을 통해 사용자에게 표시됩니다. CLI에서는 progress update(spinner), gateway에서는 chat message로 진행 상황을 표시합니다 |
| 중단 가능 | 사용자 입력 또는 signal로 API call과 도구 실행을 진행 중에 취소할 수 있습니다 |
| 플랫폼 독립적인 core | 하나의 AIAgent class가 CLI, gateway, ACP, batch, API server를 지원합니다. 플랫폼 차이는 entry point에 있습니다 |
| 느슨한 결합 | 선택적 subsystem(MCP, plugin, memory provider, RL environment)은 hard dependency 대신 registry pattern과 check_fn gating을 사용합니다 |
| Profile 격리 | 각 profile은 자체 HERMES_HOME, config, memory, session, gateway PID를 가집니다. 여러 profile을 동시에 실행할 수 있습니다 |
OpenClaw에서 마이그레이션
Hermes Agent는 OpenClaw의 후속 제품입니다. 기존 OpenClaw 설치 환경에서 마이그레이션하는 경우:65
hermes claw migrate --dry-run # Preview what would be migrated
hermes claw migrate --preset full # Full migration including API keys
hermes claw migrate --preset user-data --overwrite # User data only, no secrets
hermes claw migrate --source /custom/path # Non-default OpenClaw location
hermes claw migrate는 기본적으로 ~/.openclaw에서 읽으며(레거시 ~/.clawdbot 및 ~/.moldbot 디렉터리도 자동 감지), ~/.hermes에 작성합니다.6
직접 가져오는 항목(30개 이상 카테고리): SOUL.md, MEMORY.md, USER.md, AGENTS.md, 4개 소스 디렉터리의 skill, 기본 model, custom provider, MCP server, 메시징 플랫폼 token 및 allowlist(Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Mattermost), agent 기본값(reasoning effort, compression, human delay, timezone, sandbox), session reset policy, approval rule, TTS config, browser 설정, tool 설정, exec timeout, command allowlist, gateway config 및 3개 소스의 API key입니다.6
수동 검토를 위해 보관되는 항목: cron job, plugin, hook/webhook, memory backend(QMD), skill registry config, UI/identity, logging, multi-agent setup, channel binding, IDENTITY.md, TOOLS.md, HEARTBEAT.md, BOOTSTRAP.md.6
API key resolution은 우선순위에 따라 3개 소스를 확인합니다. config 값 → ~/.openclaw/.env → auth-profiles.json.6
문제 해결
“No inference provider configured. Run ‘hermes model’ to choose a provider and model”
새로 설치한 뒤 가장 먼저 마주치는 오류예요. Hermes에 아직 확인된 provider가 없다는 뜻이며, 말 그대로 3가지 인증 경로 중 어느 것도 사용할 수 있는 provider를 만들지 못했어요. 다음을 실행하세요.
hermes model
대화형 선택기는 Nous Portal, GitHub Copilot, Anthropic, OpenAI Codex의 OAuth device-code 흐름과 자체 호스팅 서버용 custom endpoint를 포함해 지원되는 모든 provider를 안내해요. 이미 provider가 설정되어 있어야 한다고 생각했다면 hermes doctor로 Hermes가 실제로 확인할 수 있는 자격 증명을 볼 수 있어요. 흔한 원인은 잘못된 위치에 설정한 API key예요. 이 key는 shell profile이 아니라 .env 또는 hermes config set으로 설정해야 해요. 그 외에 ~/.hermes/auth.json의 만료된 OAuth credential이나 base_url이 사라진 config.yaml custom endpoint도 원인일 수 있어요. 인증 경로는 Authentication & Providers에서 자세히 다뤄요.27
“API key not set”
hermes model을 실행해 provider를 대화형으로 설정하거나, hermes config set OPENROUTER_API_KEY your_key를 실행하세요. hermes doctor 명령은 누락된 key를 정확히 알려줘요.7
시작 시 “Context limit: 2048 tokens” 표시(local model)
Hermes는 서버의 /v1/models endpoint에서 context length를 자동 감지하지만, 많은 local server는 낮은 기본값을 보고해요. config.yaml에서 명시적으로 설정하세요.2
model:
default: your-model
provider: custom
base_url: http://localhost:11434/v1
context_length: 32768
Tool call이 실행되지 않고 텍스트로 표시됨
서버에서 tool calling이 활성화되지 않았거나, server 구현을 통해 model이 이를 지원하지 않아요.2
| 서버 | 해결 방법 |
|---|---|
| llama.cpp | 시작 명령에 --jinja를 추가하세요 |
| vLLM | --enable-auto-tool-choice --tool-call-parser hermes를 추가하세요 |
| SGLang | --tool-call-parser qwen 또는 적절한 parser를 추가하세요 |
| Ollama | Tool calling은 기본적으로 활성화되어 있어요. ollama show <model>로 model이 지원하는지 확인하세요 |
| LM Studio | 0.3.6+로 업데이트하고 native tool support가 있는 model을 사용하세요 |
응답이 문장 중간에서 끊김
가능한 원인은 2가지예요.2
- 낮은 출력 제한 (
max_tokens) — SGLang의 기본값은 응답당 128 tokens예요. 서버에서--default-max-tokens를 설정하거나config.yaml에서model.max_tokens를 구성하세요. - Context 고갈 — model이 context window를 모두 채웠어요.
model.context_length를 늘리거나 Hermes에서 context compression을 활성화하세요.
Windows에서 호스팅한 model server에 WSL2로 접속할 때 “Connection refused” 발생
WSL2는 자체 subnet을 가진 virtual network adapter를 사용해요. 따라서 WSL2 내부의 localhost는 Windows host가 아니라 Linux VM을 가리켜요. 2가지 방법이 있어요.2
Mirrored networking (Windows 11 22H2+): %USERPROFILE%\.wslconfig를 수정하세요.
[wsl2]
networkingMode=mirrored
그런 다음 wsl --shutdown을 실행하고 다시 시작하세요. 이제 localhost가 양방향으로 작동해요.
Host IP fallback (이전 Windows): WSL2 내부에서 Windows host IP를 가져와 localhost 대신 사용하세요.
ip route show | grep -i default | awk '{ print $3 }'
# Use that IP as the base_url host
또한 model server가 127.0.0.1이 아닌 0.0.0.0에 bind하도록 해야 해요. Ollama는 OLLAMA_HOST=0.0.0.0으로 설정하고, llama-server/SGLang는 --host 0.0.0.0을 추가하거나, LM Studio에서는 “Serve on Network”를 활성화하세요.2
모든 항목은 어디에 있나요?
이 경우 hermes status와 hermes dump가 도움이 돼요. hermes logs list는 모든 log file과 크기를 보여줘요. hermes config path는 config file 위치를 출력하고, hermes config env-path는 .env 위치를 출력해요.6
자주 묻는 질문
Hermes Agent와 Claude Code의 차이점은 무엇인가요?
Claude Code는 Anthropic의 공식 CLI이며, Anthropic model에만 고정되어 있어요. Hermes Agent는 Nous Research의 open-source agent framework로, Nous Portal, OpenRouter, Anthropic, GitHub Copilot, z.ai, Kimi, MiniMax, DeepSeek, Hugging Face, Google 또는 자체 호스팅 endpoint 등 OpenAI-compatible provider와 함께 작동해요.12 Hermes는 Claude Code에 없는 Telegram/Discord/Slack/WhatsApp/Signal용 messaging gateway도 제공해요.
Anthropic API key로 Hermes를 사용할 수 있나요?
네. 3가지 방법이 있어요.2
ANTHROPIC_API_KEY를~/.hermes/.env에 설정하고hermes chat --provider anthropic --model claude-sonnet-4-6을 실행하세요.hermes model을 실행하고 Anthropic를 선택하세요. 사용할 수 있다면 Hermes가 Claude Code의 credential store를 사용해요.- fallback으로 manual
ANTHROPIC_TOKEN(setup-token 또는 OAuth token)을 설정하세요.
같은 machine에서 이미 Claude Code를 사용하고 있다면 2번 방법을 권장해요. refresh 가능한 Claude credential을 계속 refresh 가능한 상태로 유지할 수 있어요.
대화를 잃지 않고 provider를 전환하려면 어떻게 하나요?
session 내부에서 /model provider:model을 사용하세요. conversation history, memory, skill이 모두 유지돼요.9
/model zai:glm-5
/model openrouter:anthropic/claude-sonnet-4
/model custom:local:qwen-2.5
Anthropic를 설정했지만 vision/web/compression이 작동하지 않아요
auxiliary model fallback이 적용되고 있어요. Vision, web summarization, compression 및 기타 side task는 별도의 auxiliary LLM을 사용해요. 기본적으로는 auto-detection을 통해 Gemini Flash를 사용해요(OpenRouter → Nous → Codex). 이 중 아무것도 설정하지 않고 Anthropic만 설정했다면, 이러한 기능은 조용히 성능이 저하돼요.4
해결 방법: auxiliary task용 OPENROUTER_API_KEY를 추가하거나 auxiliary slot이 main provider를 사용하도록 다시 설정하세요. Context compression은 별도의 최상위 compression: block에 있으며 auxiliary.compression.provider가 아니라 summary_provider를 사용한다는 점에 유의하세요. auxiliary.compression slot은 timeout만 제공해요. 전체 수정 방법은 다음과 같아요.
auxiliary:
vision: { provider: "main" }
web_extract: { provider: "main" }
compression:
summary_provider: "main"
SOUL.md와 AGENTS.md의 차이점은 무엇인가요?
SOUL.md는 agent의 정체성이에요. tone, style, communication default를 정의해요. ~/.hermes/SOUL.md에 있으며 어디서나 함께해요. AGENTS.md는 project별 항목으로 architecture, convention, command, path를 담고 project directory에 있어요.13 어디서나 따라다녀야 한다면 SOUL.md를, project에 속해야 한다면 AGENTS.md를 사용하세요.
여러 Hermes instance를 나란히 실행하려면 어떻게 하나요?
profile을 사용하세요. 각 profile은 자체 HERMES_HOME, config, memory, session, gateway PID를 가져요.6
hermes profile create work --clone
hermes profile use work # Sticky default
hermes -p work chat -q "..." # One-off without switching
hermes profile alias work --name h-work # Wrapper script
Hermes는 local LLM을 지원하나요?
네. custom endpoint 경로를 통해 지원해요. Hermes는 Ollama, vLLM, SGLang, llama.cpp/llama-server, LM Studio, LocalAI, Jan 또는 자체 server 등 모든 OpenAI-compatible server와 함께 작동해요.2 서버별 설정은 Custom & Self-Hosted Endpoints를 참고하세요.
시작 banner에 표시되는 tool 수가 가이드에서 설명한 Hermes의 tool 수보다 적은 이유는 무엇인가요?
가이드는 upstream architecture registry 기준으로 47 tools / 20 toolsets를 인용해요. 이는 모든 toolset에 걸쳐 Hermes가 source code로 제공하는 전체 tool 수예요. 실행 중인 설치는 startup에서 기본 toolset 집합만 활성화하기 때문에 banner에 더 적은 수가 표시돼요. 이 가이드에 사용한 reference install은 28 tools를 보고해요. 많은 toolset은 opt-in이에요. messaging gateway adapter, browser automation, 무거운 scraping stack, 여러 specialized integration은 로드되기 전에 ~/.hermes/config.yaml의 toolsets: 아래에 명시적으로 나열해야 해요. Registry total은 “활성화하면 사용할 수 있는 항목”이고, banner total은 “현재 profile이 실제로 로드한 항목”이에요. hermes tools --list를 사용하면 활성 toolset과 사용할 수 있지만 비활성화된 toolset을 확인할 수 있어요. /tools enable <name> 및 /tools disable <name>으로 runtime에 개별 toolset을 전환하세요. 비활성화하면 agent가 새 구조에 맞는 tool manifest를 다시 빌드할 수 있도록 session reset이 발생해요.
primary provider가 실패했을 때 Hermes는 model fallback을 어떻게 처리하나요?
config.yaml에 fallback_model block을 설정하세요.2
fallback_model:
provider: openrouter
model: anthropic/claude-sonnet-4
primary가 실패하면(rate limit, server error, auth failure) Hermes는 conversation history를 잃지 않고 session 중간에 fallback으로 전환해요. session당 최대 한 번만 실행돼요.
agent가 시간이 지나며 자신의 skill을 개선할 수 있나요?
네. 이것이 Hermes Agent의 “self-improving” 부분이에요. agent는 skill_manage tool을 통해 skill을 만들고, 업데이트하고, 삭제할 수 있어요. non-trivial workflow를 파악하면 향후 재사용할 수 있도록 접근 방식을 skill로 저장해요.11 agent는 복잡한 task(5회 이상의 tool call)를 마친 뒤, error를 만나 작동하는 경로를 찾았을 때, 사용자가 접근 방식을 수정했을 때, 또는 non-trivial workflow를 발견했을 때 skill을 만들어요.
IDE integration이 있나요?
네. Hermes는 VS Code, Zed, JetBrains용 ACP (Agent Client Protocol) server로 실행할 수 있어요.6
pip install -e '.[acp]'
hermes acp
변경 이력
| 날짜 | 변경 사항 | 출처 |
|---|---|---|
| 2026-07-28 | 가이드 v1.12: 검색 수요에 따른 범위 보강 — 전환율이 높은 주제 2개를 다룰 제목이 없었습니다. 새 릴리스는 없습니다. GSC에 따르면 hermes swarm과 hermes agent swarm은 약 8위에서 4.4~6.3%의 전환율을, hermes smart model routing은 6.7위에서 4.9%의 전환율을 기록했지만, 두 용어 모두 별도 섹션이 없었습니다. swarm은 Multi-Agent Kanban 본문과 변경 이력 행에만 있었고, “smart model routing”은 각주 외에는 어디에도 없었습니다. Multi-Agent Kanban 아래에 Hermes Swarm이란?을 추가했습니다. swarm을 하나의 영구 보드에서 병렬로 작업하는 worker들로 정의하고, v0.15.0의 swarm 토폴로지, 자동 분해, 작업별 모델 재정의, 예약 작업, worktree 관리를 설명하며, 각 메커니즘이 방지하는 실패를 표로 정리했습니다. Provider Rotation & Fallback의 제목을 Smart Model Routing: Provider Rotation & Fallback으로 바꾸고, credential pool, fallback model, 보조 라우팅을 하나의 시스템으로 연결해 설명하는 도입부를 추가했습니다. 해당 앵커를 가리키는 내부 링크가 없었으므로 제목 변경으로 깨지는 부분은 없습니다. |
28 2 6 |
| 2026-08-20 | 가이드 v1.13: v0.20.3(태그 v2026.8.16.2, 8월 17일 공개) 및 v0.20.4(태그 v2026.8.18, 8월 18일). Herald Release 아래에 새 하위 섹션을 추가했습니다. 이제 이 롤업 릴리스 흐름은 안정화에 그치지 않고 기능도 포함합니다. v0.20.3(약 250개 커밋 및 약 125개 PR): 2026-07-28 무상태 프로토콜을 지원하는 MCP 2.x SDK 마이그레이션, 핵심 teammate 프로토콜을 포함한 Bot Mode plugin(hermes-bots) 번들, CommandCode provider plugin, Cua Driver 0.20 computer-use 런타임 계약, Python 런타임 소유권 강화, cron scheduler 자체 복구, session handoff 데이터 손실 수정, 생태계 기능 이식(/worktree, /rollback 수동 편집 보존, plugin 설치 보안 검사). v0.20.4(약 146개 커밋 및 약 74개 PR): frost picker를 갖춘 데스크톱 glass/translucency 화면, bot별 숨기기 및 다시 표시 기능이 있는 탭 방식 SESSIONS|BOTS 사이드바, skill 설치 시 NVIDIA SkillEvaluator Tier 1 권고 검사(라이선스 및 보안), cron 미디어 전송 강화, 중단된 브랜치를 정직하게 알리는 hermes update. 두 릴리스 모두 전체 선별 릴리스 노트가 v0.21.0과 함께 제공된다고 밝힙니다. 요약은 각 릴리스 자체의 변경 구간 설명을 바탕으로 작성했습니다. 머리말 문장과 태그 계보를 업데이트했습니다. |
23 |
| 2026-08-16 | 가이드 v1.12: v0.20.0 “The Herald Release”(8월 3일, 태그 v2026.8.3)와 v0.20.1(8월 13일), v0.20.2(8월 16일) 안정화 태그. 더 이상 작동하지 않는 안내 3가지를 바로잡았습니다. Node 26이 필요합니다(installer가 NODE_VERSION="26"으로 고정하고 이전 런타임을 거부합니다. 문서 사이트의 Node v22 문구는 오래되었으므로 installer와 릴리스 노트를 따릅니다). pip와 Homebrew는 deprecated 상태가 아니라 지원이 종료되었습니다(“shell installer / Docker / Nix가 지원되는 채널입니다”). 또한 기본 반복 제한이 90에서 500으로 변경되어 예산 압박 표의 모든 수치가 무효가 되었습니다. 설치 명령은 공식 https://hermes-agent.nousresearch.com/install.sh로 수정했습니다. 제거된 항목: claude-marketplace skill 소스가 사라지고 소스 목록에서 browse-sh로 대체되었습니다. 기본 GitHub tap은 이제 openai, anthropics, huggingface, NVIDIA, gstack입니다. 문서 비교표를 직접 열거해 messaging gateway 플랫폼 수를 22개에서 28개로 다시 계산했습니다. 문서에는 공식 합계가 없습니다. Windows(native)는 초기 beta가 아니라 Tier 1이며, macOS는 Apple Silicon만 지원합니다. 릴리스 자체를 다루는 새 섹션도 추가했습니다. 끼어들기를 지원하는 대화형 음성, A2A v1.0, 서명된 outbound lifecycle webhook, grounded-citations skill, !//init//diff//context//focus CLI 기능군과 hermes import-agent, command-helper secret 소스, hermes -w cold start 약 14초에서 약 1.8초로 단축, 데스크톱 아티팩트와 Plugin SDK를 다룹니다. 변경되지 않았음을 확인한 항목은 3가지 인증 경로, ~/.hermes/ 구조, hermes update, 문서화된 tool 목록입니다. |
24 |
| 2026-07-21 | 가이드 v1.11: v0.19.0 “The Quicksilver Release”(2026년 7월 20일, 태그 v2026.7.20). “v0.19.0의 새로운 기능” 섹션을 추가했습니다. 첫 turn TTFT 약 80% 단축(cold submit→dispatch가 CLI/gateway/TUI/desktop/cron 전반에서 약 4.3초에서 약 0.9초로 단축), reasoning을 기본적으로 실시간 스트리밍(display.show_reasoning ON), 데스크톱의 약 20개 PR 규모 속도 개선(스트리밍 markdown 14배 향상)과 TUI 증분 markdown, pip/Homebrew 설치 deprecated(경고만 표시하는 “지원되지 않는 legacy”, PyPI/Homebrew 배포 중단 예정)를 반영해 설치 섹션과 요약을 한 줄 installer 방식으로 수정했습니다. 교체 가능한 SecretSource와 Bitwarden 및 1Password provider(op:// 참조, 여러 vault, 결정적 우선순위, 변수별 출처), smart approval 기본값(표시된 명령마다 독립적인 LLM reviewer)과 YOLO에서도 적용되는 사용자 정의 거부 규칙, /deny <reason>, 다시 도입된 plugin pre_tool_call 승인 승격, 터미널 결제 /subscription 및 /topup, 데스크톱 결제 탭(“별도 subscription 명령 없음”이라는 설명 제거), 실시간 subagent transcript, 영구 background delegation, 전달 의무 ledger를 state.db에 저장, 통합 delegation 동시 실행 제한을 위해 max_async_children deprecated, gateway profile 기반 메시지 라우팅(하나의 다중화된 bot token → 격리된 profile, GATEWAY_MULTIPLEX_PROFILES, state.db의 라우팅 인덱스, 선택 사항인 legacy sessions.json mirror), provider/model: Fireworks AI(picker 2번 위치), DeepInfra, Upstage Solar, GPT-5.6(Sol/Terra/Luna 및 Pro) 전체 지원, grok-4.5 GA, kimi-k3(kimi-k2.x 지원 종료), Claude Sonnet 5 완전 연동, provider별 enabled: false 및 excluded_providers, 모델별 및 MoA slot별 재정의와 session 범위 /reasoning을 지원하는 reasoning effort max/ultra 단계, CLI/MCP: hermes sessions export(Markdown/Quarto/HTML/prompt-only/HF-trace, --redact), /model --once, 중첩 slash-skill 호출, --safe-mode, hermes config get/unset, 진정한 headless 방식의 hermes serve, MCP mcp__server__tool 이름 지정. 또한 누락되었던 patch 태그 v0.18.1(태그 v2026.7.7)과 v0.18.2(태그 v2026.7.7.2), 2026년 7월 7~8일도 기록했습니다. 인프라 patch rollup이며, v0.18.2의 핵심 수정은 안정적인 Docker build를 위해 WhatsApp Baileys의 고정을 해제하고 7.0.0-rc13을 사용하도록 한 것입니다. |
25 26 |
| 2026-07-16 | 다음 시작 오류의 원문을 다루는 첫 troubleshooting 항목을 추가했습니다. “No inference provider configured. Run ‘hermes model’ to choose a provider and model” — 검색 수요에 따라 추가했으며, interactive picker, hermes doctor, 3가지 인증 경로를 안내합니다. 제품 변경은 없습니다. |
2 7 |
| 2026-07-01 | 가이드 v1.10: v0.18.0 “The Judgment Release”(2026년 7월 1일, 태그 v2026.7.1). “v0.18.0의 새로운 기능” 섹션을 추가했습니다. 전체 P0/P1 backlog 완료(약 692개), 모델별 ensemble 출력을 label과 함께 표시하고 실시간 스트리밍하는 일급 Mixture-of-Agents, 프로젝트 검사를 실행해 자체 작업을 검증하는 /goal의 completion contract, workflow를 설명하면 CONTRIBUTING.md를 준수하는 재사용 가능한 skill로 만드는 /learn, memory/skill timeline과 데스크톱 memory graph를 제공하는 /journey, background subagent fan-out(위임된 작업의 동시 실행), Desktop Projects(project/repo/lane), drain 조정을 지원하는 scale-to-zero gateway, Google Vertex AI(GCP service account를 통한 Gemini, 자동 OAuth2 갱신), \$EDITOR 작성기를 여는 /prompt를 다룹니다. 출처: hermes-agent 릴리스. |
22 |
| 2026-06-21 | 가이드 v1.9: v0.17.0 “The Reach Release”(2026년 6월 19일, 태그 v2026.6.19). “v0.17.0의 새로운 기능” 섹션을 추가했습니다. 메시징: Photon Spectrum을 통한 relay 없는 iMessage(hermes photon login, device-code OAuth), 공식 WhatsApp Business Cloud API adapter(bridge 불필요), SimpleX group 및 attachment, Raft platform plugin. 모델: z-ai/glm-5.2(1M), anthropic/claude-fable-5, laguna-m.1, nemotron-3-ultra, grok-composer-2.5-fast(xAI OAuth, 200k), xAI 기본값 → grok-build-0.1, Anthropic adaptive model에서 reasoning 필드 제거. 데스크톱/dashboard: 실시간 watch-window가 있는 background subagent(delegate_task(background=true)), 전체 profile builder, 새롭게 개편한 Skills Hub, Automation Blueprint, 안전한 401 로그인, VS Code Marketplace theme, 일본어와 번체 중국어 UI. skill/tool: image-to-image 편집을 지원하는 image_generate, 원자적 operations batch를 지원하는 memory, simplify-code skill, write_mode를 대체하는 boolean write_approval. 아키텍처: MCP elicitation handler, 교체 가능한 CronScheduler 및 Chronos, Managed scope(/etc/hermes), Gateway-Gateway relay. 명령: /version, /billing, hermes curator run --consolidate(선택 사항). 보안: shell escape denylist 우회 차단, fail-closed approval/gateway adapter, cron 환경 정리, debug dump의 secret 제거, MCP stdio 유출 검사, urllib3 및 PyJWT CVE 업데이트. |
21 |
| 2026-06-08 | 가이드 v1.8: v0.16.0 “The Surface Release”(2026년 6월 5일, 태그 v2026.6.5). 가이드 제목을 v0.16으로 바꾸고 “v0.16.0의 새로운 기능” 섹션을 추가했습니다. 핵심은 Hermes가 더 이상 터미널 전용이 아니라는 점입니다. Native Hermes Desktop app(Electron, macOS/Linux/Windows)은 원클릭 설치, 앱 내 자동 업데이트, 스트리밍 chat, drag-and-drop 및 clipboard 이미지 붙여넣기, Cmd+K palette, session 보관 및 검색, status bar model picker, 안전한 WebSocket을 통한 remote gateway 연결(OAuth 또는 사용자 이름과 비밀번호, profile별 host, profile 간 @session 링크), typed i18n을 통한 전체 간체 중국어 번역을 제공합니다. 브라우저 admin panel(web dashboard → 전체 admin): MCP catalog 활성화 및 비활성화, credential 관리, webhook/hook 생성, memory 설정, gateway 제어, 업데이트 전 확인 및 Debug Share가 있는 System 페이지, 새 Channels 페이지, 교체 가능한 인증(사용자 이름과 비밀번호, self-hosted OIDC, hermes dashboard register). 새 명령: /undo [N](CLI/TUI/messaging), 설정 가능한 기본 interface(cli/tui, --cli), TUI 통합 /model 및 Sessions overlay, hermes portal, hermes prompt-size, hermes sessions optimize. 새 모델: deepseek-v4-flash, MiniMax-M3(1M context), qwen3.7-plus, gemini-3.5-flash, 데스크톱 launcher의 일급 xAI Grok OAuth, fuzzy model picker, 시간별 catalog 갱신. skill: 더 간결해진 기본 구성(Spotify → native plugin, Linear → hermes mcp install linear, 사용 불가능한 skill 제거), environments: 관련성 gate(kanban/docker/s6), 기본 trusted tap인 NVIDIA/skills, 점진적이고 범위가 제한된 MCP/plugin tool 공개. 보안: CVE-2026-48710(Starlette BadHost)을 1.0.1 이상으로 고정, event loop 밖에서 SSRF 검사, subprocess 환경에서 Bedrock bearer token 제거, bws_cache.json 읽기 보호, 위험 pattern에 docker restart/stop/kill 추가, 보이지 않는 unicode 정리. P0 2개와 P1 62개를 해결했으며 이 중 16개에는 security tag가 붙었습니다. |
20 |
| 2026-05-31 | 가이드 v1.7.1: v0.15.1(2026년 5월 29일 01:12 UTC) — Velocity patch. Velocity 공개 당일 hotfix이며 태그를 v2026.5.29로 고정했습니다. loopback mode 배포에 영향을 주던 dashboard 401 reload loop를 수정합니다. Docker은 더 이상 --insecure를 암시적으로 적용하지 않습니다. 다시 사용하려면 HERMES_DASHBOARD_INSECURE=1을 명시적으로 설정하세요. MCP의 bare command(npx, npm, node)가 Docker container 안에서 다시 올바르게 해석됩니다. Skills 페이지의 source pill과 category sidebar가 표시됩니다. Kanban worker는 process를 고아 상태로 남기지 않고 SIGTERM에 정상적으로 응답합니다. sitemap 탐색을 통해 Skills.sh catalog를 858개에서 19,932개 항목으로 확장했습니다. 커밋 28개, 병합된 PR 21개, contributor 9명입니다. v0.15.2(2026년 5월 29일 13:37 UTC) — Velocity packaging patch. wheel과 sdist 배포에 plugin.yaml manifest가 포함되도록 수정해, source tree를 sideload하지 않아도 PyPI에서 설치할 수 있습니다. packaging 전용 hotfix이며 contributor는 4명입니다. |
27 |
| 2026-05-28 | 가이드 v1.7: v0.15.0(2026년 5월 28일) — The Velocity release(태그 v2026.5.28)를 추가했습니다. 핵심은 대규모 refactor와 새로운 orchestration primitive입니다. 코드베이스 refactor: run_agent.py를 76% 축소하고(16,083줄 → 3,821줄) 응집도 높은 module 14개로 분산했습니다. Multi-agent Kanban v2: 상위 수준 목표를 하위 작업으로 자동 분해, 병렬 worker 조정을 위한 swarm 토폴로지, 작업별 모델 재정의, 예약 작업, worktree 관리. 성능: cold start를 추가로 1초 단축, 대화별 function call 47% 감소, session_search를 재설계해 4,500배 향상하고 LLM 의존성과 그에 따른 API 비용을 제거했습니다. 보안: Promptware 방어가 보안 chokepoint 3곳에서 Brainworm 계열 prompt injection을 차단합니다. Bitwarden Secrets Manager 연동은 provider별 여러 API key를 하나의 bootstrap token으로 대체합니다. skill bundle: 하나의 slash command로 여러 skill을 동시에 불러옵니다. TUI session orchestrator: 하나의 터미널 창에서 여러 session을 관리합니다. 새 provider: 이미지 생성을 위한 Krea 2(Medium/Large) 및 FAL plugin 지원. xAI 연동 확장에는 web-search plugin, OAuth upstream, 지원 종료 model 탐지, 자연스러운 TTS pause가 포함됩니다. 통계: 커밋 1,302개, 병합된 PR 747개, community contributor 321명입니다. GitHub 릴리스 노트에 따르면 당일 또는 다음 날 공개되는 patch release는 dashboard 401 reload loop, Docker --insecure 명시적 env var, Docker에서의 MCP bare command 해석(npx, npm, node), Skills 페이지 복구, Kanban worker SIGTERM 처리, sitemap을 통한 전체 19,932개 Skills catalog를 다룹니다. |
28 |
| 2026-05-21 | 가이드 v1.6: v0.14.0(2026년 5월 16일) — The Foundation release를 추가했습니다. 핵심은 더 가벼운 설치 및 런타임 기반과 확장된 provider, gateway, 미디어, 검증 기능입니다. grok-4.3 1M context를 지원하는 SuperGrok OAuth, OAuth provider용 OpenAI 호환 hermes proxy, 일급 x_search, pip install hermes-agent, 지연 dependency 설치, 약 19초 빠른 실행, 180배 빠른 browser CDP call, 22개 messaging 플랫폼을 위한 LINE 및 SimpleX Chat, Microsoft Teams 전체 지원, /handoff, /subgoal, Telegram/Discord native clarify button, Discord history backfill, raw-pixel vision_analyze, turn별 파일 변경 verifier footer, write마다 실행되는 LSP semantic diagnostic, 통합 video_generate, 비 Anthropic provider용 cua-driver 기반 computer_use, 클릭 가능한 OSC8 URL, Zed ACP Registry 지원, OpenRouter Pareto Code router, NovitaAI, Codex app-server 런타임, huggingface/skills trusted tap, 선택 사항인 skill 9개, plugin ctx.llm / tool_override, Brave/DDGS web search, Qwen Cloud 이름 변경, native Windows beta, P0 12개 및 P1 50개 해결을 추가했습니다. |
19 |
| 2026-05-07 | 가이드 v1.5: v0.13.0(2026년 5월 7일) — The Tenacity release를 추가했습니다. 핵심은 swarm을 delegation pattern이 아닌 일급 primitive로 만드는 영구적인 multi-agent Kanban board(heartbeat, reclaim, zombie 탐지, hallucination gate, 작업별 max_retries, 여러 project board)입니다. /goal 명령은 여러 turn에 걸쳐 agent가 목표에 집중하도록 고정합니다(Ralph-loop pattern을 slash command로 구현). Gemini 우선 방식이며 호환 모델을 확장할 수 있는 새 video_analyze tool을 추가했습니다. voice cloning을 지원하는 xAI Custom Voices TTS provider도 추가했습니다. CLI 및 gateway 메시지에 7개 언어 i18n(zh-Hans, ja, de, es, fr, uk, tr)을 지원하며, 문서는 zh-Hans만 지원합니다. 교체 가능한 adapter pattern을 통해 Google Chat을 20번째 messaging 플랫폼으로 추가했고, IRC와 Microsoft Teams도 같은 pattern으로 마이그레이션했습니다. ProviderProfile ABC 및 plugins/model-providers/를 통해 core 변경 없이 외부 provider를 추가할 수 있습니다. gateway 재시작, /update, source file reload 후 session 자동 재개를 지원합니다. Checkpoints v2는 단일 store 설계, 실제 pruning, disk guardrail을 적용해 다시 작성했습니다. P0 보안 문제 8개 해결: 기본 활성화된 secret 제거, Discord cross-guild DM 우회(CVSS 8.1), WhatsApp 낯선 사용자 거부 및 self-chat 음소거, MCP OAuth TOCTOU, CLI auth.json TOCTOU, browser SSRF 최저 방어선, cron prompt injection 검사, hermes debug share 정보 제거. Python/JSON/YAML/TOML write 후 linting, cron no_agent script-only mode, Slack/Telegram/Mattermost/Matrix/DingTalk 전반의 플랫폼 allowlist, MCP 개선(SSE transport, OAuth forwarding, 이미지 MEDIA tag)도 포함합니다. v0.12.0 이후 통계: 커밋 864개, 병합된 PR 588개, 변경된 파일 829개, community contributor 295명, 해결한 issue 282개(P0 13개, P1 36개)입니다. |
18 |
| 2026-05-06 | 가이드 v1.4: v0.12.0(2026년 4월 30일) — The Curator release를 추가했습니다. 핵심은 gateway의 cron ticker에서 실행되는 자율 background Curator입니다. 기본 주기는 7일이며, rubric에 따라 skill library를 평가하고, 사용하지 않는 skill을 정리하고, 관련 skill을 통합하며, 실행별 report를 작성합니다. 즉, Hermes는 활성 session 사이에도 스스로 유지 관리합니다. 자기 개선 loop에는 rubric 기반 평가, 활성 업데이트 우선 편향, 올바른 런타임 상속, memory와 skill로 제한된 범위의 toolset을 적용했습니다. 새 inference provider 4개: GMI Cloud, Azure AI Foundry, MiniMax OAuth, Tencent Tokenhub. LM Studio를 일급 provider로 승격했습니다. 이제 remote model catalog manifest는 릴리스 없이 자동 업데이트됩니다. 새 messaging 플랫폼 2개: Microsoft Teams(19번째, 교체 가능한 gateway 아키텍처 사용)와 Tencent Yuanbao(18번째, native text 및 media). PKCE OAuth 및 번들 skill을 통한 native Spotify, 통화 및 transcription용 Google Meet plugin, Piper local TTS provider도 추가했습니다. ComfyUI v5 및 TouchDesigner-MCP를 선택 사항에서 기본 번들로 변경했습니다. 새 skill은 Humanizer, claude-design, design-md, airtable입니다. CLI 추가 사항: hermes -z one-shot mode, hermes update --check preflight, /reload-skills slash command, 교체 가능한 busy-indicator style. 지연 agent 초기화와 지연 import를 통해 사용자가 체감하는 TUI cold start를 약 57% 단축했습니다. 보안: payload 손상을 막기 위해 secret 제거를 기본적으로 비활성화했습니다. 복구할 수 없는 명령에는 강경한 blocklist를 적용했습니다. 통계: 커밋 1,096개, 병합된 PR 550개, community contributor 213명입니다. |
17 |
| 2026-04-25 | 가이드 v1.3: v0.11.0(2026년 4월 23일) — The Interface release를 추가했습니다. interactive TUI를 React/Ink로 완전히 다시 작성하고 Python JSON-RPC backend(tui_gateway)를 적용했습니다. 고정 composer, OSC-52 clipboard를 지원하는 실시간 스트리밍, 안정적인 picker key, turn별 stopwatch와 git branch가 표시되는 status bar, /clear 확인, light-theme preset, subagent 생성 관찰 overlay를 제공합니다. 교체 가능한 transport 아키텍처 — 더 깔끔한 provider 연결을 위해 format conversion과 HTTP transport를 agent/transports/로 분리했습니다. Converse API를 통한 native AWS Bedrock을 지원합니다. 새 inference 경로 5개: NVIDIA NIM, Arcee AI, Step Plan, Google Gemini CLI OAuth, Vercel ai-gateway. Codex OAuth을 통한 GPT-5.5 — 이제 별도의 API key 없이 ChatGPT Codex OAuth을 통해 새로운 OpenAI flagship을 사용할 수 있습니다. QR scan 설정과 스트리밍을 지원하는 QQBot(17번째 messaging 플랫폼). Plugin 기능 확장: slash command, tool dispatch, 실행 차단, result transformation. /steer <prompt> — turn을 중단하거나 prompt cache를 깨뜨리지 않고, 다음 tool call 이후 실행 중인 agent가 볼 note를 삽입해 작업 도중 방향을 조정합니다. Shell hook을 사용하면 Python plugin 없이 script를 lifecycle hook으로 연결할 수 있습니다. Webhook direct-delivery mode는 agent를 거치지 않고 payload를 platform chat으로 바로 전달해 fan-out합니다. orchestrator role, 설정 가능한 spawn depth, 파일 조정을 통해 더 똑똑한 delegation을 제공합니다. Dashboard에는 plugin system, 실시간 theme 전환, i18n, mobile responsiveness가 추가되었습니다. v0.9.0 이후 통계: 커밋 1,556개, 병합된 PR 761개, 변경된 파일 1,314개, 삽입된 줄 224,174개, community contributor 29명입니다. |
29 |
| 2026-04-16 | 가이드 v1.2: v0.10.0 — Nous Tool Gateway를 추가했습니다. 이제 유료 Nous Portal 구독자는 별도의 API key 없이 관리형 tool(Firecrawl web search, FAL / FLUX 2 Pro 이미지 생성, OpenAI TTS, Browser Use browser automation)을 사용할 수 있습니다. 새로운 use_gateway config field로 tool별 사용 여부를 선택할 수 있습니다. gateway와 직접 사용하는 API key가 모두 설정된 경우 런타임은 gateway를 우선합니다. HERMES_ENABLE_NOUS_MANAGED_TOOLS env var는 제거되었습니다. Hermes Agent CLI은 계속 MIT 라이선스로 제공되며 완전히 무료입니다. |
30 |
| 2026-04-13 | 가이드 v1.1: v0.8.0 및 v0.9.0 기능을 추가했습니다. local web dashboard, /fast mode, iMessage 및 WeChat 플랫폼(총 16개), background process monitoring(watch_patterns), 교체 가능한 context engine, hermes backup/hermes import, Termux/Android, xAI + MiMo + Google AI Studio + Qwen provider, /debug 명령, 포괄적인 보안 강화를 다룹니다. |
15 16 |
| 2026-04-10 | 가이드 v1.0: Hermes Agent v0.7.0을 다루는 최초 릴리스입니다. provider 인증, config, CLI, slash command, tool, skill, memory, gateway, cron, MCP, compression, 아키텍처, OpenClaw 마이그레이션, troubleshooting, FAQ를 다룹니다. |
참고 문헌
-
Nous Research, GitHub의 “Hermes Agent” 프로젝트 README. 제품 설명(자기 개선형 에이전트, 여러 제공자 지원, 메시징 gateway, 터미널 백엔드, skill 진화, cron 스케줄러, 위임)과 “빠른 설치” 한 줄 명령어의 1차 출처입니다. ↩↩↩
-
Hermes Agent 문서의 Nous Research, “AI 제공자”. 전체 제공자 목록, 제공자별 인증 방식(Nous Portal OAuth, Codex 기기 코드, GitHub Copilot 토큰 유형, Anthropic의 3가지 인증 방식, 중국 AI 제공자, Hugging Face 라우팅, 사용자 지정 엔드포인트), 3가지 인증 경로(
.env의 API 키,hermes model을 통한 OAuth,config.yaml의 사용자 지정 엔드포인트),/model슬래시 명령어 문법(custom:name:model포함), Ollama/vLLM/SGLang/llama.cpp/LM Studio 설정 템플릿, WSL2 네트워크 연결 지침, context 길이 감지 체계, 대체 모델 설정, 스마트 모델 라우팅, 이름이 지정된 사용자 지정 제공자의 1차 출처입니다. 이 글에 나오는 제공자별 환경 변수 이름, 토큰 유형, 기본 URL 재정의, 모델 식별자는 모두 이 페이지에서 가져왔습니다. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent 개발자 가이드의 Nous Research, “아키텍처”. 시스템 개요 다이어그램, 디렉터리 구조, CLI 세션과 gateway 메시지 경로를 통한 데이터 흐름, 3가지 API 모드(
chat_completions,codex_responses,anthropic_messages),runtime_provider.py를 통한 제공자 결정, SQLite + FTS5를 통한 세션 유지, 메시징 gateway 플랫폼 목록, 플러그인 시스템 검색 출처, profile 격리, 6가지 설계 원칙의 1차 출처입니다. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent 사용자 가이드의 Nous Research, “설정”. 설정 디렉터리 구조,
config.yaml과.env의 적용 규칙(“비밀 정보가 아닌 설정에는config.yaml이 우선 적용됩니다”), 설정 우선순위 체계(CLI 인수 → 환경 변수 → config.yaml → .env → 기본값), context 압축 설정(threshold,target_ratio,protect_last_n,summary_model,summary_provider,summary_base_url이 포함된compression.*블록), 예산 압박 임계값(70% 주의, 90% 경고), 로컬 제공자에 맞춰 자동 조정되는 스트리밍 시간 제한, 전체 보조 모델 설정 블록(vision,web_extract,approval,compression,session_search,skills_hub,mcp,flush_memories슬롯이 포함된auxiliary:)의 1차 출처입니다. 보조, 압축, 대체 슬롯에서만"main"제공자를 사용할 수 있다는 제한도 이 페이지에서 가져왔습니다. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent 가이드의 Nous Research, “OpenClaw에서 마이그레이션하기”. OpenClaw → Hermes 마이그레이션 절차의 출처입니다. ↩↩
-
Hermes Agent 참조 문서의 Nous Research, “CLI 명령어 참고 자료”.
hermes chat,hermes model,hermes gateway,hermes setup,hermes auth,hermes status,hermes cron,hermes webhook,hermes doctor,hermes dump,hermes logs,hermes config,hermes pairing,hermes skills,hermes honcho,hermes memory,hermes acp,hermes mcp,hermes plugins,hermes tools,hermes sessions,hermes insights,hermes claw,hermes profile,hermes completion,hermes update,hermes uninstall을 비롯해 이 글에서 설명하는 모든 최상위 CLI 명령어의 1차 출처입니다. 이 글에 나오는 모든 하위 명령어 플래그, 옵션 설명, 자격 증명 풀 동작, 로그 필터링 문법, OpenClaw 마이그레이션 플래그, profile 관리 명령어, 서비스 설치 명령어는 이 페이지에서 가져왔습니다. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent 시작 가이드의 Nous Research, “설치”. 한 줄 설치 명령어, 설치 프로그램의 동작 방식(필수 구성 요소, 플랫폼 지원, Termux 자동 감지, Windows/WSL2 요구 사항), 선택적 추가 기능 표, 수동 설치 단계, 확인 명령어의 1차 출처입니다. ↩↩↩↩↩↩↩↩↩
-
Nous Research, “CLI 명령어 참고 자료” — 명령어의 출력 형식(헤더, 환경, 식별 정보, 모델, 터미널, API 키, 기능, 서비스, 작업 부하, 설정 재정의)과 진단 정보 공유 용도를 설명하는
hermes dump섹션을 참조하세요. ↩ -
Hermes Agent 참조 문서의 Nous Research, “슬래시 명령어 참고 자료”. 이 글에 나열된 모든 슬래시 명령어,
COMMAND_REGISTRY아키텍처, CLI와 메시징의 구분, 동적 skill 슬래시 명령어,config.yaml의 빠른 명령어, 접두사 일치 동작, 메시징 전용 명령어(/status,/sethome,/approve,/deny,/update,/commands)의 1차 출처입니다. ↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent 사용자 가이드의 Nous Research, “도구 및 Toolset”. 도구 범주 개요, toolset 사용 명령어, 6가지 터미널 백엔드(local, docker, ssh, singularity, modal, daytona), 컨테이너 설정(cpu, memory, disk, persistent), 컨테이너 보안 강화, 백그라운드 프로세스 관리 API, sudo 지원의 1차 출처입니다. ↩↩↩↩↩↩↩↩↩↩
-
Hermes Agent 사용자 가이드의 Nous Research, “Skills 시스템”. 점진적 공개,
SKILL.md형식, 플랫폼별 skills, 조건부 활성화(fallback_for_toolsets,requires_toolsets,fallback_for_tools,requires_tools),skill_manage를 통한 에이전트 관리형 skills, skill 허브 명령어와 출처 목록(official,skills-sh,well-known,github,clawhub,claude-marketplace,lobehub), 보안 검사와 신뢰 수준, 외부 skill 디렉터리의 1차 출처입니다. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent 사용자 가이드의 Nous Research, “영구 메모리”.
MEMORY.md/USER.md글자 수 제한, 고정 스냅샷 패턴, 메모리 도구 작업(add,replace,remove), 저장할 내용과 건너뛸 내용, 메모리와 세션 검색 비교, 8가지 외부 메모리 제공자(Honcho, OpenViking, Mem0, Hindsight, Holographic, RetainDB, ByteRover, Supermemory) 목록의 1차 출처입니다. ↩↩↩↩↩↩↩↩ -
Hermes Agent 사용자 가이드의 Nous Research, “성격 및 SOUL.md”.
SOUL.md동작 방식(HERMES_HOME에 저장되고 덮어쓰지 않으며, 시스템 프롬프트의 첫 번째 슬롯에 배치되고, 포함하기 전에 보안 검사를 거침), SOUL.md와 AGENTS.md의 차이, 기본 제공 성격 목록(helpful부터hype까지 14가지),config.yaml의 사용자 지정 성격,/personality오버레이 패턴, 전체 프롬프트 스택 조립 순서의 1차 출처입니다. ↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent 가이드와 참조 문서의 Nous Research, “Hermes에서 MCP 사용하기” 및 MCP 설정 참고 자료.
command,args,env필드를 사용하는config.yaml의mcp_servers:설정 형식에 대한 출처입니다. ↩ -
Hermes Agent v0.8.0 릴리스 노트. 2026년 4월 8일. 백그라운드 프로세스 자동 알림, Nous Portal에서 무료로 제공되는 MiMo v2 Pro, 플랫폼 전반의 실시간
/model전환, Google AI Studio 기본 제공자, Qwen OAuth, 비활성 상태 기준 시간 제한, Slack/Telegram의 승인 버튼, MCP OAuth 2.1 PKCE, 중앙 집중식 로깅, 플러그인 시스템 확장. ↩↩↩↩↩ -
Hermes Agent v0.9.0 릴리스 노트. 2026년 4월 13일. 로컬 웹 대시보드, 빠른 모드(
/fast), BlueBubbles를 통한 iMessage, WeChat + WeCom, Termux/Android, 백그라운드 프로세스 모니터링(watch_patterns), xAI + Xiaomi MiMo 기본 제공자, 교체 가능한 context engine, 통합 프록시 지원, 보안 강화(경로 순회, 셸 삽입, SSRF, RCE 수정),hermes backup/hermes import,/debug+hermes debug share, 지원 플랫폼 16개. 커밋 487개, 병합된 PR 269개, 기여자 24명. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent v0.12.0 릴리스 노트. 2026년 4월 30일. “The Curator 릴리스.” gateway의 cron 티커에서 기본 7일 주기로 실행되며 skill 라이브러리를 평가하고 정리하고 통합하는 자율 백그라운드 Curator가 추가되었습니다. 자체 개선 루프도 개선되었습니다. 평가 기준표 기반 채점, 활성 업데이트 우선 처리, 올바른 런타임 상속, 메모리와 skill로 제한된 범위 지정 toolset이 적용되었습니다. GMI Cloud, Azure AI Foundry, MiniMax OAuth, Tencent Tokenhub 등 4개의 새로운 추론 제공자가 추가되었습니다. LM Studio는 일급 지원 대상으로 승격되었습니다. 원격 모델 카탈로그 매니페스트는 릴리스 없이 자동으로 업데이트됩니다. 새로운 메시징 플랫폼 2개가 추가되었습니다. 플러그형 gateway 아키텍처를 사용하는 19번째 플랫폼 Microsoft Teams와 텍스트 및 미디어를 기본 지원하는 18번째 플랫폼 Tencent Yuanbao입니다. 번들 skill과 함께 PKCE OAuth를 사용하는 Spotify 기본 연동, 통화 및 음성 변환을 위한 Google Meet 플러그인, Piper 로컬 TTS 제공자가 추가되었습니다. ComfyUI v5와 TouchDesigner-MCP가 기본으로 번들됩니다. 새로운 skill로 Humanizer, claude-design, design-md, airtable이 추가되었습니다. CLI: 일회성 모드
hermes -z, 사전 점검용hermes update --check,/reload-skills슬래시 명령어, 플러그형 사용 중 표시기 스타일이 추가되었습니다. 지연 초기화를 통해 TUI 콜드 스타트 시간이 약 57% 단축되었습니다. 보안: 비밀 정보 가림 처리는 기본적으로 비활성화되며, 복구 불가능한 명령어에는 엄격한 차단 목록이 적용됩니다. v0.11.0 이후 통계: 커밋 1,096개, 병합된 PR 550개, 커뮤니티 기여자 213명. 함께 보기: v2026.4.30 릴리스 태그. ↩↩↩ -
Hermes Agent v0.13.0 릴리스 노트. 2026년 5월 7일. “The Tenacity 릴리스.” 하트비트, 회수, 좀비 감지, 환각 방지 장치, 작업별
max_retries, 다중 프로젝트 보드를 지원하는 멀티 에이전트 칸반 보드가 추가되었습니다. 설정 가능한 턴 예산으로 여러 턴에 걸쳐 목표를 고정하는/goal슬래시 명령어가 추가되었습니다. 이는 Ralph 루프의 기본 요소입니다. Gemini를 우선 사용하며 호환되는 멀티모달 기능으로 확장할 수 있는video_analyze도구가 추가되었습니다. 음성 복제를 지원하는 xAI Custom Voices TTS 제공자가 추가되었습니다. zh-Hans, ja, de, es, fr, uk, tr의 7개 언어 국제화를 지원합니다(CLI 및 gateway 메시지, 문서는 zh-Hans만 지원). 일반env_enablement_fn및cron_deliver_env_var플러그인 훅을 갖춘 플러그형 어댑터 패턴을 통해 Google Chat이 20번째 메시징 플랫폼으로 추가되었습니다. IRC와 Microsoft Teams도 같은 패턴으로 이전되었습니다. 플러그형 타사 제공자를 위한ProviderProfileABC와plugins/model-providers/가 추가되었습니다. gateway 재시작,/update, 소스 파일 다시 불러오기 후에도 세션이 자동으로 재개됩니다. Checkpoints v2는 실제 정리 기능과 디스크 보호 장치를 갖춘 단일 저장소 방식으로 재작성되었으며, 고아 섀도 저장소가 생성되지 않습니다. P0 보안 문제 8건이 해결되었습니다. 비밀 정보 가림 처리가 기본으로 활성화되었고, Discord의 길드 간 DM 우회 문제(CVSS 8.1, 역할 허용 목록을 길드 범위로 제한), WhatsApp의 기본 낯선 사용자 거부 및 자기 채팅에서 절대 응답하지 않는 처리, MCP OAuth 자격 증명 저장 시점 검사와 사용 시점 간 불일치, 자격 증명 작성기의 CLIauth.json시점 검사와 사용 시점 간 불일치, 하이브리드 라우팅에서 브라우저 클라우드 메타데이터를 대상으로 한 SSRF 방어선, skill 콘텐츠를 포함해 조합된 cron 프롬프트의 프롬프트 인젝션 검사, 업로드 시점의hermes debug share로그 콘텐츠 가림 처리가 포함됩니다. 그 밖의 주요 항목으로는 Python/JSON/YAML/TOML의 쓰기 후 린트 검사, cronno_agent스크립트 전용 감시 모드, Slack/Telegram/Mattermost/Matrix/DingTalk 전반의 플랫폼 허용 목록, MCP 개선 사항(SSE 전송, OAuth 전달, 이미지 결과를 MEDIA 태그로 처리)이 있습니다. v0.12.0 이후 통계: 커밋 864개, 병합된 PR 588개, 변경된 파일 829개, 커뮤니티 기여자 295명, 해결된 이슈 282개(P0 13개, P1 36개). ↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent v0.14.0 릴리스 노트. 2026년 5월 16일. “The Foundation 릴리스.” v0.13.0 이후 커밋 808개, 병합된 PR 633개, 변경된 파일 1,393개, 추가된 줄 165,061줄, 해결된 이슈 545개(P0 12개, P1 50개), 커뮤니티 기여자 215명을 기록했습니다. grok-4.3의 100만 컨텍스트를 지원하는 SuperGrok OAuth,
hermes proxy,x_search, PyPI 패키징, 지연 종속성, 세션 간 1시간 Claude 프롬프트 캐시, 약 19초 빨라진 실행 속도, 180배 빨라진 브라우저 CDP 호출, 총 22개 메시징 플랫폼을 완성하는 LINE과 SimpleX Chat,/handoff, 기본 clarify 버튼, Discord 기록 보충, 원시 픽셀vision_analyze, 턴별 파일 변경 검증기 바닥글, LSP 의미 진단, 통합video_generate, cua-drivercomputer_use, OSC8 링크, Zed ACP Registry 지원, OpenRouter Pareto Code 라우터, NovitaAI, Codex 앱 서버 런타임,huggingface/skills, 플러그인ctx.llm,tool_override, Brave/DDGS 검색, 위험 명령어 보안 강화,/subgoal, Qwen Cloud 명칭 변경, 기본 Windows 베타, 총 16개 로케일, 광범위한 문서 및 테스트 업데이트가 추가되었습니다. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent v0.16.0 릴리스 노트, “The Surface Release,” 태그
v2026.6.5, 2026-06-06T00:55:58Z에 게시됨(릴리스 태그 날짜는 2026년 6월 5일), 2026-06-08 기준 최신 버전이에요. 새로운 네이티브 Hermes Desktop이 추가됐어요(Electron, macOS/Linux/Windows, 안전한 WebSocket을 통해 OAuth 또는 사용자 이름과 비밀번호로 원격 gateway에 연결, profile별 원격 호스트, profile을 넘나드는@session링크, 형식이 지정된 i18n과display.language를 통한 중국어 간체 UI). 웹 대시보드는 완전한 관리자 패널로 확장됐어요(MCP 카탈로그 전환, 자격 증명 관리, webhook/hook 생성, 메모리 설정, gateway 제어, 업데이트 전 확인 기능과 Debug Share가 있는 System 페이지, Channels 페이지, 자체 호스팅 OIDC와hermes dashboard register를 포함한 플러그형 인증). 새로운 명령어로/undo [N], 설정 가능한 기본 인터페이스(cli/tui,--cli), TUI/model과 Sessions 오버레이,hermes portal,hermes prompt-size,hermes sessions optimize가 추가됐어요. 새로운 모델은deepseek-v4-flash,MiniMax-M3(1M context),qwen3.7-plus,gemini-3.5-flash이며, xAI Grok OAuth, 퍼지 선택기, 시간별 카탈로그 새로 고침도 추가됐어요. Skills에는 더 간결한 기본 세트,environments:관련성 게이트, 기본적으로 신뢰하는NVIDIA/skillstap, 점진적인 도구 공개, MCP의 잘못된 OAuth 성공 처리 수정이 포함됐어요. 보안에서는 CVE-2026-48710(Starlette BadHost) 대응을 위해 1.0.1 이상으로 고정하고, SSRF 검사를 이벤트 루프 밖으로 옮겼으며, 하위 프로세스 환경에서 Bedrock bearer token을 제거하고,bws_cache.json읽기를 보호하고,docker restart/stop/kill을 위험 패턴에 추가하고, 보이지 않는 유니코드를 정리했어요. 또한 P0 2건과 P1 62건을 해결했으며, 이 가운데 16건에는 보안 태그가 지정됐어요. 릴리스 노트의 마케팅성 표현(PR과 commit 수, “일주일 전에는 이 중 아무것도 존재하지 않았다”)은 제외하고, 해당 태그와 연결된 구체적인 기능 및 버전 정보만 기록했어요. 현재 세션에서 2026년 6월 8일에 확인했어요. ↩↩↩↩↩↩↩↩ -
Hermes Agent v0.17.0 릴리스 노트, “The Reach Release,” 태그
v2026.6.19, 2026년 6월 19일, 2026-06-21 기준 최신 버전이에요. 메시징에서는 Photon Spectrum을 통한 iMessage가 추가됐어요(기기 코드 OAuth,hermes photon login, Mac relay 불필요). bridge 프로세스를 대체하는 공식 WhatsApp Business Cloud API adapter와 SimpleX 그룹, 네이티브 첨부 파일, 텍스트 일괄 처리, 자동 수락 기능도 추가됐어요. Raft는 기본 제공 플랫폼 plugin이에요. 모델 및 provider에는z-ai/glm-5.2(1M context),anthropic/claude-fable-5,laguna-m.1,nemotron-3-ultra,grok-composer-2.5-fast(xAI OAuth, 200k context)가 추가됐고, xAI 기본값은grok-build-0.1로 변경됐어요. Anthropic 적응형 모델은 최신 thinking contract를 사용하며reasoning필드는 사용하지 않아요. CLI/slash에는/version,/billing,hermes photon login,hermes curator run --consolidate(선택 사용),hermes modelGUI, profile 복제가 추가됐어요. Desktop에는 백그라운드 subagent 감시 창(delegate_task(background=true)), Composer 모델 선택기, 다시 지정할 수 있는 단축키, 네이티브 운영체제 알림, thread별 초안, VS Code Marketplace 테마, 일본어와 중국어 번체 UI가 추가됐어요. Dashboard에는 완전한 profile 빌더, 전역 profile 전환기, 보안 검사가 포함된 개편된 Skills Hub, Automation Blueprints, 안전한 로그인(OAuth 뒤에서 401 반환)이 추가됐어요. Skills/tools에는 여러 provider에서 이미지 간 편집을 지원하는image_generate, 원자적 일괄 처리를 지원하는memory의operations,simplify-code병렬 검토 skill이 추가됐고, 불리언write_approval이write_mode를 대체했어요. 아키텍처에는 백그라운드 subagent(핸들을 즉시 반환하고 결과가 turn으로 다시 들어옴), 도구 호출 도중 확인을 받는 MCP elicitation handler, 늦게 연결된 MCP 도구를 turn 사이에 공개하는 기능, 플러그형 CronScheduler와 Chronos 관리형 cron, Managed 범위(/etc/hermes에 관리자가 고정), Gateway-Gateway relay가 추가됐어요. 보안에서는 shell escape denylist 우회 문제를 해결하고, 승인 모듈이 없거나 gateway adapter가 자체 정책을 사용할 때 실패 시 차단하도록 변경했으며, cron 작업 스크립트 환경을 정리하고, 디버그 덤프에서 secret을 가리고, 공개 상태에서 호스트 메타데이터를 숨기고, MCP stdio 데이터 유출 패턴 검사와 urllib3 및 PyJWT CVE 업데이트를 적용했어요. commit과 PR 수를 내세우는 릴리스 마케팅 표현은 제외했어요. 현재 세션에서 2026년 6월 21일에 확인했어요. ↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent v0.18.0 릴리스 노트(태그
v2026.7.1), 2026년 7월 1일 — “The Judgment Release.” 우선순위 backlog를 전면 정리했어요(12일 동안 모든 P0/P1을 해결했으며 약 692개 항목). Mixture-of-Agents를 모든 인터페이스에서 일급 모델로 선택할 수 있고, 각 reference 모델의 전체 출력을 별도의 라벨이 지정된 블록으로 표시하며 최종 답변을 실시간으로 스트리밍해요./goal에는 완료 contract가 추가되어 agent가 프로젝트 검사를 실행해 자체 작업을 검증해요./learn명령어를 사용하면 원하는 내용을 설명해 재사용 가능한 skill로 만들 수 있으며, CONTRIBUTING.md 준수 여부도 자동으로 확인해요./journey는 편집 가능한 시각적 메모리 및 skill timeline과 Desktop 메모리 그래프를 제공해요. 여러 위임 작업을 동시에 실행하는 백그라운드 subagent fan-out, Desktop Projects(project/repo/lane 모델), drain 조정 기능이 있는 scale-to-zero gateway, Google Vertex AI 지원(GCP service account를 통한 Gemini 사용과 자동 OAuth2 token 갱신),/prompt$EDITOR 명령어도 추가됐어요. 현재 세션에서 2026년 7월 1일(PST)에 GitHub 릴리스 페이지를 기준으로 확인했으며, v0.18.0이 최신 릴리스예요. ↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent v0.20.3 릴리스 노트(태그
v2026.8.16.2, 명시된 릴리스 날짜는 8월 16일, 게시일은 2026년 8월 17일)와 v0.20.4 릴리스 노트(태그v2026.8.18, 2026년 8월 18일)는 모두 2026년 8월 20일에 GitHub API를 통해 가져왔어요(prerelease: false). v0.20.3 원문: “MCP 2.x SDK 마이그레이션과 2026-07-28 stateless protocol 지원, 핵심 teammate protocol을 포함한 기본 제공 Bot Mode(hermes-bots) plugin, CommandCode provider plugin, 하위 프로세스 Python 런타임 소유권 강화(PYTHONHOME/PYTHONPATH 격리), 컴퓨터 사용을 위한 Cua Driver 0.20 런타임 contract.” v0.20.4 원문: “Desktop의 glass/translucency surface 작업(matte glass, frost picker, macOS 사전 선택), bot별 숨기기와 표시 기능이 있는 탭 방식 SESSIONS|BOTS 사이드바, … skill 설치 시 NVIDIA SkillEvaluator Tier 1 권고 검사(라이선스와 보안 검사).” 두 릴리스 모두 다음과 같이 밝혔어요. “이 기간의 전체 선별 릴리스 노트는 v0.21.0과 함께 제공될 예정입니다.” ↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent v0.20.0 릴리스 노트, “The Herald Release,” 태그
v2026.8.3, 2026년 8월 3일이며, 안정화 태그로 v2026.8.13과 v2026.8.16이 있어요. 릴리스 원문: “모든 installer/heal/upgrade에서 Node 26 필요”, “brew와 pip/PyPI wheel 채널 사용 중단(shell installer / Docker / Nix가 지원 채널)”, “기본 반복 제한 90 → 500”, “claude-marketplace source 제거”. Node 최소 버전은 installer 소스인 scripts/install.sh에서도 별도로 확인했어요. 이 파일에는NODE_VERSION="26"과 “Node.js $(node –version) is too old (Hermes requires Node >=26)” 검사가 있으며, 머리말 주석에 표준 한 줄 설치 명령어curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash도 기록돼 있어요. 다만 문서와 충돌하는 부분이 있어요. 설치 페이지는 여전히 Node v22라고 안내하므로 두 소스에 비해 오래된 정보예요. 플랫폼 등급은 플랫폼 지원, skills source와 기본 tap은 skills를 참고했어요. 28개 플랫폼이라는 수치는 공식 합계를 제공하지 않는 메시징의 비교 표를 직접 세어 산출했어요. 모든 자료는 2026년 8월 16일에 가져와 확인했어요. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent v0.19.0 릴리스 노트, “The Quicksilver Release,” 태그
v2026.7.20, 2026년 7월 20일, 2026년 7월 21일 기준 최신 버전. v0.18.0 이후 통계: 커밋 약 2,245개, 병합된 PR 약 1,065개, 종료된 이슈 약 3,300개, 커뮤니티 기여자 450명 이상. 성능 개선의 핵심: 첫 응답 TTFT 약 80% 단축, CLI/gateway/TUI/데스크톱/cron 전반에서 콜드 상태의 제출부터 디스패치까지 걸리는 시간을 약 4.3초에서 약 0.9초로 단축(PR #59332);display.show_reasoning이 기본적으로 켜지고 토큰별 응답 렌더링이 적용되어 추론 과정을 실시간으로 스트리밍(PR #59389); 스트리밍 마크다운 속도를 14배 높이는 등 약 20개 PR에 걸친 데스크톱 성능 개선, TUI 증분 마크다운. pip/Homebrew 설치는 경고만 표시하는 “지원되지 않는 레거시” 방식으로 지원 중단되었으며, PyPI/Homebrew 배포도 제거될 예정입니다(PR #57225). Bitwarden 및 1Password 제공자를 지원하는 플러그형SecretSource인터페이스,op://참조, 여러 볼트 지원, 결정론적 우선순위, 변수별 출처 추적 기능을 추가했습니다(PR #59498). 스마트 승인 기능이 기본값으로 적용되어 표시된 명령마다 독립된 LLM 검토자가 확인하며, YOLO에서도 유지되는 사용자 정의 거부 규칙과/deny <reason>을 추가했습니다(PRs #62661, #59164, #54518). pluginpre_tool_call의 승인 에스컬레이션 기능도 다시 반영되었습니다(PR #60504). 터미널 결제를 위한/subscription및/topup, 데스크톱 결제 탭을 추가했습니다(PR #51639). 실시간 subagent 트랜스크립트 파일과 지속 가능한 백그라운드 위임(PRs #67479, #63494),state.db의 전달 의무 원장(PR #67181을 추가했으며, 통합 위임 동시 실행 한도를 위해max_async_children은 지원 중단되었습니다(PR #56955). gateway의 profile 기반 라우팅,GATEWAY_MULTIPLEX_PROFILES,state.db로 이전된 라우팅 인덱스를 추가했으며,sessions.json은 선택적 레거시 미러가 되었습니다(PRs #64835, #65700, #60589, #59203). 제공자/모델: 선택 화면의 두 번째 항목에 Fireworks AI를 정식 지원(PR #62593, DeepInfra, Upstage Solar, GPT-5.6 Sol/Terra/Luna 및 Pro를 전체 과정에서 지원(PR #61616, grok-4.5 정식 출시, kimi-k3 지원(kimi-k2.x는 지원 종료), Claude Sonnet 5 완전 연동, 제공자별enabled: false및excluded_providers를 추가했습니다(PR #67971. 추론 강도에max/ultra단계를 추가하고 모델별/MoA 슬롯별 재정의와 세션 범위의/reasoning을 지원합니다(PRs #62650, #64458). CLI/MCP:hermes sessions export에서 Markdown/Quarto/HTML/프롬프트 전용/HF 트레이스 형식과--redact지원(PR #60186),/model --once(PR #67113), 중첩된 슬래시 skill 호출(PR #57987),--safe-mode,hermes config get/unset(PR #65540), 완전한 헤드리스 방식의hermes serve(PR #55923), MCP의mcp__server__tool명명 방식(PR #52750)을 추가했습니다. 릴리스 마케팅 문구는 제외했으며, 해당 기간에 되돌려진 항목(iron-proxy 송신 방화벽, dynamic-workflow skill, 메모리 제공자 작업)은 출시된 기능으로 의도적으로 기록하지 않았습니다. 현재 세션에서 2026년 7월 21일에 확인했습니다. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Hermes Agent v0.18.1 릴리스 태그 및 v0.18.2 릴리스 태그, 2026년 7월 7일~8일. v0.18 계열의 인프라 패치 모음이며, v0.18.2의 주요 수정 사항은 안정적인 Docker 빌드를 위해 WhatsApp Baileys의 버전 고정을 해제하고 7.0.0-rc13을 사용하도록 한 것입니다. 두 패치 기간의 내용은 모두 v0.19.0 릴리스 노트에 통합되어 자세히 기록되어 있습니다. ↩
-
Hermes Agent v0.15.1 릴리스 노트 및 Hermes Agent v0.15.2 릴리스 노트. v0.15.1(2026년 5월 29일 01:12 UTC)은 같은 날 배포된 Velocity 핫픽스입니다. 루프백 모드에서 대시보드의 401 새로고침 반복 문제를 수정했습니다. 이제 Docker에서는
HERMES_DASHBOARD_INSECURE=1을 명시적으로 설정해야 합니다. MCP의 단독 명령(npx,npm,node)이 Docker 컨테이너에서 올바르게 확인됩니다. Skills 페이지의 소스 표시와 카테고리 사이드바가 복구되었습니다. Kanban 작업자는 SIGTERM에 응답합니다. Skills.sh 카탈로그는 사이트맵을 통해 858개에서 19,932개 항목으로 늘어났습니다. 커밋 28개, 병합된 PR 21개, 기여자 9명. v0.15.2(2026년 5월 29일 13:37 UTC)는 wheel 및 sdist 배포판에plugin.yaml매니페스트를 포함하여 소스를 별도로 로드하지 않아도 PyPI 설치가 작동하도록 만든 패키징 전용 핫픽스입니다. 기여자 4명. ↩ -
Hermes Agent v0.15.0 릴리스 노트 및 Hermes Agent 릴리스 페이지. “The Velocity release,” 태그
v2026.5.28. 통계: 커밋 1,302개, 병합된 PR 747개, 커뮤니티 기여자 321명.run_agent.py를 76% 리팩터링했습니다(14개 모듈에 걸쳐 16,083줄에서 3,821줄로 감소). 멀티 에이전트 Kanban 플랫폼(자동 분해, swarm 토폴로지, 작업별 모델 재정의, 예약 작업, worktree 관리)을 추가했습니다.session_search는 LLM 의존성을 제거하면서 4,500배 더 빠르게 재설계되었습니다. 3개의 보안 관문에서 Brainworm 계열 프롬프트 주입을 방어하는 Promptware 보호 기능을 추가했습니다. Bitwarden Secrets Manager 통합은 제공자마다 필요했던 여러 API 키를 하나의 부트스트랩 토큰으로 대체합니다. skill 번들을 사용하면 하나의 슬래시 명령으로 여러 skill을 로드할 수 있습니다. TUI 세션 오케스트레이터를 통해 하나의 터미널 창에서 여러 세션을 관리할 수 있습니다. 이미지 생성을 위한 Krea 2(Medium/Large) 및 FAL plugin 지원을 추가했습니다. xAI 통합 업데이트에는 웹 검색 plugin, OAuth 업스트림 연동, 지원 종료 모델 감지, 음성 출력에서 자연스러운 TTS 일시 정지가 포함됩니다. GitHub에서 언급된 패치 릴리스는 대시보드의 401 새로고침 반복 문제, Docker--insecure사용 시HERMES_DASHBOARD_INSECURE=1환경 변수를 명시해야 하는 요구 사항, Docker에서 MCP 단독 명령(npx,npm,node) 확인, Skills 페이지 렌더링, Kanban 작업자의 SIGTERM 처리, 사이트맵을 통한 전체 19,932개 항목의 Skills 카탈로그를 다룹니다. 이와 함께.md전달, gateway 프로브 안전성, 웹 URL 가림 처리, kanban-worker 비전 기능, hindsight 관찰 기본값에 관한 소규모 수정도 포함됩니다. ↩↩↩ -
Hermes Agent v0.11.0 릴리스 노트. 2026년 4월 23일. “The Interface release” — 대화형 CLI를 Python JSON-RPC 백엔드(
tui_gateway)를 사용하는 React/Ink 기반으로 전면 재작성했습니다. 플러그형 전송 아키텍처(agent/transports/), Converse API를 통한 네이티브 AWS Bedrock, 5개의 새로운 추론 경로(NVIDIA NIM, Arcee AI, Step Plan, Google Gemini CLI OAuth, Vercel ai-gateway), Codex OAuth를 통한 GPT-5.5, QR 스캔 설정을 지원하는 17번째 메시징 플랫폼 QQBot을 추가했습니다. plugin 지원 범위를 슬래시 명령, tool 디스패치, 실행 차단, 결과 변환으로 확장했습니다./steer <prompt>를 사용하면 실행 중인 에이전트에 지시를 추가할 수 있으며, 프롬프트 캐시를 깨뜨리지 않고 다음 tool 호출 후 context를 주입합니다. Python plugin 없이 생명 주기 이벤트를 처리하는 셸 훅, 페이로드를 플랫폼 채팅으로 바로 전달하는 웹훅 직접 전달 모드, 오케스트레이터 역할과 설정 가능한 생성 깊이 및 파일 조정 기능을 갖춘 더 스마트한 위임, 대시보드 plugin 시스템, 실시간 테마 전환, i18n, 모바일 반응형 디자인도 추가했습니다. v0.9.0 이후 통계: 커밋 1,556개 · 병합된 PR 761개 · 변경된 파일 1,314개 · 추가된 줄 224,174개 · 커뮤니티 기여자 29명. 함께 보기: Hermes Agent v0.11.0 GitHub 릴리스 태그. ↩↩↩ -
Hermes Agent v0.10.0 릴리스 노트. 2026년 4월 16일. “Tool Gateway 릴리스.” 유료 Nous Portal 구독자를 위한 Nous Tool Gateway 통합 기능으로, 별도의 API 키 없이 Firecrawl 웹 검색, FAL / FLUX 2 Pro 이미지 생성, OpenAI TTS, Browser Use 브라우저 자동화를 관리형으로 이용할 수 있어요. 새로운
use_gateway설정 필드를 통해 도구별로 사용 여부를 선택할 수 있어요. gateway와 직접 입력한 API 키가 모두 설정되어 있으면 런타임에서 gateway를 우선 사용해요.hermes tools및hermes status와 완전히 통합돼요. 더 이상 사용하지 않는HERMES_ENABLE_NOUS_MANAGED_TOOLS환경 변수를 대체해요. @jquesnelle(emozilla)이 구현했어요. Hermes Agent CLI에는 계속 MIT 라이선스가 적용되며 완전한 오픈 소스로 제공돼요. gateway는 기존 Portal 구독 제품과 연동되는 기능이며, CLI에 유료 장벽을 두는 방식이 아니에요. 구독 요금과 가입 방법은 Nous Portal에서도 확인할 수 있어요. ↩↩↩