skills/session-wrap/session-analyzer/SKILL.md
This skill should be used when the user asks to "analyze session", "세션 분석", "evaluate skill execution", "스킬 실행 검증", "check session logs", "로그 분석", provides a session ID with a skill path, or wants to verify that a skill executed correctly in a past session. Post-hoc analysis of Claude Code sessions to validate skill/agent/hook behavior against SKILL.md specifications.
npx skillsauth add seungwonme/.claude session-analyzerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Post-hoc analysis tool for validating Claude Code session behavior against SKILL.md specifications.
Analyze completed sessions to verify:
| Parameter | Required | Description |
|-----------|----------|-------------|
| sessionId | YES | UUID of the session to analyze |
| targetSkill | YES | Path to SKILL.md to validate against |
| additionalRequirements | NO | Extra validation criteria |
Session files are located in ~/.claude/:
# Main session log
~/.claude/projects/-{encoded-cwd}/{sessionId}.jsonl
# Debug log (detailed)
~/.claude/debug/{sessionId}.txt
# Agent transcripts (if subagents were used)
~/.claude/projects/-{encoded-cwd}/agent-{agentId}.jsonl
Use script to locate files:
${baseDir}/scripts/find-session-files.sh {sessionId}
Check all required files exist before proceeding. If debug log is missing, analysis will be limited.
Read the target SKILL.md and identify:
From YAML Frontmatter:
hooks.PreToolUse - Expected PreToolUse hooks and matchershooks.PostToolUse - Expected PostToolUse hookshooks.Stop - Expected Stop hookshooks.SubagentStop - Expected SubagentStop hooksallowed-tools - Tools the skill is allowed to useFrom Markdown Body:
Task(subagent_type="..."))Skill("...")).dev-flow/drafts/, .dev-flow/plans/, etc.)Create checklist from SKILL.md analysis:
## Expected Behavior
### SubAgents
- [ ] Explore agent called (parallel, run_in_background)
- [ ] gap-analyzer called before plan generation
- [ ] reviewer called after plan creation
### Hooks
- [ ] PreToolUse[Edit|Write] triggers plan-guard.sh
- [ ] Stop hook validates reviewer approval
### Artifacts
- [ ] Draft file created at .dev-flow/drafts/{name}.md
- [ ] Plan file created at .dev-flow/plans/{name}.md
- [ ] Draft file deleted after OKAY
### Workflow
- [ ] Interview Mode before Plan Generation
- [ ] User explicit request triggers plan generation
- [ ] Reviewer REJECT causes revision loop
The debug log (~/.claude/debug/{sessionId}.txt) contains detailed execution traces.
Search patterns:
SubagentStart with query: {agent-name}
SubagentStop with query: {agent-id}
Use script:
${baseDir}/scripts/extract-subagent-calls.sh {debug-log-path}
Search patterns:
Getting matching hook commands for {HookEvent} with query: {tool-name}
Matched {N} unique hooks for query "{query}"
Hooks: Processing prompt hook with prompt: {prompt}
Hooks: Prompt hook condition was met/not met
permissionDecision: allow/deny
Use script:
${baseDir}/scripts/extract-hook-events.sh {debug-log-path}
Search patterns:
executePreToolHooks called for tool: {tool-name}
File {path} written atomically
For prompt-based hooks, find the model response:
Hooks: Model response: {
"ok": true/false,
"reason": "..."
}
For each expected artifact:
FileHistory: Tracked file modification for {path}File {path} written atomicallyFor files that should be deleted:
rm commands in Bash calls| Component | Expected | Actual | Status |
|-----------|----------|--------|--------|
| Explore agent | 2 parallel calls | 2 calls at 09:39:26 | ✅ |
| gap-analyzer | Called before plan | Called at 09:43:08 | ✅ |
| reviewer | Called after plan | 2 calls (REJECT→OKAY) | ✅ |
| PreToolUse hook | Edit\|Write matcher | Triggered for Write | ✅ |
| Stop hook | Validates approval | Returned ok:true | ✅ |
| Draft file | Created then deleted | Created→Deleted | ✅ |
| Plan file | Created | Exists (10KB) | ✅ |
Flag any mismatches:
# Session Analysis Report
## Session Info
- **Session ID**: {sessionId}
- **Target Skill**: {skillPath}
- **Analysis Date**: {date}
---
## 1. Expected Behavior (from SKILL.md)
[Summary of expected workflow]
---
## 2. Skill/SubAgent/Hook Verification
### SubAgents
| SubAgent | Expected | Actual | Time | Result |
|----------|----------|--------|------|--------|
| ... | ... | ... | ... | ✅/❌ |
### Hooks
| Hook | Matcher | Triggered | Result |
|------|---------|-----------|--------|
| ... | ... | ... | ✅/❌ |
---
## 3. Artifacts Verification
| Artifact | Path | Expected State | Actual State |
|----------|------|----------------|--------------|
| ... | ... | ... | ✅/❌ |
---
## 4. Issues/Bugs
| Severity | Description | Location |
|----------|-------------|----------|
| ... | ... | ... |
---
## 5. Overall Result
**Verdict**: ✅ PASS / ❌ FAIL
**Summary**: [1-2 sentence summary]
| Script | Purpose |
|--------|---------|
| find-session-files.sh | Locate all files for a session ID |
| extract-subagent-calls.sh | Parse subagent invocations from debug log |
| extract-hook-events.sh | Parse hook events from debug log |
User: "Analyze session 3cc71c9f-d27a-4233-9dbc-c4f07ea6ec5b against .claude/skills/specify/SKILL.md"
1. Find session files
2. Parse SKILL.md → Expected: Explore, gap-analyzer, reviewer, hooks
3. Analyze debug log → Extract actual calls
4. Verify artifacts → Check .dev-flow/
5. Compare → Build verification table
6. Generate report → PASS/FAIL with details
references/analysis-patterns.md - Detailed grep patterns for log analysisreferences/common-issues.md - Known issues and troubleshootingscripts/find-session-files.sh - Session file locatorscripts/extract-subagent-calls.sh - SubAgent call extractorscripts/extract-hook-events.sh - Hook event extractortools
유튜브 콘텐츠 기획 및 알고리즘 전문가. 영상 주제 기획, 아웃라이어 전략, 시청자 풀 분석, 알고리즘 치트키가 필요할 때 사용.
research
유튜브 채널 운영 전문가. 콘텐츠 기획부터 제목/썸네일, 영상 제작, 채널 관리, 수익화, 영상 요약까지 전 영역 지원. Routes to the appropriate sub-skill. Trigger on "유튜브", "YouTube", "영상 기획", "콘텐츠 기획", "아웃라이어", "알고리즘", "썸네일", "제목 공식", "클릭률", "영상 제작", "원고", "인트로", "편집", "채널 브랜딩", "댓글 관리", "수익화", "키 콘텐츠", "풀링 콘텐츠", "객단가", "유튜브 정리", "영상 요약", "transcript 번역", "YouTube digest", "영상 퀴즈". Sub-skills — 기획 (콘텐츠 기획, 알고리즘 전략, 아웃라이어 제작, 시청자 풀 분석), 썸네일 (제목/썸네일 제작, 19가지 제목 공식, A/B 테스트), 제작 (원고 작성, 인트로 구성, 편집 기법, 시청자 참여 유도), 채널 (채널 브랜딩, 이미지 관리, 댓글 관리), 수익화 (키/풀링 콘텐츠, 상품 판매 전략, 객단가 최적화), 요약 (YouTube 영상 분석, transcript 추출/번역, 퀴즈, Deep Research).
development
Spec-driven development: interview the user in depth to produce a comprehensive technical spec. Use when the user says "spec", "스펙", "스펙 작성", "기능 정의", "요구사항 정리", "interview me", "spec this out", "feature spec", or wants to define a feature/project before implementation. Also triggers when a SPEC.md file is referenced.
tools
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.