Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/cosmix/loomnpx agentmods add skills/cosmix/loom/loom-git-workflowWrote 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/cosmix/loom/loom-git-workflow)<a href="https://agentmods.dev/skills/cosmix/loom/loom-git-workflow"><img src="https://agentmods.dev/badge/skills/cosmix/loom/loom-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/cosmix/loom/loom-git-workflow"><img src="https://agentmods.dev/badge/skills/cosmix/loom/loom-git-workflow.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 1 finding, 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 Tool Misuse · line 139 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.
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.00027 | $0.02138 |
| Opus 5.5 | $0.00011 | $0.00855 |
| Sonnet 5.5 | $0.00005 | $0.00428 |
| Haiku 4.5 | $0.00003 | $0.00214 |
Grade A, and why
loom-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 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.
Git Workflow
Overview
Git operations with an eye to a clean, bisectable history and safe collaboration. Canonical home for commit hygiene and conventional commits (referenced by /loom-code-review and /loom-refactoring).
The golden rule
Never rewrite history that others have based work on. rebase, commit --amend, reset --hard, and push --force on a shared/public branch orphan collaborators' commits and force painful recovery. Rewrite freely on your own un-pushed / unshared branch; treat anything pushed to a shared branch as immutable.
- Force-push only your own feature branch, and prefer
--force-with-lease(aborts if someone else pushed since your last fetch) over--force. - Never force-push
main/master/release/*— protect them server-side.
Commit hygiene (conventional commits)
Format: type(scope): description — feat, fix, docs, refactor, test, chore (+ perf, build, ci, style). ! or a BREAKING CHANGE: footer marks an incompatible change.
- Atomic: one logical change per commit. It should build and pass tests on its own — a green history is a bisectable history.
- Separate refactor from behavior change (see
/loom-refactoring): arefactor:commit is a runtime no-op; afix:commit changes behavior. Mixing them hides the fix from reviewers and poisonsgit bisect. - Message = what + why, not how. The diff shows how. Body explains motivation, tradeoffs, and links issues.
- Group by concern: 5 files across 3 concerns → 3 commits (module / its tests / wiring), not 1 monolith or 5 fragments.
git commit -m "fix(cart): resolve race in quantity update
Rapid add/remove let the count go negative via unsynchronized state.
Guard with an atomic compare-and-swap.
Fixes #234"
⚠ Loom stages: never git add -A / git add . — that stages the .loom/work/ symlink (or the legacy .work/ symlink). Stage specific files only.
Rebase vs. merge — pick deliberately
| Situation | Use | Why |
|---|---|---|
Update your local feature branch with main |
rebase |
Linear history; your commits replay on top, no merge noise |
Integrate a reviewed feature into main |
merge (often --no-ff) |
Preserves the branch as a reviewable unit; never rewrites shared history |
| Branch already pushed & others pulled it | merge (NOT rebase) |
Golden rule — rebasing rewrites shared commits |
| Clean up messy local WIP commits before a PR | rebase -i (before pushing) |
Squash/reorder/reword while still private |
| Long-lived branch, want to record integration points | merge |
Merge commits document when integration happened |
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 Changed · -13 tokens per session 57c5be4943ce
- 1mo ago First seen · 174 lines · 40 tokens per session scan A 8f636e425b8d
loom-git-workflow is a skill published in the GitHub repository cosmix/loom (62 stars, last pushed yesterday), licensed MIT. It adds 27 tokens to every session and 2,138 once invoked, about $0.0001 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
conventional-commit
Generer conventional commit-meldinger med Nav-relevante scopes og breaking change-format.
commit-changes
Stage, commit, and amend changes with conventional commit messages. Covers reviewing changes, selective staging, writing descriptive commit messages using HEREDOC format, and verifying commit history. Use when saving a logical unit of work to version control, creating a commit with a conventional message, amending the…
configure-git-repository
Configure a Git repository with proper .gitignore, branch strategy, commit conventions, hooks, and remote setup. Covers initial setup and common patterns for R, Node.js, and Python projects. Use when initializing version control for a new project, adding a .gitignore for a specific language or framework, setting up…
squash-branch
Review commits in a branch, date range, or recent history; group related work into a clean linear history; and verify that the final tree is unchanged. Use when the user asks to squash commits, clean Git history, combine WIP commits, organize today's commits, or prepare a readable commit stack.
git-commit-helper
Generate conventional commit messages automatically. Use when user runs git commit, stages changes, or asks for commit message help. Analyzes git diff to create clear, descriptive conventional commit messages. Triggers on git commit, staged changes, commit message requests.
spec-apply
Implement an OpenSpec change's tasks in parallel - read the task queue, plan file-disjoint waves, dispatch one agent per task into its own worktree, verify, tick the checkbox, commit, repeat. Use when the user says "apply the change", "implement the change", "run the tasks", "work the tasks in parallel", "fan out the…