Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add michalstrnadel/source-to-skill --skill pro-gitgit clone --depth 1 https://github.com/michalstrnadel/source-to-skillWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/michalstrnadel/source-to-skill/pro-git)<a href="https://agentmods.dev/skills/michalstrnadel/source-to-skill/pro-git"><img src="https://agentmods.dev/badge/skills/michalstrnadel/source-to-skill/pro-git/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/michalstrnadel/source-to-skill/pro-git"><img src="https://agentmods.dev/badge/skills/michalstrnadel/source-to-skill/pro-git.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00122 | $0.02416 |
| Opus 5.5 | $0.00049 | $0.00966 |
| Sonnet 5.5 | $0.00024 | $0.00483 |
| Haiku 4.5 | $0.00012 | $0.00242 |
Grade A, and why
pro-git scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 73 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Pro Git
Derived from Pro Git, 2nd edition, by Scott Chacon and Ben Straub, licensed CC BY-NC-SA 3.0 (https://creativecommons.org/licenses/by-nc-sa/3.0). This distillation carries the same license.
The book covers the CLI from first principles. Chapters 1–3 teach the model, 4–6 cover collaboration, 7–8 cover power tools and customization, 9 covers other VCSs and 10 covers internals. Load a chapter file when a question needs its detail. The models below answer most "why does Git do that?" questions.
Core mental models
- Snapshots, not deltas. Each commit records the full state of the project. Unchanged files are stored as references to the copy Git already has. Bringing a CVS/SVN "list of file changes" mental model into Git is the root of most confusion. → Ch1
- Nearly everything is local, and content is checksummed. The full history lives in your clone, so log, diff and commit work offline. Everything is addressed by SHA-1, so silent corruption is detectable. Git mostly adds data: anything committed is very hard to lose. Uncommitted work has no such protection.
- Three states and three trees. A file is modified (working tree), staged (index) or committed (Git directory/HEAD).
git addstages the content as it is at that moment. Edit the file again and it is both staged and unstaged.git diffcompares working tree with index;git diff --stagedcompares index with last commit. → Ch2 - A branch is a 41-byte file holding a commit SHA-1; HEAD points to the current branch. Branching is nearly free, and committing moves the current branch forward. A fast-forward merge just moves a pointer. A diverged merge is a three-way merge (two tips plus their common ancestor) and makes a commit with multiple parents. → Ch3
- Remote-tracking branches are bookmarks.
origin/masterrecords where the remote was at your last fetch, and only network operations move it.fetchonly downloads.pull= fetch + merge (or rebase). A push is refused when someone pushed first, because Git never merges on the server. - Merge vs rebase gives the same snapshot and a different story. Rebase replays commits to make linear history and creates new commits. The rule: rebase local work before pushing, and never rebase commits others may have built on. → Ch3, Ch5
resetis three steps. (1) Move the branch HEAD points to:--softstops here. (2) Make the index match: the default--mixedstops here. (3) Make the working tree match: only--hard, the one form that can destroy uncommitted work. With a path, step 1 is skipped.checkout/switchmoves HEAD itself, whileresetmoves the branch under it. → Ch7- Rewriting changes SHA-1s. Amend,
rebase -i,filter-branchand reset rewrite the target commit and every commit after it. For shared history usegit revert(-m 1for a merge) instead. - Git is a content-addressable store. Blobs hold file contents with no names. Trees map names to blobs and subtrees. Commits point to a tree, parents and author info. Tags point to objects. Refs are files naming SHA-1s. Objects start loose and get delta-compressed into packfiles. Anything reachable stays in every clone, so removing a big file means rewriting history. → Ch10
- Hooks are local convenience; server hooks are policy. Client hooks are not cloned and
--no-verifybypasses them. Enforce rules inpre-receive/updateon the server. → Ch8
What ships with it
18 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- chapters/01-getting-started.md 12 KB
- chapters/02-git-basics.md 16 KB
- chapters/03-git-branching.md 17 KB
- chapters/04-git-on-the-server.md 15 KB
- chapters/05-distributed-git.md 19 KB
- chapters/06-github.md 16 KB
- chapters/07-git-tools.md 32 KB
- chapters/08-customizing-git.md 20 KB
- chapters/09-git-and-other-systems.md 21 KB
- chapters/10-git-internals.md 24 KB
- chapters/11-appendix-a-git-in-other-environments.md 8.0 KB
- chapters/12-appendix-b-embedding-git.md 13 KB
- chapters/13-appendix-c-git-commands.md 11 KB
- cheatsheet.md 12 KB
- evals/evals.json 4.1 KB
- evals/last-run.json 2.4 KB
- glossary.md 7.7 KB
- source.json 2.0 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 73 lines · 122 tokens per session scan A 4c65d79ba181
pro-git is a skill published in the GitHub repository michalstrnadel/source-to-skill (8 stars, last pushed 11d ago), licensed MIT. It adds 122 tokens to every session and 2,416 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-05.
pro-git compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| pro-gitmichalstrnadel/source-to-skill | Skill | 8 | 11d ago | MIT | A | 122 | Claude Code |
| setup-husky-dotnetSebastienDegodez/copilot-instructions | Skill | 199 | 1mo ago | Apache-2.0 | A | 30 | Claude Code, Codex |
| generate-commit-messageanchildress1/awesome-github-copilot | Skill | 66 | 1mo ago | MIT | A | 158 | Claude Code |
| git-commitfabioc-aloha/Alex_Skill_Mall | Skill | 5 | yesterday | MIT | A | 70 | Claude Code, Codex |
| pr-fallbackulises-jeremias/agent-toolkit | Skill | 19 | today | MIT | A | 55 | Claude Code |
| commityuri-semenenko/ai-engineering-workspace | Skill | 4 | 3d ago | MIT | A | 94 | Claude Code |
| git-workflow-and-versioningGuillemRoca/agent-skills-android | Skill | 5 | 1mo ago | MIT | A | 77 | Claude Code |