Spec First
Without an external contract, the agent drifts after ~3 iterations — and the failure looks like progress (code written, tests pass, wrong goal solved).
Write PROMPT.md BEFORE acting:
- Goal — one sentence.
- Done when — concrete, checkable conditions. "Test suite green: ".
- Never touch — files/areas off-limits.
- Stop if — more than N files outside scope change; a passing test starts failing.
The agent re-reads this file every iteration. State (what's done) goes in a separate
IMPLEMENTATION_PLAN.mdit updates in place. If you can't write "done when" concretely, the task isn't ready — clarify before coding.