Tool result offloading keeps large outputs out of the model's context
August 24, 20261 min read
Tool result offloading writes an oversized tool result to storage instead of into the model's context. Set offload_tool_results=True and any result over 16,000 characters goes to AgentFS, leaving a short envelope in the message with a preview, the size, and a result_id. The agent gets read_result and search_result to fetch the rest only when it needs it, and nothing calls a model on the write path.
Previously, a large tool result landed in context in full and stayed there, consuming your window and adding tokens to every turn that followed. Now the agent carries a compact reference by default and pulls the full result, or searches inside it, on demand.
You can tune when offloading happens and how long results are kept with ResultStore(threshold_chars=..., ttl_seconds=...).
Turn it on when you create an agent:
from agno.agent import Agent
agent = Agent(offload_tool_results=True)View the Result Offloading docs. See the cookbook for reference.



