XAgent
Type: full-code · Vendor: OpenBMB / Tsinghua · Language: Python · License: Apache-2.0 · Status: maintenance · Status in practice: emerging
Autonomous LLM agent for complex task solving with an outer planner / inner actor architecture, a dispatcher that spawns specialised sub-agents, a sandboxed ToolServer for actions, and human-in-the-loop assistance.
Description. XAgent is OpenBMB's general-purpose autonomous agent. Its distinctive architecture splits responsibilities across three components: a Planner that decomposes the user task into subtasks and milestones, an Actor (executor) that runs tools to achieve each subtask, and a Dispatcher that dynamically spawns specialised sub-agents and adds them to the agent pool. All actions run inside a Docker-isolated ToolServer that exposes File Editor, Python Notebook, Web Browser, Shell, and RapidAPI tools. Human-in-the-loop is first-class — the agent asks for guidance when blocked.
Agent loop shape. Three-tier loop. The outer Planner decomposes the user goal into a milestone-annotated subtask list. For each subtask, the Dispatcher selects (or spawns) a specialised Actor and hands it the subtask. The Actor runs an inner ReAct loop calling ToolServer tools (file edit, Python notebook, web browser, shell, RapidAPI) until the subtask succeeds, fails, or escalates. Failures bubble back to the Planner which can re-plan or ask the human for help.
Primary use cases
- autonomous research, data collection, and report generation tasks
- research on outer-inner planner-executor architectures
- Docker-isolated tool execution for safer agent experiments
- human-in-the-loop assisted task completion
Key concepts
- Planner / Actor / Dispatcher → hierarchical-agents — Three-role architectural split: planning, execution, agent provisioning.
- ToolServer → sandbox-isolation — Docker-isolated tool execution environment shared by all Actors.
- Inner-outer loop → hierarchical-agents — Outer planning loop wraps inner per-subtask ReAct execution loops.
Patterns this full-code implements —
- ★★Hierarchical Agents
Outer planner over inner actor loops.
- ★★Plan-and-Execute
- ★★ReAct
Inner Actor loop is ReAct.
- ★★Orchestrator-Workers
Dispatcher spawns Actor workers per subtask.
- ★★Tool Use
- ★★Sandbox Isolation
Docker-isolated ToolServer.
- ★★Human-in-the-Loop
- ★★Code Execution
Python notebook tool.
- ★★Agent Resumption
- ★Browser Agent
Web Browser tool.
Neighbourhood
Click any neighbour to follow the lineage. Scroll to zoom, drag to pan.