Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rethink

First-principles design mode for AI coding agents — the inverse of ponytail. Where ponytail minimizes ("don't build it"), rethink re-derives ("design it from the requirements, not from what the code already looks like").

On design and architecture questions it forces the method:

  1. Requirements before solutions — state what the design must do and how you'll know it worked; name assumptions when they're unstated.
  2. Research the problem class — how is this solved well elsewhere? Cite prior art, don't assert.
  3. Design from first principles — derive the structure as if no code existed.
  4. Then measure the gap — read the current implementation last, to size migration cost, not to anchor the design.
  5. Name the trade-offs — and the constraint that would flip the call.

It self-gates: scoped, tactical questions ("rename this") pass through untouched. Off switch: say stop rethink / normal mode.

What's in the box

  • Always-on directive injected every session via a SessionStart hook.
  • /rethink — force the mode onto the current task.
  • /rethink-audit — aim it at an existing subsystem: get a structured redesign (requiresprior-artdesigngapmigratetrade-offs). Applies nothing; one-shot report.

Install

Claude Code

claude plugin marketplace add eranroseman/rethink
claude plugin install rethink@rethink

Skills appear namespaced: /rethink:rethink, /rethink:rethink-audit.

Codex

codex plugin marketplace add eranroseman/rethink
codex plugin add rethink@rethink

Codex sets CLAUDE_PLUGIN_ROOT for compatibility and reads the same .claude-plugin/marketplace.json and hooks/hooks.json, so one plugin serves both tools. The SessionStart hook emits the hookSpecificOutput.additionalContext envelope, which both tools accept.

License

MIT

About

First-principles design mode for AI agents (Claude Code + Codex). Derive the design from requirements, not the current implementation.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages