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 afrizzal/ratchet --skill ratchet-backloggit clone --depth 1 https://github.com/afrizzal/ratchetWrote 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/afrizzal/ratchet/ratchet-backlog)<a href="https://agentmods.dev/skills/afrizzal/ratchet/ratchet-backlog"><img src="https://agentmods.dev/badge/skills/afrizzal/ratchet/ratchet-backlog/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/afrizzal/ratchet/ratchet-backlog"><img src="https://agentmods.dev/badge/skills/afrizzal/ratchet/ratchet-backlog.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.00133 | $0.03318 |
| Opus 5 | $0.00067 | $0.01659 |
| Sonnet 5 | $0.00027 | $0.00664 |
| Haiku 4.5 | $0.00013 | $0.00332 |
Grade A, and why
ratchet-backlog 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 11d 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 — 130 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Ratchet Backlog — the curator
The backlog file is the contract between whoever defines work and whoever (or whatever) executes it. Your job is to make that contract sharp: every item small enough for one commit, specific enough for a smaller model, and checkable enough that "done" is an observation, not an opinion.
Format authority: docs/backlog-format.md in the ratchet repo (github.com/afrizzal/ratchet); examples/BACKLOG.example.md there is a full worked example. Neither ships with an installed skill, so the compact contract is embedded here:
# BACKLOG — <scope>
<!-- ratchet:v1 --> ← version marker, required
## Global checks ← optional; each line one backticked command
- `npx tsc --noEmit`
## Items ← one ### block per item, one commit each
### SEC-01 — <title> [P0] ← ID matches [A-Z]+-\d+, unique; priority [P0..P3]
- Tags: — ← only canonical gates: [RISKY] [OPS] [USER-DECISION] [BASELINE], or —
- Depends: — ← comma-separated IDs, all must be done first
- Evidence: path:line — <verified observation>
- Spec: <the exact minimal change — executors implement this and nothing more>
- Acceptance: ← ≥1; runnable commands or observable behaviors
- [ ] `<command>` <expected result>
## Ledger ← one row per item; statuses: todo/in-progress/done/blocked/needs-human/skipped
| ID | Status | Attempts | Commit | Note |
|---|---|---|---|---|
| SEC-01 | todo | 0 | — | — |
## Journal ← append-only; - <date> <ID> <what happened>
Format v2 — parallel lanes (marker exactly <!-- ratchet:v2 -->; full spec: docs/backlog-format.md §5 in the ratchet repo). The backlog holds ## Global checks + ## Lanes + ## Items and no Ledger/Journal; each lane's state lives in lanes/<lane>.md, single writer, so parallel executors never write the same file:
## Lanes ← required in v2; first lane's Scope is the literal (rest) = the default lane
| Lane | Scope | Notes |
|---|---|---|
| core | (rest) | default lane — shared/cross-cutting work; barrier runs only |
| api | `src/api/**`, `prisma/**` | server hardening |
### SEC-01 — <title> [P0] ← items gain one required field:
- Lane: api ← before Tags:; must name a declared lane
...
# LANE api — <scope> ← lanes/api.md; created by YOU, never by the loop
<!-- ratchet:v2:lane api --> ← marker must match filename + declaration
## Ledger ← exactly this lane's items' rows, in Items order
| ID | Status | Attempts | Commit | Note |
|---|---|---|---|---|
| SEC-01 | todo | 0 | — | — |
## Journal ← append-only; also carries run markers:
← - <date> run started (lane api, branch ratchet/api) / run ended (lane api)
Lane names match [a-z][a-z0-9-]*; named-lane scopes are disjoint backticked globs. An item's row and its lane file materialize together with the item — you create lane files; the loop refuses a declared lane whose file is missing.
Human write windows (v2). You (and the human you act for) write the backlog or a lane file only on the integration branch, and only while the affected lane is closed — its journal's last run marker is run ended, and no ratchet/<lane> branch sits unmerged ahead of the integration branch. While any lane run is open, the backlog is frozen (a Spec edited under a live run can merge cleanly next to a done row earned against the old Spec). If asked to edit anyway, refuse and name the open lane.
Default file location: ratchet/BACKLOG.md.
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.
- 11d ago First seen · 130 lines · 133 tokens per session scan A 064ca33830ef
ratchet-backlog is a skill published in the GitHub repository afrizzal/ratchet (6 stars, last pushed 2mo ago), licensed MIT. It adds 133 tokens to every session and 3,318 once invoked, about $0.0007 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
session-deep-dive
Deep qualitative analysis of high-signal sessions. Spawns subagents with v2 template, synthesizes patterns, compares against known findings. Use after /session-scan.
brainstorm
Brainstorm Elixir/Phoenix features — explore ideas, compare approaches, gather requirements. Use when vague idea, not sure how to approach, or want to discuss before plan.
tidewave-integration
Tidewave MCP runtime tools — debugging, smoke testing, live state inspection, SQL queries, hex docs. Use when evaluating code in a running Phoenix app.
plugin-dev-workflow
Guide plugin development workflow — editing skills, agents, hooks, or eval framework in this repo. Use when modifying files in plugins/elixir-phoenix/, lab/eval/, or lab/autoresearch/. Ensures changes pass eval, lint, and tests before committing.
elixir-idioms
OTP/BEAM patterns and Elixir idioms — GenServer, Supervisor, Task, Registry, pattern matching, with chains, pipes. Use when designing processes or debugging BEAM issues.
security
Enforce Elixir/Phoenix security — auth, OAuth, sessions, CSRF, XSS, SQL injection, input validation, secrets. Use when editing auth files, login flows, RBAC, or API keys.