헤르메스 에이전트 작동 원리 — SOUL·MEMORY·스킬 시스템 완전 해부
기억하고, 학습하고, 진화한다. 이것이 에이전트와 챗봇의 차이다.
이 글은 2026년 6월 기준으로 작성됐다. 헤르메스 에이전트의 내부 구조는 버전에 따라 변경될 수 있으니 공식 GitHub도 함께 확인하길 권한다.
헤르메스 에이전트가 "쓸수록 똑똑해진다"는 말은 마케팅 문구가 아니다. 실제로 내부에 그런 구조가 설계되어 있다. 이번 편에서는 그 핵심 메커니즘인 SOUL.md, MEMORY.md, 스킬 시스템을 하나씩 해부한다.
헤르메스의 3대 핵심 파일
헤르메스 에이전트는 크게 세 가지 파일로 자신의 상태를 관리한다. 이 파일들이 에이전트의 인격, 기억, 능력을 담당하는 세 기둥이다.
| 파일 | 역할 | 변경 주체 |
|---|---|---|
SOUL.md | 에이전트의 인격·행동 원칙 | 사용자가 정의 |
MEMORY.md | 세션 간 지속되는 기억 저장소 | 에이전트가 자동 갱신 |
skills/*.md | 재사용 가능한 작업 노하우 | 에이전트가 자동 생성 |
이 세 파일은 에이전트가 실행될 때마다 읽히며, 에이전트의 모든 판단과 행동에 영향을 준다.
SOUL.md: 에이전트의 인격과 행동 수칙
SOUL.md는 에이전트에게 "넌 어떤 존재고, 어떻게 행동해야 하는가"를 정의하는 파일이다. 쉽게 말해 에이전트의 시스템 프롬프트를 파일로 관리하는 방식이다.
일반적인 AI 챗봇에서 시스템 프롬프트는 대화 창을 닫으면 사라진다. 헤르메스는 이를 파일로 영구 저장하고, 매 실행 시 자동으로 로드한다.
SOUL.md 예시:
# 에이전트 이름: Felix
## 역할
나는 rwx의 개인 기술 어시스턴트다. 코드 리뷰, 자동화 스크립트 작성, 일정 관리를 주로 담당한다.
## 행동 원칙
- 모든 답변은 한국어로 한다
- 코드 예시를 항상 포함한다
- 불확실한 정보는 반드시 출처와 함께 표기한다
## 금지 사항
- 추측을 사실처럼 말하지 않는다
- 사용자가 요청하지 않은 작업을 먼저 실행하지 않는다
이 파일을 수정하면 에이전트의 성격이 바뀐다. 업무용으로 쓰다가 갑자기 창의적인 글쓰기 어시스턴트로 전환하고 싶다면 SOUL.md만 수정하면 된다.
MEMORY.md: 세션을 초월하는 기억
MEMORY.md는 에이전트가 스스로 관리하는 기억 저장소다. 사용자가 직접 쓰는 파일이 아니라, 에이전트가 작업 중 중요한 정보를 자동으로 기록하고 갱신한다.
기록되는 내용의 예:
# 사용자 환경
- OS: Ubuntu 22.04 (WSL2)
- 주 언어: Python, TypeScript
- 자주 사용하는 디렉토리: /home/rwx/projects/
# 사용자 선호도
- 코드 스타일: 타입 힌트 필수, 주석은 한국어
- 응답 길이: 핵심만 간결하게
# 진행 중인 프로젝트
- rwxrwx.com SSG 개발 (2026-06 기준 진행 중)
- n8n 자동화 파이프라인 구축 예정
# 지난 작업 요약
- 2026-06-10: build.py의 incremental 빌드 로직 디버깅 완료
새 세션을 시작해도 에이전트는 이 파일을 읽어 이전 맥락을 복원한다. "지난번에 말했잖아요"라는 말을 할 필요가 없어지는 이유다.
스킬 시스템: 스스로 진화하는 방법
스킬 시스템이 헤르메스를 다른 에이전트 프레임워크와 구별짓는 핵심 기능이다. 단순히 기억을 유지하는 것을 넘어, 반복되는 문제를 해결하는 노하우를 체계적으로 축적한다.
스킬이 생성되는 과정
스킬 생성은 아래 4단계 루프로 작동한다.
- 복잡한 작업 수행 — 에이전트가 여러 단계를 거쳐 어려운 문제를 해결한다.
- 경험 추출 — 작업 완료 후, 에이전트가 그 과정을 분석해 핵심 패턴을 추출한다.
- 스킬 파일 생성 —
skills/디렉토리 안에 마크다운 파일로 노하우를 문서화한다. - 다음 작업에 활용 — 비슷한 요청이 오면 스킬 파일을 참고해 더 빠르게 처리한다.
예를 들어 "GitHub Actions 설정을 처음부터 만드는" 작업을 한 번 수행하면, 에이전트는 다음과 같은 스킬 파일을 생성할 수 있다.
# GitHub Actions CI 파이프라인 설정 스킬
## 상황
Node.js 프로젝트에 CI/CD 파이프라인을 구축해야 할 때 사용.
## 핵심 절차
1. `.github/workflows/` 디렉토리 생성
2. `ci.yml` 파일 작성 (아래 템플릿 활용)
3. Node 버전은 프로젝트 `.nvmrc` 참조
## 검증된 템플릿
[...]
## 주의 사항
- npm ci 사용 (npm install 대신)
- 캐시 설정 필수 (빌드 시간 절반으로 감소)
스킬이 쌓일수록 어떻게 달라지나
스킬이 10개 쌓인 에이전트와 0개인 에이전트는 체감이 다르다. 초기에는 매번 처음부터 문제를 분석하지만, 스킬이 누적되면 기존 스킬을 조합해 더 빠르게 복잡한 작업을 처리한다.
이 구조는 실제로 NousResearch 공식 문서에서 "폐쇄 학습 루프(Closed Learning Loop)"라고 명명한다. 외부 학습 없이 자체 경험만으로 개선된다는 의미다. 모델 자체는 바뀌지 않지만, 에이전트의 운용 노하우가 쌓이는 방식이다.
멀티 플랫폼 게이트웨이
헤르메스는 단일 채널에 묶이지 않는다. 하나의 에이전트 인스턴스에 여러 입력 채널을 동시에 연결할 수 있다.
지원하는 채널:
- CLI — 터미널에서 직접 명령
- 텔레그램 — 스마트폰으로 어디서든 명령 및 결과 수신
- 슬랙 — 팀 워크스페이스에서 공유 에이전트로 활용
- 디스코드 — 커뮤니티 서버에 에이전트 연동
실용적인 활용 예시: 출근길 지하철에서 텔레그램으로 "오늘 GitHub 이슈 요약해줘"라고 보내면, 사무실 도착 전에 결과가 날아온다. 에이전트는 서버에서 혼자 조용히 작업을 완료해 두는 것이다.
자주 묻는 질문 (FAQ)
Q. SOUL.md나 MEMORY.md를 사용자가 직접 수정해도 되나?
A. SOUL.md는 사용자가 직접 편집하도록 설계됐다. MEMORY.md는 에이전트가 관리하지만, 잘못된 내용이 기록됐다면 직접 수정해도 무방하다.
Q. 스킬 파일이 너무 많아지면 에이전트가 느려지나? A. 스킬 파일 자체가 에이전트를 느리게 만들진 않는다. 다만 관련 없는 스킬이 너무 많으면 의사결정 과정이 복잡해질 수 있다. 정기적으로 불필요한 스킬을 정리하는 것이 권장된다.
Q. 다른 AI 에이전트 프레임워크(LangGraph, CrewAI 등)와의 차이는? A. LangGraph, CrewAI는 주로 개발자가 프로그래밍 방식으로 에이전트 워크플로우를 설계하는 프레임워크다. 헤르메스는 에이전트가 스스로 스킬을 생성하고 학습하는 자율적 런타임에 가깝다. 설계 목적 자체가 다르다.
📝 정리
이번 글에서 다룬 핵심 내용:
- [x]
SOUL.md는 에이전트의 인격과 행동 원칙을 정의하는 파일이다 - [x]
MEMORY.md는 세션 간 지속되는 기억 저장소로 에이전트가 자동 갱신한다 - [x] 스킬 시스템은 작업 경험을 파일로 저장하여 반복 작업의 효율을 높인다
- [x] 텔레그램, 슬랙, 디스코드 등 멀티 플랫폼 게이트웨이로 어디서든 접근 가능하다
다음 편에서는 실제로 헤르메스를 설치하고, 텔레그램 봇과 연결하는 전 과정을 단계별로 다룬다. 읽는 것보다 직접 만져보는 게 더 빠르다. 기대해도 좋다.