What problem does it solve? LLM coding agents act as greedy optimizers, so working code accretes incidental complexity — path-dependent state, single-caller abstractions, defensive layers — that reflects edit history rather than the problem. This Skill audits one unit's design by re-deriving it from intent, separating load-bearing structure from residue, without risking ungated rewrites. ## Core Features & Use Cases - Obligation-gated audit: Pins behavior, interface, invariants, and tests before inspecting the implementation; if obligations cannot be pinned from tests or types, the verdict is automatically keep. - Independent reconstruction: Recommends dispatching a fresh agent that has never seen the implementation to rebuild the design from intent, avoiding the author's false keep bias. - Human-approved rewrites: A rewrite verdict is reported but never self-applied; code changes wait for explicit human approval, then every obligation is re-verified. - Use Case: After a milestone introduces a new module or core abstraction that works but feels over-complex, run this ritual to confirm the design is sound or surface a concrete simplification before committing. ## Quick Start Ask the agent to run wf-rethink on the named file, module, or function whose design you want re-evaluated.