Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add V-Songbird/slag/plugin install assayWrote 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/v-songbird/slag/revert)<a href="https://agentmods.dev/skills/v-songbird/slag/revert"><img src="https://agentmods.dev/badge/skills/v-songbird/slag/revert/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/v-songbird/slag/revert"><img src="https://agentmods.dev/badge/skills/v-songbird/slag/revert.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.00187 | $0.01092 |
| Opus 5 | $0.00093 | $0.00546 |
| Sonnet 5 | $0.00037 | $0.00218 |
| Haiku 4.5 | $0.00019 | $0.00109 |
Grade A, and why
revert 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 8d 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 — 95 lines — stays where its author put it; the contents beside it link to each section on GitHub.
assay:revert
You undo one whole transaction per run. $ARGUMENTS, if present, names the
transaction id and may already name the route.
A transaction is one apply — every file that run wrote, recorded as one row in
.assay/transactions.jsonl before the first byte was written. This command puts
all of those files back or none of them. There is no partial revert to offer and
you never assemble one by hand.
You never restore a file yourself. Every restore goes through the engine below,
because the engine is what checks the backup digests, finds the recorded commit,
and marks the row revertedAt in the same step that does the work.
1. Read the record
From the project root:
node "${CLAUDE_PLUGIN_ROOT}/scripts/safety.js" list
If node is not on PATH (fnm/nvm setups), register it the way the project's
CLAUDE.md says to, then rerun.
The output is { "transactions": [...] }, newest last. Each row carries:
txId— the id to pass back in step 3.startedAtandfiles— when the run was and what it touched.revertedAt— non-null means this run is already undone. It is not a candidate; say so and stop rather than running it again.routes[]— one entry per available route, each withvia(gitorbackup),ready, and aproblemnaming what is wrong whenreadyis false.blocked[]— files carrying staged or unmerged changes. Any entry here is a refusal for the whole transaction, not for that file.problem— set when the row cannot be reverted at all.
2. Pick the transaction and the route
If $ARGUMENTS names a txId, use it. Otherwise show the owner the candidate
rows — id, time, file count — and let them pick. Never guess "the last one" when
more than one is revertable.
Then the route, from that row's routes[]:
- One entry with
ready: true→ use it, and say which one you used. - Two entries with
ready: true→ ask, withAskUserQuestion. They restore the same bytes, so frame the choice by what each depends on:gitputs the files back to the commit the run started from,backupputs back the copies assay made itself. Recommendgitin a repository. - No entry with
ready: true→ do not run anything. Report each route'sproblemverbatim and stop.
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.
- 8d ago First seen · 95 lines · 187 tokens per session scan A 237185371027
revert is a skill published in the GitHub repository V-Songbird/slag (1 stars, last pushed 4d ago), licensed MIT. It adds 187 tokens to every session and 1,092 once invoked, about $0.0009 per session on Opus 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-31.
Other skills, from other repositories
prowler-commit
Creates professional git commits following conventional-commits format. Trigger: When creating commits, after completing code changes, when user asks to commit.
gh-auth-isolation
Safely manage multiple GitHub identities (EMU + personal) in agent workflows.
comet-github
A routing guide for Comet-related GitHub work. It directs requests about pull requests, issues, CI failures, ideas, and fixes to the appropriate review or implementation process.
github-skill
Work with GitHub via the gh CLI — clone repositories, create/list/merge pull requests, create/list issues, and run any other gh command (API calls, workflow runs, releases, repo administration). List operations return parsed JSON.
re0-merge
Review and land an external contribution the way this suite does: gate it against the thesis, land it with the author's credit intact, complete a new skill rather than merging it raw, then approve, credit, and explain before closing. Use when reviewing a pull request, as any collaborator or maintainer, not only the…
codex-autoresearch
Run autonomous, measurable experiments in a Git repository: change one hypothesis, verify a numeric metric, keep improvements, and revert failures. Use when the user wants Codex to keep iterating toward a numeric target in the foreground or as a detached background run. Do not use for ordinary one-shot coding…