Reasoning Agent

Solve a river-crossing logic puzzle with a MiMo agent in thinking mode, streaming the full reasoning trace.

Code

from agno.agent import Agent
from agno.models.xiaomi import MiMo

task = (
    "Three missionaries and three cannibals need to cross a river. "
    "They have a boat that can carry up to two people at a time. "
    "If, at any time, the cannibals outnumber the missionaries on either side of the river, the cannibals will eat the missionaries. "
    "How can all six people get across the river safely? Provide a step-by-step solution and show the solution as an ascii diagram."
)

agent = Agent(
    model=MiMo(id="mimo-v2.5-pro", use_thinking=True),
    markdown=True,
)

if __name__ == "__main__":
    agent.print_response(task, stream=True, show_full_reasoning=True)

Usage

Set up your virtual environment

uv venv --python 3.12
source .venv/bin/activate

Set your API key

export MIMO_API_KEY=xxx

Install dependencies

uv pip install -U openai agno

Run Agent

Save the code above as reasoning_agent.py, then run:

python reasoning_agent.py