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 ApurvBazari/claude-plugins/plugin install handoffWrote 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/apurvbazari/claude-plugins/discard)<a href="https://agentmods.dev/skills/apurvbazari/claude-plugins/discard"><img src="https://agentmods.dev/badge/skills/apurvbazari/claude-plugins/discard.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.1 | $0.00036 | $0.00548 |
| Opus 5 | $0.00018 | $0.00274 |
| Sonnet 5 | $0.00007 | $0.00110 |
| Haiku 4.5 | $0.00004 | $0.00055 |
Grade A, and why
discard 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 5d 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.
What it actually says
Discard Skill — Archive the Active Handoff
You are invoked explicitly by /handoff:discard. Archive the active handoff (.claude/handoff/active.md) so it stops surfacing at SessionStart. This skill is destructive in the soft sense — the file is archived (renamed), not deleted, so it remains recoverable.
Step 1: Check for an active handoff
Look for .claude/handoff/active.md. If it does not exist:
No active handoff in this project. Nothing to clear.
Stop. Do not prompt; do not modify anything.
Step 2: Confirm before archiving
Read the frontmatter saved-at field. Show it to the user and confirm via AskUserQuestion (single-select, 2 options):
- Yes, archive (Recommended if you don't want this handoff anymore) — "Move
.claude/handoff/active.mdto.claude/handoff/archive/discarded-<ts>.md. The next SessionStart will not surface anything." - No, keep it — "Do nothing. The handoff stays in place."
If No: exit silently. Do not modify the file.
Step 3: Archive the handoff
On Yes:
ts="$(date +%Y%m%dT%H%M%S)"
mkdir -p .claude/handoff/archive
mv .claude/handoff/active.md ".claude/handoff/archive/discarded-${ts}.md"
bash "${CLAUDE_PLUGIN_ROOT}/scripts/prune-archive.sh" "$(pwd)"
Confirm to the user (one line):
Handoff archived to
.claude/handoff/archive/discarded-<ts>.md. Cleared.
Key Rules
- Always confirm before archiving —
disable-model-invocation: truemeans only the user can trigger this, but a confirm step still prevents fat-finger mistakes. - Archive, never delete. The renamed file is recoverable; user can
mv .claude/handoff/archive/discarded-<ts>.md .claude/handoff/active.mdto restore. - No-op when nothing is saved. Do not create or modify state if there's no active handoff.
- AskUserQuestion guard: 2-option static list. No dynamic single-option risk.
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.
- 5d ago First seen · 49 lines · 36 tokens per session scan A ffc775568e6f
discard is a skill published in the GitHub repository ApurvBazari/claude-plugins (0 stars, last pushed 29d ago), licensed MIT. It adds 36 tokens to every session and 548 once invoked, about $0.0002 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
cross-platform
Cross-platform development patterns for macOS, Windows, and Linux.
shell-scripting
Shell scripting best practices for cross-platform CLI tools.
c-notify
Send native macOS notification center alerts from the command line using terminal-notifier.
anti-sleep
Keep a Mac awake with caffeinate during long builds, downloads, or supervised automation runs.
onlyswitch-deeplink
Invoke OnlySwitch built-in switches or buttons via deeplink. Use when the user asks to toggle or trigger an OnlySwitch action (e.g. empty trash, keep awake, dark mode, mute, hide desktop, clear clipboard, eject discs, Xcode derived data, and any other built-in switch or button). Resolve the request to the correct…
gmail
Manage Gmail email — drafting, sending, organizing, filters, vacation replies, and inbox analysis.