AI Agent 2026.06.18

Hermes Agent Skills 심화 완전 가이드: SKILL.md에서 GEPA 자기 진화까지

2026년 초 Nous Research가 공개한 Hermes Agent는 두 달 만에 GitHub Star 16만을 넘겼으며, 핵심 철학은 "the agent that grows with you"입니다. 사용할수록 Agent가 사용자를 더 잘 이해합니다. 이를 뒷받침하는 것이 Skills(스킬) 시스템으로, 일회성 Prompt가 아니라 표준화·진화 가능·세션 간 지속되는 절차적 메모리입니다.

이미 Hermes를 배포한 개발자·AI 엔지니어를 대상으로 심화 전반을 다룹니다. ① Skills와 Memory·Prompt의 본질적 차이 및 Progressive Disclosure로 Token을 제어하는 방법, ② SKILL.md 형식·Skill Bundles·조건부 활성화·Tap 배포, ③ GEPA + DSPy 5단계 자기 진화와 커뮤니티 생태계. 읽은 뒤 스킬 자산을 독립적으로 작성·패키징·배포·진화할 수 있습니다.

01 Hermes Agent 스킬 시스템을 별도로 깊이 연구할 가치

입문 튜토리얼은 「어떻게 설치하는가」를, 심화는 「Agent를 어떻게 쓸수록 강하게 만드는가」를 다룹니다. Hermes Skills의 차별점은 네 가지입니다.

  • 온디맨드 로드: 활성화 전 Token 소비가 0이며 Progressive Disclosure로 비용을 제어합니다.
  • 오픈 표준: agentskills.io를 따르며 Hermes·Claude Code·Cursor에서 크로스 플랫폼 재사용이 가능합니다.
  • 조합 가능: Skill Bundles로 슬래시 명령 한 번에 전체 워크플로를 로드합니다.
  • 진화 가능: GEPA 알고리즘이 실행 궤적을 분석해 SKILL.md 텍스트를 자동 개선하며 모델 가중치는 건드리지 않습니다.

심화 사용자가 흔히 겪는 네 가지 pain point는 다음과 같습니다.

  • Token 팽창: 모든 SOP를 시스템 Prompt에 넣으면 매 세션마다 수천 Token이 낭비됩니다.
  • 스킬 오활성화: description이 모호하면 LLM이 무관한 상황에서 잘못된 스킬을 로드합니다.
  • 워크플로 단편화: PR 리뷰·TDD·배포를 각각 /skill-name으로 호출하면 비효율적입니다.
  • 팀 공유 불가: 스킬이 개인 디렉터리에 흩어지면 기기 변경·신규 온보딩 비용이 큽니다.

02 Skills·Memory·Prompt는 무엇이 다른가?

Skills vs Memory vs Prompt 비교
차원 일반 Prompt Memory(메모리) Skills(스킬)
지속성 현재 대화 세션 간 영구 세션 간 영구
로드 시점 매번 컨텍스트에 포함 매 세션 자동 주입 온디맨드 로드
Token 비용 매번 소비 작고 안정적 활성화 전 0
내용 유형 임의 의도 설명 사용자 선호·사실 절차적 단계
유지 주체 사용자 수동 Agent 자동 사용자 + Agent 모두
공유 가능성 불편 비공개 커뮤니티 Tap으로 배포

기억 암기: Prompt = 포스트잇(당회 유효), Memory = 메모장(영구 기록, 항상 손에), Skill = SOP 매뉴얼(단계별 절차, 필요할 때 펼침).

Skills와 MCP는 상호 보완합니다. MCP는 도구 인터페이스(예: DB 접근)를 제공하고, Skill은 Agent에게 해당 도구로 마이그레이션 등 작업을 올바르게 수행하는 방법을 가르칩니다.

03 SKILL.md 형식 심층 분석과 점진적 로드

모든 Hermes Skills는 agentskills.io 오픈 표준을 따릅니다. 기본 frontmatter 구조는 다음과 같습니다.

SKILL.md
---
name: my-skill
description: |
  Use when the user needs to [...].
version: 1.0.0
license: MIT
compatibility: Requires git, docker
allowed-tools: Bash(git:*) Read
metadata:
  hermes:
    tags: [devops, automation]
    category: software-development
    related_skills: [github-pr-workflow]
    requires_toolsets: [terminal]
    fallback_for_toolsets: [web]
