Refactor high-complexity React components in Dify frontend. Use when `pnpm analyze-component...
npx skills add kubony/claude-agent-leaderboard
Or install specific skill: npx add-skill https://github.com/kubony/claude-agent-leaderboard
# Description
에이전트/스킬 실행 기여도를 분석하고 리포트를 생성합니다. stream.jsonl의 실행 로그를 파싱하여 호출 횟수, 성공률, 순위를 계산합니다. 내장 에이전트(general-purpose, Explore, Plan 등)는 제외하고 커스텀 에이전트/스킬만 분석합니다. "기여도 분석해줘", "이주의 에이전트", "에이전트 통계" 등의 요청 시 사용합니다.
# SKILL.md
name: agent-leaderboard
description: 에이전트/스킬 실행 기여도를 분석하고 리포트를 생성합니다. stream.jsonl의 실행 로그를 파싱하여 호출 횟수, 성공률, 순위를 계산합니다. 내장 에이전트(general-purpose, Explore, Plan 등)는 제외하고 커스텀 에이전트/스킬만 분석합니다. "기여도 분석해줘", "이주의 에이전트", "에이전트 통계" 등의 요청 시 사용합니다.
version: 2.8.0
author: 서인근
tags:
- 통계
- 분석
- 에이전트
- 스킬
- 기여도
- 리더보드
skill_type: managed
agent-leaderboard
에이전트/스킬 실행 기여도를 분석하고 리포트를 생성하는 스킬입니다.
개요
기존 Hook 시스템이 .claude/stream.jsonl에 수집한 실행 로그를 분석하여:
- 커스텀 에이전트/스킬별 호출 횟수
- 성공률 (end 이벤트가 있는 완료된 실행 비율)
- 총 실행 시간 및 평균 실행 시간
- 기간별 통계 (오늘, 이번 주, 특정 월)
- 미호출 항목 상세 (경로, 목적 포함 - 등록되어 있으나 사용되지 않은 에이전트/스킬)
- "이주의 에이전트상" 선정
v2.8.0 업데이트: 슬래시 커맨드 추적
- 커맨드 집계: 슬래시 커맨드 (/commit, /wrap 등) 사용 통계 추가
- 내장 CLI 명령어 제외 (/help, /clear, /exit 등)
- 모든 출력 형식(텍스트, 바차트, 마크다운, JSON)에서 ⚡ 슬래시 커맨드 섹션 표시
v2.7.0 업데이트: 전역 분석 모드 (기본값)
- 기본 범위: 모든 프로젝트 통합 분석 (--global, -g)
- 프로젝트 모드: 현재 프로젝트만 분석 (--project, -p)
- ~/.claude/projects/ 하위 모든 프로젝트 세션을 병렬 스캔
v2.6.0 업데이트: 기본값 변경 (UX 개선)
- 기본 기간: 이번 주 (월~오늘) → --all로 전체 기간
- 기본 출력: 텍스트 테이블 → --bar로 ASCII 바 차트
v2.5.0 업데이트: 고급 분석 + 병렬 처리
- 에이전트 체이닝 패턴 분석 (--chain)
- 시간대별 사용 패턴 분석 (--temporal)
- 에러 유형별 분류 (--errors)
- 전체 고급 분석 (--full)
- 병렬 세션 파싱 (기본 활성, 3배 빠름)
v2.4.0 업데이트: ASCII 바 차트 출력 추가
v2.3.0 업데이트: 세션 모드가 기본값으로 변경 (--stream으로 이전 모드 사용 가능)
v2.1.0 업데이트: 미호출 항목에 파일 경로와 description 표시
핵심 특징: 내장 에이전트(general-purpose, Explore, Plan 등)는 기본 제외
사용 시점
다음과 같은 요청이 있을 때 이 스킬을 사용하세요:
- "기여도 분석해줘"
- "에이전트 통계"
- "이주의 에이전트"
- "스킬 사용 현황"
- "이번 주 에이전트 실행 횟수"
- "미호출 에이전트 찾아줘"
실행 명령어
~/.claude/venv/bin/python ~/.claude/skills/agent-leaderboard/scripts/analyze_contributions.py
슬래시 커맨드
# 기본 (이번 주 + 모든 프로젝트 + 텍스트 테이블)
/agent-leaderboard
# 현재 프로젝트만 분석
/agent-leaderboard --project
/agent-leaderboard -p
# 바 차트 형식
/agent-leaderboard --bar
# 전체 기간
/agent-leaderboard --all
/agent-leaderboard --all --bar
# 고급 분석
/agent-leaderboard --full # 전체 고급 분석 (Karpathy-level)
/agent-leaderboard --chain # 체이닝 패턴만
/agent-leaderboard --temporal # 시간대별 패턴만
/agent-leaderboard --errors # 에러 분류만
CLI 옵션
날짜 필터
| 옵션 | 설명 |
|---|---|
| (기본) | 이번 주 통계 (월요일~오늘) |
--all |
전체 기간 통계 |
--today |
오늘 통계 |
--month YYYY-MM |
특정 월 통계 |
--start YYYY-MM-DD |
시작 날짜 (--end와 함께) |
--end YYYY-MM-DD |
종료 날짜 |
출력 형식
| 옵션 | 설명 |
|---|---|
| (기본) | 텍스트 테이블 형식 (미호출 항목 포함) |
--bar |
ASCII 바 차트 형식 (호출량 + 성공률 시각화) |
--report |
마크다운 리포트 출력 |
--json |
JSON 형식 출력 |
분석 범위
| 옵션 | 설명 |
|---|---|
--global, -g |
모든 프로젝트 통합 분석 [기본값] |
--project, -p |
현재 프로젝트만 분석 |
기타 옵션
| 옵션 | 설명 |
|---|---|
--top N |
상위 N개 표시 (기본값: 10) |
--type agent/skill |
타입 필터 |
--include-builtin |
내장 에이전트 포함 (기본: 제외) |
--session |
세션 히스토리 기반 분석 (기본값) |
--stream |
stream.jsonl 기반 분석 (Hook 로그만, 크래시 미포함) |
--input PATH |
stream.jsonl 경로 지정 (--stream 모드용) |
--chain |
에이전트 체이닝 패턴 분석 (연속 호출 패턴) |
--temporal |
시간대별 사용 패턴 분석 (피크 시간, 요일별) |
--errors |
에러 유형별 분류 (OOM, timeout 등) |
--full |
전체 고급 분석 (--chain + --temporal + --errors) |
--workers N |
병렬 워커 수 (기본: CPU 코어 수, 최대 8) |
--no-parallel |
순차 처리 강제 (디버깅용) |
출력 예시
텍스트 출력 (기본)
======================================================================
Agent Leaderboard - 에이전트/스킬 기여도 리포트
======================================================================
기간: 2026-01-02 ~ 2026-01-17 (16일)
총 실행: 210회 (에이전트 130회, 스킬 55회, 커맨드 25회)
(내장 에이전트 제외: general-purpose, Explore, Plan 등)
📊 에이전트 TOP 10
----------------------------------------------------------------------
순위 이름 호출 성공 성공률 총시간
----------------------------------------------------------------------
1 vault-organizer 75 72 96% 1.8h
2 recording-processor 48 45 94% 3.0h
3 single-recording-processor 21 21 100% 9.3m
4 knowledge-orchestrator 18 18 100% 20.5m
...
🔧 스킬 TOP 10
----------------------------------------------------------------------
순위 이름 호출 성공 성공률 총시간
----------------------------------------------------------------------
1 git-commit-push 29 29 100% 1s
2 ontology-sync 16 16 100% 5s
...
⚡ 슬래시 커맨드 TOP 10
----------------------------------------------------------------------
순위 이름 호출 성공 성공률 총시간
----------------------------------------------------------------------
1 agent-leaderboard 12 12 100% 2s
2 wrap 8 8 100% 1s
3 commit 5 5 100% 1s
...
😴 미호출 항목 (등록되어 있으나 사용되지 않음)
----------------------------------------------------------------------
📦 에이전트 (2개)
• visualizer-launcher
경로: .claude/agents/visualizer-launcher.md
목적: 에이전트-스킬 관계 그래프를 생성하고 웹 서버를 실행하여 시각화합니다.
• problem-definition-analyzer
경로: .claude/agents/problem-definition-analyzer.md
목적: 프로젝트 폴더를 분석하여 문제정의 프레임워크에 맞게 정리...
🔧 스킬 (5개)
• calendar-sync
경로: .claude/skills/calendar-sync/SKILL.md
목적: 구글 캘린더 일정을 인물사전에 자동 동기화...
...
======================================================================
🏆 이주의 에이전트상: vault-organizer
75회 호출, 72회 성공 (96%)
======================================================================
JSON 출력
{
"period": {
"start": "2026-01-02",
"end": "2026-01-17"
},
"totals": {
"total_calls": 210,
"agent_calls": 130,
"skill_calls": 55,
"command_calls": 25
},
"agents": [
{
"name": "vault-organizer",
"call_count": 75,
"completed_count": 72,
"failed_count": 3,
"success_rate": 0.96,
"total_duration_seconds": 6455.2,
"avg_duration_seconds": 89.7
}
],
"skills": [...],
"commands": [
{
"name": "agent-leaderboard",
"call_count": 12,
"completed_count": 12,
"success_rate": 1.0
}
],
"uncalled": {
"agents": [
{
"name": "visualizer-launcher",
"path": ".claude/agents/visualizer-launcher.md",
"description": "에이전트-스킬 관계 그래프를 생성하고 웹 서버를 실행하여 시각화합니다."
}
],
"skills": [
{
"name": "calendar-sync",
"path": ".claude/skills/calendar-sync/SKILL.md",
"description": "구글 캘린더 일정을 인물사전에 자동 동기화..."
}
]
}
}
주요 파일
| 파일 | 설명 |
|---|---|
scripts/analyze_contributions.py |
메인 CLI 스크립트 |
scripts/stream_parser.py |
JSONL 파서 (multiline 지원, 내장 에이전트 필터) |
scripts/session_parser.py |
세션 히스토리 파서 (--session 모드용, OOM 크래시 감지) |
scripts/report_generator.py |
리포트 생성기 (성공률, 미호출 감지) |
SKILL.md |
스킬 메타데이터 |
내장 에이전트 목록 (제외 대상)
BUILTIN_AGENTS = {
'general-purpose',
'Explore',
'Plan',
'Bash',
'statusline-setup',
'claude-code-guide',
'worktree-review',
}
--include-builtin 옵션으로 포함 가능
성공/실패 판정
기본 모드 (stream.jsonl)
- 성공: start 이벤트와 매칭되는 end 이벤트가 있음
- 실패: start만 있고 end가 없음 (중단, 크래시, 진행 중)
- 한계: OOM 크래시 시 Hook 자체가 실행되지 않아 로깅 안됨
세션 모드 (--session)
- 성공(completed): tool_result가 있고 에러 아님
- 실패(failed): tool_result에 is_error=true 또는 에러 패턴 포함
- 크래시(crashed): tool_use는 있으나 tool_result가 없음 (OOM 등)
- 장점: OOM 크래시까지 정확히 추적 (실제 성공률)
모드 비교 예시
vault-organizer:
stream.jsonl: 75회, 100% 성공 (Hook이 기록한 것만)
session: 60회, 70% 성공 (실제 - 크래시 18회 포함)
데이터 소스
기본 모드: .claude/stream.jsonl
Hook 시스템이 에이전트/스킬 실행 시 자동으로 기록:
{"ts": 1767364005109, "event": "start", "type": "agent", "name": "vault-organizer", "id": "2ac84ef7"}
{"ts": 1767364011863, "event": "end", "type": "agent", "name": "vault-organizer", "id": "2ac84ef7"}
세션 모드 (--session): ~/.claude/projects/[project-slug]/*.jsonl
Claude Code가 세션별로 자동 생성하는 로그:
// Task 호출
{"type":"assistant","message":{"content":[{"type":"tool_use","name":"Task","input":{"subagent_type":"vault-organizer"}}]}}
// 결과
{"type":"user","message":{"content":[{"type":"tool_result","tool_use_id":"...","is_error":false}]}}
의존성
표준 라이브러리만 사용 (추가 설치 없음):
- json
- re
- datetime
- argparse
- collections
- dataclasses
- pathlib
관련 문서
- CLAUDE.md: 프로젝트 전체 가이드
- Hook 설정:
.claude/settings.local.json(stream.jsonl 로깅) - history-insight 스킬: 세션 히스토리 패턴 분석
라이선스
개인 사용 전용
# README.md
Agent Leaderboard
Analyze and report on agent/skill/command execution contributions in Claude Code. Parse execution logs to calculate call counts, success rates, and rankings.
Installation
Claude Code Plugin (Recommended)
/plugin install kubony/claude-agent-leaderboard
Manual Installation
git clone https://github.com/kubony/claude-agent-leaderboard.git
cp -r claude-agent-leaderboard ~/.claude/skills/agent-leaderboard
Usage
Slash Command
# Basic (this week + all projects + text table)
/agent-leaderboard
# Current project only
/agent-leaderboard --project
/agent-leaderboard -p
# ASCII bar chart
/agent-leaderboard --bar
# Full period
/agent-leaderboard --all
# Advanced analysis
/agent-leaderboard --full
CLI Options
Date Filter
| Option | Description |
|---|---|
| (default) | This week stats (Mon~today) |
--all |
Full period stats |
--today |
Today only |
--month YYYY-MM |
Specific month |
Analysis Scope
| Option | Description |
|---|---|
--global, -g |
All projects combined [default] |
--project, -p |
Current project only |
Output Format
| Option | Description |
|---|---|
| (default) | Text table output |
--bar |
ASCII bar chart output |
--report |
Markdown report |
--json |
JSON output |
Advanced Analysis
| Option | Description |
|---|---|
--full |
Full analysis (chaining + temporal + errors) |
--chain |
Agent chaining pattern analysis |
--temporal |
Usage pattern by time/day |
--errors |
Error classification |
Features
- Call Statistics: Track custom agent/skill/command invocations
- Slash Command Tracking: Track
/wrap,/commit, etc. usage (v2.8.0) - Global Analysis: Analyze all projects at once (v2.7.0)
- Success Rate: Calculate completion rates (including OOM crash detection)
- Execution Time: Total and average duration per agent/skill
- Uncalled Items: Detect registered but unused agents/skills
- Weekly Award: "Agent of the Week" selection
- Built-in Filter: Excludes Claude Code built-in agents (general-purpose, Explore, Plan, etc.)
Data Sources
Session Mode (Default)
Parses ~/.claude/projects/[project-slug]/*.jsonl session logs:
- Accurate OOM crash tracking
- Real success rate calculation
- Slash command tracking
Stream Mode (--stream)
Parses .claude/stream.jsonl hook logs:
- Faster parsing
- Limited crash detection (hooks don't run on OOM)
Output Example
======================================================================
Agent Leaderboard - Agent/Skill Contribution Report
======================================================================
Period: 2026-01-02 ~ 2026-01-17 (16 days)
Total Runs: 210 (Agents: 130, Skills: 55, Commands: 25)
📊 Agent TOP 10
----------------------------------------------------------------------
Rank Name Calls Success Rate Time
----------------------------------------------------------------------
1 vault-organizer 75 72 96% 1.8h
2 recording-processor 48 45 94% 3.0h
3 single-recording-processor 21 21 100% 9.3m
...
🔧 Skill TOP 10
----------------------------------------------------------------------
Rank Name Calls Success Rate Time
----------------------------------------------------------------------
1 git-commit-push 29 29 100% 1s
2 ontology-sync 16 16 100% 5s
...
⚡ Slash Command TOP 10
----------------------------------------------------------------------
Rank Name Calls Success Rate Time
----------------------------------------------------------------------
1 wrap 44 44 100% 44s
2 agent-leaderboard 44 44 100% 44s
3 git-commit-push 41 41 100% 41s
...
🏆 Agent of the Week: vault-organizer
75 calls, 72 successes (96%)
======================================================================
Changelog
v2.8.0
- Slash Command Tracking: Track
/wrap,/commit, etc. usage - Filter built-in CLI commands (
/help,/clear,/exit, etc.) - ⚡ Command section in all output formats
v2.7.0
- Global Analysis Mode: Analyze all projects by default (
--global) --projectoption for current project only- Parallel scanning of
~/.claude/projects/
v2.6.0
- Default period changed to "this week" (use
--allfor full period) --baroption for ASCII bar chart
Requirements
- Python 3.8+
- No external dependencies (stdlib only)
License
MIT
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.