← ClaudeAtlas

build-skilllisted

새 스킬을 만들거나 기존 스킬을 반복 개선하는 메타 스킬. 의도 포착 → SKILL.md 초안 → 결정론적 테스트 케이스 작성 → 러너 실행 → 정성 피드백 → 일반화 재작성의 루프를 돈다. 테스트는 번들된 Python 러너(`scripts/run_skill_test.py`)가 `claude -p`로 스킬을 격리 실행하고 `check(ctx)` 코드로 검증한다 — LLM 심판 없이 결정론적으로. 사용자가 "스킬 만들어줘", "새 스킬 추가", "이 워크플로 스킬로 만들어줘", "스킬 개선해줘", "스킬 반복 개선", "SKILL.md 작성", "스킬 테스트 짜줘", "스킬 평가 돌려줘", "build-skill", "이 스킬 회귀 테스트", "스킬 초안 잡아줘" 같은 표현을 쓰면 반드시 이 스킬을 사용한다. 대화에 이미 반복 워크플로가 있고 사용자가 "이거 스킬화하자"고 하면 그 맥락을 추출해 시작한다. 스킬 구조·progressive disclosure의 상세 레퍼런스가 필요하면 `plugin-dev:skill-development`를 함께 참고한다. 스킬 "사용량 지표"는 이 스킬이 아니라 `skill-metrics`가 다룬다.
gagip/gagip-dev · ★ 0 · Web & Frontend · score 63
Install: claude install-skill gagip/gagip-dev
# Build Skill 스킬을 **제품처럼 반복 개발**하는 루프를 제공한다. ``` 의도 포착 → SKILL.md 초안 → 테스트 케이스 작성 → 러너 실행(+baseline) → 결과·출력물을 사람에게 제시 → 정성 피드백 → 일반화하여 재작성 → 반복 ``` 사용자가 이 루프의 어디에 있는지 파악해 그 지점부터 합류한다. "스킬 만들어줘"면 처음부터, 초안이 이미 있으면 테스트/반복부터. 사용자가 "평가 없이 감으로 가자"고 하면 그렇게 한다. --- ## 1. 의도 포착 먼저 무엇을 만들지 좁힌다. 대화에 이미 워크플로가 있으면(예: "방금 한 거 스킬로") 히스토리에서 추출한다 — 쓴 도구, 단계 순서, 사용자가 교정한 지점, 입출력 형식. 사용자에게 확인할 것: 1. 이 스킬로 Claude가 무엇을 할 수 있어야 하나 2. 언제 발동해야 하나 (어떤 사용자 표현·맥락) 3. 기대 출력 형식은 4. 결정론적으로 검증 가능한 산출물인가 (파일 변환, 커밋, 워크플로 단계 준수 등) → 테스트 케이스 유용. 주관적 산출물(글 스타일, 디자인)이면 정성 피드백만. 엣지 케이스·입출력·예시 파일·성공 기준·의존성을 먼저 정리한다. 테스트 프롬프트는 그 다음. --- ## 2. 어디에 두나 (폴더 규칙) ``` plugins/<plugin>/skills/<skill-name>/ ├── SKILL.md (필수) frontmatter + 워크플로 본문 ├── scripts/ 결정론적·반복 작업 코드. Claude가 매번 재작성하지 않도록 번들 ├── references/ 필요할 때 읽는 문서. 본문에서 링크, 300줄 넘으면 목차 포함 ├── assets/ 산출물에 들어가는 템플릿·아이콘·폰트 └── evals/ 이 스킬용 테스트 케이스 (*.py, 1파일 1케이스) ``` - 플러그인 선택: 언어·플랫폼 무관 워크플로 → `common`, 개발 특화 → `development`, 그 외 기존 관례. - **Progressive disclosure 3단계** — 이걸 의식하고 분량을 배분한다: 1. `name` + `description` — 항상 로드 (~100 단어). 트리거의 전부. 2. `SKILL.md` 본문 — 발동 시 로드 (<500줄 권장). 3. `scripts/` `references/` `assets/` — 필요할 때만. 스크립트는 로드 없이 실행 가능. - 본문이 500줄에 근접하면 계층을 하나 더 만들고 "여기부터는 references/X를 읽어라"로 넘긴다. - 여러 도메인/프레임워크를 지원하면 `references/<변형>.md`로 쪼개고 본문은 선택 로직만 둔다. --- ## 3. SKILL.md 작성 `assets/SKILL.template.md`를 복사해 시작한다. 채울 것: | 필드 | 하네스 | 내용 | |---|---|---| | `name` | 공통 | kebab-case