---

# My Skill Title
## Overview / When to Use / Procedure / Common Pitfalls / Verification Checklist

권장 디렉터리 구조:

~/.hermes/skills/
my-category/my-skill/
├── SKILL.md              # core steps, recommend ≤500 lines
├── references/           # API refs, load on demand
├── templates/            # reusable templates
└── scripts/              # scripts Agent can execute directly
Progressive Disclosure 3단계 로드 메커니즘
레벨 내용 트리거 시점 Token 비용
Level 0 name + description 매 세션 시작, 모든 스킬 전체 스킬 합계 약 3K
Level 1 전체 SKILL.md 본문 /skill-name 또는 LLM 판단 필요 시 파일 길이에 따름
Level 2 references/ scripts/ 파일 실행 시 LLM 판단 필요 시 온디맨드, 파일 단위

작성 요점: description은 Level 0의 전부이므로 「무엇인가」보다 「언제 쓰는가」를 명확히 씁니다. SKILL.md에는 Overview·When to Use·Procedure·Common Pitfalls·Verification Checklist 다섯 섹션을 권장합니다. skills-ref validate ./my-skill로 형식 준수 여부를 검증할 수 있습니다.

04 Skill Bundles: 한 명령으로 전체 워크플로 실행

Skill Bundles는 Hermes 2026 신규 기능으로, 경량 YAML로 여러 스킬을 하나의 슬래시 명령에 묶습니다. /bundle-name 실행 시 나열된 스킬이 동시에 로드됩니다.

파일 위치: ~/.hermes/skill-bundles/<slug>.yaml

backend-dev.yaml
name: backend-dev
description: Full backend feature workflow — code review, TDD, and PR management.
skills:
  - github-code-review
  - test-driven-development
  - github-pr-workflow
instruction: |
  Always write failing tests first before implementation.
  Never push directly to main.

심화 시나리오: 연구원 워크플로는 arxiv·deep-research·plan·excalidraw를 묶고, MLOps 배포는 vllm·llama-cpp·github-pr-workflow·systematic-debugging를 묶을 수 있습니다.

우선순위 규칙: Bundle과 단일 Skill이 같은 이름이면 Bundle이 우선합니다. 미설치 Skill은 건너뛰며 오류 없이 누락을 알립니다. Bundle은 시스템 Prompt를 수정하지 않아 Prompt Cache가 무효화되지 않습니다.

CLI
hermes bundles create backend-dev \
  --skills github-code-review,test-driven-development,github-pr-workflow \
  --instruction "Always write failing tests first"

05 조건부 활성화: 스킬이 환경을 지능적으로 인식하게

metadata.hermes 아래 네 가지 활성화 규칙을 설정하면 도구 가용성에 따라 스킬이 자동으로 표시·숨김 처리됩니다.

조건부 활성화 필드와 동작
필드 동작 로직
requires_toolsets 나열한 toolset이 없으면 이 스킬 숨김
requires_tools 나열한 도구가 없으면 이 스킬 숨김
fallback_for_toolsets 나열한 toolset이 있으면 이 스킬 숨김(대안)
fallback_for_tools 나열한 도구가 있으면 이 스킬 숨김

대표 시나리오: DuckDuckGo 검색 스킬에 fallback_for_tools: [web_search]를 설정합니다. 사용자가 FIRECRAWL_KEY / BRAVE_SEARCH_KEY를 설정하면 유료 web_search가 활성화되고 DuckDuckGo는 자동 숨김되어 Token을 절약합니다. API 불가 시 대안이 자동으로 나타납니다.

플랫폼 인식: telegram-notify는 requires_toolsets: [messaging]platforms: [telegram, discord]를 설정할 수 있습니다. hermes skills TUI로 CLI·Telegram·Discord별 스킬을 독립적으로 켜고 끌 수 있습니다.

06 Skills Hub와 오픈소스 커뮤니티 생태계

공식 설치 채널:

hermes skills
hermes skills install official/research/arxiv
hermes skills install https://example.com/SKILL.md --name my-skill
hermes skills install github:openai/skills/k8s
hermes skills tap add github:my-org/my-skills
주목할 오픈소스 스킬 저장소
저장소 특징
awesome-hermes-skills 프로덕션급 큐레이션, Deep Research·MLOps·Apple 통합, 23개 스킬 GitHub Copilot 연동
hermeshub 커뮤니티 레지스트리, 보안 스캔 인증, API·마켓플레이스 지원
ai-agent-skills 191개 스킬·28개 카테고리, Hermes/Claude Code/Cursor 원클릭 설치
hermes-agent 공식 권위 소스, 내장 Skills·작성 규범 포함

