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 mracal/vibe-engineering --skill anti-rationalization-checkgit clone --depth 1 https://github.com/mracal/vibe-engineeringWrote 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/mracal/vibe-engineering/anti-rationalization-check)<a href="https://agentmods.dev/skills/mracal/vibe-engineering/anti-rationalization-check"><img src="https://agentmods.dev/badge/skills/mracal/vibe-engineering/anti-rationalization-check/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/mracal/vibe-engineering/anti-rationalization-check"><img src="https://agentmods.dev/badge/skills/mracal/vibe-engineering/anti-rationalization-check.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.00047 | $0.00604 |
| Opus 5 | $0.00023 | $0.00302 |
| Sonnet 5 | $0.00009 | $0.00121 |
| Haiku 4.5 | $0.00005 | $0.00060 |
Grade A, and why
vibe-anti-rationalization-check 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 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.
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.
This is a copy
100% identical to vibe-anti-rationalization-check — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 62 lines — stays where its author put it; the contents beside it link to each section on GitHub.
vibe-anti-rationalization-check
LLMs systematically rationalize shortcuts. This skill catches it happening.
When to Use This Skill
- You catch yourself thinking "this is simple enough to skip testing"
- You're about to reduce scope without the user asking
- You notice you're explaining why something "doesn't really need" to be done
- A constraint feels "too strict" and you want to relax it
- You're about to say "in the interest of time..."
When NOT to Use This Skill
- The user explicitly asked to skip something
- You're genuinely unsure if something is needed (ask the user instead)
- The simplification is the user's explicit request
Known Rationalization Patterns
Watch for these thoughts — they're red flags:
| Rationalization | Reality |
|---|---|
| "This is too simple to need tests" | Simple code in complex systems causes the hardest bugs |
| "The user probably doesn't care about this edge case" | Production users will find every edge case |
| "We don't need error handling here" | Internal code fails too, especially during refactors |
| "I'll add that later" | "Later" never comes. Do it now or create a tracked task |
| "This is just boilerplate" | Boilerplate often contains critical correctness constraints |
| "The happy path is enough for now" | The sad path is where real users spend most of their time |
| "It works, so it must be correct" | "Works" and "correct" are different things |
| "This test is redundant" | Redundant tests catch redundant bugs |
| "Let me simplify this requirement" | Simplifying without asking = silently dropping scope |
| "This doesn't need documentation" | If you thought about it for >2 minutes, document why |
Steps
When you detect a rationalization:
- Name it — "I notice I'm rationalizing skipping [X]"
- State the constraint — "The requirement says [specific requirement]"
- Evaluate honestly — Is there a legitimate reason to skip this, or is it laziness?
- Choose:
- If legitimate: Ask the user "Should we skip X because Y?"
- If rationalization: Do the work. Don't mention the temptation.
- If you skipped something without asking: Go back and do it
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 · 62 lines · 47 tokens per session scan A 448e7cf88c0e
vibe-anti-rationalization-check is a skill published in the GitHub repository mracal/vibe-engineering (3 stars, last pushed yesterday), licensed MIT. It adds 47 tokens to every session and 604 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to vibe-anti-rationalization-check, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
codexkit-repository-maintenance
Use when maintaining or improving the GameStudio-CodexKIT source repository, including CI, governance, catalog, generators, adapters, packaging, documentation, versioning, or release readiness.
unity-ui-art-and-motion-production
Use when new or revised Unity UI visuals, icons, panels, 9-slice sprites, component states, HUD or menu layouts, popup motion, screen transitions, or flattened UI screenshot decomposition must be produced through Figma and integrated into uGUI, NGUI, or UI Toolkit; not for UI debugging, localization-only work…
studio-project-scaffold
Use when running gamestudio init, status, or uninit, or bootstrapping a new or adopted game repository with AGENTS.md, HANDOFF.md, .agents/CONTRACT.md, project governance, a subsystem registry, or a per-project adapter report, plan digest, named reviewer, backup root, generated agent overlay, apply, uninstall, and…
using-game-studio-skills
Use when starting any GameStudio-CodexKIT task or when a model runner is unavailable and someone requests a confidence-based PASS.
code-intelligence-contract
Use when dependency, call-chain, blast-radius, architecture, domain-flow, or unfamiliar-codebase analysis needs an optional vendor-neutral code-intelligence provider.
studio-goal-progress
Use when a KIT-managed Codex or Hermes Goal needs evidence-backed percentage, ETA range, live read-only progress views, or portable append-only progress recovery.