Graph orchestration
Typed StateGraph with conditional edges, sub-graphs, recursion limits, and explicit routing. Agents you can read, log, and replay.
By 10xScale · v0.8 · MIT · Python 3.12+
Typed graphs, durable threads, a REST and SSE server, and a typed TypeScript client. A modern alternative to LangGraph, CrewAI, and AutoGen — with the full production stack included.
pip install 10xscale-agentflow 10xscale-agentflow-cli
from agentflow.core.state import AgentState, Messagefrom agentflow.prebuilt.agent import ReactAgentdef get_weather(location: str,) -> str:return f"The weather in {location} is sunny."react_agent = ReactAgent(model="google/gemini-2.5-flash",system_prompt=[{"role": "system","content": "You are a helpful assistant. Use tools when they help answer the user.",}],tools=[get_weather],)app = react_agent.compile()result = app.invoke({"messages": [Message.text_message("Weather in Tokyo?")]},config={"thread_id": "demo", "recursion_limit": 10},)
Works with the stack you already use
Framework foundations
One Python project. Typed graphs, durable threads, a production server, and a typed TypeScript client. Without the glue tax.
Typed StateGraph with conditional edges, sub-graphs, recursion limits, and explicit routing. Agents you can read, log, and replay.
InMemoryCheckpointer for dev, PgCheckpointer (Postgres + Redis) for prod. Threads survive restarts and resume across replicas.
Built-in REST and SSE server, a typed TypeScript client, and a hosted playground. One project, full stack, no glue.
Built by 10xScale
10xScale is an AI-product company. AgentFlow is the runtime they built to power their products in production — not a demo, not a side project. When a feature was missing, they built it. When a pattern was painful, they fixed it.
The result is a framework shaped entirely by real production constraints: durable threads that survive restarts, typed graphs that stay readable at scale, and an API server that ships on day one rather than sprint ten. Then they open-sourced all of it so every team could start from the same foundation.
Visit 10xscale.ai →Same agent, every framework
The same ReAct agent in five different frameworks. AgentFlow keeps the graph explicit and ships the production stack with it.
from agentflow.core.state import AgentState, Messagefrom agentflow.prebuilt.agent import ReactAgentdef get_weather(location: str,tool_call_id: str | None = None,state: AgentState | None = None,) -> str:return f"The weather in {location} is sunny."react_agent = ReactAgent(model="google/gemini-2.5-flash",system_prompt=[{"role": "system", "content": "Helpful assistant."}],tools=[get_weather],trim_context=True,)app = react_agent.compile()
Documentation tracks
Install AgentFlow, run your first agent, and move from local code to a served app without guessing the next step.
02Understand agents, tools, state, memory, streaming, and production runtime boundaries before you scale up.
03Jump into example-driven tutorials, targeted implementation guides, and API reference for Python, REST, and TypeScript.
Connected stack
The Python runtime, the API server, the TypeScript client, and the hosted playground are designed together. Same types, same threads, same primitives across the whole stack.
Beginner-friendly by design
Install the library, build one agent, add tools and memory, expose it through the API, connect a client, then deploy.
Create a working agent and understand the moving parts.
Give the agent capabilities; learn how state moves through a workflow.
Compose agents into predictable handoffs and reusable workflows.
Add persistence, APIs, streaming, clients, and deployment.
FAQ
Common questions about the framework, how it compares to alternatives, and how 10xScale uses it in production.
Install, build a graph, expose an API, connect a TypeScript client. Then keep going, without rewriting anything.