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 andr-ca/agentharness --skill branchinggit clone --depth 1 https://github.com/andr-ca/agentharnessWrote 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/andr-ca/agentharness/branching)<a href="https://agentmods.dev/skills/andr-ca/agentharness/branching"><img src="https://agentmods.dev/badge/skills/andr-ca/agentharness/branching/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/andr-ca/agentharness/branching"><img src="https://agentmods.dev/badge/skills/andr-ca/agentharness/branching.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.00041 | $0.01196 |
| Opus 5.5 | $0.00016 | $0.00478 |
| Sonnet 5.5 | $0.00008 | $0.00239 |
| Haiku 4.5 | $0.00004 | $0.00120 |
Grade C, and why
branching scanned grade C with 1 finding 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.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
- **Remove with git, not `rm -rf`** — `git worktree remove <dir>` (or How it starts
The opening of the file, as written. The whole thing — 121 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Branching
Full reference: .github/BRANCHING_STRATEGY.md (worktree deep-dive,
.gitignore policy, lifecycle walkthrough). This skill is the actionable
summary.
The core rule
Never commit directly to main/master/trunk/develop/production/
release/*. Always: branch → commit → push → PR → merge. This repo
enforces it locally via git config core.hooksPath .github/hooks
(already set here) — don't rely on the admin bypass.
Branch naming
{type}/{description}, lowercase, hyphens not underscores, short and
specific.
| Type | Purpose |
|---|---|
feature/ |
New feature or enhancement |
fix/ |
Bug fix |
refactor/ |
No behavior change |
test/ |
Testing improvements |
docs/ |
Documentation only |
chore/ |
Maintenance, deps, config |
perf/ |
Performance improvement |
ci/ |
CI/CD changes |
Good: feature/user-authentication, fix/email-validation-crash.
Bad: update, Feature/UserAuth, fix_everything.
Worktrees
A worktree is a second working directory backed by the same repo, so you can have several branches checked out at once without stashing or re-cloning.
Reach for one when:
- Running long tests/builds on one branch while you keep coding another.
- Reviewing a PR branch without disturbing your in-progress work.
- Running agents in parallel — give each agent/task its own worktree so concurrent runs never fight over one working tree or index. This is the highest-value case for an agent harness.
Skip it for a single quick edit on an already-clean, already-scoped branch — a plain branch switch is cheaper. That exception does not apply once either mandatory condition below is true.
Mandatory, not a preference, before starting new feature/fix implementation work (not Q&A, not read-only investigation) when either is true:
git status --porcelainis non-empty (a dirty tree), or- the current branch is unrelated to the task (someone else's topic
branch, a
chore/*tree, anything not already scoped to this work).
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 · 121 lines · 41 tokens per session scan C 82b6dae22e47
branching is a skill published in the GitHub repository andr-ca/agentharness (1 stars, last pushed 2d ago), licensed MIT. It adds 41 tokens to every session and 1,196 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
atlas-self-configure
Inspect and safely update Atlas user preferences through Atlas's config.toml.
git-ai-search
Search and restore AI conversation context from git history.
remember
Save the decisions, facts, dead ends and architecture this conversation established to Atlas's shared memory, so other agents and future sessions can build on them.
mcore-split-pr
Split a PR into multiple PRs to reduce the number of required CODEOWNERS reviewer groups.
release
Publish a herdr-gpui release. Use when the user asks to cut, push, ship, or publish a release, or to approve, verify, or GPG-sign one that is already running. Covers just release, the protected environments the run stops at, and the local verification and signing steps that are not part of CI.
machinist
Use Machinist to create, assign, and monitor software tasks. Use when a coding agent needs to work with Machinist, its GitHub issue workflow, intake labels, direct runs, or managed queue.