Agent skill

Skill Session Analyzer

by team-attention in team-attention/hoyeon

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…

MITAuto-check: notes

Install Skill Session Analyzer

skills CLI
$ npx skills add team-attention/hoyeon --skill skill-session-analyzer -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install team-attention/hoyeon skill-session-analyzer --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/team-attention/hoyeon.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/skill-session-analyzer .claude/skills/skill-session-analyzer && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
skill-session-analyzer
GitHub stars
173
Token cost
~1.9k tokens
SKILL.md length
405 words
Files
6 (incl. scripts, references)
Skills in repo
36
Repo updated
First seen
Licence
MIT

At a glance

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…

  • Works in 6 steps: Locate Session Files → Parse Target SKILL.md → Analyze Debug Log → …
  • Asks to analyze session
  • SKILL.md covers Purpose, Input Requirements, Phase 1: Locate Session Files and Phase 2: Parse Target SKILL.md, plus 7 more sections
  • Runs Shell scripts from its folder

What it does

Skill Session Analyzer is an agent skill from team-attention/hoyeon. 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.

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts and reference files (for example `references/analysis-patterns.md`, `references/common-issues.md` and `scripts/extract-hook-events.sh`).

The repository describes itself as: Requirements-first Harness — derive, verify, execute. The licence is MIT.

When your agent uses it

  • Asks to analyze session
  • Evaluate skill execution
  • Check session logs
  • Provides a session ID with a skill path

Example prompts

  • “analyze session”
  • “evaluate skill execution”
  • “check session logs”
  • “/skill-session-analyzer”

Requirements

  • A Bash shell
  • Pre-approved tools (allowed-tools): Read, Grep, Glob, Bash, Task, Write

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Locate Session Files
  2. Parse Target SKILL.md
  3. Analyze Debug Log
  4. Verify Artifacts
  5. Compare Expected vs Actual
  6. Generate Report

What it can do on your machine

Read from SKILL.md and the folder at commit 7cff032. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Grep
    • Glob
    • Bash
    • Task
    • Write

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 3 files in scripts/ (Shell), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Skill Session Analyzer loads about 1.9k tokens when it runs, and up to ~4.8k if it reads all its reference files. Until then it costs about 91 tokens; SKILL.md has 405 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~91
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4.8k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Grep, Glob, Bash, Task, Write

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from team-attention/hoyeon at commit 7cff032, republished under its MIT licence (© team-attention). 405 words, ~1,851 tokens.

Download SKILL.mdSave it as .claude/skills/skill-session-analyzer/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.
name
skill-session-analyzer
description
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.
allowed-tools
Read, Grep, Glob, Bash, Task, Write

Session Analyzer Skill

Post-hoc analysis tool for validating Claude Code session behavior against SKILL.md specifications.

Purpose

Analyze completed sessions to verify:

  1. Expected vs Actual Behavior - Did the skill follow SKILL.md workflow?
  2. Component Invocations - Were SubAgents, Hooks, and Tools called correctly?
  3. Artifacts - Were expected files created/deleted?
  4. Bug Detection - Any unexpected errors or deviations?

Input Requirements

ParameterRequiredDescription
sessionIdYESUUID of the session to analyze
targetSkillYESPath to SKILL.md to validate against
additionalRequirementsNOExtra validation criteria

Phase 1: Locate Session Files

Step 1.1: Find Session Files

Session files are located in ~/.claude/:

bash
# 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:

bash
${baseDir}/scripts/find-session-files.sh {sessionId}
Step 1.2: Verify Files Exist

Check all required files exist before proceeding. If debug log is missing, analysis will be limited.


Phase 2: Parse Target SKILL.md

Step 2.1: Extract Expected Components

Read the target SKILL.md and identify:

From YAML Frontmatter:

  • hooks.PreToolUse - Expected PreToolUse hooks and matchers
  • hooks.PostToolUse - Expected PostToolUse hooks
  • hooks.Stop - Expected Stop hooks
  • hooks.SubagentStop - Expected SubagentStop hooks
  • allowed-tools - Tools the skill is allowed to use

From Markdown Body:

  • SubAgents mentioned (Task(subagent_type="..."))
  • Skills called (Skill("..."))
  • Artifacts created (.hoyeon/drafts/, .hoyeon/specs/, etc.)
  • Workflow steps and conditions
Step 2.2: Build Expected Behavior Checklist

Create checklist from SKILL.md analysis:

markdown
## Expected Behavior

### SubAgents
- [ ] Explore agent called (parallel, run_in_background)
- [ ] gap-analyzer called before plan generation
- [ ] plan-reviewer called after plan creation