agentskills.io 덕분에 스킬은 Hermes·Claude Code·Cursor·OpenCode 간 크로스 플랫폼 사용이 가능하며 자산이 단일 플랫폼에 묶이지 않습니다.

07 자체 Skill Tap 배포: 팀·커뮤니티 공유 6단계

GitHub 저장소를 Tap으로 쓰면 팀·커뮤니티가 스킬 세트를 구독할 수 있습니다. 권장 저장소 구조:

my-skills-tap/
my-skills-tap/
├── skills.sh.json          # category config (optional)
├── mlops/vllm-deploy/SKILL.md
├── research/paper-summarizer/SKILL.md
└── README.md
  1. 카테고리 기획: MLOps·Research 등 도메인별 디렉터리 구성, skills.sh.json으로 Hub 표시 그룹 제어.
  2. SKILL.md 작성: 스킬마다 독립 디렉터리, skills-ref validate로 검증.
  3. GitHub 저장소 푸시: 공개 또는 비공개(비공개는 Token 필요).
  4. 팀원 구독: hermes skills tap add github:your-org/your-skills-tap.
  5. 정기 업데이트: hermes skills tap update로 최신 스킬 pull.
  6. 버전 관리: ~/.hermes/skills/를 Git에 포함, 기기 간 git pull && hermes skills reset으로 동기화.
Tap management
hermes skills tap add github:your-org/private-skills --token $GH_TOKEN
hermes skills tap list
hermes skills tap update

08 Self-Evolving Skills: GEPA + DSPy로 스킬 자동 진화

GEPA(Genetic-Pareto Prompt Evolution)는 2026 ICLR Oral 논문이며 hermes-agent-self-evolution에 통합되어 있습니다. 핵심은 모델 가중치 미세조정 없이 실행 궤적 분석·변형 생성·다목적 Pareto 최적화로 스킬 텍스트를 개선하는 것입니다. 최적화 1회당 약 $2–10(API만, GPU 불필요).

5단계 진화 흐름: ① 실행 궤적 수집(SQLite), ② 반성적 실패 분석(실행 가능한 side information), ③ 타깃 변이(SKILL.md 변형 10–20개), ④ 다목적 Pareto 평가(성공률 × Token 효율 × 속도), ⑤ 수동 PR 리뷰 후 배포.

evolve_skill
export HERMES_AGENT_PATH=~/.hermes
python -m evolution.skills.evolve_skill \
    --skill github-code-review \
    --iterations 10 \
    --eval-source sessiondb

4대 안전 가드레일: 전체 테스트 스위트 100% 통과, Skills ≤ 15KB·도구 설명 ≤ 500자, Prompt 캐시 호환, 의미 보존 검사로 원래 목적 이탈 방지.

공식 5단계 진화 로드맵
단계 최적화 대상 상태
Phase 1 Skill 파일(SKILL.md) 구현 완료
Phase 2 도구 설명 계획 중
Phase 3 시스템 Prompt 조각 계획 중
Phase 4 도구 구현 코드 계획 중
Phase 5 지속 개선 루프(완전 자동) 계획 중

Skills는 agentskills.io를 따르므로 Claude Code 또는 Gemini CLI 궤적을 옵티마이저에 공급할 수 있습니다: --eval-source mixed --trace-dirs ~/.claude/traces,~/.hermes/sessions.

09 Plugin 스킬과 심화 작성 기법

플러그인은 스킬을 plugin:skill 네임스페이스로 묶습니다. 기본 skills_list에 나타나지 않으며 사용자가 명시적으로 호출할 때만 활성화되고, 플러그인 내 스킬은 서로 참조할 수 있습니다. skill_view("superpowers:writing-plans") 로드 시 같은 플러그인의 형제 스킬이 표시됩니다.

description이 활성화 정확도를 결정합니다: 「Helps with code」 같은 모호한 표현은 피하고 트리거 조건·제외 시나리오를 명시합니다.

Pitfalls가 품질 분수령입니다: 구체적 실패 패턴·근본 원인·수정 단계를 포함해야 합니다(예: CSS selector 취약성, GitHub API rate limit, 대형 diff Token 초과).

