Skip to content

/shape

You pick how to build it and see why each other way lost.

Claude Code. With moo off, you ask Claude to fix a vendor webhook that fails when a translator publishes: posts for one package land together and some get 500 on the package lock. Claude moves the vendor fetch out of the lock and merges a burst of posts into one save, adds tests, and notes that this only helps within one process. With moo on, you type /hope:shape and the same words. Before it edits the webhook, a dialog asks two questions. The first says moving the fetch out of the lock is not enough, since 8 posts in a row pass the 1 s lock timeout, and asks how many processes serve the webhook: one, two to four, or five or more, where combined saves fail and keys need a row each. You pick one process. The second asks whether the vendor resends a batch after a 500, and you pick no retry. The reply says the fix is built and tested: 6 of 6 tests pass, and the old code fails the 8-post and 40-post tests. A table lists the fetch moved out of the lock, one save per package, the tests, and two gaps: a failed save gives every post in it a 500, and the vendor won't retry. It leaves the change uncommitted for you to review.