다중 세션 transcript에서 반복 실패 패턴(instinct)을 자동 채굴하여 신규 skill candidate 생성
Scanned 9/9/2026
Install to Claude Code
npx -y skills add baekenough/oh-my-customcode --skill instinct-extractor --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Instinct Extractor?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/baekenough-instinct-extractor)More formats (shields.io, HTML) on the badges page.
---
name: instinct-extractor
description: 다중 세션 transcript에서 반복 실패 패턴(instinct)을 자동 채굴하여 신규 skill candidate 생성
scope: core
user-invocable: true
argument-hint: "[--days <n>] [--min-repeat <n>] [--dry-run]"
version: 0.1.0
effort: medium
---
# Instinct Extractor
세션 transcript 시계열에서 _instinct_ (실패 학습 + 대응 본능) 패턴을 자동 채굴하여 신규 skill candidate를 생성한다.
R016 연속 개선 루프의 자동화 단계로, 사람이 명시적으로 호출하거나 R016 Skill Promotion 트리거(동일 패턴 3회 이상 반복)에 의해 자동 실행된다.
## skill-extractor와의 차별점
| 자산 | trigger | input | output |
|------|---------|-------|--------|
| `skill-extractor` | 명시 호출 (`--mode success` / `--mode failure`) | 단일 세션 task trajectory + feedback memory | SKILL.md candidate |
| `instinct-extractor` | 자동/스케줄 (R016 3회 반복 트리거) | 다중 세션 transcript 시계열 (N일 범위) | failure pattern + 대응 본능 클러스터 → SKILL.md candidate |
**보완 관계**: `skill-extractor --mode failure`는 현재 세션의 feedback memory를 분석한다.
`instinct-extractor`는 여러 세션을 가로질러 시계열 패턴을 채굴한다.
두 스킬은 경쟁하지 않으며, instinct-extractor가 발견한 후보를 skill-extractor의 결과물과 교차 검증하는 것을 권장한다.
## Usage
```
/instinct-extractor # 최근 14일 transcript 분석
/instinct-extractor --days 30 # 분석 범위 확장
/instinct-extractor --min-repeat 2 # 반복 임계값 낮춤 (기본: 3)
/instinct-extractor --dry-run # 제안만 출력, 파일 미생성
```
## Options
```
--days, -d 분석할 transcript 범위 (일 단위, 기본: 14)
--min-repeat, -r instinct 후보 최소 반복 횟수 (기본: 3)
--dry-run 후보 목록만 stdout 출력, mgr-creator 위임 없음
--cluster-only 클러스터링 결과만 출력, SKILL.md 제안 없음
```
## 입력
```
~/.claude/projects/*/session-*.jsonl # Claude Code 세션 transcript
.claude/agent-memory*/feedback_*.md # 누적 feedback memory (보조)
```
transcript 파일이 없을 경우: `"분석 가능한 transcript 없음 (--days 범위 내)"` 보고 후 종료.
## 워크플로우
### Phase 1: Transcript 스캔
```bash
# 분석 대상 수집
find ~/.claude/projects -name "session-*.jsonl" \
-newer $(date -v-${DAYS}d +%Y-%m-%dT00:00:00) 2>/dev/null
```
각 transcript에서 다음 이벤트 추출:
- `type: "error"` — 오류 발생 기록
- `type: "correction"` — 사용자 수정 지시
- `type: "feedback"` — 부정 피드백 (`"no"`, `"wrong"`, `"don't"` 키워드 포함)
- `type: "retry"` — 동일 작업 재시도
### Phase 2: 패턴 클러스터링
추출된 이벤트를 `(domain, action_verb, error_class)` 튜플로 그룹화:
```
Cluster: (agent-design, write, missing-frontmatter)
→ sessions: [s1, s3, s7], count: 4
→ first_seen: 2026-05-01, last_seen: 2026-05-15
→ example_corrections: ["bypassPermissions 누락", "name 필드 없음"]
```
필터링 기준:
- `count >= --min-repeat` (기본: 3)
- `last_seen` >= 7일 이내 (오래된 패턴 제외)
- 기존 skill과 80% 이상 키워드 겹침 → 새 skill 대신 기존 skill 업데이트 제안
### Phase 3: Instinct 후보 생성
각 클러스터를 "instinct 후보"로 명명:
```
instinct: prevent-missing-bypassPermissions
근거: 4회 반복 (2주), agent spawn 시 mode 누락
대응 패턴: spawn 전 bypassPermissions 자가 체크
제안 자산: 기존 R010 강화 OR 신규 guard skill
```
**분류 기준**:
| 패턴 성격 | 권장 자산 |
|-----------|----------|
| 동일 실수 반복 (행동 교정) | feedback memory 강화 |
| 워크플로우 절차 누락 | 기존 skill 섹션 추가 |
| 명확한 재사용 루틴 | 신규 SKILL.md 제안 |
| 규칙 미준수 (R007~R022) | 해당 rule 자가 체크 섹션 강화 제안 |
context fork cap (12개) 확인: 신규 skill이 `context: fork` 필요 시 현재 사용량 체크.
현재 cap: 10/12 (secretary/dev-lead/de-lead/qa-lead-routing, dag-orchestration, task-decomposition, worker-reviewer-pipeline, deep-plan, professor-triage, roundtable-debate).
### Phase 4: 사용자 제시
```
[instinct-extractor] {N}개 instinct 후보 발견 (최근 {DAYS}일, {M}개 세션)
1. [high] prevent-missing-bypassPermissions
반복: 4회 | 마지막: 2026-05-15 | 도메인: agent-design
대응 본능: spawn 전 mode 체크 → skill 후보: bypassPermissions-guard
2. [medium] transcript-scan-format-mismatch
반복: 3회 | 마지막: 2026-05-10 | 도메인: memory
대응 본능: JSONL 파싱 전 format 버전 체크
생성할 항목 선택 [1-N], "all", 또는 "skip":
```
### Phase 5: Skill Candidate 생성 (승인 시)
mgr-creator에 위임:
- 후보 이름 및 설명
- 클러스터 데이터 (반복 횟수, 예시 수정 사항)
- 분류 결과 (신규 skill / 기존 확장 / rule 강화)
- 기존 skill과의 겹침 경고
## 아티팩트 출력
```
.claude/outputs/sessions/{YYYY-MM-DD}/instinct-extractor-{HHmmss}.md
```
CC v2.1.121+ 환경에서 `.claude/outputs/` 직접 Write 가능 (`bypassPermissions` 모드).
CC < v2.1.121 환경: `/tmp/instinct-extractor-{ts}.md` 경유 후 이동.
## R016 자동화 연동
R016 Defect Response Matrix의 "Skill Promotion" 조건:
> feedback memory가 동일 패턴으로 3회 이상 반복 → skill-extractor `--mode failure` 실행 권장
`instinct-extractor`는 이 조건을 **cross-session 범위로 확장**한다:
- 단일 세션의 feedback memory 분석 → `skill-extractor --mode failure`
- 다중 세션 시계열 채굴 → `instinct-extractor`
R016 트리거 감지 시 오케스트레이터는 두 스킬을 순차 실행하여 결과를 교차 검증할 수 있다.
## 통합
| 시스템 | 연동 방식 |
|--------|----------|
| `skill-extractor --mode failure` | 보완 관계 — 결과 교차 검증 권장 |
| R016 (continuous-improvement) | 3회 반복 트리거 → 자동 실행 후보 |
| mgr-creator | 승인된 후보 SKILL.md 생성 위임 |
| sys-memory-keeper | 채굴 결과를 project memory로 보존 |
| feedback-collector | feedback 이벤트 소스 공유 |
| R011 (memory) | User Model의 Override Decisions 반영 |
## 안전 규칙
- **사용자 승인 필수**: skill 자동 생성 없음, 항상 사용자 확인 후 mgr-creator 위임
- **중복 체크**: 기존 skill과 80%+ 겹침 시 신규 생성 대신 업데이트 권장
- **dry-run 모드**: 부작용 없는 미리보기
- **context fork cap 체크**: `context: fork` 필요 skill은 cap(12) 초과 여부 사전 확인
## 한계
- **transcript 형식 의존**: CC `session-*.jsonl` 스키마 변경 시 파싱 재구현 필요.
- **클러스터링 정확도**: 키워드 기반 클러스터링으로 의미적 동의어 처리 제한.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!