A portable reasoning client — sessions, phases, thoughts, and the chain that produced the answer.
An agent that reasoned well and an agent that reasoned badly return the same shape: one paragraph. So a wrong answer is indistinguishable from a right one until it has been acted on, and the only available debugging tool is asking again. The structure exists inside the model turn and is discarded at the boundary, which is why nothing downstream can ever check it.
pip install awreason
Run one hard question as a session you can open up afterwards — the phases, the thoughts, the tool calls — instead of a paragraph you have to take on faith.
Pairing is composition, never dependency — awreason installs and runs on its own.
Every brick below is live, drawn from that repository's own published manifest.