에르메스 AI 어시스턴트 - 설치, 설정, 워크플로우 및 문제 해결
개발자를 위한 Hermes Agent 설치 및 빠른 시작
Hermes Agent은 로컬 머신이나 저비용 VPS에서 실행되는 자체 호스팅(model-agnostic) AI 어시스턴트입니다. 터미널 및 메시징 인터페이스를 통해 작동하며, 반복되는 작업을 재사용 가능한 스킬로 변환하여 시간이 지남에 따라 지속적으로 성능을 향상시킵니다.
Hermes Agent는 OpenClaw와 기능적으로 매우 유사합니다. OpenClaw는 로컬 LLM, 검색(Retrieval), 메모리, 라우팅, 가시성(Observability)을 통합된 로컬 인프라로 연결하는 자체 호스팅 AI 어시스턴트 시스템입니다. 2026년 4월 Anthropic이 OpenClaw의 Claude 구독 접근을 차단한 이후, 많은 개발자들이 Hermes로 이동하게 되었습니다. OpenClaw의 부상과 몰락 타임라인은 Hermes가 공급업체 의존성 없이 지속적인 자체 호스팅 자동화를 원하는 사용자에게 자연스러운 대안으로 부상한 이유를 설명합니다.
Hermes를 둘러싼 자체 호스팅 어시스턴트, 검색, 로컬 인프라의 더 넓은 그림을 보고 싶다면, AI 시스템 개요에서 Hermes가 해결하려는 문제들과 동일한 맥락의 주제들을 연결해 볼 수 있습니다.
배포 trade-off와 런타임 선택에 관해서는 2026년 LLM 호스팅: 로컬, 자체 호스팅 및 클라우드 인프라 비교가 호스팅 지도를 제공하고, 2026년 LLM 성능: 벤치마크, 병목 현상 및 최적화는 Hermes 실행 후의 처리량(throughput)과 지연 시간(latency) 측면을 다루고 있습니다.

