Agno's AgentOS now lets a sandboxed agent's POST /agents/{agent_id}/runs through when the queue is durable and its store serializes sessions, which PostgresDb and AsyncPostgresDb do. With QueueConfig(durable=True, db=...) and no redis=, the route answers 202 for a background run, and 200 for foreground and streaming runs.
The other submission checks stay as they were, including the registered-instance check and the session-owner check. Without a durable queue the route still refuses, now with Sandbox API execution requires a durable queue with shared session admission.

The capture comes from FastAPI's TestClient against an embedded Postgres, with a stand-in sandbox that has no compute, since the route answers before any container starts.
Redis still matters once you run more than one replica, because it carries run events and cancellation between them.
See the cookbook, and learn more about multi-replica deployments in the documentation.
Frequently asked questions
No. A durable queue backed by PostgresDb or AsyncPostgresDb is enough for POST /agents/{agent_id}/runs to accept the run. Add Redis when you run several replicas and want streaming and cancellation to work from any of them.
Earlier releases required Redis coordination for sandboxed runs over HTTP. This release drops that requirement. The route still answers 400 when there is no durable queue, or when the queue store does not serialize sessions.
Run streams and cancellation stay on the replica that holds the run. A single-replica deployment loses nothing; a multi-replica one should set QueueConfig(redis=...).


