Claude-kit session-insights
Analyze past Claude Code sessions to extract patterns, metrics, and recommendations.
install
source · Clone the upstream repo
git clone https://github.com/luiseiman/dotforge
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/luiseiman/dotforge "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/session-insights" ~/.claude/skills/luiseiman-claude-kit-session-insights && rm -rf "$T"
manifest:
skills/session-insights/SKILL.mdsource content
Session Insights
Analyze the current project's Claude Code usage patterns and generate actionable recommendations.
Step 1: Gather session data
Collect data from available sources in the current project:
- Session metrics —
(structured JSON from session-report hook)~/.claude/metrics/{project-slug}/*.json - CLAUDE_ERRORS.md — error frequency by Area and Type
- Git log — files most frequently modified in commits mentioning "fix", "bug", "error"
- .claude/agent-memory/ — learnings accumulated by agents
- Registry history — audit score trend from
$DOTFORGE_DIR/registry/projects.yml
If a source doesn't exist, skip it and note as "unavailable".
Retroactive Analysis (no session metrics yet)
When
~/.claude/metrics/{project-slug}/ is empty or doesn't exist, reconstruct a pseudo-historical picture:
- CLAUDE_ERRORS.md → parse dates and group errors by week/month to show trends
- Git log →
to identify:git log --name-only --since="60 days ago"- Hot files (most frequently changed)
- Fix frequency (
)git log --grep="fix" --oneline | wc -l - Commit cadence by week
- Registry history → score progression over time
- Rule glob coverage → cross-reference
againstgit log --name-only
globs to estimate historical rule coverage.claude/rules/*.md
Mark all retroactive data clearly as:
⚠ Inferred from git history — no session metrics available yet. Session metrics will accumulate automatically after /forge sync.
Step 2: Compute metrics
From available data, calculate:
Session Metrics (from ~/.claude/metrics/)
When JSON metrics files exist, aggregate across the last N sessions (default 20):
- Total sessions: count of metric files
- Avg files touched: mean files_touched per session
- Avg hook blocks: mean hook_blocks + lint_blocks (lower is better — team is learning)
- Rule coverage trend: plot rule_coverage over time (improving / stable / declining)
- Error rate: errors_added / sessions (target: < 0.5)
Error Patterns
- Top error areas: group CLAUDE_ERRORS.md entries by Area, rank by count
- Error types distribution: count by Type (syntax, logic, integration, config, security)
- Repeat offenders: areas with 3+ errors (candidates for rule creation)
File Activity
- Hot files: top 10 most-edited files (from git log)
- Churn rate: files edited > 5 times in last 30 days (may need refactoring)
- Untested hot files: hot files without corresponding test files
Agent Usage (from agent-memory/)
- Active agents: which agents have accumulated learnings
- Top learnings: most recent entries per agent
- Gaps: agents with memory enabled but no learnings (underused)
Score Trend (from registry)
- Current score: latest audit score
- Trend: improving, stable, or declining (compare last 3 audits)
- Projected: if declining, estimate when score drops below 7.0
Step 3: Generate recommendations
Based on metrics, produce actionable recommendations:
- Repeat errors → suggest creating a rule in
targeting that area.claude/rules/ - Hot untested files → suggest test creation
- Score declining → suggest
to update configuration/forge sync - Underused agents → suggest delegation patterns for common tasks
- High churn files → suggest refactoring or better abstractions
Step 4: Feed practices pipeline
For the top 3 most impactful recommendations:
- Check if a practice already exists in
or$DOTFORGE_DIR/practices/inbox/active/ - If not, create a practice in
:practices/inbox/source_type: session-insightstags: [insights, <area>]
- Report which practices were created
Step 5: Generate report
Output format:
═══ SESSION INSIGHTS: {{project}} ═══ Fecha: {{YYYY-MM-DD}} Data sources: {{list of available sources}} ── SESSION METRICS ── Sessions tracked: {{N}} (since {{first date}}) Avg files/session: {{N}} | Avg commits/session: {{N}} Hook blocks: {{N}} destructive, {{N}} lint (total across sessions) Rule coverage: {{trend}} ({{current}}% — last 5: {{values}}) Error rate: {{N}} errors/session {{if retroactive: "⚠ Inferred from git history"}} ── ERROR PATTERNS ── Top areas: {{area}} ({{count}} errors), ... Type distribution: logic {{N}}, config {{N}}, ... Repeat offenders: {{areas with 3+ errors}} ── FILE ACTIVITY ── Hot files (last 30 days): 1. {{file}} — {{N}} edits 2. ... Untested hot files: {{list or "none"}} High churn (>5 edits): {{list or "none"}} ── AGENT USAGE ── Active: {{agents with learnings}} Underused: {{agents with empty memory}} ── SCORE TREND ── Current: {{score}}/10 Trend: {{improving|stable|declining}} ({{last 3 scores}}) ── RECOMMENDATIONS ── 1. {{recommendation}} — impact: {{high|medium|low}} 2. ... ── PRACTICES CREATED ── {{list of new practices or "none"}}