بنقرة واحدة
github-velocity
Generate a beautiful HTML delivery velocity report from GitHub data
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Generate a beautiful HTML delivery velocity report from GitHub data
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
| name | github-velocity |
| description | Generate a beautiful HTML delivery velocity report from GitHub data |
| triggers | ["github velocity","delivery velocity","github report","shipping velocity","code velocity"] |
Generate a comprehensive, visual HTML report that tells the story of a developer's GitHub delivery velocity over time, correlated with AI model milestones. The deterministic scripts collect data and compute metrics. YOU generate the creative narrative that makes each report unique.
Scripts (deterministic) → insights.json (metrics, charts, timelines)
YOU (creative storyteller) → narratives.json (story, callouts, project profiles)
HTML template → consumes BOTH files (renders the full report)
The scripts handle numbers. You handle meaning. Don't just describe charts — interpret them. Find the surprising, the personal, the trajectory.
Before anything else, run these checks and auto-install anything missing:
# Check each prerequisite — install if missing
command -v python3 >/dev/null 2>&1 || { echo "Installing Python..."; brew install python3; }
command -v jq >/dev/null 2>&1 || { echo "Installing jq..."; brew install jq; }
command -v gh >/dev/null 2>&1 || { echo "Installing GitHub CLI..."; brew install gh; }
# Check gh authentication — prompt login if needed
gh auth status >/dev/null 2>&1 || { echo "GitHub CLI not authenticated."; gh auth login; }
If brew is not available (Linux), use apt-get install or yum install instead. If gh auth login requires interactive input, tell the user to run ! gh auth login in the prompt so the interactive flow runs in their terminal.
All four must pass before proceeding: python3 --version && jq --version && gh auth status
bash ~/.claude/skills/github-velocity/scripts/01_collect_data.sh --output ./gh_dump
Flags: --username NAME (default: auto-detect), --output DIR (default: ./gh_dump)
Creates: user_profile.json, repos_metadata.json, contribution_calendar.jsonl, repo_stats.jsonl, search_commits.jsonl, repo_languages.jsonl
Rate limits: Script respects GitHub API limits. If Search API is rate-limited, it skips gracefully — the report still works. Re-run later to fill gaps.
python3 ~/.claude/skills/github-velocity/scripts/02_analyze.py --input ./gh_dump --output ./gh_dump/insights.json
Produces insights.json with: monthly timeline, DVI, eras, milestones, language breakdown, top repos, heatmap, data caveats.
Read ./gh_dump/insights.json and ./gh_dump/search_commits.jsonl. Analyze the data deeply, then write ./gh_dump/narratives.json with these fields:
{
"hero_tagline": "...",
"story_intro": "...",
"section_narratives": {
"timeline": "...",
"dvi": "...",
"lines": "...",
"lines_per_commit": "...",
"eras": "...",
"milestones": "...",
"languages": "...",
"repos": "...",
"heatmap": "...",
"yearly": "..."
},
"anomaly_callouts": ["...", "...", "...", "..."],
"project_showcases": [
{ "repo": "repo-name", "headline": "THE STARTUP", "narrative": "..." }
],
"work_patterns": "...",
"closing_statement": "..."
}
Commit messages — Read search_commits.jsonl and group by era. Extract dominant themes, vocabulary shifts, what the person was building. The language of commit messages tells a story: are they fixing, building, refactoring, automating?
Heatmap patterns — Analyze the day-of-week distribution from insights.json heatmap data. Are they a weekday coder? Weekend warrior? Do they have streaks? Gaps?
Anomalies — Find surprising patterns: biggest month-over-month jumps, longest gaps followed by explosions, repos that appeared and disappeared, the relationship between AI milestone dates and velocity changes.
Project identity — From repo names, descriptions, languages, and commit themes, figure out what each major project IS and write a narrative about it. A repo name alone means nothing — your job is to explain whether it's a SaaS platform, an AI system, a dev tool, etc.
The arc — What's the overall story? Side-project tinkerer → enterprise engineer → AI-augmented architect? Student → professional → founder? Find the narrative arc in the data.
mkdir -p ~/Desktop/velocity-report
cp ~/.claude/skills/github-velocity/template/velocity.html ~/Desktop/velocity-report/index.html
cp ./gh_dump/insights.json ~/Desktop/velocity-report/insights.json
cp ./gh_dump/narratives.json ~/Desktop/velocity-report/narratives.json
The HTML loads both JSON files via fetch, so it needs a local server:
cd ~/Desktop/velocity-report && python3 -m http.server 8080
Open http://localhost:8080 in a browser.
Open the report in Playwright or the browser and review. The user may want to:
:root variables)| Issue | Fix |
|---|---|
gh: command not found | brew install gh then gh auth login |
Empty search_commits.jsonl | Search API rate-limited. Wait 60s and re-run |
| Charts don't render | Must use HTTP server, not file:// |
| Very few repos in stats | GitHub stats API needs retries. Re-run collection |
| Narratives feel generic | Read the commit messages more carefully. Find specific project names, themes, vocabulary shifts |
Single-page HTML with cosmic dark theme, 14+ sections, Chart.js visualizations, AI milestone annotations, and LLM-generated narrative storytelling. Self-contained except for CDN-loaded Chart.js and Google Fonts.