Week 07 · 소개 · 2026-08 기준
Hermes Agent
쓸수록 똑똑해지는 에이전트
Nous Research가 만든 오픈소스 자기개선 에이전트입니다. 대화가 끝나도 잊지 않고, 한 번 해낸 일을 스킬로 남겨 다음에 더 잘합니다.
기억 Memory스킬 Skill도구 · MCP실행 백엔드메시징 게이트웨이
오늘의 목표: Hermes가 무엇이고 왜 세션형 도구와 다른지를 이해하고, 내 PC에 설치해 첫 대화까지 마칩니다.
6주차에서 이어집니다
지난주는 ‘멀리서 시키기’, 이번주는 ‘기억하게 하기’
Week 06 · Claude Code 채널
위치의 제약을 풀었다
텔레그램으로 내 PC의 Claude를 부렸습니다. 단, 세션이 꺼지면 끝이고 이전 대화도 못 불러왔습니다.
→
Week 07 · Hermes Agent
시간의 제약을 푼다
상주하면서 사실은 기억으로, 절차는 스킬로 쌓습니다. 오래 쓸수록 유능해집니다.
겹치는 부분도 있습니다. Hermes에도 텔레그램 연결이 있습니다 — 메시징 게이트웨이. 6주차에서 배운 페어링·허용목록 개념이 그대로 쓰입니다.
오늘의 지도 · 5개 블록
개념 → 기억 → 스킬 → 환경 → 설치 순서로 갑니다
BLOCK 1
무엇인가 · 구조
정의 · 폴더 구조 · 토픽별 기억 · 학습 루프
BLOCK 2
기억
사실을 남기는 구조와 자기반성 루프
BLOCK 3
스킬
절차를 남기는 구조 · 오늘의 핵심
BLOCK 4
도구·환경
내장 도구, 실행 백엔드, 게이트웨이
BLOCK 5
설치
설치 · 설정 마법사 · 첫 대화
오늘 제일 중요한 한 문장: 기억은 ‘사실’을, 스킬은 ‘절차’를 저장합니다. 이 둘을 구분하면 Hermes의 나머지는 전부 따라옵니다.
BLOCK 01 · 개념
01
Hermes Agent란 무엇인가
한 문장: 경험에서 스킬을 만들어 스스로 나아지는, 상주형 자율 에이전트.
정의
공식 문서의 표현부터 그대로 봅니다
“The self-improving AI agent built by Nous Research — it creates skills from experience, improves them during use.”
경험에서 스킬을 만들고, 쓰는 동안 그 스킬을 개선하는 자기개선 AI 에이전트.
누가
Nous Research
오픈소스 AI 연구 조직
무엇을
자율 에이전트 프레임워크
터미널 에이전트 루프 + 영속 기억
어디서
내 머신 · 서버
상주하며 계속 돌아갑니다
전체 구조 · 한눈에
Hermes는 결국 폴더 하나입니다
~ \ .hermes—□✕
📁 ~/.hermes/에이전트의 집
├─ 📄 SOUL.md인격 · 말투 · 원칙
├─ 📄 config.yaml모델 · 도구 · 게이트웨이 설정
├─ 🔒 .envAPI 키 · 비밀값
├─ 📁 memories/기억 — 사실
│ ├─ 📄 MEMORY.md환경 · 프로젝트 사실
│ └─ 📄 USER.md사용자 선호 · 정체성
├─ 📁 skills/스킬 — 절차
│ └─ 📁 <카테고리>/<스킬>/SKILL.md카테고리별 폴더
├─ 💾 state.db모든 토픽의 대화 + 전문검색
├─ 📄 channel_directory.json채널 · 토픽 등록부
├─ 📁 platforms/ · pairing/플랫폼별 상태 · 페어링
├─ 📁 cron/ · hooks/ · plugins/예약 · 이벤트 · 확장
├─ 📁 artifacts/ · workspace/산출물 · 작업 폴더
└─ 📁 logs/ · backups/로그 · 백업
전부 사람이 열어볼 수 있는 파일입니다. 인격은 SOUL.md, 사실은 memories/, 절차는 skills/, 대화는 state.db. 이 폴더를 통째로 옮기면 에이전트가 그대로 따라옵니다.
핵심 · 텔레그램 토픽과 기억
토픽 하나가 독립된 레인 하나입니다
# 세션 키 — 이 문자열 하나가 토픽을 가릅니다
agent:main:telegram:group:<chat_id>:<thread_id> # 그룹의 토픽
agent:main:telegram:dm:<user_id> # 1:1 대화
1
첫 메시지
새 토픽에서 말을 걸면 그 (채팅ID, 토픽ID) 조합이 처음 관측됩니다.
2
등록부에 기록
channel_directory.json에 이름·타입·스레드ID가 등록됩니다.
3
세션 생성
그 레인 전용 세션이 state.db에 만들어집니다.
4
누적
이후 그 토픽의 모든 대화는 그 레인에만 쌓입니다.
운영 원칙 — fail-closed: 토픽으로 보내기가 실패해도 스레드를 떼고 General로 우회하지 않습니다. 우회하면 엉뚱한 방에 답이 뜨고 기록도 섞입니다. “입력 중…” 표시까지 레인 단위로 관리합니다.
가장 중요한 구분
기억은 공유, 대화는 분리
모든 토픽이 함께 쓰는 것
SOUL.md 인격 · 말투
MEMORY.md 환경 · 프로젝트 사실
USER.md 사용자 선호
skills/ 배운 절차
config.yaml 모델 · 도구
토픽마다 따로 갖는 것
대화 이력 (세션)
시스템 프롬프트 스냅샷
제목 · 마지막 활동 시각
“입력 중…” 상태
전송 레인
그래서 실제로 이렇게 됩니다
“기획 토픽에서 알려준 말투 규칙은 개발 토픽에서도 통합니다.
하지만 개발 토픽의 대화 내용은 기획 토픽으로 새지 않습니다.”
필요하면 넘어갈 수 있습니다. 다른 토픽 얘기는 전문검색으로 찾아옵니다 — 자동으로 섞이지 않고, 찾을 때만 가져옵니다.
오해 방지 · 무엇이 아닌가
코딩 도우미도, 챗봇 껍데기도 아닙니다
아님 ①
IDE에 묶인 코딩 코파일럿
에디터 안에서만 사는 도구가 아닙니다. 코드 밖의 일도 합니다.
아님 ②
API 하나 감싼 챗봇
모델에 말을 전달만 하는 껍데기가 아닙니다. 도구를 쓰고 상태를 남깁니다.
그럼 무엇인가
“오래 돌수록 더 유능해지는 자율 에이전트”
대부분의 AI 도구는 어제와 오늘의 성능이 같습니다. Hermes는 어제 한 일이 오늘의 능력이 됩니다 — 이것이 유일한 차이점이고, 나머지 기능은 전부 이걸 떠받치는 구조입니다.
비교 · 지난주 도구와 나란히
세션형과 상주형의 차이가 전부입니다
세션형 (지난주 Claude Code)
· 창을 닫으면 맥락이 사라짐
· 매번 배경을 다시 설명
· 어제 잘한 방법을 오늘 또 지시
· 어제와 오늘의 실력이 같음
→
상주형 (Hermes)
· 사실은 기억에 남음
· 절차는 스킬로 남음
· 지난 대화를 검색할 수 있음
· 쓸수록 실력이 올라감
둘 중 하나를 고르는 문제가 아닙니다. 짧고 명확한 작업은 여전히 세션형이 빠릅니다. Hermes는 반복되는 일, 맥락이 긴 일에서 값을 합니다.
핵심 개념 · 학습 루프
Hermes가 강조하는 것은 ‘self-learning loop’ 하나입니다
① 수행여러 단계를 거쳐 완료
→
② 기록과정을 스킬로 저장
→
③ 재사용비슷한 일에 다시 꺼냄
→
④ 개선틀린 부분을 고쳐 저장
언제 기록하나
반복할 만한 여러 단계 작업을 해냈을 때
언제 또 기록하나
막히거나 헛다리를 짚었을 때 — 실패도 자산입니다
가장 중요한 순간
사용자가 방식을 교정했을 때 — 지적이 곧 학습입니다
BLOCK 02 · 기억
02
기억 — 사실을 남기는 방법
“나는 누구고, 이 프로젝트는 어떤 규칙으로 돌아가는가”
오늘의 핵심 · 반드시 구분
기억은 사실, 스킬은 절차
Memory · 사실
무엇이 참인가
나에 대한 것, 내 프로젝트에 대한 것, 내 선호. 관련도에 따라 자동으로 떠오릅니다.
# 예시
배포는 항상 main 브랜치에서
보고서는 한국어 · 존댓말
Skill · 절차
어떻게 하는가
단계별 수행 방법. 비슷한 일을 만나면 꺼내 씁니다.
# 예시
PR 올리는 절차 7단계
주간 보고서 만드는 법
둘 다 세션을 넘어 남습니다. 다만 성격이 달라서 관리도 다릅니다 — 스킬은 지워도 보관(복구 가능)되고, 기억 조각은 영구 삭제됩니다.
기억의 실체 · 파일 두 개
거창한 DB가 아니라 마크다운 파일 두 개입니다
# 저장 위치
~/.hermes/memories/
├── MEMORY.md # 약 800 토큰 — 환경 메모, 프로젝트 관례, 배운 교훈
└── USER.md # 약 500 토큰 — 사용자 선호, 말투, 정체성
왜 이렇게 작은가
글자 수 상한(2,200 / 1,375자)이 걸려 있습니다. 시스템 프롬프트가 무한정 커지는 것을 막기 위해서입니다.
언제 읽히나
세션 시작 시 스냅샷으로 시스템 프롬프트에 주입됩니다. 대화 도중 바뀌어도 그 세션에는 반영되지 않습니다.
설계 의도: 항상 들고 다닐 핵심 사실만 넣습니다(세션당 약 1,300토큰). 나머지는 다음 장의 ‘검색’이 담당합니다.
기억의 나머지 절반 · 세션 검색
“지난주에 그거 뭐라고 했었지?”는 검색이 담당합니다
항상 켜진 기억
MEMORY.md · USER.md
매 세션 프롬프트에 올라갑니다. 그래서 양이 제한됩니다.
필요할 때 꺼내는 기억
지난 대화 전문 검색
SQLite FTS5 전문검색으로 과거 대화를 직접 찾습니다. 요약본이 아니라 실제 메시지가 나옵니다.
# 대화 기록 저장소
~/.hermes/state.db
# 특징 — 약 20ms · LLM 호출 0회 · 토큰 비용 0
실용적인 분담입니다. 늘 필요한 것은 프롬프트에, 가끔 필요한 것은 검색으로. 전부 프롬프트에 넣으면 비싸고 느려집니다.
자동으로 자라는 방식
매 턴 뒤에 조용히 자기반성이 돌아갑니다
대화 한 턴작업 수행
→
백그라운드 리뷰자동 분석
→
수정안 대기기억 갱신 · 스킬 패치
→
승인 후 반영사람이 확인
반복 교정의 처리
같은 지적이 여러 번 나오면 하나의 압축된 항목으로 통합됩니다. 잔소리가 규칙이 되는 지점입니다.
확인용 명령어
/memory pending # 대기 중인 기록
hermes journey list # 배운 것 목록
hermes sessions list # 지난 대화
비용 조절: 이 리뷰는 기본적으로 메인 모델이 돌지만, 설정으로 더 싼 모델에 넘길 수 있습니다.
BLOCK 03 · 스킬
03
스킬 — 절차를 남기는 방법
오늘 가장 중요한 블록입니다.
스킬의 정체
스킬은 프로그램이 아니라 필요할 때 읽는 문서입니다
--- SKILL.md ---
name: my-skill
description: 이 스킬이 하는 일 (60자 이내)
version: 1.0.0
platforms: [macos, linux]
---
# 스킬 제목
## When to Use # 언제 쓰는지
...
형식
YAML 머리말 + 마크다운 본문. 사람이 읽고 고칠 수 있습니다.
표준
agentskills.io 공개 표준을 따릅니다. Hermes 전용 포맷이 아니라 다른 도구와도 호환됩니다.
저장 구조
스킬은 폴더 하나로 관리됩니다
~/.hermes/skills/ # 원본이자 기준이 되는 폴더
└── mlops/ # 카테고리
└── axolotl/
├── SKILL.md # 본문
├── references/ # 참고 문서
├── templates/ # 양식
├── scripts/ # 실행 스크립트
└── examples/ # 예시
설치하면 기본 제공 스킬이 이 폴더로 복사됩니다. 회사 공용 스킬 폴더처럼 외부 경로를 추가할 수도 있습니다 — 설정의 skills.external_dirs.
토큰을 아끼는 장치
스킬이 100개라도 프롬프트가 터지지 않는 이유
Level 0 · 목록만
이름 + 한 줄 설명
전체 스킬의 이름과 요약만 봅니다. 약 3천 토큰.
Level 1 · 본문
SKILL.md 전체
쓸 것 같으면 그때 본문을 펼칩니다.
Level 2 · 참고파일
필요한 문서 1개
더 깊이 필요할 때만 해당 파일만 읽습니다.
점진적 공개(progressive disclosure). “다 읽고 시작”이 아니라 “필요한 만큼만 펼친다” — 스킬을 많이 쌓아도 비용이 선형으로 늘지 않는 핵심 장치입니다.
쓰는 법
대화 중에 슬래시로 불러 씁니다
# 스킬 하나 부르기
/gif-search funny cats
/github-pr-workflow 인증 리팩터링 PR 만들어줘
# 여러 개를 겹쳐 쓰기 — 이게 강력합니다
/github-pr-workflow /test-driven-development 이슈 123번 고쳐줘
겹쳐 쓰기의 의미
“PR 만드는 절차” + “테스트 먼저 짜는 방식”을 동시에 적용하라는 뜻입니다. 작은 절차를 조합해 큰 작업 방식을 만듭니다.
가르치는 법 · /learn
레포·문서·PDF를 던지면 스킬로 만들어 둡니다
/learn ~/projects/acme-sdk 의 REST 클라이언트, 인증과 페이지네이션 위주로
/learn https://docs.example.com/api/quickstart
/learn ~/books/designing-data-intensive-applications.pdf
하지 않는 것
한 파일에 몰아넣지 않고, 손실 있는 요약으로 뭉개지도 않습니다.
하는 것
얇은 SKILL.md + 색인된 참고 파일들로 된 지식베이스 스킬을 만들어, 필요한 것만 그때그때 읽습니다.
5주차 LLM-WIKI와 같은 사상입니다 — 한 번에 다 넣지 않고, 구조를 만들어 두고 필요할 때 꺼내 씁니다.
관리 · 남의 스킬 가져오기
직접 만들지 않아도 됩니다 — 받아서 씁니다
# 둘러보고 찾기
hermes skills browse
hermes skills search kubernetes
hermes skills inspect openai/skills/k8s # 설치 전에 내용 확인
# 설치하고 관리하기
hermes skills install official/security/1password
hermes skills list | hermes skills update | hermes skills uninstall k8s
# 자주 쓰는 조합을 묶어두기
hermes bundles create backend-dev --skill github-code-review --skill test-driven-development
보안 습관: 남의 스킬은 설치 전에 inspect로 내용을 보고, 주기적으로 hermes skills audit으로 점검합니다. 스킬은 결국 에이전트에게 주는 지시문입니다.
안전장치 · 승인 게이트
에이전트가 제 마음대로 자기를 고치지 못하게 합니다
설정
skills.write_approval: true
켜두면 에이전트의 스킬 수정이 바로 반영되지 않고 대기열에 쌓입니다.
→
검토 절차
/skills pending # 대기 목록
/skills diff <id> # 뭐가 바뀌는지
/skills approve <id> # 승인
기억 쪽에도 같은 게이트가 따로 있습니다(/memory pending). 자기개선을 켜되, 방향은 사람이 정한다 — 이것이 Hermes의 기본 자세입니다.
BLOCK 04 · 도구와 환경
04
무엇으로, 어디서, 누구와
도구 · 실행 위치 · 대화 창구
도구
기본 도구 60여 개 위에, MCP로 무한정 붙입니다
내장 도구
60+ 개가 바로 있습니다
터미널 실행, 파일 읽기·쓰기, 웹 검색, 이미지 생성, 음성 합성(TTS), 브라우저 자동화 등.
MCP
아무 MCP 서버나 연결
6주차에 배운 그 MCP입니다. 사내 시스템이든 외부 서비스든 규격만 맞으면 도구로 붙습니다.
hermes mcp
hermes tools # 켜고 끄기
도구는 플랫폼별로 켜고 끕니다. 예를 들어 텔레그램에서 들어온 요청에는 위험한 도구를 빼는 식으로 나눌 수 있습니다.
실행 위치
내 노트북에 묶이지 않습니다 — 백엔드 6종
LOCAL
내 컴퓨터
가장 단순. 지금 이 자리에서 실행
DOCKER
컨테이너
격리된 환경. 사고를 가둡니다
SSH
원격 서버 · VPS
노트북을 꺼도 계속 돕니다
SINGULARITY
HPC · GPU 클러스터
연구용 계산 환경
왜 중요한가: 6주차 Claude Code는 내 PC가 켜져 있어야 했습니다. Hermes를 VPS에 올리면 내 컴퓨터와 무관하게 계속 살아 있습니다.
대화 창구 · 6주차와 직접 연결
메시징 게이트웨이 — 하나에서 20여 개 플랫폼으로
TelegramDiscordSlackWhatsAppTeamsHome Assistant…20+
6주차와 같은 점
허용목록(특정 사용자 ID)과 DM 페어링(먼저 말 건 사람이 권한 획득)으로 접근을 통제합니다. 지난주에 배운 그 개념 그대로입니다.
6주차와 다른 점
여러 사람이 같은 인스턴스를 함께 쓸 수 있습니다. 팀이 하나의 에이전트를 공유하고, 그 에이전트가 팀의 기억을 쌓습니다.
hermes gateway setup # 텔레그램·디스코드·슬랙 연결 마법사
그 밖에
스스로 시간을 지키고, 사고는 가둡니다
자동화 · 크론
정해진 시각에 알아서
내장 스케줄러가 작업을 돌리고, 결과를 원하는 플랫폼으로 배달합니다. “매일 아침 브리핑” 같은 것이 여기서 나옵니다.
웹 대시보드
터미널 밖에서 보기
상태와 기록을 브라우저에서 확인합니다.
보안
명령 승인 · 권한 · 컨테이너 격리
위험한 명령은 승인을 받고 실행합니다. 불안하면 아예 컨테이너 안에서만 돌립니다. 자율성을 키울수록 이 장치들이 중요해집니다.
BLOCK 05 · 설치
05
설치하고 첫 대화까지
여기서부터는 같이 손을 움직입니다.
Step 1 · 설치
한 줄이면 끝납니다
# Windows (PowerShell)
iex (irm https://hermes-agent.nousresearch.com/install.ps1)
# Linux · macOS · WSL2 · Android(Termux)
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
설치 직후
셸을 다시 읽어야 명령어가 잡힙니다 — source ~/.bashrc 또는 터미널 새로 열기.
데스크톱 앱
터미널이 부담스러우면 공식 사이트에서 설치 프로그램을 받아도 됩니다.
모델 요구사항: 컨텍스트 64,000 토큰 이상인 모델이 필요합니다. 작은 모델은 기억·스킬을 얹는 순간 자리가 모자랍니다.
Step 2 · 설정 마법사
hermes setup 을 실행하고 셋 중 하나를 고릅니다
추천 · 처음이라면
Quick Setup
Nous Portal 무료 OAuth. API 키가 필요 없습니다.
hermes setup --portal
직접 고르고 싶다면
Full Setup
공급자와 도구를 하나씩 설정합니다.
최소로 시작
Blank Slate
기본만 켜고 나머지는 필요할 때 추가합니다.
# 설정 파일 위치
~/.hermes/.env # 비밀값 · 토큰
~/.hermes/config.yaml # 설정
# 명령어로도 바꿀 수 있습니다
hermes config set model anthropic/claude-opus-4.6
Step 3 · 첫 대화
이 순서로 확인하면 ‘진짜 되는지’를 압니다
1
실행
hermes 또는 hermes --tui. 배너에 모델과 도구가 뜨는지 봅니다.
2
일 시키기
“이 레포 요약해줘” 같은 확인 가능한 요청을 던집니다.
3
도구 확인
터미널 실행·파일 읽기·웹 검색이 실제로 도는지 봅니다.
4
기억 확인 ★
hermes --continue 로 세션이 살아 있는지 확인합니다. 오늘의 핵심이 여기 있습니다.
hermes # 대화 시작 | hermes model # 모델 선택 | hermes tools # 도구 켜기·끄기
hermes skills # 스킬 관리 | hermes gateway setup # 메신저 연결 | hermes doctor # 문제 진단 | hermes update
이번 주 실습 · 합격 기준
설치보다 ‘기억이 남는 것’을 확인하는 게 목표입니다
기초 · 필수
① 설치 + hermes setup
② 첫 대화로 도구 동작 확인
③ 내 선호를 하나 알려주기
(예: “보고는 항상 한국어 존댓말로”)
④ 세션 종료 후 hermes --continue
⑤ 그 선호를 기억하는지 확인
심화 · 선택
① hermes skills browse 로 스킬 1개 설치
② 슬래시로 불러 써보기
③ /learn 으로 내 문서 하나 학습시키기
④ hermes gateway setup 으로 텔레그램 연결
⑤ 6주차 방식과 무엇이 달라졌는지 3줄로 적기
제출물: ⑤번 — 세션을 껐다 켠 뒤에도 에이전트가 내 선호를 기억하는 대화 캡처 1장. 토큰·API 키가 보이는 화면은 제출하지 않습니다.
Week 07 마무리 · Week 08 준비
오늘은 ‘잊지 않는 에이전트’를 손에 넣었습니다
기억사실
+
스킬절차
+
도구·MCP손발
+
백엔드사는 곳
=
자라는 에이전트self-learning loop
Week 06 → 07
위치의 자유 → 시간의 자유
어디서든 시키는 것에서, 어제 배운 것을 오늘 쓰는 것으로.
Week 08 · 다음
1~7주 통합
지금까지 만든 것들을 하나의 업무 흐름으로 엮어 시연합니다.
출처 — Hermes Agent 공식 문서 hermes-agent.nousresearch.com/docs · WikiDocs “Hermes Agent: 성장하는 AI 에이전트 실전 가이드” (2026-08-18 확인)