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 agentmods add commands/wessamfathi/suhail/skipgit clone --depth 1 https://github.com/wessamfathi/suhailWrote 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/commands/wessamfathi/suhail/skip)<a href="https://agentmods.dev/commands/wessamfathi/suhail/skip"><img src="https://agentmods.dev/badge/commands/wessamfathi/suhail/skip.svg" alt="Measured on agentmods" 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 | $0.00014 | $0.01285 |
| Opus 5 | $0.00007 | $0.00642 |
| Sonnet 5 | $0.00003 | $0.00257 |
| Haiku 4.5 | $0.00001 | $0.00128 |
Grade A, and why
skip 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 3d 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 — 48 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/su:skip — Suhail Part skipper
You are skipping the current Part of the active Suhail run. This command takes no arguments. It marks current_part_id as status: skipped, persists state via suhail-write, and then offers to continue. It does NOT run any subagent itself. Advancement goes through the orchestrator (go.md), and the tick script auto-selects the next eligible Part from the skipped state.
On every invocation
Run the following guards in order, short-circuiting on the first match. Each refusal is exactly one sentence and performs no file mutations.
- No active run. Attempt to Read
.suhail/state.json. If it does not exist, end with: "No active Suhail run found — nothing to skip." - Aborted run. Parse
state.json. If top-levelaborted == true, end with: "This Suhail run has been aborted — no Part can be skipped." - Nothing to skip. If
current_part_idis null/empty, OR the run is already terminal (run_phaseisfinished/completed, or every entry instate.partshasstatusofcompletedorskipped), end with: "No active Part to skip — the run has no Part in progress."
Skip
After the guards pass:
- Read
.suhail/state.jsoninto memory (the full object). - Pick the target Part, first match wins: (a) the Part whose
id == current_part_id, if non-terminal; (b) the lowest-integer non-terminal Part incurrent_batch(covers skipping a Part of the level currently in progress —current_part_idmay still point at a prior level's completed Part); (c) the lowest-integerpendingPart whose dependencies are all terminal (a skip issued at a level checkpoint targets the next level's first Part). If no rule matches, end with one sentence: "No eligible Part to skip." — do not write state. Set the target'sstatus: "skipped"and pointcurrent_part_idat it. A skipped Part is terminal, so on the next tick the batch routing (batch_directive) simply proceeds past it to the next dispatchable Part (or tocompletewhen the whole batch is terminal); you do not compute anything beyond the target yourself. - Update
updated_atto the current ISO 8601 timestamp. - Resolve the scripts directory using the following four-step lookup (check each in order; use the first that exists): (1)
${CLAUDE_PLUGIN_ROOT}/scripts/— resolves only when installed as a Claude Code plugin, where the token is substituted inline before this file is read; in any other context it is left literal and the path will not exist, so it falls through; (2)./.claude/commands/scripts/; (3)$CLAUDE_CONFIG_DIR/commands/scripts/if the environment variableCLAUDE_CONFIG_DIRis set and non-empty, otherwise~/.claude/commands/scripts/; (4)./scripts/(dev-repo fallback). If none exist, end with: "Helper scripts not found — install Suhail or run from the dev repo." Pipe the complete updated state JSON tosuhail-write(platform-detected:pwsh <resolved-scripts-dir>/suhail-write.ps1 .suhail/state.jsonon Windows;bash <resolved-scripts-dir>/suhail-write.sh .suhail/state.jsonon POSIX) with the full JSON on stdin. Per the state-machine invariant, always write the full file from the in-memory model — never partial-update, and never writestate.jsondirectly. On non-zero exit: write.suhail/parts/<current_part_id>/blocker.md(from: orchestrator) and end the turn. - Narrate one sentence: "🧭 Orchestrator — Part N skipped."
- AskUserQuestion: "Part N skipped. Advance to the next eligible Part now?" with options
Continue/Pause.- Continue → locate
go.md(see below), read it, and follow its instructions for exactly one tick as if the user had typed/su:go continue. The orchestrator's tick routes past the skipped Part to the next dispatchable one. Do not loop beyond what the orchestrator does for a single/su:go continue. - Pause → end the turn with one sentence: "Paused — run
/su:goor/su:nextto advance when ready."
- Continue → locate
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.
- 3d ago First seen · 48 lines · 14 tokens per session scan A 6b3e1d94d8d0
skip is a command published in the GitHub repository wessamfathi/suhail (2 stars, last pushed 1mo ago), licensed MIT. It adds 14 tokens to every session and 1,285 once invoked, about $0.0001 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 commands, from other repositories
better-auth:add-plugin
Add a better-auth plugin to an existing project. Configures server and client plugins with proper imports.
better-auth:setup
Interactive setup wizard for better-auth authentication. Guides through database, framework, OAuth providers, and plugin configuration.
bun:migrate
Migrate existing Node.js/npm projects to Bun.
send
Send a message to a peer session.
reskin
Extract a measured design signature (type ramp, accent + its budget, grid unit, radius, layout) from a reference image or site, write it to signature.json, and drive the build to match it — "steal this vibe" as a spec, not pixels.
wf-statusline
Set up a lightweight, artifact-only workflow progress statusline.