UFO³ is Microsoft's agent framework in two layers: Galaxy, a multi-device orchestration layer, and UFO², a Windows desktop agent that can run standalone or serve as a Galaxy device agent. The project began as a Windows GUI agent in February 2024, became the UFO² Desktop AgentOS in April 2025, and added Galaxy in November 2025.
Galaxy decomposes a request into a dynamic directed acyclic graph (DAG) of TaskStars with dependencies, called a constellation. A ConstellationAgent plans the graph, a TaskOrchestrator assigns each task to a device by capability, resources, task requirements, and performance history, and tasks run asynchronously in parallel with cross-device dataflow. The graph evolves as results arrive. Devices communicate over the Agent Interaction Protocol (AIP), a WebSocket-based coordination layer with fault tolerance and automatic reconnection, and device agents are built from a template toolkit with MCP integration for tools. Windows, Linux, and Android device agents are supported.
UFO² operates a single Windows machine across multiple applications through a HostAgent and per-application AppAgents. It combines GUI actions with API calls, drives Windows through UIA, Win32, and WinCOM, detects controls with a hybrid of visual and UIA methods, and draws on a knowledge substrate of documentation, demonstrations, and execution traces via RAG. Speculative multi-action batches predictions to cut LLM calls by 51%.
| Aspect | UFO² | UFO³ Galaxy |
|---|---|---|
| Architecture | single Windows agent | multi-device orchestration |
| Task model | sequential ReAct loop | DAG-based constellation workflows |
| Coordination | HostAgent + AppAgents | ConstellationAgent + TaskOrchestrator |
| Device support | Windows desktop | Windows, Linux, Android |
| Execution | sequential | parallel DAG execution |
| Status | long-term support | active development |
Features
- Constellation planning: requests decomposed into DAGs with cross-device dependency tracking and runtime rewriting
- Result-driven graph evolution: the constellation adapts to execution feedback through controlled rewrites
- Device assignment: capability-based matching with real-time resource monitoring and dynamic reallocation
- Asynchronous orchestration: parallel execution with locking, status updates, error recovery, and a final report
- Agent Interaction Protocol: WebSocket coordination with fault tolerance and reconnection
- Template-driven device agents: a toolkit for new device agents with MCP tool augmentation
- Windows OS integration: UIA, Win32, and WinCOM control through UFO²
- Hybrid actions: GUI clicks combined with API calls
- Speculative multi-action: batched action prediction that reduces LLM calls
- Knowledge substrate: RAG over docs, demos, and execution traces for AppAgents
- Migration path: UFO² keeps working standalone and plugs into Galaxy as the Windows device agent
- Runtime: Python 3.10 and 3.11, with two accompanying arXiv papers