A REPL an agent can actually use — state that survives between turns.
An agent given one-shot shell commands rebuilds its whole world on every call, so it guesses instead of looking — and in a transcript a guess is indistinguishable from a reading. Every variable it wanted is gone the moment the command exits, which is why agents describe state rather than inspect it.
pip install awrepl
Give an agent a live session it can keep poking at, so the next question is asked of the object instead of of its own memory.
Pairing is composition, never dependency — awrepl installs and runs on its own.
Every brick below is live, drawn from that repository's own published manifest.