### Hooks
- [ ] PreToolUse[Edit|Write] triggers plan-guard.sh
- [ ] Stop hook validates plan-reviewer approval

### Artifacts
- [ ] Draft file created at .hoyeon/drafts/{name}.md
- [ ] Plan file created at .hoyeon/specs/{name}.md
- [ ] Draft file deleted after OKAY

### Workflow
- [ ] Interview Mode before Plan Generation
- [ ] User explicit request triggers plan generation
- [ ] Reviewer REJECT causes revision loop

Phase 3: Analyze Debug Log

The debug log (~/.claude/debug/{sessionId}.txt) contains detailed execution traces.

Step 3.1: Extract SubAgent Calls

Search patterns:

SubagentStart with query: {agent-name}
SubagentStop with query: {agent-id}

Use script:

bash
${baseDir}/scripts/extract-subagent-calls.sh {debug-log-path}
Step 3.2: Extract Hook Events

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:

bash
${baseDir}/scripts/extract-hook-events.sh {debug-log-path}
Step 3.3: Extract Tool Calls

Search patterns:

executePreToolHooks called for tool: {tool-name}
File {path} written atomically
Step 3.4: Extract Hook Results

For prompt-based hooks, find the model response:

Hooks: Model response: {
  "ok": true/false,
  "reason": "..."
}

Show full SKILL.md (157 more words)Show less

Phase 4: Verify Artifacts

Step 4.1: Check File Creation

For each expected artifact:

  1. Search debug log for FileHistory: Tracked file modification for {path}
  2. Search for File {path} written atomically
  3. Verify current filesystem state
Step 4.2: Check File Deletion

For files that should be deleted:

  1. Search for rm commands in Bash calls
  2. Verify file no longer exists on filesystem

Phase 5: Compare Expected vs Actual

Step 5.1: Build Comparison Table
markdown
| 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 | ✅ |
| plan-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) | ✅ |
Step 5.2: Identify Deviations

Flag any mismatches:

  • Missing component calls
  • Wrong order of operations
  • Hook failures
  • Missing artifacts
  • Unexpected errors

Phase 6: Generate Report

Report Template
markdown
# 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]

Scripts Reference

ScriptPurpose
find-session-files.shLocate all files for a session ID
extract-subagent-calls.shParse subagent invocations from debug log
extract-hook-events.shParse hook events from debug log

Usage Example

User: "Analyze session 3cc71c9f-d27a-4233-9dbc-c4f07ea6ec5b against .claude/skills/spec/SKILL.md"

1. Find session files
2. Parse SKILL.md → Expected: Explore, gap-analyzer, plan-reviewer, hooks
3. Analyze debug log → Extract actual calls
4. Verify artifacts → Check .hoyeon/
5. Compare → Build verification table
6. Generate report → PASS/FAIL with details

Additional Resources

Reference Files
  • references/analysis-patterns.md - Detailed grep patterns for log analysis
  • references/common-issues.md - Known issues and troubleshooting
Scripts
  • scripts/find-session-files.sh - Session file locator
  • scripts/extract-subagent-calls.sh - SubAgent call extractor
  • scripts/extract-hook-events.sh - Hook event extractor

© team-attention, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 5 other files (scripts, references) in skills/skill-session-analyzer of team-attention/hoyeon.

  • SKILL.md
  • references/analysis-patterns.md
  • references/common-issues.md
  • scripts/extract-hook-events.sh
  • scripts/extract-subagent-calls.sh
  • scripts/find-session-files.sh

Open the folder on GitHubat commit 7cff032

Compare with similar skills

Skill Session Analyzer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Skill Session Analyzer compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Skill Session Analyzer this skillteam-attention/hoyeon173—~1.9kAutomated safety check: NotesMIT
AnalyzeriBigQiang/feedgrab614—~1kAutomated safety check: PassMIT
Agent Code Analyzerruvnet/ruflo74k3 repos~1.5kAutomated safety check: PassMIT
Agent Pagerank Analyzerruvnet/ruflo74k3 repos~2.9kAutomated safety check: PassMIT
Agent Performance Analyzerruvnet/ruflo74k2 repos~1.3kAutomated safety check: PassMIT
Diff Analyzeruvnet/ruflo74k—~450Automated safety check: NotesMIT

