Hermes Agent는 Nous Research가 공개한 오픈소스 개인 AI 에이전트입니다. 특정 IDE 안에서만 움직이는 코딩 도구가 아니라, 내 컴퓨터나 서버에서 계속 실행되면서 LLM·터미널·파일·메신저·예약 작업을 하나의 흐름으로 연결합니다.
제가 이 도구에 관심을 가진 이유는 단순합니다. 밖에서는 Telegram으로 지시하고, 집의 컴퓨터는 문서와 코드를 만들고, 결과는 Git과 Obsidian에 쌓는 개인용 자동화 서버를 만들고 싶었습니다. 이 글은 그 목적에 맞춘 짧은 소개와 macOS 터미널 기준의 Hermes Agent 설치 방법입니다.
Hermes Agent가 개인 서버처럼 느껴지는 이유
OpenClaw가 주목받은 이유도 모델 하나의 성능 때문만은 아니었습니다. LLM을 실제 도구와 연결하고, cron으로 반복 작업을 돌리고, Telegram 같은 메신저를 입구로 만드는 구조가 강력했습니다. Hermes도 같은 범주의 장점을 제공하면서 세션 검색, 기억, 스킬 생성과 개선, 하위 에이전트, 다양한 실행 백엔드를 하나의 런타임에 묶습니다.
제가 실제로 중요하게 보는 핵심은 세 가지입니다.
- LLM 연동: OpenAI Codex, Nous Portal, OpenRouter, Anthropic API, 로컬 모델 등에서 원하는 provider를 선택할 수 있습니다.
- Hermes cron: “매일 오전 9시에 새 문서를 만들고 Telegram으로 알려줘” 같은 반복 작업을 자연어 또는 cron 표현식으로 등록합니다.
- Hermes Telegram: 휴대폰 메신저에서 지시하고 결과 파일과 이미지를 다시 받을 수 있습니다.
이 구조는 OpenAI Codex 같은 모델 실행 환경을 항상 켜진 개인 워커로 바꿉니다. 모델이 두뇌라면 Hermes는 세션, 도구, 일정, 전달 경로를 관리하는 운영체제에 가깝습니다.
제가 Hermes로 만들고 싶은 작업 흐름
첫째는 자동화 문서 생산입니다. 외부에서 주제를 던지면 집의 에이전트가 리서치 초안, 회의 정리, 운영 문서를 만들고 Git 저장소에 남깁니다. 결과 폴더를 Obsidian vault로 사용하면 생산물이 자연스럽게 개인 wiki가 됩니다.
둘째는 자동화 코드 생산입니다. 메신저에서 수정 범위를 지시하고, 에이전트가 저장소를 열어 코드를 작성하고 테스트한 뒤 Git으로 공유하게 합니다. 다만 AI 코딩 결과는 자동 커밋보다 diff·테스트·권한 범위를 검토하는 게 먼저입니다.
셋째는 이미지 생산입니다. 공식 문서상 OpenAI Codex 인증은 Hermes의 image_generate 백엔드로 사용할 수 있습니다. Telegram에서 이미지를 요청하고 생성 파일을 저장한 뒤 Git으로 공유하는 흐름을 만들 수 있습니다. 이미지 URL은 만료될 수 있으므로 저장소에 쓸 결과는 로컬 파일로 고정하고 커밋하는 편이 안전합니다.
Hermes Agent 설치와 GPT 구독 연결
아래 과정은 macOS 터미널 기준입니다. 설치 스크립트를 실행하기 전에 공식 저장소와 URL을 다시 확인하는 습관을 권합니다. 원격 스크립트를 바로 셸에 전달하는 방식이 불편하다면 먼저 내려받아 내용을 읽고 실행해도 됩니다.
1. Hermes Agent 설치
curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash
source ~/.zshrc
hermes --version
설치 후에는 곧바로 메신저를 붙이지 말고 로컬 대화가 정상인지 먼저 확인합니다.
hermes model
hermes
최근 설치 과정에서는 Nous Portal 구독 페이지가 먼저 보일 수 있습니다. Portal은 여러 모델과 웹 검색·이미지·음성·브라우저 도구를 한 구독으로 제공하는 권장 경로이지 Hermes 자체의 필수 요금제가 아닙니다. 별도 Portal을 쓰지 않을 생각이라면 그 가입 흐름을 건너뛰고 hermes model에서 보유한 LLM provider를 선택하면 됩니다.
2. OpenAI Codex OAuth 연결
현재 공식 문서는 ChatGPT Plus/Pro 계정의 OpenAI Codex OAuth를 지원합니다. 가장 쉬운 방법은 설정 메뉴에서 OpenAI Codex를 선택하는 것입니다.
hermes model
인증만 새로 추가하려면 다음 명령을 사용할 수 있습니다.
hermes auth add openai-codex
터미널에 기기 인증 URL과 코드가 나타나면 브라우저에서 URL을 열고 같은 ChatGPT 계정으로 로그인한 뒤 코드를 승인합니다. Hermes는 인증 결과를 ~/.hermes/auth.json에 저장합니다. 기존 Codex CLI의 ~/.codex/auth.json을 가져올 수도 있지만 두 저장소는 별개이므로, 문제가 생기면 Hermes 명령으로 다시 인증하는 편이 확인하기 쉽습니다.
hermes model
hermes
저는 Claude 구독 연동은 성공하지 못했고 현재 GPT 구독으로 사용하고 있습니다. 공식 조건을 확인해 보니 Anthropic OAuth는 Claude Max에 extra usage credits까지 있어야 하며 Claude Pro는 이 경로를 지원하지 않습니다. 방법을 몰라 실패했다고만 생각했지만, 구독 등급과 별도 사용 크레딧 조건부터 확인해야 합니다. API 키를 쓰면 가능하지만 구독과 별도의 종량제 비용입니다.
3. 이미지 생성 도구 확인
OpenAI Codex 인증을 마친 뒤 도구 설정에서 이미지 생성을 활성화합니다. 버전에 따라 대화형 메뉴 구성이 달라질 수 있으므로 고정된 설정 파일을 직접 복사하기보다 현재 CLI의 선택지를 따르는 편이 안전합니다.
hermes tools
도구 목록에서 Image Generation과 OpenAI Codex backend를 선택한 뒤 Hermes 대화에서 간단히 시험합니다.
Generate a photorealistic image of a small home AI server on a clean desk.
생성 결과를 Git으로 관리하려면 “프로젝트의 img/ 폴더에 저장하고 상태를 확인하라”처럼 대상 경로까지 명시합니다. 에이전트에 push 권한을 줄 때는 저장소와 브랜치를 제한하고 비밀 파일이 추적되지 않는지도 확인해야 합니다.
Telegram과 cron, 로그 연결
1. Telegram bot 만들기
Telegram에서 @BotFather를 열어 /newbot을 실행하고 bot token을 발급받습니다. 토큰은 비밀번호와 같으므로 글, Git, 스크린샷에 남기면 안 됩니다. 자신의 숫자 user ID는 @userinfobot에서 확인할 수 있습니다.
Hermes의 대화형 설정을 실행합니다.
hermes gateway setup
Telegram을 선택하고 bot token과 허용할 숫자 user ID를 입력합니다. 직접 설정할 때는 ~/.hermes/.env에 다음 값을 두지만, 가능하면 wizard를 사용하는 편이 실수를 줄입니다.
TELEGRAM_BOT_TOKEN=YOUR_BOT_TOKEN
TELEGRAM_ALLOWED_USERS=YOUR_NUMERIC_USER_ID
gateway를 백그라운드 서비스로 시작하고 상태를 확인합니다.
hermes gateway start
hermes gateway status
기본 polling 방식은 집 컴퓨터에서 Telegram 쪽으로 연결하므로 공유기의 포트포워딩이 필요하지 않습니다. 허용 사용자 목록을 비우거나 전체 공개로 두면 타인이 내 파일과 터미널 도구에 접근할 수 있으므로 반드시 본인 ID만 허용합니다.
2. cron 자동화 등록
Hermes cron은 대화 안에서도 만들 수 있습니다.
/cron add "every day at 9am" "Summarize yesterday's project changes and send the result to Telegram."
터미널에서는 다음처럼 등록하고 확인합니다.
hermes cron create "every day at 9am" \
"Summarize yesterday's project changes and send the result to Telegram."
hermes cron list
cron 작업은 현재 대화의 연장이 아니라 새로운 에이전트 세션에서 실행됩니다. 따라서 “어제 작업 정리해줘”보다 저장소 경로, 읽을 파일, 출력 위치, 전달 채널, 실패 조건을 프롬프트 안에 모두 적어야 합니다. provider나 모델을 바꾸면 무인 작업이 예상 밖의 유료 모델을 쓰지 않도록 실행이 중단될 수 있으니, 변경 후 cron의 provider·model도 다시 확인합니다.
3. 외부 작업을 로그에서 찾기
Hermes를 직접 실행한 터미널 대화와 Telegram gateway, cron 작업은 별도의 세션입니다. 휴대폰에서 시킨 일이 현재 터미널 화면에 나타나지 않는 것은 정상입니다. 외부 작업의 흐름은 hermes logs로 확인합니다.
hermes logs gateway --lines 100
hermes logs gateway --follow
hermes logs agent --since 1h
hermes logs errors --level ERROR
hermes logs list
Telegram 연결 문제는 gateway, 모델 호출과 도구 실행은 agent, 실패만 빠르게 볼 때는 errors가 유용합니다. 특정 세션 ID를 알고 있다면 --session 필터를 추가합니다.
집에 항상 켜진 맥 미니를 둘 때 주의할 점
저에게 Hermes는 앱보다 “나만의 서버”에 가깝습니다. 집에 있는 컴퓨터가 꺼지거나 잠들어 네트워크가 끊기면 Telegram 응답과 cron도 멈춥니다. 전력 소비가 낮고 조용하며 macOS 터미널과 Git 환경을 그대로 쓸 수 있는 맥 미니가 이 용도에 잘 맞습니다. 다만 최적이라는 판단은 제 작업 방식 기준이며, 공식적으로는 Linux 서버·Docker·VPS에서도 실행할 수 있습니다.
공유기 뒤의 집 PC에 SSH로 들어가 로그를 볼 수는 있습니다. 하지만 인터넷에 22번 포트를 그대로 포워딩하는 방식은 공격 표면을 늘리고 IP 변경과 방화벽 관리도 귀찮습니다. 가능하면 Tailscale 같은 사설 VPN, SSH 키 인증, 허용 IP 제한을 사용하고 비밀번호 로그인을 끕니다. Hermes dashboard도 공식 문서가 기본적으로 localhost 또는 신뢰 네트워크에서만 사용하라고 경고하므로 인증 없이 외부에 공개하면 안 됩니다.
실제로는 외부에서 터미널에 자주 접속하지 않아도 됩니다. Telegram으로 작업을 지시하고, hermes logs gateway --follow와 hermes logs agent --since 1h를 문제 발생 때만 확인하며, 결과는 Git과 Obsidian에서 검토하는 흐름이 편합니다. 여기에 LLM 모델을 바꿀 수 있는 구조까지 더해지면 특정 서비스에 잠기지 않는 개인 자동화 기반이 됩니다.
Hermes Agent의 장점은 화려한 채팅 화면이 아닙니다. 집의 컴퓨터, GPT 구독, Telegram, cron, Git과 개인 wiki를 이어서 밖에서도 지시할 수 있는 작은 생산 시스템으로 만든다는 점입니다. 처음에는 로컬 대화 하나를 성공시키고, 그다음 Telegram, 마지막으로 cron과 자동 push를 붙이는 순서가 가장 안전합니다.

댓글 없음:
댓글 쓰기