OpenRath
A PyTorch-like Python runtime for dynamic multi-agent and multi-session workflows, turning agent runtime state into explicit, composable objects such as Session, Sandbox, Memory, Tool, Agent and Workflow.
OpenRath is an open-source Python framework for multi-agent and multi-session workflows, modeled explicitly on PyTorch's object vocabulary. A Session carries conversation state and inter-agent collaboration lineage the way a Tensor carries a value; a Sandbox decides where tools actually execute, the way a Device does; Memory persists agent state across runs, the way a Parameter does; a Tool is a callable operation with a model-visible schema, like a Function; an Agent is a reusable session-transformation layer, like a neural-network layer; a Workflow composes agents and workflows into larger systems, like a module; and a Selector is an LLM-backed router that picks the next workflow at runtime, replacing plain if/while control flow.
Rather than starting from an agent loop, OpenRath starts from the Session, so many agents collaborating across many branchable sessions can still be traced by role, workspace, memory write, and final output. Version 2.0.0 adds a production execution and operations layer, compiling Python definitions into immutable plans governed by checkpoints, on top of the existing Session-first API.
It is released under the BSD-3-Clause license.