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 wunki/dotfiles --skill smart-commitgit clone --depth 1 https://github.com/wunki/dotfilesWrote 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/wunki/dotfiles/smart-commit)<a href="https://agentmods.dev/skills/wunki/dotfiles/smart-commit"><img src="https://agentmods.dev/badge/skills/wunki/dotfiles/smart-commit/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/wunki/dotfiles/smart-commit"><img src="https://agentmods.dev/badge/skills/wunki/dotfiles/smart-commit.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.00134 | $0.01617 |
| Opus 5.5 | $0.00054 | $0.00647 |
| Sonnet 5.5 | $0.00027 | $0.00323 |
| Haiku 4.5 | $0.00013 | $0.00162 |
Grade A, and why
smart-commit 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 — 174 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Smart Commit — Atomic Commit Grouping
Analyze all uncommitted changes in the working directory, intelligently group related changes into atomic commits, and generate conventional commit messages for each group with clear motivation and context.
Step 1: Gather All Uncommitted Changes
# Get full status including staged, unstaged, and untracked files
git status --short
# Get diff of unstaged tracked changes
git diff
# Get diff of staged changes
git diff --cached
# Get list of untracked files
git ls-files --others --exclude-standard
Note: all four commands are needed to get a complete picture. Untracked files appear only in git ls-files --others. Staged changes appear only in git diff --cached.
Step 2: Analyze and Group Changes
For each changed file, analyze:
- Purpose: What is this change doing? (feature, fix, refactor, etc.)
- Scope: Which module, component, or feature does it affect?
- Relationship: Which other changes are logically related?
Group changes into atomic commits using these rules:
Grouping Rules
- Single Responsibility: Each commit does ONE logical thing.
- Feature Coherence: Changes to the same feature belong together.
- Type Coherence: Do not mix
featwithfixin the same commit unless tightly coupled. - File Relationships:
- Component + its tests = same commit
- Component + its styles = same commit
- Config changes = separate commit (usually
chore) - Documentation = separate commit (usually
docs)
- Dependency Order: If commit B depends on commit A, A comes first.
Type Reference
feat: New functionality — group with related tests and types.fix: Bug fix — group with regression test if added.refactor: Code restructuring — can be larger, but still single purpose.chore: Deps, config, tooling — usually standalone.docs: Documentation only — standalone.style: Formatting — standalone, or omit if entangled with other changes.
Step 3: Present Commit Plan
What ships with it
1 file 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.
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 · 174 lines · 134 tokens per session scan A ae460ac5595e
smart-commit is a skill published in the GitHub repository wunki/dotfiles (47 stars, last pushed 10d ago), licensed MIT. It adds 134 tokens to every session and 1,617 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-08-30.
Other skills, from other repositories
ship
Generate a conventional commit message from staged or unstaged changes and create an atomic commit, then optionally push and watch CI until it passes or fails. Use when the user says "write a commit", "generate a commit message", "commit this", "git add .", or "ship this". Push and CI-watch are optional and skipped if…
coding-standards
Repository coding standards, linters, formatters, CLI design rules, HTTP caching guidelines, and git commit message conventions (Conventional Commits). Includes scripts for formatting Python, shell, Markdown, Kotlin, JSON, and XML. Use when writing, reviewing, formatting, or linting code, verifying CLI ergonomics…
scan-commit
Automatically scan the repository for unstaged/untracked changes, group them into logical commits using hunk-level analysis, stage and commit them following Conventional Commits.
smart-commit
Analyze staged changes and split them into multiple logical commits following Conventional Commits.
create-pr
Rebase from the latest origin/main, squash the commits from it, and then create a PR on github with intelligent commit messages based on staged changes.
gen-commit-msg
Generate intelligent commit messages based on staged changes following Conventional Commits format.