When artificial intelligence developers talk about autonomous agents, they usually mean large language models wrapped in static code designed to handle tools, memories, and context assembly. UC Berkeley computer science researcher Alex Krentsel believes that approach limits what autonomous systems can achieve. Appearing on the Latent Space podcast with host Swyx, Krentsel detailed Exo, an open-source framework built alongside venture capitalist Martin Casado and Braintrust founder Ankur Goyal designed to create self improving AI agents capable of safely rewriting their own runtime policy code.
The Systems Architecture Behind Exo
Krentsel brings a distinct perspective to the artificial intelligence community. Advised at UC Berkeley by computer networking pioneers Scott Shenker, Sylvia Ratnasamy, and Ion Stoica, his background is rooted in core systems, software-defined network controllers, and formal verification rather than model training. That systems background directly shaped Exo's design principles.
Standard agent frameworks bundle state, system prompts, API keys, and execution environments into a single process. Exo breaks this structure apart into three distinct, decoupled components:
- Executor: A fully stateless process containing the agent policy, including context assembly rules, compaction strategies, prompt construction, tool selection, and skill definitions.
- ExoHarness: A protected host process that holds all persistent state, including event logs, secrets stores containing API keys, memory artifacts, and environment snapshots.
- Sandbox: An isolated execution environment, running locally inside Docker or remotely across providers like Daytona and E2B, where the agent executes bash commands and arbitrary tools.
Collapsing the Optimization Loop
Existing agent frameworks allow humans to add dynamic skills or update markdown memory files. However, Krentsel emphasizes that the core machinery governing how context gets built remains fixed. Traditional research attempts to optimize these systems using an outer observer loop where one model inspects and edits a target model.
Exo takes a different approach by collapsing the optimization loop entirely. Because the Executor layer is stateless and decoupled from persistent state, Exo can mount its own source code inside its execution sandbox. During execution, the agent can inspect its own performance, edit its Executor policy code, request a mid-run rebuild, and swap its running process on the fly. A guardian process inside the host layer monitors the update: if the new code fails or breaks execution during a trial step, Exo automatically rolls back to the previous snapshot without losing conversation history or leaking credentials.
