
Inversion Exercise
Turn a spec or requirements into bite-sized implementation tasks before any code is written.
Install
npx skills add https://github.com/obra/superpowers-skills --skill inversion-exerciseWhat is this skill?
- Bite-sized TDD-friendly tasks with explicit file paths and verification commands.
- Requires plan header with goal, architecture, and required sub-skills.
- Scope check to split multi-subsystem specs into separate plans.
Adoption & trust: 69 installs on skills.sh; 692 GitHub stars; 3/3 security scanners passed (skills.sh audits).
Recommended Skills
Grill Memattpocock/skills
Grill With Docsmattpocock/skills
Brainstormingobra/superpowers
Lark Tasklarksuite/cli
Lark Workflow Standup Reportlarksuite/cli
Cavemanjuliusbrussee/blueprint
Journey fit
Primary fit
Writing plans belongs in idea phase—translating intent into an executable task list before build starts. Research subphase fits because the skill decomposes specs into file-level tasks with exact test commands and commit steps.
Common Questions / FAQ
Is Inversion Exercise safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Inversion Exercise
# Inversion Exercise ## Overview Flip every assumption and see what still works. Sometimes the opposite reveals the truth. **Core principle:** Inversion exposes hidden assumptions and alternative approaches. ## Quick Reference | Normal Assumption | Inverted | What It Reveals | |-------------------|----------|-----------------| | Cache to reduce latency | Add latency to enable caching | Debouncing patterns | | Pull data when needed | Push data before needed | Prefetching, eager loading | | Handle errors when occur | Make errors impossible | Type systems, contracts | | Build features users want | Remove features users don't need | Simplicity >> addition | | Optimize for common case | Optimize for worst case | Resilience patterns | ## Process 1. **List core assumptions** - What "must" be true? 2. **Invert each systematically** - "What if opposite were true?" 3. **Explore implications** - What would we do differently? 4. **Find valid inversions** - Which actually work somewhere? ## Example **Problem:** Users complain app is slow **Normal approach:** Make everything faster (caching, optimization, CDN) **Inverted:** Make things intentionally slower in some places - Debounce search (add latency → enable better results) - Rate limit requests (add friction → prevent abuse) - Lazy load content (delay → reduce initial load) **Insight:** Strategic slowness can improve UX ## Red Flags You Need This - "There's only one way to do this" - Forcing solution that feels wrong - Can't articulate why approach is necessary - "This is just how it's done" ## Remember - Not all inversions work (test boundaries) - Valid inversions reveal context-dependence - Sometimes opposite is the answer - Question "must be" statements