decodingai-magazine/building-a-coding-agent-from-scratch-course/demo-3-repo-pulse
Claude Code and agent skill by decodingai-magazine/building-a-coding-agent-from-scratch-course
- community
Checking that the SKILL.md file is still in the repository.
Demo skill that pulls live GitHub API data for a repo, analyses a full year of weekly commit activity and top contributors, and renders a single-file dashboard.html with stat tiles and inline SVG charts — no chart library.
Install
npx vskill@latest install decodingai-magazine/building-a-coding-agent-from-scratch-course/demo-3-repo-pulseSKILL.md
Build a repo pulse dashboard from live data: probe the GitHub API, pull a repository's last 52 weeks of activity, analyse it, and render everything into one self-contained .decode/outputs/dashboard.html the human can open in a browser. All files this demo produces live under .decode/outputs/ (unless the human named a different path).
Default target repository: pydantic/pydantic-ai. If the human named a different owner/repo, use that instead.
1. Probe the data source
Use web_fetch to look at the live API and learn the exact field names before writing any code:
https://api.github.com/repos/pydantic/pydantic-ai— notestargazers_count,forks_count,
open_issues_count, description.
That one probe is enough — do not fetch the big endpoints with web_fetch; the analysis script will pull those.
2. Write the analysis script
Write .decode/outputs/pulse.py and run it with the one dependency brought in just for the run (do NOT add project dependencies):
The script must:
- GET these three endpoints (plain
requests, no auth token needed):
https://api.github.com/repos/{owner}/{repo}— the headline stats.https://api.github.com/repos/{owner}/{repo}/stats/commit_activity— the last 52 weeks
of commit counts, one entry per week (total commits + a Unix week timestamp). The whole year arrives in this ONE request — never page through /commits for it.
https://api.github.com/repos/{owner}/{repo}/contributors?per_page=10— top contributors
with their commit counts.
- The stats endpoint answers 202 while GitHub computes the data: retry a few times with a
short sleep until it answers 200 with the 52-entry list.
- Aggregate: commits per week across the 52 weeks (label each week with the ISO date of its
week timestamp), the busiest week of the year, and the top-10 contributor leaderboard.
- If the API answers 403 (rate limit), say so plainly; if
GITHUB_TOKENis set in the
environment, send it as a Bearer header.
3. Render the dashboard — charts as inline SVG
Have the script generate .decode/outputs/dashboard.html — one file, zero external requests, no chart library. Draw both charts as inline <svg> elements built with Python string formatting (no image files, no JavaScript):
- A header with the repo name and description.
- Four stat tiles: ⭐ stars, 🍴 forks, 🐛 open issues, 👥 contributors shown.
- Commits per week — an SVG bar chart: one
<rect>per week (52 bars), heights scaled to the
busiest week, a handful of month labels along the x-axis, and a <title> tooltip per bar (YYYY-MM-DD — N commits).
- Top contributors — an SVG horizontal bar chart: one
<rect>per contributor, with the
login and commit count labelled as <text>.
- Simple clean CSS, dark background.
4. Verify and report
- Sanity-check the HTML exists and carries both charts:
grep -c "<svg" .decode/outputs/dashboard.html should print 2.
- Tell the human to open it:
open .decode/outputs/dashboard.html.
Report the headline numbers (stars, forks, open issues), the busiest week of the year, the top contributor, and the one-line command to open the dashboard.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryChecking.decode/skills/demo-3-repo-pulse/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/decodingai-magazine/building-a-coding-agent-from-scratch-course/demo-3-repo-pulse)