neeeophytee/ai-cost-cutter-skills · Archived

cheap-swap-guard

Before swapping any workload to a cheaper model, declare the cases the premium model still dominates and prove they keep routing to premium.

First seen Jul 16, 2026

Installation

$ npx skills add neeeophytee/ai-cost-cutter-skills --skill cheap-swap-guard

Summary

  • Before swapping any workload to a cheaper model, declare the cases the premium model still dominates and prove they keep routing to premium.
  • Use when the user wants to "just switch" to a cheaper model (text, image, or video), or asks whether a cheap model is good enough to replace an expensive one.

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from neeeophytee/ai-cost-cutter-skills.

npx skills add neeeophytee/ai-cost-cutter-skills

Browse all from neeeophytee/ai-cost-cutter-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 18
License LICENSE
Default branch main
Open issues 0
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 4,011 B
  • docs SUMMARY.md 323 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 2 installs

SKILL.md

Swap cheap, but guard the cases the cheap model loses

Every "the cheap model is 95% as good" claim hides a distribution: on most inputs the gap is invisible, and on a few specific cases the premium model isn't a few percent better, it's a different class. The canonical example (image generation, as of 2026-06): a cheap model like Wan runs ~7-8x cheaper per image than GPT-Image-2 and a normal viewer barely notices, except on text inside the frame, charts, dense layouts, and typography, where GPT-Image-2 leads its leaderboard by the largest margin recorded. A blind swap saves money and quietly ships garbled slides. Your job is to make the swap conditional and write the conditions down.

Steps

  1. Name the pair: the cheap model the user wants and the premium model it replaces. This works for any modality: text, image, video, speech.
  2. List the dominated cases: the input types where the premium model is known to win by a class, not a margin. Get these from a current leaderboard's category breakdown or the user's own failure examples, not from the headline average. If the user claims there are none, make them say it explicitly; that claim is the riskiest line in the config.
  3. Build the route table: every dominated case routes to premium; everything else routes to cheap. Then check the saving is real: if nothing routes to cheap after honest accounting, the swap was a fantasy and the user just learned that for free.
  4. Run the proof below. It fails if any declared dominated case leaks to the cheap model, or if nothing routes cheap at all.
  5. At request time, tag each input by case before dispatch (for images: does the prompt ask for words in the frame?). The same pattern covers video: cheap for iterations, premium for the physics-heavy hero shot.

Prove it

```bash verify cat > decision.json <<'JSON' { "modality": "image", "cheap": "wan-2.5", "premium": "gpt-image-2", "dominatedcases": ["textinframe", "chartsorlayout"], "route": [ { "when": "textinframe", "use": "premium" }, { "when": "chartsorlayout", "use": "premium" }, { "when": "generalscene", "use": "cheap" } ] } JSON node -e ' const c = JSON.parse(require("fs").readFileSync("decision.json", "utf8")); function bad(m) { console.error("BAD: " + m); process.exit(1); } if (!c.cheap || !c.premium) bad("need both a cheap and a premium model"); const ruleFor = {}; for (const r of c.route || []) if (r.when && r.use) ruleFor[r.when] = r.use; if (!(c.dominatedcases || []).length) bad("declare the cases the premium model dominates (or explicitly claim there are none)"); for (const d of c.dominatedcases) if (ruleFor[d] !== "premium") bad("dominated case " + d + " is not routed to the premium model"); if (!(c.route || []).some(r => r.use === "cheap")) bad("nothing routes to the cheap model, so there is no saving"); console.log("swap OK: " + c.cheap + " default, " + c.dominated_cases.length + " dominated case(s) guarded to " + c.premium); '


## Guardrails

- Never let a single percentage summarize the gap. Averages hide exactly the cases this skill exists to guard.
- Verify open-weights claims per version before anyone plans to self-host the cheap model; a family being "open" in one release says nothing about the next (Wan 2.1/2.2 shipped weights; 2.5 is API-only).
- Where one wrong output is expensive (customer-facing, legal, medical), keep a human check on the cheap lane regardless of what the table says.

---

<sub>Backed by a machine-verified recipe, re-checked by CI: [Swap to a cheap image model, but guard the cases it loses](https://flowstacks.xyz/workflows/image-gen-cheap-swap-with-text-guard)</sub>