Borrowing it
Nothing to install: this file belongs to AlexanderMattTurner/agent-glovebox. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/AlexanderMattTurner/agent-glovebox/main/.claude/skills/git-workflow/SKILL.mdgit clone --depth 1 https://github.com/AlexanderMattTurner/agent-gloveboxWrote 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/alexandermattturner/agent-glovebox/git-workflow)<a href="https://agentmods.dev/skills/alexandermattturner/agent-glovebox/git-workflow"><img src="https://agentmods.dev/badge/skills/alexandermattturner/agent-glovebox/git-workflow/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/alexandermattturner/agent-glovebox/git-workflow"><img src="https://agentmods.dev/badge/skills/alexandermattturner/agent-glovebox/git-workflow.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 5 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high Agent Snooping · line 24 Skill reads from agent configuration directories (.claude/, .codex/, .gemini/). These directories may contain API keys, personal settings, and other credentials that the skill has no legitimate need to access.Fix: Remove all code or instructions that access agent configuration directories (.claude/, .codex/, .gemini/). If configuration values are needed, pass them explicitly as parameters or environment variabl
- high Prompt Injection · line 66 Hidden instructions were detected in comments or invisible text. These could contain malicious directives. Manual review is recommended.Fix: Audit all comments and invisible characters. Remove any instructions that direct the agent to perform unauthorized actions. Use plain, reviewable content.
- high Agent Snooping · line 103 Skill reads from agent configuration directories (.claude/, .codex/, .gemini/). These directories may contain API keys, personal settings, and other credentials that the skill has no legitimate need to access.Fix: Remove all code or instructions that access agent configuration directories (.claude/, .codex/, .gemini/). If configuration values are needed, pass them explicitly as parameters or environment variabl
- high Tool Misuse · line 107 Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).Fix: Validate all tool parameters against an allowlist. Reject dangerous parameter values (shell=True, --force, -rf /) and use safe defaults.
- medium Excessive Agency · line 79 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
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.00127 | $0.09259 |
| Opus 5.5 | $0.00051 | $0.03704 |
| Sonnet 5.5 | $0.00025 | $0.01852 |
| Haiku 4.5 | $0.00013 | $0.00926 |
Grade A, and why
git-workflow 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 yesterday.
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 — 203 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Git workflow mechanics
Rules that bind before the first command
Use Conventional Commits. Never amend, rebase, squash, force-push, use --no-verify, or bypass a hook. Fix mistakes with a new commit, and resolve conflicts with a merge commit.
A commit that touches CI machinery — a workflow, a landing or queue script, the scheduler — ships its TLA+ answer in the same PR; .claude/rules/tla-plus.md owns it.
Push once after the complete unit of work. Before every follow-up push, query the branch PR through the REST API and branch from current origin/main if it merged or closed.
A relocation leaves NO file at the old path, and it lands on its own PR the same day. Git detects a rename only when the old path is gone, so a launcher, a shim or a re-export left behind makes every later edit main makes at that path conflict as ONE hunk spanning the whole file, which the auto-resolve workflow refuses and a human then resolves by hand. Move the body, delete the old path, and give any launcher a NEW name. Then stack the features that use it on the landed move.
Never git stash to compare your tree against HEAD — provision a detached worktree instead (git worktree add --detach <path> HEAD, which needs that destination path). git stash push -u aborts partway on a path the Bash sandbox cannot read (.claude/hooks/vendor/redactor/certifi/cacert.pem) and creates NO entry, so the paired pop takes stash@{0} — whatever foreign entry this clone already holds — into your working tree as conflicted files. Recover with git checkout HEAD -- <the foreign paths>, then delete the .git/rr-cache/ entries that pop recorded (find .git/rr-cache -maxdepth 1 -type d -mmin -20), or rerere silently re-applies "take HEAD" to a later real conflict on those same files.
Preserve at least 200 diagnostic lines. Keep the real command exit status with set -o pipefail or capture $? before printing a redirected log. The shell is zsh, so never read ${PIPESTATUS[0]}; it is empty there and a rejected push reads as exit 0. Brace a shell variable before :.
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.
- yesterday Changed fa2eeee61460
- 11d ago Changed fd4721fbd8f6
- 12d ago Changed e7f87bfc75ec
- 15d ago Changed 89e8fd7f6184
- 16d ago Changed · +2 lines 5a15b802e995
- 19d ago Changed · +2 lines 3c6c6fe2b969
- 20d ago Changed 59b09cda9e0a
- 21d ago Changed · +2 lines ca0030ead0f9
- 22d ago Changed 040bc342eb14
- 25d ago First seen · 197 lines · 127 tokens per session scan A 86f71f80bccd
git-workflow is a skill published in the GitHub repository AlexanderMattTurner/agent-glovebox (68 stars, last pushed yesterday), licensed Apache-2.0. It adds 127 tokens to every session and 9,259 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
create-pr
Creates a GitHub PR with a Linear-ticket-prefixed title and a decision-led, narrative description for Prisma 8. Use when the user wants to create a pull request, open a PR, or submit changes for review.
git-commit
Generate well-formatted git commit messages following conventional commit standards.
repo-sync
Manage automatic Git syncing on macOS with repo-sync. Use only when the user explicitly invokes /repo-sync.
mcore-split-pr
Split a PR into multiple PRs to reduce the number of required CODEOWNERS reviewer groups.
engineer-bot-ops
A workflow for carrying an engineering task from scope through implementation and reviewable delivery. It works with a repository's branch, existing changes, rules, checks, and permissions while separating completed, unverified, and next-step work.
contributing
How to contribute to evlog, covering commit and PR conventions, changesets, the Definition of Done, testing rules, and the authored skills that walk through building a new adapter, enricher, framework integration, or map rule. Load this for any question about contributing, opening a PR, or adding something to the…