Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/chen3feng/agent-skillsnpx agentmods add skills/chen3feng/agent-skills/reverse-cleanup-after-upstream-fixWrote 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/chen3feng/agent-skills/reverse-cleanup-after-upstream-fix)<a href="https://agentmods.dev/skills/chen3feng/agent-skills/reverse-cleanup-after-upstream-fix"><img src="https://agentmods.dev/badge/skills/chen3feng/agent-skills/reverse-cleanup-after-upstream-fix/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/chen3feng/agent-skills/reverse-cleanup-after-upstream-fix"><img src="https://agentmods.dev/badge/skills/chen3feng/agent-skills/reverse-cleanup-after-upstream-fix.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.00039 | $0.02249 |
| Opus 5 | $0.00019 | $0.01125 |
| Sonnet 5 | $0.00008 | $0.00450 |
| Haiku 4.5 | $0.00004 | $0.00225 |
Grade C, and why
reverse-cleanup-after-upstream-fix 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 10d 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.
/bin/rm -rf build64_release blade-bin How it starts
The opening of the file, as written. The whole thing — 240 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Reverse-clean downstream workarounds after the upstream fix lands
When to use
You are setting up a sidecar or downstream consumer of another repo (integration-test workspace, example repo, plugin host, ...) and the upstream repo currently has a bug you need to paper over to get anything running. You plan to file or are about to land a fix upstream.
The skill applies from the moment you first type the workaround, not just after upstream merges — the bookkeeping you do now is what makes the reversal painless later.
Typical triggers:
- Adding a shim script (
tools/python-shim/,tools/gcc-wrapper/, abin/directory prepended toPATH) to dodge an upstream detection bug. - Exporting an env var (
CC=clang,PIP_NO_BUILD_ISOLATION=1) in a wrapper because the upstream default is broken on your platform. - Pinning an upstream dep to a stale version because the latest has a regression you have filed.
- Duplicating an upstream file locally to patch one line.
Problem
Workarounds in a sidecar repo look harmless when you add them, but without discipline they turn into permanent cruft:
- The fix lands upstream and nobody notices. Six months later the shim is still there, new contributors assume it's load-bearing, and removing it becomes a scary multi-PR archeology exercise.
- The commit message describes the wrong reality. You wrote "add
CC=clangto dodge blade toolchain detection" on day 1. Upstream merges a real fix on day 3. Now the sidecar's git history tells a story that stopped being true — but the code still runs, so nobody flags it. - No anchor back to upstream. You remember filing the upstream issue, but the sidecar doesn't cite it. When you later try to remove the workaround, you have to re-derive which upstream commit authorized the removal.
- The removal PR is messier than it needs to be. Without a dedicated "drop workarounds now fixed upstream" commit, the cleanup gets tangled with unrelated feature work and the reviewer has to untangle "what was scaffolding" from "what is new behavior".
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.
- 10d ago First seen · 240 lines · 39 tokens per session scan C 81aa9165fcd5
reverse-cleanup-after-upstream-fix is a skill published in the GitHub repository chen3feng/agent-skills (5 stars, last pushed 4mo ago), licensed Apache-2.0. It adds 39 tokens to every session and 2,249 once invoked, about $0.0002 per session on Opus 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
sentry-fix-issues
Find and fix issues from Sentry using MCP. Use when asked to fix Sentry errors, debug production issues, investigate exceptions, or resolve bugs reported in Sentry. Methodically analyzes stack traces, breadcrumbs, traces, and context to identify root causes.
audit
Run technical quality checks across accessibility, performance, theming, responsive design, and anti-patterns. Generates a scored report with P0-P3 severity ratings and actionable plan. Use when the user wants an accessibility check, performance audit, or technical quality review.
debugging-executions
Debug failed or wrong-output workflow executions using executions tools. Load when the user reports execution failures, unexpected node output, empty parameter values after a successful run, or a node showing a red or failed expression error.
n8n-docs-assistant
Answers n8n product, setup, credential, node, hosting, API, and usage questions from current n8n docs. Load n8n-docs via loadtool before calling it (search "n8n docs" if not visible). Use when the user asks how to configure, set up, troubleshoot, or understand n8n behavior, especially credential setup questions opened…
dorodango
Polishes working code through successive quality passes in fresh subagents. Use after tests pass when code needs multi-dimension refinement before release.
sentry-sdk-upgrade
Upgrade the Sentry JavaScript SDK across major versions. Use when asked to upgrade Sentry, migrate to a newer version, fix deprecated Sentry APIs, or resolve breaking changes after a Sentry version bump.