스크립트화: Procedure에서 scripts/ 실행 스크립트를 참조하고, 실패 시 references/manual-extract.md로 fallback합니다.

스킬 크기 제어 권장
크기 권장
< 500 lines 전부 SKILL.md에 유지
500–1000 lines 상세 자료는 references/로 이동
> 1000 lines 분할 강력 권장, 두 스킬로 나눌지 검토
> 15KB GEPA 한도 초과, 반드시 분할

Agent는 skill_manage로 스킬을 동적으로 patch·create할 수 있습니다. config.yamlskills.agent_writes_require_approval: true를 설정하면 수동 승인 게이트를 켭니다.

10 실전 사례: 기술 블로그 워크플로 Skills 설계

blog-workflow Bundle을 구성하면 SEO 조사·아웃라인 생성·코드 검증·이중 언어 검사·배포 스킬을 한 번에 로드합니다.

blog-workflow.yaml
name: blog-workflow
description: Full tech blog writing workflow.
skills:
  - seo-keyword-research
  - outline-generator
  - code-example-validator
  - bilingual-checker
  - publish-to-platform
instruction: |
  Always research SEO keywords before writing.
  Ensure all code examples are tested and runnable.
  Generate both Chinese and English title options.

커스텀 seo-keyword-research 스킬은 requires_toolsets: [web]를 설정하고, 흐름은 주제 식별 → 중국어 롱테일(「X 怎么用」「X 教程」) → 영어 롱테일(「X tutorial」「X vs Y」) → Juejin/Dev.to/HN 트렌드 교차 참조 → 주 키워드 3–5개 + 롱테일 10–15개 매트릭스 출력. 중·영 검색 습관이 다르므로 기술 용어 번역은 대상 플랫폼 기준으로 검증해야 합니다.

11 Hermes Agent Skills FAQ

  • Skills와 MCP의 차이는? Skills는 절차적 지식 문서, MCP는 도구 인터페이스이며 상호 보완합니다.
  • Skill을 수정했는데 왜 이전 버전이 쓰이나? 현재 세션에는 반영되지 않습니다. /reset으로 새 세션을 시작하거나 설치 시 --now를 사용합니다(Prompt Cache 무효화).
  • GEPA 진화는 안전한가? 4대 가드레일 + 수동 PR 리뷰가 있으나 각 diff는 여전히 review를 권장합니다.
  • Claude Code에서 재사용하려면? SKILL.md를 ~/.claude/skills/에 복사하거나 ai-agent-skills로 멀티 플랫폼 원클릭 설치.
  • 중국어 콘텐츠가 Token에 영향을 주나? 중국어 한 글자당 약 1–1.5 token. description은 영어 또는 중·영 이중 언어를 권장하며 LLM 매칭이 더 정확합니다.

추가 읽을거리: 공식 문서, 중국어 문서, GEPA 알고리즘, DSPy 프레임워크.

12 핵심 데이터와 JEXCLOUD 정리

  • GitHub Star: Hermes Agent 2026년 초 공개, 두 달 만에 16만 Star 돌파.
  • Level 0 Token: 전체 스킬 name+description 합계 약 3K Token/세션.
  • GEPA 1회 비용: 약 $2–10, 순수 API 호출, GPU 불필요.
  • GEPA 크기 한도: Skills ≤ 15KB, 도구 설명 ≤ 500자.
  • 커뮤니티 규모: kevinnft/ai-agent-skills 191개 스킬·28개 카테고리, hermeshub 166 Star·보안 스캔 포함.

Hermes Agent와 GEPA 진화 파이프라인을 돌리려면 7×24 온라인·저지연 macOS 호스트가 필요합니다. Raspberry Pi는 메모리 부족, 공유 VPS overselling은 장기 연결 끊김, 가정용 회선 jitter는 Skills 진화 궤적 수집과 Gateway 상시 운영을 약화시킵니다.

Hermes Gateway 안정 운영·sessiondb 궤적 지속 수집·GEPA 반복 실행이 필요한 프로덕션 환경에는 JEXCLOUD 다리전 베어메탈 Mac이 더 적합합니다. Apple Silicon 전용, 7×24 온라인, 월 단위 탄력 확장, 120초 노드 프로비저닝. 구성·가격은 JEXCLOUD 요금 페이지를 참고하세요.