원클릭으로
manage-skills
세션 변경사항을 분석하여 검증 스킬 누락을 탐지합니다. 기존 스킬을 동적으로 탐색하고, 새 스킬을 생성하거나 기존 스킬을 업데이트한 뒤 CLAUDE.md를 관리합니다.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
세션 변경사항을 분석하여 검증 스킬 누락을 탐지합니다. 기존 스킬을 동적으로 탐색하고, 새 스킬을 생성하거나 기존 스킬을 업데이트한 뒤 CLAUDE.md를 관리합니다.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
새로운 작업을 시작하기 위해 "GitHub Issue"를 생성합니다. 사용자가 이슈 생성을 명시적으로 요청하거나, 현재 대화 내용을 바탕으로 "이슈로 등록해줘"라고 할 때 사용하십시오.
PR 리뷰에 달린 코멘트들을 조회하고, 수정 계획을 세우거나 해결(Resolve) 처리를 돕습니다. "리뷰 반영할게", "PR 코멘트 확인해줘" 등의 상황에서 사용하십시오.
현재 작업 중인 변경사항을 Git 커밋하고 원격 저장소에 푸시한 뒤, "Pull Request(PR)"를 생성합니다. "작업 끝났어 PR 올려줘", "리뷰 요청할게" 등의 상황에서 사용하십시오.
프로젝트의 모든 verify 스킬을 순차 실행하여 통합 검증 보고서를 생성합니다. 기능 구현 후, PR 전, 코드 리뷰 시 사용.
| name | manage-skills |
| description | 세션 변경사항을 분석하여 검증 스킬 누락을 탐지합니다. 기존 스킬을 동적으로 탐색하고, 새 스킬을 생성하거나 기존 스킬을 업데이트한 뒤 CLAUDE.md를 관리합니다. |
| disable-model-invocation | true |
| argument-hint | [선택사항: 특정 스킬 이름 또는 집중할 영역] |
현재 세션에서 변경된 내용을 분석하여 검증 스킬의 드리프트를 탐지하고 수정합니다:
현재 프로젝트에 등록된 검증 스킬 목록입니다. 새 스킬 생성/삭제 시 이 목록을 업데이트합니다.
(아직 등록된 검증 스킬이 없습니다)
현재 세션에서 변경된 모든 파일을 수집합니다:
# 커밋되지 않은 변경사항
git diff HEAD --name-only
# 아직 추적되지 않은 신규 파일
git ls-files --others --exclude-standard
# 현재 브랜치에서 base 이후 변경된 파일
# BASE_BRANCH 환경변수가 없다면 GITHUB_BASE_REF를 확인하고, 모두 없으면 main으로 폴백합니다.
git log --name-only --pretty="" ${BASE_BRANCH:-${GITHUB_BASE_REF:-main}}..HEAD 2>/dev/null | sed '/^$/d'
# base에서 분기된 이후의 모든 변경사항 (순수 파일 목록)
git diff ${BASE_BRANCH:-${GITHUB_BASE_REF:-main}}...HEAD --name-only 2>/dev/null
📌 로컬 테스트 시 주의사항 로컬 환경에서 테스트할 때 기준 브랜치가
main이 아닐 경우(예:develop등), 실행 전에export BASE_BRANCH=develop처럼 환경 변수를 설정해주세요.
중복을 제거한 목록으로 합칩니다. 선택적 인수로 스킬 이름이나 영역이 지정된 경우 관련 파일만 필터링합니다.
표시: 최상위 디렉토리(첫 1-2 경로 세그먼트) 기준으로 파일을 그룹화합니다:
## 세션 변경사항 감지
**이 세션에서 N개 파일 변경됨:**
| 디렉토리 | 파일 |
|----------|------|
| src/components | `Button.tsx`, `Modal.tsx` |
| src/server | `router.ts`, `handler.ts` |
| tests | `api.test.ts` |
| (루트) | `package.json`, `.eslintrc.js` |
위의 등록된 검증 스킬 섹션에 나열된 스킬을 참조하여 파일-스킬 매핑을 구축합니다.
등록된 검증 스킬 테이블에서 각 스킬의 이름과 커버 파일 패턴을 읽습니다.
등록된 스킬이 0개인 경우, Step 4 (CREATE vs UPDATE 결정)로 바로 이동합니다. 모든 변경 파일이 "UNCOVERED"로 처리됩니다.
등록된 스킬이 1개 이상인 경우, 테이블의 스킬 열 값(예: verify-api)을 그대로 디렉토리명으로 사용하여 각 스킬의 .agent/skills/<skill-name>/SKILL.md를 읽고 다음 섹션을 추출합니다:
Step 1에서 수집한 각 변경 파일에 대해, 등록된 스킬의 패턴과 대조합니다. 파일이 스킬과 매칭되는 조건:
### 파일 → 스킬 매핑
| 스킬 | 트리거 파일 (변경된 파일) | 액션 |
|------|--------------------------|------|
| verify-api | `router.ts`, `handler.ts` | CHECK |
| verify-ui | `Button.tsx` | CHECK |
| (스킬 없음) | `package.json`, `.eslintrc.js` | UNCOVERED |
영향받은(AFFECTED) 각 스킬(매칭된 변경 파일이 있는 스킬)에 대해, 전체 SKILL.md를 읽고 다음을 점검합니다:
발견된 각 갭을 기록합니다:
| 스킬 | 갭 유형 | 상세 |
|------|---------|------|
| verify-api | 파일 누락 | `src/server/newHandler.ts`가 Related Files에 없음 |
| verify-ui | 새 패턴 | 새 컴포넌트가 검사되지 않는 규칙을 사용 |
| verify-test | 오래된 값 | 설정 파일의 테스트 러너 패턴이 변경됨 |
다음 결정 트리를 적용합니다:
커버되지 않은 각 파일 그룹에 대해:
IF 기존 스킬의 도메인과 관련된 파일인 경우:
→ 결정: 기존 스킬 UPDATE (커버리지 확장)
ELSE IF 3개 이상의 관련 파일이 공통 규칙/패턴을 공유하는 경우:
→ 결정: 새 verify 스킬 CREATE
ELSE:
→ "면제"로 표시 (스킬 불필요)
결과를 사용자에게 제시합니다:
### 제안 액션
**결정: 기존 스킬 UPDATE** (N개)
- `verify-api` — 누락된 파일 참조 2개 추가, 탐지 패턴 업데이트
- `verify-test` — 새 설정 패턴에 대한 탐지 명령어 업데이트
**결정: 새 스킬 CREATE** (M개)
- 새 스킬 필요 — <패턴 설명> 커버 (X개 미커버 파일)
**액션 불필요:**
- `package.json` — 설정 파일, 면제
- `README.md` — 문서, 면제
AskUserQuestion을 사용하여 확인합니다:
사용자가 업데이트를 승인한 각 스킬에 대해, 현재 SKILL.md를 읽고 대상 편집을 적용합니다:
규칙:
예시 — Related Files에 파일 추가:
## Related Files
| File | Purpose |
|------|---------|
| ... 기존 항목 ... |
| `src/server/newHandler.ts` | 유효성 검사가 포함된 새 요청 핸들러 |
예시 — 탐지 명령어 추가:
### Step N: 새 패턴 검증
**파일:** `path/to/file.ts`
**검사:** 검증할 내용에 대한 설명.
```bash
grep -n "pattern" path/to/file.ts
```
**위반:** 잘못된 경우의 모습.
중요: 새 스킬을 생성할 때, 반드시 사용자에게 스킬 이름을 확인받아야 합니다.
새로 생성할 각 스킬에 대해:
탐색 — 관련 변경 파일을 읽어 패턴을 깊이 이해합니다
사용자에게 스킬 이름 확인 — AskUserQuestion을 사용합니다:
스킬이 커버할 패턴/도메인을 제시하고, 사용자에게 이름을 제공하거나 확인하도록 요청합니다.
이름 규칙:
<name>은 verify- 접두어를 제외한 순수 슬러그(slug)여야 합니다. (예: auth, api, caching)verify- 접두사를 포함해서 제공하면 자동으로 제거하고 순수 슬러그로 정규화합니다.생성 — .agent/skills/verify-<name>/SKILL.md 경로(파일 시스템은 verify-를 추가함)를 다음 템플릿에 따라 생성합니다:
---
name: <name>
description: <한 줄 설명>. <트리거 조건> 후 사용.
---
# <스킬 이름> (예: Auth System Verification)
## Purpose
이 스킬의 목적과 커버하는 내용을 1-2문장으로 설명합니다.
## Checkpoints
코드 검토 또는 에러 식별에 필요한 5가지 이하의 핵심 체크포인트를 나열합니다.
## When to Run
이 스킬이 트리거되어야 하는 조건을 명시합니다. (예: `src/auth/*` 파일이 변경될 때)
## Related Files
이 스킬과 관련된 주요 위치, 코드 조각 또는 문서 링크:
| File/Pattern | Description |
|---|---|
| 패턴 또는 경로 (예: `src/auth/**/*.ts`) | 설명 |
## Workflow
이 스킬을 실행하기 위한 단계별 가이드. 명령어 (grep, ls, find) 등을 포함합니다.
1. **1단계 검증 (예: 토큰 확인)**
```bash
grep -n "pattern" path/to/file.ts
최소 2-3개의 현실적인 예외 사항을 번호 목록으로 작성합니다.
4. **연관 스킬 파일 업데이트** — 새 스킬 생성 후 반드시 아래 3개 파일을 업데이트합니다:
**4a. 이 파일 자체 (`manage-skills/SKILL.md`) 업데이트:**
- **등록된 검증 스킬** 섹션의 테이블에 새 스킬 행을 추가합니다
- 첫 번째 스킬 추가 시 "(아직 등록된 검증 스킬이 없습니다)" 텍스트와 HTML 주석을 제거하고 테이블로 교체합니다
- 형식: `| verify-<name> | <설명> | <커버 파일 패턴> |`
**4b. `verify-implementation/SKILL.md` 업데이트:**
- **실행 대상 스킬** 섹션의 테이블에 새 스킬 행을 추가합니다
- 첫 번째 스킬 추가 시 "(아직 등록된 검증 스킬이 없습니다)" 텍스트와 HTML 주석을 제거하고 테이블로 교체합니다
- 형식: `| <번호> | verify-<name> | <설명> |`
**4c. `CLAUDE.md` 업데이트:**
- `## Skills` 테이블에 새 스킬 행을 추가합니다
- 형식: `| verify-<name> | <한 줄 설명> |`
### Step 7: 검증
모든 편집 후:
1. 수정된 모든 SKILL.md 파일을 다시 읽기
2. 마크다운 형식이 올바른지 확인 (닫히지 않은 코드 블록, 일관된 테이블 열)
3. 깨진 파일 참조가 없는지 확인 — Related Files의 각 경로에 대해 파일 존재 확인:
```bash
# 단일 파일 경로
test -e "<file-path>" || echo "MISSING FILE: <file-path>"
# glob 패턴
shopt -s globstar nullglob
compgen -G "<glob-pattern>" > /dev/null || echo "MISSING PATTERN: <glob-pattern>"
최종 보고서를 표시합니다:
## 세션 스킬 유지보수 보고서
### 분석된 변경 파일: N개
### 업데이트된 스킬: X개
- `verify-<name>`: N개의 새 검사 추가, Related Files 업데이트
- `verify-<name>`: 새 패턴에 대한 탐지 명령어 업데이트
### 생성된 스킬: Y개
- `verify-<name>`: <패턴> 커버
### 업데이트된 연관 파일:
- `manage-skills/SKILL.md`: 등록된 검증 스킬 테이블 업데이트
- `verify-implementation/SKILL.md`: 실행 대상 스킬 테이블 업데이트
- `CLAUDE.md`: Skills 테이블 업데이트
### 영향없는 스킬: Z개
- (관련 변경사항 없음)
### 미커버 변경사항 (적용 스킬 없음):
- `path/to/file` — 면제 (사유)
생성되거나 업데이트된 모든 스킬은 다음을 갖추어야 합니다:
ls로 검증), 플레이스홀더가 아닌 것| File | Purpose |
|---|---|
.agent/skills/verify-implementation/SKILL.md | 통합 검증 스킬 (이 스킬이 실행 대상 목록을 관리) |
.agent/skills/manage-skills/SKILL.md | 이 파일 자체 (등록된 검증 스킬 목록을 관리) |
CLAUDE.md | 프로젝트 지침 (이 스킬이 Skills 섹션을 관리) |
다음은 문제가 아닙니다:
package-lock.json, yarn.lock, pnpm-lock.yaml, Cargo.lock, 자동 생성된 마이그레이션 파일, 빌드 출력물은 스킬 커버리지가 불필요package.json/Cargo.toml의 버전 범프, 린터/포매터 설정의 사소한 변경은 새 스킬이 불필요README.md, CHANGELOG.md, LICENSE 등은 검증이 필요한 코드 패턴이 아님fixtures/, __fixtures__/, test-data/)은 프로덕션 코드가 아님vendor/, node_modules/ 또는 복사된 라이브러리 디렉토리의 파일은 외부 규칙을 따름.github/, .gitlab-ci.yml, Dockerfile 등은 인프라이며, 검증 스킬이 필요한 애플리케이션 패턴이 아님