스킬 시스템
anchor alias
anchor alias
anchor alias
anchor alias
스킬 시스템
스킬은 에이전트가 필요할 때 불러올 수 있는 온디맨드 지식 문서입니다. 점진적 공개 패턴을 따라 토큰 사용을 최소화하며, agentskills.io 오픈 표준과 호환됩니다.
모든 스킬은 **~/.hermes/skills/**에 존재하며 — 기본 디렉토리이자 진실의 출처입니다. 새로 설치할 경우, 번들된 스킬이 저장소에서 복사됩니다. 허브 설치 및 에이전트가 생성한 스킬도 여기로 들어갑니다. 에이전트는 모든 스킬을 수정하거나 삭제할 수 있습니다.
Hermes를 외부 스킬 디렉토리에도 지정할 수 있습니다 — 로컬 폴더와 함께 스캔되는 추가 폴더입니다. 자세한 내용은 아래의 외부 스킬 디렉토리를 참조하세요.
또한 보기:
기술 사용
설치된 모든 스킬은 자동으로 슬래시 명령으로 사용할 수 있습니다:
# In the CLI or any messaging platform:
/gif-search funny cats
/axolotl help me fine-tune Llama 3 on my dataset
/github-pr-workflow create a PR for the auth refactor
/plan design a rollout for migrating our auth provider
# Just the skill name loads it and lets the agent ask what you need:
/excalidraw
번들로 제공되는 plan 스킬은 좋은 예입니다. /plan [request]를 실행하면 스킬의 지침이 로드되어 필요할 경우 Hermes에게 컨텍스트를 검사하도록 하고, 작업을 실행하는 대신 마크다운 구현 계획을 작성하며, 결과를 활성 작업 공간/백엔드 작업 디렉토리를 기준으로 .hermes/plans/에 저장하도록 안내합니다.
자연스러운 대화를 통해 스킬과 상호작용할 수도 있습니다:
hermes chat --toolsets skills -q "What skills do you have?"
hermes chat --toolsets skills -q "Show me the axolotl skill"
점진적 공개
스킬은 토큰 효율적인 로딩 패턴을 사용합니다:
Level 0: skills_list() → [{name, description, category},...] (~3k tokens)
Level 1: skill_view(name) → Full content + metadata (varies)
Level 2: skill_view(name, path) → Specific reference file (varies)
에이전트는 실제로 필요할 때만 전체 스킬 콘텐츠를 로드합니다.
SKILL.md 형식
---
name: my-skill
description: Brief description of what this skill does
version: 1.0.0
platforms: [macos, linux] # Optional — restrict to specific OS platforms
metadata:
hermes:
tags: [python, automation]
category: devops
fallback_for_toolsets: [web] # Optional — conditional activation (see below)
requires_toolsets: [terminal] # Optional — conditional activation (see below)
config: # Optional — config.yaml settings
- key: my.setting
description: "What this controls"
default: "value"
prompt: "Prompt for setup"
---
# Skill Title
## When to Use
Trigger conditions for this skill.
## Procedure
1. Step one
2. Step two
## Pitfalls
- Known failure modes and fixes
## Verification
How to confirm it worked.
플랫폼별 기술
기술은 platforms 필드를 사용하여 특정 운영 체제로 제한될 수 있습니다:
| 가치 | 성냥 |
|---|---|
macos | macOS (다윈) |
linux | 리눅스 |
windows | 윈도우 |
platforms: [macos] # macOS only (e.g., iMessage, Apple Reminders, FindMy)
platforms: [macos, linux] # macOS and Linux
설정하면 해당 스킬은 호환되지 않는 플랫폼에서 시스템 프롬프트, skills_list(), 슬래시 명령어에서 자동으로 숨겨집니다. 생략하면 스킬은 모든 플랫폼에서 로드됩니다.
조건부 활성화 (대체 스킬)
스킬은 현재 세션에서 사용 가능한 도구에 따라 자동으로 자신을 표시하거나 숨길 수 있습니다. 이는 **대체 스킬(fallback skills)**에 가장 유용합니다 — 프리미엄 도구를 사용할 수 없을 때만 나타나야 하는 무료 또는 로컬 대안입니다.
metadata:
hermes:
fallback_for_toolsets: [web] # Show ONLY when these toolsets are unavailable
requires_toolsets: [terminal] # Show ONLY when these toolsets are available
fallback_for_tools: [web_search] # Show ONLY when these specific tools are unavailable
requires_tools: [terminal] # Show ONLY when these specific tools are available
| 필드 | 행동 |
|---|---|
fallback_for_toolsets | 나열된 도구 세트를 사용할 수 있을 때 스킬은 숨겨집니다. 도구가 없을 때 표시됩니다. |
fallback_for_tools | 같지만 도구 세트 대신 개별 도구를 확인합니다. |
requires_toolsets | 스킬은 나열된 도구 세트를 사용할 수 없을 때 숨겨집니다. 도구 세트가 있을 때는 표시됩니다. |
requires_tools | 같지만 개별 도구를 확인합니다. |
예시: 내장 duckduckgo-search 스킬은 fallback_for_toolsets: [web]을 사용합니다. FIRECRAWL_API_KEY가 설정되어 있으면 웹 도구 세트가 사용 가능하며 에이전트는 web_search을 사용합니다 — DuckDuckGo 스킬은 숨겨진 상태로 유지됩니다. API 키가 없으면 웹 도구 세트를 사용할 수 없으며 DuckDuckGo 스킬이 자동으로 대체 수단으로 나타납니다.
조건 필드가 없는 스킬은 이전과 동일하게 작동하며 항상 표시됩니다.
로드 시 보안 설정
스킬은 검색에서 사라지지 않고 필수 환경 변수를 선언할 수 있습니다:
required_environment_variables:
- name: TENOR_API_KEY
prompt: Tenor API key
help: Get a key from https://developers.google.com/tenor
required_for: full functionality
누락된 값을 만나면, Hermes는 해당 스킬이 실제로 로컬 CLI에서 로드될 때만 안전하게 값을 요청합니다. 설정을 건너뛰고 스킬을 계속 사용할 수 있습니다. 메시징 인터페이스는 채팅에서 비밀을 요청하지 않으며 대신 로컬에서 hermes setup 또는 ~/.hermes/.env 을 사용하라고 안내합니다.
한 번 설정되면, 선언된 환경 변수는 자동으로 execute_code 및 terminal 샌드박스로 전달됩니다 — 스킬의 스크립트는 $TENOR_API_KEY를 직접 사용할 수 있습니다. 스킬이 아닌 환경 변수의 경우, terminal.env_passthrough 설정 옵션을 사용하세요. 자세한 내용은 환경 변수 전달을 참조하세요.
스킬 설정
기술은 또한 config.yaml에 저장된 비밀이 아닌 구성 설정(경로, 환경 설정)을 선언할 수 있습니다:
metadata:
hermes:
config:
- key: myplugin.path
description: Path to the plugin data directory
default: "~/myplugin-data"
prompt: Plugin data directory path
설정은 config.yaml의 skills.config 아래에 저장됩니다. hermes config migrate는 구성되지 않은 설정을 요청하며, hermes config show는 이를 표시합니다. 스킬이 로드되면 해결된 구성 값이 컨텍스트에 주입되어 에이전트가 구성된 값을 자동으로 알 수 있습니다.
자세한 내용은 스킬 설정 및 스킬 생성 — 구성 설정을 참조하세요.
기술 디렉토리 구조
~/.hermes/skills/ # Single source of truth
├── mlops/ # Category directory
│ ├── axolotl/
│ │ ├── SKILL.md # Main instructions (required)
│ │ ├── references/ # Additional docs
│ │ ├── templates/ # Output formats
│ │ ├── scripts/ # Helper scripts callable from the skill
│ │ └── assets/ # Supplementary files
│ └── vllm/
│ └── SKILL.md
├── devops/
│ └── deploy-k8s/ # Agent-created skill
│ ├── SKILL.md
│ └── references/
├──.hub/ # Skills Hub state
│ ├── lock.json
│ ├── quarantine/
│ └── audit.log
└──.bundled_manifest # Tracks seeded bundled skills
외부 기술 디렉토리
Hermes 외부에서 기술을 유지하는 경우 — 예를 들어, 여러 AI 도구에서 사용하는 공유 ~/.agents/skills/ 디렉토리 — Hermes에게 해당 디렉토리도 스캔하도록 지시할 수 있습니다.
~/.hermes/config.yaml의 skills 섹션 아래에 external_dirs를 추가하세요:
skills:
external_dirs:
- ~/.agents/skills
- /home/shared/team-skills
- ${SKILLS_REPO}/skills
경로는 ~ 확장과 ${VAR} 환경 변수 대체를 지원합니다.
작동 원리
- 읽기 전용: 외부 디렉터리는 기술 검색을 위해서만 스캔됩니다. 에이전트가 기술을 생성하거나 편집할 때는 항상
~/.hermes/skills/에 작성됩니다. - 로컬 우선권: 동일한 스킬 이름이 로컬 디렉터리와 외부 디렉터리 모두에 존재하는 경우, 로컬 버전이 우선합니다.
- 완전 통합: 외부 스킬은 시스템 프롬프트 인덱스,
skills_list,skill_view, 그리고/skill-name슬래시 명령어로 나타나며 — 로컬 스킬과 다르지 않습니다. - 존재하지 않는 경로는 조용히 건너뜁니다: 설정된 디렉토리가 존재하지 않으면 Hermes는 오류 없이 이를 무시합니다. 모든 컴퓨터에 존재하지 않을 수 있는 선택적 공유 디렉토리에 유용합니다.
예시
~/.hermes/skills/ # Local (primary, read-write)
├── devops/deploy-k8s/
│ └── SKILL.md
└── mlops/axolotl/
└── SKILL.md
~/.agents/skills/ # External (read-only, shared)
├── my-custom-workflow/
│ └── SKILL.md
└── team-conventions/
└── SKILL.md
네 가지 기술 모두 기술 색인에 나타납니다. 로컬에서 my-custom-workflow이라는 새 기술을 만들면 외부 버전을 가립니다.
에이전트 관리 기술 (skill_manage 도구)
에이전트는 skill_manage 도구를 통해 자신의 스킬을 생성, 업데이트 및 삭제할 수 있습니다. 이것은 에이전트의 절차적 기억입니다 — 비사소한 워크플로를 알아내면, 향후 재사용을 위해 그 접근 방식을 스킬로 저장합니다.
에이전트가 스킬을 생성할 때
- 복잡한 작업(5개 이상의 도구 호출)을 성공적으로 완료한 후
- 오류나 막다른 길에 부딪혔을 때 작동하는 경로를 찾았을 때
- 사용자가 접근 방식을 수정했을 때
- 비사소한 작업 흐름을 발견했을 때
행동
| 행동 | 사용 용도 | 주요 매개변수 |
|---|---|---|
create | 처음부터 새로운 기술 | name, content (전체 SKILL.md), 선택적 category |
patch | 대상별 수정(권장) | name, old_string, new_string |
edit | 주요 구조 재작성 | name, content (전체 SKILL.md 교체) |
delete | 기술을 완전히 제거하다 | name |
write_file | 지원 파일 추가/업데이트 | name, file_path, file_content |
remove_file | 지원 파일 제거 | name, file_path |
patch 작업은 업데이트에 더 적합합니다 — 변경된 텍스트만 도구 호출에 나타나기 때문에 edit보다 토큰 효율이 더 높습니다.
기술 허브
온라인 레지스트리, skills.sh, 잘 알려진 스킬 엔드포인트 및 공식 선택적 스킬에서 스킬을 탐색, 검색, 설치 및 관리하세요.
일반 명령어
hermes skills browse # Browse all hub skills (official first)
hermes skills browse --source official # Browse only official optional skills
hermes skills search kubernetes # Search all sources
hermes skills search react --source skills-sh # Search the skills.sh directory
hermes skills search https://mintlify.com/docs --source well-known
hermes skills inspect openai/skills/k8s # Preview before installing
hermes skills install openai/skills/k8s # Install with security scan
hermes skills install official/security/1password
hermes skills install skills-sh/vercel-labs/json-render/json-render-react --force
hermes skills install well-known:https://mintlify.com/docs/.well-known/skills/mintlify
hermes skills install https://sharethis.chat/SKILL.md # Direct URL (single-file SKILL.md)
hermes skills install https://example.com/SKILL.md --name my-skill # Override name when frontmatter has none
hermes skills list --source hub # List hub-installed skills
hermes skills check # Check installed hub skills for upstream updates
hermes skills update # Reinstall hub skills with upstream changes when needed
hermes skills audit # Re-scan all hub skills for security
hermes skills uninstall k8s # Remove a hub skill
hermes skills reset google-workspace # Un-stick a bundled skill from "user-modified" (see below)
hermes skills reset google-workspace --restore # Also restore the bundled version, deleting your local edits
hermes skills publish skills/my-skill --to github --repo owner/repo
hermes skills snapshot export setup.json # Export skill config
hermes skills tap add myorg/skills-repo # Add a custom GitHub source
지원되는 허브 소스
| 출처 | 예시 | 노트 |
|---|---|---|
official | official/security/1password | Hermes와 함께 제공되는 선택적 기능. |
skills-sh | skills-sh/vercel-labs/agent-skills/vercel-react-best-practices | hermes skills search <query> --source skills-sh를 통해 검색할 수 있습니다. Hermes는 skills.sh 슬러그가 저장소 폴더와 다를 때 별칭 스타일의 스킬을 해결합니다. |
well-known | well-known:https://mintlify.com/docs/.well-known/skills/mintlify | 웹사이트의 /.well-known/skills/index.json에서 직접 제공되는 기술. 사이트 또는 문서 URL을 사용하여 검색하세요. |
url | https://sharethis.chat/SKILL.md | 단일 파일 SKILL.md에 대한 직접 HTTP(S) URL. 이름 해석: 프론트매터 → URL 슬러그 → 인터랙티브 프롬프트 → --name 플래그. |
github | openai/skills/k8s | 직접 GitHub 저장소/경로 설치 및 사용자 정의 탭. |
clawhub, lobehub, claude-marketplace | 출처별 식별자 | 커뮤니티 또는 마켓플레이스 통합. |
통합 허브 및 등록소
Hermes는 현재 이러한 스킬 생태계 및 검색 소스와 통합됩니다:
1. 공식 선택 기술 (official)
이들은 Hermes 리포지토리 자체에서 관리되며 내장된 신뢰와 함께 설치됩니다.
- 카탈로그: 공식 선택 기술 카탈로그
- 저장소의 소스:
optional-skills/ - 예:
hermes skills browse --source official
hermes skills install official/security/1password
2. skills.sh (skills-sh)
이것은 Vercel의 공개 스킬 디렉토리입니다. Hermes는 이를 직접 검색하고, 스킬 상세 페이지를 확인하며, 별칭 스타일의 슬러그를 해결하고, 기본 소스 저장소에서 설치할 수 있습니다.
- 디렉토리: skills.sh
- CLI/도구 저장소: vercel-labs/skills
- 공식 Vercel 스킬 저장소: vercel-labs/agent-skills
- 예:
hermes skills search react --source skills-sh
hermes skills inspect skills-sh/vercel-labs/json-render/json-render-react
hermes skills install skills-sh/vercel-labs/json-render/json-render-react --force
3. 잘 알려진 기술 엔드포인트 (well-known)
이것은 /.well-known/skills/index.json을 게시하는 사이트에서의 URL 기반 검색입니다. 단일 중앙 허브가 아니라 — 웹 검색 규약입니다.
- 예제 라이브 엔드포인트: Mintlify 문서 스킬 색인
- 참조 서버 구현: vercel-labs/skills-handler
- 예:
hermes skills search https://mintlify.com/docs --source well-known
hermes skills inspect well-known:https://mintlify.com/docs/.well-known/skills/mintlify
hermes skills install well-known:https://mintlify.com/docs/.well-known/skills/mintlify
4. 직접 GitHub 기술 (github)
Hermes는 GitHub 저장소 및 GitHub 기반 탭에서 직접 설치할 수 있습니다. 이는 이미 저장소/경로를 알고 있거나 자신만의 맞춤 소스 저장소를 추가하고 싶을 때 유용합니다.
기본 탭(설정 없이 찾아볼 수 있음):
hermes skills install openai/skills/k8s
hermes skills tap add myorg/skills-repo
5. 클로우허브 (clawhub)
커뮤니티 소스로 통합된 제3자 기술 마켓플레이스.
- 사이트: clawhub.ai
- Hermes 소스 ID:
clawhub
6. Claude 마켓플레이스 스타일 리포 (claude-marketplace)
Hermes는 Claude 호환 플러그인/마켓플레이스 매니페스트를 게시하는 마켓플레이스 저장소를 지원합니다.
알려진 통합 소스에는 다음이 포함됩니다:
Hermes 소스 ID: claude-marketplace
7. LobeHub (lobehub)
Hermes는 LobeHub의 공개 카탈로그에서 에이전트 항목을 검색하고 설치 가능한 Hermes 스킬로 변환할 수 있습니다.
- 사이트: LobeHub
- 공공 에이전트 색인: chat-agents.lobehub.com
- 백업 저장소: lobehub/lobe-chat-agents
- Hermes 소스 아이디:
lobehub
8. 직접 URL (url)
단일 파일 SKILL.md를 HTTP(S) URL에서 직접 설치합니다 — 작성자가 자신의 사이트에서 스킬을 호스팅할 때 유용합니다(허브 목록 없음, 입력할 GitHub 경로 없음). Hermes는 URL을 가져와서 YAML 프론트매터를 파싱하고, 보안 검사를 수행한 후 설치합니다.
- Hermes 소스 ID:
url - 식별자: URL 자체 (접두사 필요 없음)
- 범위: **단일 파일
SKILL.md**만 해당.references/또는scripts/가 포함된 다중 파일 스킬은 매니페스트가 필요하며 위의 다른 소스 중 하나를 통해 게시해야 합니다.
hermes skills install https://sharethis.chat/SKILL.md
hermes skills install https://example.com/my-skill/SKILL.md --category productivity
이름 확인, 순서대로:
- SKILL.md YAML 프론트매터의
name:필드(권장 — 잘 작성된 모든 스킬에는 하나가 있음). - URL 경로에서 상위 디렉토리 이름(예:
.../my-skill/SKILL.md→my-skill, 또는.../my-skill.md→my-skill), 유효한 식별자인 경우(^[a-z][a-z0-9_-]*URL 경로에서 상위 디렉토리 이름(예:.../my-skill/SKILL.md→my-skill, 또는.../my-skill.md→my-skill`), 유효한 식별자인 경우(). - TTY가 있는 터미널에서의 인터랙티브 프롬프트.
- 비대화형 인터페이스(즉, TUI 내의
/skills install슬래시 명령, 게이트웨이 플랫폼, 스크립트)에서는--name오버라이드를 가리키는 명확한 오류가 발생합니다.
# Frontmatter has no name and the URL slug is unhelpful — supply one:
hermes skills install https://example.com/SKILL.md --name sharethis-chat
# Or inside a chat session:
/skills install https://example.com/SKILL.md --name sharethis-chat
신뢰 수준은 항상 community입니다 — 다른 모든 소스와 동일한 보안 검사가 실행됩니다. URL은 설치 식별자로 저장되므로 hermes skills update은 새로 고침하려고 할 때 동일한 URL에서 자동으로 다시 가져옵니다.
보안 스캐닝 및 --force
허브에 설치된 모든 스킬은 데이터 유출, 프롬프트 인젝션, 파괴적인 명령, 공급망 신호 및 기타 위협을 검사하는 보안 스캐너를 거칩니다.
hermes skills inspect... 이제 사용 가능한 경우 상류 메타데이터도 표시합니다:
- 리포지토리 URL
- skills.sh 상세 페이지 URL
- 설치 명령
- 주간 설치
- 상류 보안 감사 상태
- 잘 알려진 인덱스/엔드포인트 URL
타사 기능을 검토하고 위험하지 않은 정책 차단을 무시하려는 경우 --force을 사용하세요:
hermes skills install skills-sh/anthropics/skills/pdf --force
중요한 행동:
--force는 주의/경고 스타일 발견에 대한 정책 차단을 무시할 수 있습니다.--force은dangerous검사 판정을 **무시하지 않습니다.- 공식 선택적 스킬(
official/...)은 내장 신뢰로 처리되며 서드파티 경고 패널이 표시되지 않습니다.
신뢰 수준
| 레벨 | 출처 | 정책 |
|---|---|---|
builtin | Hermes로 배송 | 항상 신뢰받는 |
official | 저장소의 optional-skills/ | 내장 신뢰, 제3자 경고 없음 |
trusted | 신뢰할 수 있는 레지스트리/저장소 예: openai/skills, anthropics/skills, huggingface/skills | 커뮤니티 자료보다 더 허용적인 정책 |
community | 기타 모든 것(skills.sh, 잘 알려진 엔드포인트, 맞춤 GitHub 저장소, 대부분의 마켓플레이스) | 위험하지 않은 발견은 --force로 무시할 수 있으며; dangerous 판정은 계속 차단됩니다 |
라이프사이클 업데이트
허브는 이제 설치된 스킬의 상류 사본을 다시 확인할 수 있을 만큼 충분한 출처를 추적합니다:
hermes skills check # Report which installed hub skills changed upstream
hermes skills update # Reinstall only the skills with updates available
hermes skills update react # Update one specific installed hub skill
이것은 드리프트를 감지하기 위해 저장된 소스 식별자와 현재 상류 번들 콘텐츠 해시를 사용합니다.
스킬 허브 운영은 GitHub API를 사용하며, 인증되지 않은 사용자의 경우 시간당 60개의 요청 제한이 있습니다. 설치 또는 검색 중에 요청 제한 오류가 발생하면, .env 파일에서 GITHUB_TOKEN 를 설정하여 시간당 5,000개의 요청으로 제한을 늘릴 수 있습니다. 오류 메시지에는 이러한 상황이 발생했을 때 실행 가능한 힌트가 포함되어 있습니다.
커스텀 스킬 탭 게시
팀, 조직 또는 공개적으로 선별된 기술 세트를 공유하고 싶다면, 이를 **탭(tap)**으로 게시할 수 있습니다: 다른 Hermes 사용자가 hermes skills tap add <owner/repo>로 추가하는 GitHub 리포지토리입니다. 서버도, 레지스트리 가입도, 릴리스 파이프라인도 필요 없습니다. 단지 SKILL.md 파일들이 있는 디렉토리만 있으면 됩니다.
저장소 구조
탭(tap)은 다음과 같이 구성된 모든 GitHub 저장소(공개 또는 비공개 — 비공개 저장소는 GITHUB_TOKEN 필요)입니다:
owner/repo
├── skills/ # default path; configurable per-tap
│ ├── my-workflow/
│ │ ├── SKILL.md # required
│ │ ├── references/ # optional supporting files
│ │ ├── templates/
│ │ └── scripts/
│ ├── another-skill/
│ │ └── SKILL.md
│ └── third-skill/
│ └── SKILL.md
└── README.md # optional but helpful
규칙:
- 각 스킬은 탭의 루트 경로(기본값
skills/) 아래에 자체 디렉토리에 존재합니다. - 디렉토리 이름이 스킬의 설치 슬러그가 됩니다.
- 각 스킬 디렉토리는 표준 SKILL.md 프론트매터를 포함한
SKILL.md를 포함해야 합니다 (name,description, 선택 사항인metadata.hermes.tags,version,author,platforms,metadata.hermes.config). SKILL.md설치 시references/,templates/,scripts/,assets/와 같은 하위 디렉토리도 함께 다운로드됩니다.- 디렉토리 이름이
.또는_로 시작하는 기술은 무시됩니다.
Hermes는 탭 경로의 모든 하위 디렉토리를 나열하고 각 디렉토리를 SKILL.md로 조사하여 스킬을 발견합니다.
최소 탭 예제
my-org/hermes-skills
└── skills/
└── deploy-runbook/
└── SKILL.md
``skills/deploy-runbook/SKILL.md`:
```markdown
---
name: deploy-runbook
description: Our deployment runbook — services, rollback, Slack channels
version: 1.0.0
author: My Org Platform Team
metadata:
hermes:
tags: [deployment, runbook, internal]
---
# Deploy Runbook
Step 1:...
그것을 GitHub에 푸시한 후, 어떤 Hermes 사용자든 구독하고 설치할 수 있습니다:
hermes skills tap add my-org/hermes-skills
hermes skills search deploy
hermes skills install my-org/hermes-skills/deploy-runbook
비기본 경로
당신의 기술이 skills/ 아래에 있지 않다면 (기존 프로젝트에 skills/ 하위 트리를 추가할 때 흔함), ~/.hermes/.hub/taps.json에서 탭 항목을 편집하세요:
{
"taps": [
{"repo": "my-org/platform-docs", "path": "internal/skills/"}
]
}
``hermes skills tap add` CLI는 새로운 탭을 기본적으로 `path: "skills/"`로 설정합니다; 다른 경로가 필요하면 파일을 직접 편집하세요. `hermes skills tap list`는 탭별로 실제 경로를 보여줍니다.
#### 개별 기술을 직접 설치하기(탭 추가 없이) \{#non-default-paths}
사용자는 전체 저장소를 탭으로 추가하지 않고도 공개 GitHub 저장소에서 단일 스킬을 설치할 수 있습니다:
```bash
hermes skills install owner/repo/skills/my-workflow
사용자에게 전체 레지스트리에 구독하도록 요청하지 않고 하나의 기술만 공유하고 싶을 때 유용합니다.
탭에 대한 신뢰 수준
새 탭은 기본적으로 community 신뢰가 할당됩니다. 거기서 설치된 스킬은 표준 보안 검사를 거치며, 처음 설치 시 제3자 경고 패널이 표시됩니다. 조직이나 널리 신뢰받는 출처가 더 높은 신뢰를 받으려면 tools/skills_hub.py의 TRUSTED_REPOS에 해당 저장소를 추가하세요 (Hermes 코어 PR 필요).
탭 관리
hermes skills tap list # show all configured taps
hermes skills tap add myorg/skills-repo # add (default path: skills/)
hermes skills tap remove myorg/skills-repo # remove
달리기 세션 중:
/skills tap list
/skills tap add myorg/skills-repo
/skills tap remove myorg/skills-repo
탭은 필요할 때 생성되는 ~/.hermes/.hub/taps.json에 저장됩니다.
번들된 스킬 업데이트 (hermes skills reset)
Hermes는 저장소 안의 skills/에 번들로 제공되는 스킬 세트와 함께 제공됩니다. 설치 시와 매 hermes update마다 동기화 과정에서 해당 스킬들을 ~/.hermes/skills/로 복사하고, 각 스킬 이름을 동기화 당시의 콘텐츠 해시(원본 해시)에 매핑하는 매니페스트를 ~/.hermes/skills/.bundled_manifest에 기록합니다.
각 동기화 시, Hermes는 로컬 복사본의 해시를 다시 계산하고 이를 원본 해시와 비교합니다:
- 변경 없음 → 업스트림 변경 사항을 안전하게 가져오고, 새 번들 버전을 복사하고, 새로운 원본 해시를 기록합니다.
- 변경됨 → 사용자가 수정한 것으로 처리되어 영원히 건너뛰므로, 여러분의 편집 내용이 결코 덮어쓰이지 않습니다.
보호 기능은 좋지만, 한 가지 날카로운 단점이 있습니다. 번들된 스킬을 편집한 후, 나중에 변경 사항을 포기하고 단순히 ~/.hermes/hermes-agent/skills/에서 복사-붙여넣기로 번들된 버전으로 돌아가고 싶다면, 매니페스트에는 여전히 마지막으로 성공적으로 동기화가 실행될 때의 이전 원본 해시가 남아 있습니다. 새로 복사-붙여넣은 내용(현재 번들 해시)은 그 오래된 원본 해시와 일치하지 않기 때문에 동기화가 계속 사용자 수정으로 표시합니다.
hermes skills reset 은 탈출구입니다:
# Safe: clears the manifest entry for this skill. Your current copy is preserved,
# but the next sync re-baselines against it so future updates work normally.
hermes skills reset google-workspace
# Full restore: also deletes your local copy and re-copies the current bundled
# version. Use this when you want the pristine upstream skill back.
hermes skills reset google-workspace --restore
# Non-interactive (e.g. in scripts or TUI mode) — skip the --restore confirmation.
hermes skills reset google-workspace --restore --yes
같은 명령어가 채팅에서도 슬래시 명령어로 작동합니다:
/skills reset google-workspace
/skills reset google-workspace --restore
각 프로필은 자신의 .bundled_manifest를 자신의 HERMES_HOME 아래에 가지고 있으므로, hermes -p coder skills reset <name>는 해당 프로필에만 영향을 미칩니다.
슬래시 명령어 (채팅 내)
모든 동일한 명령은 /skills 에서 작동합니다:
/skills browse
/skills search react --source skills-sh
/skills search https://mintlify.com/docs --source well-known
/skills inspect skills-sh/vercel-labs/json-render/json-render-react
/skills install openai/skills/skill-creator --force
/skills check
/skills update
/skills reset google-workspace
/skills list
공식 선택적 스킬은 여전히 official/security/1password 및 official/migration/openclaw-migration와 같은 식별자를 사용합니다.