두 AI 에이전트를 같이 쓰는 법 — hermes와 Claude Code 역할 분담 실전
채팅 입구는 hermes, 코딩과 위키 편집은 Claude Code — 집 서버에서 직접 굴리며 찾아낸 분담 구조
저는 지금 두 AI 에이전트를 동시에 운영하고 있습니다. 노트북에서 Claude Code, 집 개발 서버에서 hermes. 처음엔 “둘 중 하나만 쓰면 되지 않나?”라고 생각했는데, 써보니 달랐습니다. 둘이 잘하는 게 서로 다르더라고요.
정체부터 — 뭐가 다른가
hermes는 NousResearch의 에이전트 프레임워크입니다. Discord 게이트웨이가 내장돼 있어서, 봇 토큰 하나 넣으면 Discord 채팅이 그대로 에이전트 입력이 됩니다. 집 서버에 올려두면 24시간 돌아갑니다. 제가 폰으로 Discord에 뭔가를 던지면 받는 쪽이 hermes입니다.
Claude Code는 로컬 CLI입니다. 코드 편집, 위키 소화, 파일 조작 — 세션을 열고 직접 앉아서 같이 작업하는 용도입니다.
둘 다 속으로는 같은 원리로 작동합니다. 프로젝트 폴더에 들어가면 CLAUDE.md나 AGENTS.md를 읽어서 그 규칙에 맞게 행동을 재조정합니다. hermes는 Memory·Skill을 profile 단위로, Claude Code는 전역·프로젝트 위치로 나눠서 관리하지만 “환경을 읽어 행동을 좁힌다”는 메커니즘은 같습니다.
역할이 나뉘는 지점
실제로 써보니 분담이 자연스럽게 생겼습니다.
hermes가 담당하는 것: 폰에서 생각을 던지는 채팅 입구, Discord 채널별 대화 컨텍스트 유지, 서버에서 자동으로 돌아가는 cron 수집. 스레드별로 세션이 따로 잡히기 때문에 #잡생각, #trading_mvp, #한새암 채널을 각자 독립된 대화방처럼 씁니다.
Claude Code가 담당하는 것: 코딩 작업, 위키 쿼리와 편집, digest 세션. CLAUDE.md·스킬·훅이 다 여기 모여 있으니 위키 두뇌는 여기가 맞습니다.
이미 이 루프가 돌아가고 있습니다: hermes로 채팅 → 세션이 raw/notes/_auto/에 수집됨 → Claude Code로 digest → 위키 소화. 제가 Discord에 던진 내용이 위키로 쌓이는 구조입니다.
세팅 중 만난 함정 하나
hermes config를 설정할 때 경로를 짧게 쓰면 안 됩니다. tool_search만 입력하면 config check에서 통과처럼 보이는데 실제로는 최상위에 엉뚱한 블록이 생기고 진짜 설정값은 안 바뀝니다. 전체 경로 tools.tool_search.search_default_limit처럼 써야 원하는 곳에 값이 들어갑니다. 직접 겪었습니다.
그리고 Discord 봇 토큰은 1개 = 인스턴스 1개입니다. 로컬에서 hermes를 띄운 채 서버에서도 켜면 둘이 충돌합니다. 서버에서 상시 운영한다면 로컬은 git 관리 전용으로 두고 절대 동시에 구동하지 않는 게 원칙입니다.
왜 이 구성이 작동하나
핵심은 “같은 second 볼트를 공유하면서도 역할이 겹치지 않는다”는 점입니다. hermes는 입구와 수집을, Claude Code는 정리와 편집을 담당합니다. 둘 사이를 git이 잇습니다. 서버에서 hermes가 세션을 push하면 노트북에서 pull 후 digest. 볼트는 하나인데 접근하는 주체가 역할별로 나뉜 구조입니다.
Discord를 이미 쓴다면, 그 채팅이 자동으로 위키에 쌓이게 만드는 건 hermes + second 구성으로 하루면 됩니다.
<- 이전 편: Discord·위키 루프 봇 구축기 배경: hermes를 Discord로 세팅한 이유 심화: 세컨드브레인 자동화 구성 · 에이전트 컨텍스트 끊김과 세컨드브레인 통합