Hermes Skills Hub: Skill 검사, 설치, 활성화와 작업 검증 방법
Hermes Skills Hub에서 Skill을 검색하고 inspect한 뒤 보안 scan을 읽고 설치하며, 새 session 또는 chat 전용 --now로 활성화하는 전체 절차입니다. ascii-art 실제 작업을 저장하고 검증하며, Skill이 보이지 않거나 자연어로 trigger되지 않는 문제도 단계별로 진단합니다.
목차

Hermes Skill은 필요할 때 불러오는 작업 절차이며, 모든 대화의 context에 계속 남아 있어야 하는 플러그인이 아닙니다. 문제는 이름을 찾은 뒤에 자주 생깁니다. 설치 전 내용을 읽지 않거나, security report를 건너뛰거나, 이전 session을 계속 사용하거나, 검증 가능한 결과 없이 자연어 trigger만 기대하는 경우입니다.
이 글은 공식 optional Skill인 ascii-art로 전체 흐름을 보여 줍니다. 결과를 눈으로 볼 수 있고 text file로 저장한 뒤 짧은 script로 제한을 검사할 수 있어 첫 acceptance test에 적합합니다. 명령과 동작은 2026년 10월 10일에 연 공식 Hermes 문서와 repository를 기준으로 확인했습니다. Version에 따라 출력은 달라질 수 있으므로, 실제 Hermes가 반환한 identifier와 scan report를 우선하세요.
전체 흐름
| 단계 | 작업 | 통과 기준 |
|---|---|---|
| 검색 | Hub를 검색하고 전체 identifier 복사 | source와 대상이 명확하고 path를 추측하지 않음 |
| 검사 | inspect로 metadata와 잘린 SKILL.md preview를 본 뒤 같은 source/version의 전체 files 확인 | 여섯 항목이 모두 확인되며, 불명확하면 중단 |
| 설치 | Copy 전 사람의 판단이 필요하면 interactive CLI 사용; chat에서는 command 자체가 consent | 두 경로의 post-scan confirmation 경계를 이해 |
| 활성화 | 새 session 사용; exact bundle을 검토한 뒤에만 chat --now | session이 slash command 인식 |
| 검증 | 실제 source/path 확인; Hub 등록 및 미shadow install만 audit | 실제 load되는 copy를 검토함 |
| 인수 | output 저장 후 제한 측정 | file이 존재하고 contract 충족 |
1. 준비하고 search와 inspect 수행
hermes skills ...를 실행할 수 있는 Hermes 환경과 terminal이 필요합니다. 첫 설치는 account, secret, 외부 system write 권한이 필요 없는 공식 Skill로 시작하세요.
hermes skills list
hermes skills search "ascii art"
이미 ascii-art가 list에 있어도 Hub install이라고 가정하거나 예제를 맞추려고 덮어쓰지 마세요. 표시된 source와 effective path를 확인합니다. Project의 .hermes/skills/ 또는 .agents/skills/에 있는 같은 이름 copy는 global copy보다 우선합니다. 이후 audit가 실제 /ascii-art content를 다루는 경우는 Hub에 등록되고 상위 copy에 shadow되지 않았을 때뿐입니다. 그 외에는 active copy의 전체 files를 읽거나, Hub install/audit 흐름을 끝까지 연습하려면 다른 공식 optional Skill을 고릅니다. Search 결과의 전체 identifier를 사용하고, 현재 path official/creative/ascii-art보다 실제 source/version을 기준으로 하세요.
hermes skills inspect official/creative/ascii-art
inspect는 read-only이지만 전체 file review가 아닙니다. 공식 구현은 SKILL.md의 앞 50줄만 보여 줍니다. 설치 전에 실제 source와 version에서 전체 SKILL.md와 참조된 support files를 여세요. 이 글에서 고정한 ASCII Art Skill 전체 파일은 322줄이며, network call, sudo 설치, custom fallback은 preview 뒤에 있습니다. Source, platforms, dependencies, network, files/commands, configuration/credentials 여섯 항목 중 하나라도 전체 files로 확인되지 않으면 중단하세요. 아래 task는 package 설치와 network를 금지하고 direct fallback을 요구합니다.
2. Security scan을 읽고 설치
hermes skills install official/creative/ascii-art
공식 구현은 bundle을 먼저 quarantine에 받고 scanner를 실행합니다. Scan policy가 허용하면 일반 interactive CLI는 local directory로 copy하기 전에 confirmation을 요청합니다. Findings를 읽고 copy 전에 사람이 계속할지 결정해야 한다면 이 경로를 사용하세요.
성공 표시만 보지 말고 verdict, 각 finding의 file과 risk type을 읽어 Skill 목적과 맞는지 확인하세요. High-risk 또는 설명되지 않는 동작이 남으면 중단하고 force를 기본 해결책으로 삼지 마세요. Scan은 installation gate이지 모든 external dependency, service policy, output quality의 보증이 아닙니다.
현재 chat에 설치하고 즉시 반영하려면:
/skills install official/creative/ascii-art --now
Chat의 /skills install action은 installer를 skip_confirm=True로 호출합니다. Command 입력 자체가 implicit consent이며, scan이 허용된 뒤 findings를 읽고 copy를 중단할 별도 human pause가 없습니다. 첫 review에서는 interactive CLI를 사용하고 그 뒤 새 session을 여세요.
--now는 current session의 Skills cache를 invalidate하고 다시 구성할 뿐 confirmation을 추가하지 않습니다. Exact source/version을 검토하고 수용한 경우에만 사용하고 terminal의 hermes skills install에는 붙이지 마세요.
3. 올바른 session에서 활성화하고 verify
일반 CLI 설치는 새 session에서 확인하는 것이 안전합니다. 설치 전에 열린 대화는 files가 ~/.hermes/skills/에 있어도 시작 시점의 index를 유지할 수 있습니다. 새 session 또는 /reset을 사용하세요. Current session의 --now는 full review 후 chat command의 implicit consent 경계를 받아들인 경우에만 선택합니다.
Terminal에서 다음을 실행합니다.
hermes skills list
# ascii-art가 Hub lock file에 등록된 경우에만:
hermes skills audit ascii-art
List는 discovery와 effective source 확인에 사용합니다. audit는 HubLockFile에 등록된 Hub install만 scan합니다. 대상이 없으면 No hub-installed skills to audit, non-Hub name이면 is not a hub-installed skill이 나오며, 이는 손상이나 visible copy의 scan 완료를 뜻하지 않습니다. 같은 이름의 project copy가 Hub copy를 shadow하면 audit는 lock-file path를 scan하지만 /ascii-art는 project copy를 load합니다. Active path의 전체 files를 읽거나 shadow가 없는 다른 공식 Skill로 흐름을 완료하세요. 적용 가능한 Hub install에서 missing files, invalid path, risky findings가 있으면 task 전에 해결합니다.
/ascii-art
Hermes가 command를 인식하고 task를 기다리면 session registration이 동작합니다. 첫 검증에서는 natural-language routing 변수를 제거하기 위해 명시 호출을 사용합니다.
4. 실제 task를 실행하고 저장·검수
같은 session에서 보냅니다.
/ascii-art custom generation fallback을 사용해 ASCII 문자만으로 HERMES라고 읽히는 banner를 만드세요. package를 설치하거나 network service를 사용하지 마세요. 폭 60자 이하, 높이 15줄 이하인 fenced text block을 정확히 하나만 반환하세요.
동기 task이므로 job ID와 polling이 없습니다. 같은 turn의 응답이 끝날 때까지 기다린 뒤 fenced block 안의 내용만 hermes-ascii.txt로 저장합니다.
다음 검증 코드를 validate_ascii.py로 저장합니다.
from pathlib import Path
path = Path("hermes-ascii.txt")
text = path.read_text(encoding="utf-8")
lines = text.splitlines()
width = max((len(line) for line in lines), default=0)
ascii_only = text.isascii()
print({"lines": len(lines), "max_width": width, "ascii_only": ascii_only})
raise SystemExit(not (lines and len(lines) <= 15 and width <= 60 and ascii_only))
그다음 실행합니다.
python validate_ascii.py
/ascii-art가 인식되고 HERMES가 읽히며 file이 비어 있지 않고 script가 ascii_only: True와 exit code 0을 반환하며 package·network·credential을 요구하지 않으면 통과입니다. 글자 모양은 달라도 측정 가능한 contract는 유지됩니다.
ASCII check는 필수입니다. 공식 custom fallback에는 Unicode line/block characters가 있어 높이·폭·가독성만 검사하면 HERMES ░ 같은 output이 잘못 통과합니다. ascii_only가 False면 같은 prompt로 모든 non-ASCII characters를 바꾸라고 요청하고 file을 덮어쓴 뒤 validator를 다시 실행하세요.
5. 증상별 문제 해결
| 증상 | 먼저 확인 | 수정 후 재시험 |
|---|---|---|
| Search 결과가 없음 | query 또는 source filter가 좁음 | terms를 넓히고 현재 identifier로 inspect |
inspect는 되지만 download 실패 | files 이동, network, rate limit | 다시 search하고 오래된 path를 계속 추측하지 않음 |
| Scan이 설치 차단 | verdict, file, risk type | 중단하고 content를 읽거나 다른 Skill 선택 |
List에는 있지만 /ascii-art 없음 | session이 설치 전부터 열림 | 새 session 또는 /reset; 필요 시 chat install에 --now |
| Slash command는 되지만 자연어는 안 됨 | router가 Skill을 선택하지 않음 | 먼저 /ascii-art <task>, 자연어는 별도 테스트 |
| 같은 이름인데 다른 content | Effective path는 project copy이고 audit는 Hub lock path만 scan했을 수 있음 | .hermes/skills/, .agents/skills/에서 active copy를 확인하고 전체 files를 읽으세요. Shadow된 Hub audit를 /ascii-art content 증거로 쓰지 마세요 |
| package 또는 network 요구 | pyfiglet, cowsay, web route 선택 | custom fallback, no install, no network 조건 반복 |
| Hub install의 audit 결과 변경 | Hub lock path의 files가 변경 또는 update됨 | 사용 중단, 변경 원인 확인, audit와 같은 minimal task 재실행 |
| 다른 플랫폼(CLI/Telegram/Discord)에서 Skill이 보이지 않음 | 해당 플랫폼에서 Skill이 비활성화됐거나 platforms가 호환되지 않을 수 있음 | CLI·Telegram·Discord별 활성/비활성 설정과 Skill의 platforms를 확인하고 수정한 뒤, 그 플랫폼에서 새 session을 열어 동일한 minimal task를 반복 |
한 번에 한 변수만 바꾸고 동일한 HERMES task를 반복하세요. 그러면 discovery, installation, session loading, routing, execution을 구분할 수 있습니다.
6. 일반 순위가 아니라 task로 선택
현재 일을 직접 끝내는지, inspect가 권한과 dependencies를 설명하는지, source 추적이 가능한지, 반복 가능한 success signal이 있는지, 실패 시 external write 전에 안전하게 멈출 수 있는지 확인합니다. 처음에는 작은 input, 최소 권한, 저장 가능한 output을 우선하세요.
최종 체크
- Search에서 전체 identifier를 받았다.
inspect를 잘린 preview로 취급하고 exact source/version의 전체SKILL.md와 support files를 읽었다.- Copy 전 판단이 필요할 때 interactive CLI에서 verdict/findings를 읽었다.
- 새 session을 사용했고, chat
--now는 full review 후 post-scan confirmation이 없음을 이해하고 사용했다. hermes skills list로 active source를 확인했고 audit는 Hub 등록 및 미shadow install에만 실행했다./ascii-art를 명시 호출하고hermes-ascii.txt를 저장해 size, ASCII-only, readability를 통과했다.- 각 failure를 하나의 layer에 연결하고 같은 task로 재검증했다.
이제 단순히 directory가 있다는 것 이상을 증명합니다. Skill을 찾고 이해했으며, 설치 gate를 통과시키고 session에 불러와 task를 실행한 뒤 저장 결과로 검증했습니다.