저의 편향된 시각: Hermes는 가끔 여는 탭으로 대하는 것이 아니라 인프라로 취급할 때 가장 흥미롭습니다. 서비스가 안정적으로 실행되고 고정된 홈 디렉토리를 갖게 되면, 프롬프트는 “채팅"처럼 보이지 않고 “운영(Ops)“처럼 보이기 시작합니다.
Hermes Agent란 무엇이며 왜 중요한가
Hermes Agent는 Nous Research에서 구축한 오픈소스 AI 에이전트입니다. 지속적으로 실행되고, 도구(터미널, 파일, 웹 등)를 사용하며, 스킬 및 메모리 시스템을 통해 시간이 지남에 따라 자체 행동을 개선하도록 설계되었습니다.
두 가지 설계 선택이 이 가이드의 나머지 부분을 형성하므로 자세히 설명할 가치가 있습니다.
첫째, Hermes는 단일 모델 제공업체에 잠기지 않습니다. 공식 설정 흐름은 여러 제공업체 및 모든 OpenAI 호환 엔드포인트를 지원하며, 코드 편집이 아닌 hermes model 명령어를 통해 전환이 가능합니다.
둘째, Hermes는 “대화"와 “실행” 사이에 명확한 경계를 긋습니다. 에이전트는 하루 종일 대화할 수 있지만, 행동이 필요할 때는 명시적인 도구와 구성된 실행 백엔드를 통해 행동합니다. 안전성, 재현성, 문제 해결은 여기서 이루어집니다.
비용과 라이선스는 상쾌할 정도로 단조롭습니다. Hermes Agent 자체는 MIT 라이선스 하의 무료 소프트웨어입니다. 호스팅된 모델을 사용하는 경우, 지속적인 비용은 제공업체가 청구하는 금액입니다. 로컬 모델을 실행하면 API 요금을 완전히 피할 수 있습니다.
Hermes 설정이 외부 도구 레이어를 통해 Claude를 사용하는 경우, 이 Anthropic 구독 변경 사항은 API 기반 과금이 이제 예상되는 경로인 이유에 대한 유용한 참고 자료입니다.
Hermes Agent 설치
Hermes는 Linux, macOS, WSL2에 대해 빠른 설치 경로를 제공합니다. 공식 문서는 이를 의도적으로 단순하게 유지합니다.
Linux에서의 Hermes 설치
sudo apt-get update
sudo apt-get upgrade
sudo apt-get curl git
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
설치 후 셸을 다시 로드하고 CLI를 시작합니다.
source ~/.bashrc # 또는 source ~/.zshrc
hermes
설치 프로그램은 얇은 래퍼(wrapper)가 아닙니다. 설치 가이드에 따르면, 이는 종속성, 리포지토리, 가상 환경, 그리고 hermes 명령어를 설정한 후 사용자가 첫 번째 채팅 준비 상태로 진입할 수 있도록 합니다.
Windows 및 Android 참고 사항
네이티브 Windows는 지원되지 않습니다. 문서에서는 WSL2를 사용하고 그 안에서 Hermes를 실행하는 것을 권장합니다.
Android의 경우, Hermes는 Termux 설치 경로를 지원합니다. Termux를 감지하고 그에 따라 종속성 및 환경 설정을 적응하도록 설계되었습니다.
빠른 시작(Quickstart)
가장 빠른 첫 실행은 단순히 hermes를 실행하는 것이지만, 의미 있는 빠른 시작을 위해서는 두 가지 추가 결정이 필요합니다: 사용할 모델 제공업체와 활성화할 도구입니다.
제공업체 및 모델 선택
Hermes는 세 가지 보완적인 진입점을 제공합니다:
hermes model: 제공업체 및 기본 모델 선택hermes tools: 도구 세트 활성화 또는 비활성화hermes setup: 주요 구성 영역에 대한 대화형 위자드 실행
최소한의 흐름은 다음과 같습니다:
hermes model
hermes tools
hermes
실제로 지원되는 항목에 관해서는, 공식 Quickstart는 다양한 제공업체를 나열하고 Hermes가 OpenAI 호환 API와 함께 작동함을 명시합니다. 이는 호스팅 서비스와 자체 호스팅 엔드포인트를 모두 포함한다는 점에서 중요합니다.
초기 도구 실행 검증
Hermes를 둘러싼 습관을 형성하기 전에, 환경에서 도구 사용이 작동하는지 확인하는 것이 좋습니다. Quickstart는 첫 번째 기능으로 터미널 사용을 명시적으로 제안합니다.
실제로, 작은 “smoke test” 프롬프트는 두 가지 역할을 합니다: 터미널 도구를 확인하고 권한 프롬프트를 검증합니다.
예시 프롬프트:
Show my disk usage and the five largest directories.
Hermes가 터미널 도구를 실행할 수 없다면, 문제 해결(Troubleshooting) 섹션으로 건너뛰세요. 터미널 백엔드 오버 구성은 가장 흔한 원인 중 하나이며, 구성을 보면 해결책은 일반적으로 명확합니다.
확장 가능한 구성
Hermes는 상태를 저장하는 위치와 구성을 해결하는 방식을 이해하는 사람들에게 보상을 줍니다. 또한 많은 “어제에는 작동했는데” 문제들이 여기서 발생합니다.
구성 및 상태 저장 위치
Hermes는 설정과 상태를 ~/.hermes 아래에 저장합니다. 공식 구성 가이드는 구성을 문서화하며, 여기에는 설정을 위한 config.yaml, 비밀 정보를 위한 .env, OAuth 자격 증명을 위한 auth.json, 아이덴티티를 위한 SOUL.md, 그리고 메모리, 스킬, cron, 세션, 로그를 위한 폴더들이 포함되어 있습니다.
이는 두 가지 이유로 중요합니다.
- 정확한 위치를 알기 때문에 디버깅이 기계적으로 이루어집니다.
- 하나의 디렉토리가 대부분의 에이전트 상태를 캡처하기 때문에 백업이 간단해집니다.
구성 우선순위 및 config.yaml에서 비밀 정보 분리
Hermes는 우선순위 순서로 구성을 해결합니다. 최상위에는 CLI 오버라이드가 있고, 그 다음이 config.yaml, 그 다음이 .env, 그리고 가장 아래에 기본값이 있습니다.
좋은 점은 hermes config set이 값을 올바른 파일로 라우팅한다는 것입니다: API 키는 .env로, 비비밀 설정은 config.yaml으로 저장됩니다.
hermes config set model openrouter/meta-llama/llama-3.1-70b-instruct
hermes config set terminal.backend docker
hermes config set OPENROUTER_API_KEY sk-or-v1-xxxxxxxx
Hermes는 또한 ${VAR_NAME} 구문을 통해 config.yaml 내부의 환경 변수 대체를 지원합니다. 이는 특정 값을 환경에 유지하면서도 구조화된 구성에서 참조하고 싶을 때 유용합니다.
샌드박스 및 실행 백엔드
Hermes는 셸 명령어가 실제로 실행되는 위치를 정의하는 여러 터미널 백엔드를 지원합니다. 구성 가이드에는 local, docker, ssh, modal, daytona, singularity가 나열되어 있습니다.
의견이 있지만 맹목적인 신앙을 강요하지 않는 생각의 방식은 다음과 같습니다:
local은 가장 빠르고 단순하지만 격리되어 있지 않습니다docker는 실용적인 안전성 및 재현성 레이어입니다ssh는 채팅 장치와 컴퓨팅 박스를 분리하는 깔끔한 방법입니다modal과daytona는 “서버리스지만 충분히 지속적"인 워크플로우에 적합합니다singularity는 HPC 친화적인 옵션입니다
최소한의 Docker 백엔드 예시:
# ~/.hermes/config.yaml
terminal:
backend: docker
docker_image: "nikolaik/python-nodejs:python3.11-nodejs20"
docker_volumes:
- "/home/user/projects:/workspace/projects"
docker_forward_env:
- "GITHUB_TOKEN"
문서에서는 Docker 백엔드에 대한 보안 강화(예: 기능 제거 및 권한 에스컬레이션 비활성화)도 설명합니다.
스킬, 메모리 및 프로필
Hermes는 가치를 누적하기 위한 두 가지 관련 메커니즘을 가지고 있습니다.
스킬(Skills)은 절차적 메모리입니다. Hermes는 자체 스킬을 생성, 업데이트, 삭제할 수 있으며, 복잡한 작업 완료 후 접근 방식을 스킬로 저장할 것을 제안할 수 있습니다.
내장 메모리는 ~/.hermes 아래의 MEMORY.md 및 USER.md와 같은 파일로 저장되며, Hermes는 더 깊은 회상을 위해 외부 메모리 제공업체도 사용할 수 있습니다. 메모리 문서에는 여러 제공업체 플러그인이 나열되어 있으며, 메모리 제공업체 가이드는 대화형 설정 흐름을 문서화합니다.
同一 머신에 여러 독립적인 에이전트를 원한다면, Hermes 프로필이 격리를 제공합니다. 각 프로필은 자체 구성, 비밀 정보, 메모리, 세션, 스킬, cron 작업 및 게이트웨이 상태를 가진 고유한 디렉토리를 갖습니다.
역할별(엔지니어, 연구원, 운영자, 임원 워크플로우)로 프로덕션에서 잘 작동하는 스킬에 대한 심층적인 분석은 실제 프로덕션 설정을 위한 Hermes AI 어시스턴트 스킬을 참조하세요.
전형적인 워크플로우
Hermes를 계속 둘 에이전트처럼 대한다면, 워크플로우는 서비스 엔지니어링처럼 보이기 시작합니다.
안정적인 베이스라인
부식되지 않는 베이스라인은 다음과 같습니다:
- CLI에서 설치하고 첫 번째 채팅을 실행합니다.
hermes model로 제공업체와 모델을 선택한 후 비용을 확인합니다.- 도구 세트를 구성하고 터미널 실행이 로컬인지 샌드박스인지 결정합니다.
- 기본값을 잠시 사용한 후에만
SOUL.md를 빠르게 변경합니다. 아이덴티티 변경은 사람들이 예상하는 것보다 더 중요합니다. 왜냐하면 이는 시스템 프롬프트의 “슬롯 1"이기 때문입니다.
누적되는 일상적인 사용
Hermes에는 웹 UI가 아닌 터미널 UI가 있으며, 슬래시 명령어, 재개 가능한 세션, 스트리밍 도구 출력을 위한 장기 세션을 위해 설계되었습니다.
실제로, 유용한 리듬은 다음과 같습니다:
- 프로젝트의 이름이 지정된 세션에서 작업을 실행
- 컨텍스트가 너무 커지면 압축
- Hermes가 반복적인 루틴을 스킬로 변환하도록 허용
- 도구 실행이 감사 가능하도록 “질문(ask)“과 “행동(act)” 사이에 정신적 경계를 유지
24/7 접근을 위한 메시징 게이트웨이
메시징 게이트웨이는 Hermes를 터미널 앱이 아닌 어시스턴트처럼 느끼게 하는 핵심 부분입니다. 문서에서는 이를 여러 플랫폼에 연결하고, 세션을 처리하며, cron 작업을 실행하고, 메시지를 전달하는 단일 프로세스로 설명합니다.
설정은 hermes gateway setup을 통해 호출되며, 게이트웨이는 포어그라운드에서 실행되거나 사용자 서비스로 실행될 수 있습니다. CLI 참조는 run, install, start, stop, status, restart와 같은 게이트웨이 하위 명령어를 문서화합니다.
도구를 사용하는 봇의 보안은 중요합니다. 게이트웨이 문서는 특정 플랫폼에 대한 허용 목록(allowlists)과 일회성 페어링 코드를 발급하고 hermes pairing approve를 통해 승인을 요구하는 DM 페어링 흐름을 설명합니다.
문제 없는 업데이트
Hermes 업데이트는 일급 명령어입니다. 업데이트 가이드는 hermes update, 구성 마이그레이션 확인, 그리고 hermes doctor 및 hermes gateway status를 포함한 작은 업데이트 후 유효성 검사 루틴을 문서화합니다.
hermes update
hermes doctor
hermes gateway status
문제 해결 및 진단
대부분의 Hermes 실패는 신비롭지 않습니다. 사람들이 모델 레이어만 확인하고 런타임 레이어를 무시하기 때문에 신비로워 보입니다.
빠른 분류 명령어
CLI 참조는 세 가지 명령어를 핵심 루프로 명시적으로 위치시킵니다:
hermes doctor: 대화형 진단용hermes status: 빠른 개요용hermes dump: 공유 가능하고 적화된 설정 요약용
로그의 경우, hermes logs는 ~/.hermes/logs 아래에 저장된 파일을 tail합니다.
hermes doctor --fix
hermes status
hermes dump --show-keys
hermes logs errors -f
일반적인 설치 실패
FAQ 및 문제 해결 가이드는 Python 버전 문제, uv 미발견, sudo 설치와 사용자 설치를 혼합하여 발생하는 권한 문제 등 여러 반복되는 문제와 그 해결책을 나열합니다.
이러한 오류를 만나면, 문서는 Python 업그레이드, uv 설치, sudo 없이 Hermes 재설치와 같은 구체적인 해결 단계를 제공합니다.
제공업체 및 모델 문제
API 키가 작동하지 않을 때, FAQ는 구성을 확인하거나 hermes model을 다시 실행하거나 hermes config set을 통해 키를 직접 설정하는 것을 권장합니다. 또한 키는 제공업체별이라는 일반적인 주의점도 지적합니다.
“모델을 찾을 수 없음” 문제에 대해서는, FAQ는 hermes model을 사용하여 유효한 식별자를 선택하도록 하고, 구성 및 세션별 오버라이드를 모두 보여줍니다.
レート 제한 및 컨텍스트 길이 문제도 다루고 있습니다. FAQ는 429 오류가 발생하면 기다리거나, 제공업체나 모델을 전환하거나, 압축 또는 새 세션을 통해 컨텍스트 압력을 줄이는 것을 제안합니다.
터미널 백엔드 및 게이트웨이 문제
터미널 명령어가 즉시 실패할 경우, 구성 가이드에는 “일반적인 터미널 백엔드 문제” 섹션이 포함되어 있으며 Docker 실행 중단을 포함하여 백엔드별 일반적인 원인을 가리킵니다. 또한 샌드박스 구성에 의문이 있을 때 로컬로 폴백하는 것이 유효한 디버깅 동작임을 명시합니다.
게이트웨이 문제의 경우, 메시징 가이드는 허용 목록과 페어링을 안전한 기본값으로 강조하므로, 많은 “봇이 침묵하는” 사건들은 실제로 인증이 역할을 하고 있는 것입니다.