session:extract
Documentssession:extract is an Agent Skill for documents published in the kagenti/kagenti repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.
Extract Claude Code session analytics to CSV, Markdown, or HTML files
How to use this skill
Bring this guide into your coding agent with a prompt tailored to the tool you use.
- Open your project in Codex.
- Copy and paste the prompt below.
- Review files and risks before approving any action.
Inspect the Agent Skill at https://github.com/kagenti/kagenti/blob/HEAD/.claude/skills/session:extract/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/session-extract, but wait for my approval before writing files or running scripts.
Copying this prompt does not install or run the skill. Review third-party files before use.
flowchart TD
START(["/session:extract"]) --> DETECT["Detect repo"]
DETECT --> PARAMS{"Date range specified?"}
PARAMS -->|Yes| EXTRACT["--phase extract with date range"]:::phase
PARAMS -->|No| EXTRACTALL["--phase extract (all data)"]:::phase
EXTRACT --> OUTPUT["Report output file locations"]:::done
EXTRACTALL --> OUTPUT
classDef phase fill:#2196F3,stroke:#333,color:white
classDef done fill:#4CAF50,stroke:#333,color:white
Follow this diagram as the workflow.
Extract Session Analytics
Extract Claude Code session analytics from GitHub PR/issue comments into CSV, Markdown, or HTML files for offline analysis and reporting.
Workflow
Step 1: Detect Repository
git remote get-url origin | sed 's/.*github.com[:/]\(.*\)\.git/\1/' | sed 's/.*github.com[:/]\(.*\)/\1/'
Step 2: Determine Date Range
Ask the user or accept parameters:
--from-date- Start date (ISO format:YYYY-MM-DD), defaults to 30 days ago--to-date- End date (ISO format:YYYY-MM-DD), defaults to today
Step 3: Run the Extract Phase
python3 .claude/scripts/session-analytics.py \
--phase extract \
--repo <OWNER/NAME> \
--from-date <START_DATE> \
--to-date <END_DATE> \
--output-dir /tmp/kagenti/session/
This will:
- Fetch session comments from all PRs/issues in the date range
- Parse session metrics from each comment
- Generate output files in
/tmp/kagenti/session/:sessions.csv- Raw session data in CSV formatsessions.md- Formatted Markdown reportdashboard.html- Interactive HTML dashboard
Step 4: Report Output
After extraction completes, report the output file locations to the user:
ls -la /tmp/kagenti/session/
Provide the full paths so the user can open or share the files.
Parameters
| Parameter | Source | Required | Default |
|---|---|---|---|
--phase | Always extract | Yes | - |
--repo | Auto-detected from git remote | Yes | - |
--from-date | User-specified or default | No | 30 days ago |
--to-date | User-specified or default | No | Today |
--output-dir | Fixed | No | /tmp/kagenti/session/ |
Examples
# Extract last 30 days (default)
python3 .claude/scripts/session-analytics.py \
--phase extract --repo kagenti/kagenti \
--output-dir /tmp/kagenti/session/
# Extract specific date range
python3 .claude/scripts/session-analytics.py \
--phase extract --repo kagenti/kagenti \
--from-date 2025-01-01 --to-date 2025-01-31 \
--output-dir /tmp/kagenti/session/
# Extract all time
python3 .claude/scripts/session-analytics.py \
--phase extract --repo kagenti/kagenti \
--from-date 2024-01-01 \
--output-dir /tmp/kagenti/session/
Output Files
| File | Format | Use Case |
|---|---|---|
sessions.csv | CSV | Import into spreadsheets, data analysis tools |
sessions.md | Markdown | Share in docs, wikis, or other PRs |
dashboard.html | HTML | Visual overview, open in browser |
Related Skills
session- Router skill for all session analyticssession:post- Post session stats to PR/issue commentsession:summary- Update pinned summary commentsession:dashboard- Generate HTML dashboard