2026-04-12 Hermes Agent Orange Book 적용 검토
결론
Orange Book은 확인했다. 원문은 Alchain/HuaShu의 GitHub 저장소와 huasheng.ai 페이지에 있다.
- 웹 페이지: https://www.huasheng.ai/orange-books/hermes-agent/
- GitHub: https://github.com/alchaincyf/hermes-agent-orange-book
- PDF: https://github.com/alchaincyf/hermes-agent-orange-book/raw/main/Hermes-Agent-%E4%BB%8E%E5%85%A5%E9%97%A8%E5%88%B0%E7%B2%BE%E9%80%9A-v260407.pdf
주의: Orange Book은 Hermes Agent v0.7.0 기준으로 작성됐다. 현재 로컬은 Hermes Agent v0.8.0이다. 따라서 실제 적용 판단은 로컬 코드와 공식 문서를 우선했다.
확인한 로컬 상태
- Hermes 버전: v0.8.0
- Gateway:
ai.hermes.gateway실행 중 - 설정 파일:
~/.hermes/config.yamlYAML 파싱 정상 - 메모리 파일:
MEMORY.md: 정리 후 1개 엔트리, 1025자 / 제한 2200자USER.md: 9개 엔트리, 1410자 / 제한 1375자- Hermes CLI wrapper 상태:
~/.local/bin/hermes,~/.hermes/hermes-agent/venv/bin/hermes는 shebang이 없는.venv를 가리켜 직접 실행 실패/opt/homebrew/opt/[email protected]/bin/python3.11 -m hermes_cli.main ...방식은 정상
Part 2 핵심: 메모리 아키텍처와 자동 스킬 생성
1. 세 층 메모리
Orange Book의 핵심 설명은 다음 구조다.
| 층 | 의미 | 우리 시스템 상태 | 판단 |
|---|---|---|---|
| 세션 기억 | 과거 대화·도구 호출을 필요할 때 검색 | Hermes 기본 기능 사용 | 유지 |
| 지속 기억 | 사용자 성향·시스템 상태·선호 저장 | MEMORY.md, USER.md 사용 중 |
유지하되 USER 제한 조정 필요 |
| 스킬 기억 | 반복 절차를 ~/.hermes/skills/에 저장 |
기본 스킬 있음, 자동 생성 설정 있음 | 외부 스킬 연결 추가 권장 |
적용 판단:
- 방금 정리한 MEMORY.md는 Orange Book 원칙과 맞다. 일회성 시장 수치나 리포트 데이터는 기억에 넣지 않는 것이 맞다.
- USER.md는 정상 내용이지만 현재 제한보다 약간 크다. 앞으로 사용자 프로필 업데이트가 막힐 수 있다.
2. 무엇을 기억하고 무엇을 기억하지 말아야 하는가
Orange Book 기준으로 기억할 것: - 사용자 선호와 습관 - 프로젝트 구조와 운영 규칙 - 검증된 해결 방법 - 반복되는 오류와 처리 방식
기억하지 말 것: - 일회성 작업 결과 - 시간이 지나면 틀릴 수 있는 시장 수치 - 잘못 추론한 사용자 성향 - 민감정보
현재 조치:
- MEMORY.md 오염 데이터는 이미 제거됨.
- 향후 같은 오염을 막기 위해 메모리 정리 주기를 두는 것이 좋다.
3. 자동 스킬 생성과 개선
Orange Book은 반복 작업이 3~4회 나타나면 Hermes가 절차를 스킬로 굳히고, 사용자의 수정 피드백으로 스킬을 갱신하는 흐름을 강조한다.
현재 설정:
skills:
creation_nudge_interval: 15
auto_improve: true
improvement_log: ~/knowledge-agent/400-reports/skill-evolution-log.md
판단:
- 기본 방향은 이미 맞다.
- 다만 기존 Codex/Claude/agents 스킬 자산이 Hermes에 외부 스킬 디렉터리로 연결돼 있지 않다.
- 공식 문서상 외부 스킬 디렉터리는 읽기 전용으로 스캔되고, 새 스킬 생성은 ~/.hermes/skills/에만 기록된다. 따라서 기존 스킬 자산을 안전하게 재사용하기 좋다.
Part 4 핵심: 다중 에이전트
Orange Book은 Hermes의 delegate_task를 복잡한 작업을 동시에 나눠 처리하는 핵심 도구로 설명한다.
핵심 원칙: - 최대 3개 정도로만 나누는 것이 안전하다. - 각 하위 에이전트는 독립 컨텍스트를 가진다. - 하위 에이전트마다 필요한 도구만 주는 것이 안전하다. - 한 에이전트로 충분한 일은 굳이 나누지 않는다. - 결과 형식은 미리 맞춰야 취합 오류가 줄어든다.
현재 설정:
delegation:
max_iterations: 50
default_toolsets:
- terminal
- file
- web
판단:
- max_iterations: 50은 공식 예시와 일치한다.
- 기본 도구셋은 넓은 편이다. 설정을 바로 줄이기보다, 작업마다 하위 에이전트 도구를 제한하는 운영 규칙이 더 안전하다.
- 우리 시스템은 이미 Claude/Codex/Hermes 역할 분리가 있으므로, Hermes 내부 delegation은 “조사 병렬화”와 “반복 검증”에 먼저 쓰는 것이 적합하다.
권장 역할 예시:
| 역할 | 권장 도구 | 사용처 |
|---|---|---|
| 조사 하위 에이전트 | web, browser | 자료 찾기, 비교 조사 |
| 파일 점검 하위 에이전트 | file | 구조 읽기, 문서 대조 |
| 코드 실행 하위 에이전트 | terminal, file, code_execution | 테스트·검증 전용 |
| 취합 하위 에이전트 | 외부 도구 없음 | 결과 정리만 |
현재 config와 대조 결과
| 항목 | Orange Book/공식 문서 기준 | 현재 상태 | 판단 |
|---|---|---|---|
| memory_enabled | 켜짐 권장 | true | OK |
| user_profile_enabled | 켜짐 권장 | true | OK |
| memory_char_limit | 기본 2200 | 2200 | OK |
| user_char_limit | 기본 1375 | 1375, 실제 1410 | 조정 권장 |
| memory nudge | 주기적 기억 점검 | 10 | OK |
| flush_min_turns | 세션 종료 전 저장 기회 | 6 | OK |
| skills creation nudge | 복잡 작업 후 스킬 생성 유도 | 15 | OK |
| skills auto_improve | 스킬 개선 | true | OK |
| external skill dirs | 기존 스킬 재사용 가능 | 없음 | 추가 권장 |
| delegation max_iterations | 기본 50 | 50 | OK |
| delegation toolsets | 필요한 도구만 부여 | 기본 terminal/file/web | 운영 규칙 필요 |
| Honcho | 선택 기능 | 미설정, 키 없음 | 보류 |
| MCP vault | 지식 볼트 연결 | vault, agent-vault 있음 | OK, 단 ~/knowledge 쓰기 방지 주의 |
즉시 적용 가능한 설정 변경 후보
아래는 바로 적용 가능하지만, 이 보고서 작성 단계에서는 설정을 변경하지 않았다.
1순위: USER.md 제한 상향
이유: - 현재 USER.md는 1410자이고 설정 제한은 1375자다. - Hermes memory tool은 제한을 넘는 상태에서 새 사용자 프로필 저장·교체가 막힐 수 있다.
권장 변경:
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200
user_char_limit: 2000
nudge_interval: 10
flush_min_turns: 6
리스크: - 시스템 프롬프트가 아주 조금 길어진다. - 현재 USER.md 내용이 해리 프로필 중심이라 이득이 더 크다.
2순위: 외부 스킬 디렉터리 연결
확인된 기존 스킬 자산:
- ~/.codex/skills: SKILL.md 7개
- ~/.agents/skills: SKILL.md 7개
- ~/.claude/skills: SKILL.md 37개
권장 변경:
skills:
creation_nudge_interval: 15
auto_improve: true
improvement_log: ~/knowledge-agent/400-reports/skill-evolution-log.md
external_dirs:
- ~/.codex/skills
- ~/.agents/skills
- ~/.claude/skills
리스크:
- Hermes 스킬 목록이 커져서 노이즈가 늘 수 있다.
- Claude 전용 스킬 중 일부는 Hermes 환경에 맞지 않을 수 있다.
- 적용 후 hermes skills list 또는 /skills list로 노이즈 확인이 필요하다.
대안:
- 전체 연결 대신 투자분석·스마트홈·배송조회처럼 확실히 필요한 스킬만 ~/.hermes/skills/로 선별 복사한다.
3순위: 다중 에이전트 운영 규칙을 Hermes 메모리 또는 스킬로 고정
설정 변경보다 운영 규칙이 적합하다.
권장 규칙: - 병렬 하위 에이전트는 최대 3개까지만 사용한다. - 조사 에이전트에는 웹 도구만 준다. - 코드 실행 에이전트에는 실행 도구만 준다. - 취합 에이전트에는 외부 도구를 주지 않는다. - 각 하위 에이전트 출력 형식을 표준화한다.
권장 저장 위치:
- 짧은 운영 원칙: ~/.hermes/memories/MEMORY.md
- 상세 절차: ~/.hermes/skills/에 delegation-policy 스킬 생성
보류: Honcho 활성화
공식 문서상 Honcho는 더 깊은 사용자 모델링을 제공하지만, 외부 API 키와 서버 측 기억 저장이 필요하다.
필요 조건:
memory:
provider: honcho
honcho:
observation: directional
그리고 .env에 HONCHO_API_KEY 필요.
판단: - 해리 시스템은 로컬 우선·민감정보 최소 노출 원칙이 강하다. - 지금은 보류가 맞다. - 나중에 여러 Hermes 인스턴스를 분리 운영할 때 다시 검토한다.
추가로 발견한 운영 이슈
Hermes CLI wrapper가 깨져 있다.
증상:
- ~/.local/bin/hermes 실행 시 없는 .venv/bin/python3.11을 참조한다.
- Gateway 자체는 Homebrew Python 모듈 실행 방식으로 정상 동작 중이다.
영향:
- hermes config check, hermes skills list 같은 명령을 일반 경로로 실행하면 실패한다.
- 현재는 다음 방식으로 우회 가능하다.
cd ~/.hermes/hermes-agent
/opt/homebrew/opt/[email protected]/bin/python3.11 -m hermes_cli.main config check
권장: - 별도 작업으로 Hermes console script 재생성 또는 symlink 수정.
바로 할 다음 작업 제안
user_char_limit을 2000으로 올린다.- 외부 스킬 디렉터리는 한 번에 모두 연결하지 말고
~/.agents/skills부터 연결해 노이즈를 확인한다. - Hermes CLI wrapper를 고쳐
hermes ...명령이 정상 실행되게 한다. - 1주일 후
MEMORY.md,USER.md,~/.hermes/skills/를 재점검해 자동 기억 오염 여부를 확인한다.
근거 소스
- Orange Book 웹 페이지: https://www.huasheng.ai/orange-books/hermes-agent/
- Orange Book GitHub: https://github.com/alchaincyf/hermes-agent-orange-book
- Hermes 공식 설정 문서: https://hermes-agent.nousresearch.com/docs/user-guide/configuration/
- Hermes 공식 스킬 문서: https://hermes-agent.nousresearch.com/docs/user-guide/features/skills/
- Hermes 공식 Honcho 문서: https://hermes-agent.nousresearch.com/docs/user-guide/features/honcho/
- Hermes 공식 delegation 문서: https://hermes-agent.nousresearch.com/docs/user-guide/features/delegation/