Similar skills

  • Analyzer

    iBigQiang/feedgrab

    Content Analyzer — any content (URL, text, transcript) into structured analysis report with actionable insights.

    614 GitHub stars~1k tokensUpdated 1 mo ago
    Writing & ContentAuto-check passed
  • Agent skill for code-analyzer - invoke with $agent-code-analyzer

    74k GitHub starsUsed in 3 repos~1.5k tokens
    DevelopmentAuto-check passed
  • Agent skill for pagerank-analyzer - invoke with $agent-pagerank-analyzer

    74k GitHub starsUsed in 3 repos~2.9k tokens
    Auto-check passed
  • Agent skill for performance-analyzer - invoke with $agent-performance-analyzer

    74k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check passed
  • Diff Analyze

    ruvnet/ruflo

    Analyze git diffs for risk scoring, reviewer recommendations, and change classification.

    74k GitHub stars~450 tokensUpdated today
    DevelopmentAuto-check: notes
  • Analyze GitHub Flake

    flutter/flutter

    Expertise in analyzing flake github issues in the flutter/flutter repository.

    179k GitHub stars~1.1k tokensUpdated today
    MobileAuto-check passed

More from team-attention/hoyeon

All 36 skills in this repo
  • Browser Work

    team-attention/hoyeon

    Recon-first browser automation. An agent skill from team-attention/hoyeon.

    173 GitHub stars~1.9k tokensUpdated 4 mo ago
    Auto-check passed
  • Check

    team-attention/hoyeon

    This skill should be used when the user wants to verify their changes before pushing, or update the project's rule checklists.

    173 GitHub stars~1.8k tokensUpdated 4 mo ago
    Auto-check: notes
  • Compound

    team-attention/hoyeon

    This skill should be used when the user says "/compound", "compound this", "document learnings", "save what we learned", or after completing a PR.

    173 GitHub stars~1.1k tokensUpdated 4 mo ago
    Auto-check: notes
  • QA

    team-attention/hoyeon

    Systematically QA test any application — web apps, native macOS apps, Electron apps, CLI tools, interactive REPLs, or anything on screen.

    173 GitHub stars~2.6k tokensUpdated 4 mo ago
    Auto-check: notes
  • Dev Scan

    team-attention/hoyeon

    Collect diverse opinions on technical topics from developer communities.

    173 GitHub starsUsed in 1 repo~5k tokens
    Auto-check passed
  • Tech Decision

    team-attention/hoyeon

    This skill should be used when the user asks about "technical decision", "what to use", "A vs B", "comparison analysis", "library selection", "architecture decision", "which one to use"…

    173 GitHub stars~1.4k tokensUpdated 4 mo ago
    Auto-check passed

Questions about Skill Session Analyzer

What does Skill Session Analyzer do?

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…. Skill Session Analyzer is an agent skill from team-attention/hoyeon. 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.

When should I use Skill Session Analyzer?

Skill Session Analyzer fits situations like: asks to analyze session; evaluate skill execution; check session logs; provides a session ID with a skill path.

How do I install Skill Session Analyzer in Claude Code?

Run `npx skills add team-attention/hoyeon --skill skill-session-analyzer -a claude-code`. Or copy the skill folder (skills/skill-session-analyzer in team-attention/hoyeon) into .claude/skills/skill-session-analyzer in your project. Claude Code loads it when a task matches its description.

How do I install Skill Session Analyzer in Codex?

Run `npx skills add team-attention/hoyeon --skill skill-session-analyzer -a codex`. Or copy the skill folder (skills/skill-session-analyzer in team-attention/hoyeon) into .agents/skills/skill-session-analyzer in your project. Codex loads it when a task matches its description.

Can I use Skill Session Analyzer in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add team-attention/hoyeon --skill skill-session-analyzer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/skill-session-analyzer, .gemini/skills/skill-session-analyzer, .github/skills/skill-session-analyzer and .opencode/skills/skill-session-analyzer in your project.

What does Skill Session Analyzer need to run?

Going by SKILL.md and its folder, Skill Session Analyzer needs a shell for the scripts in its folder. Our summary lists: A Bash shell. Its frontmatter pre-approves these tools: Read, Grep, Glob, Bash, Task, Write.

Does Skill Session Analyzer access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Skill Session Analyzer safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Skill Session Analyzer use?

Skill Session Analyzer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Skill Session Analyzer use?

About 1.9k tokens (SKILL.md is roughly 7.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 2.9k tokens, read only when the agent opens those files.

What are the alternatives to Skill Session Analyzer?

Skills that share tags, products or a category with Skill Session Analyzer: Analyzer (iBigQiang/feedgrab, 614 stars), Agent Code Analyzer (ruvnet/ruflo, 74k stars), Agent Pagerank Analyzer (ruvnet/ruflo, 74k stars) and Agent Performance Analyzer (ruvnet/ruflo, 74k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Skill Session Analyzer?

team-attention (a GitHub organization) maintains it in team-attention/hoyeon, which has 173 GitHub stars. The repository holds 36 skills in this directory. The repository was last updated on May 21, 2026.

Source: team-attention/hoyeon on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.