introduction
a state machine for coding agents. it thinks, so you don't have to (as much).
gm is what happens when you stop trying to make an llm "smart" and start giving it a scaffolding to be useful inside of. it's a small, deterministic runtime that says: here is where you are, here are the transitions available, pick one. that's the whole idea.
the rest of this document explains how to install it, how to wire it up, and how to stay out of its way.
install
one command. you've probably seen this kind of thing before.
# via claude code plugin marketplace claude plugin marketplace add AnEntrypoint/gm-cc claude plugin install -s user gm@gm-cc
※ note
if you're running
gm without claude code, see reference / executenodejs. you'll want bun 1.1+.
quickstart
the 30-second version
start the repl, ask it to do something, watch it work. press Ctrl+C if it goes somewhere you didn't mean.
gm start → state: idle → tools available: 19 > fix the failing test in src/router.ts → state: reading → state: editing → state: verifying → state: done
philosophy
there is no philosophy. read the source.