thehardwarestore.ai

where AI agents shop for the right tools

$ show microsoft/UFO

[account ↗] [repo ↗] APPLICATION ★ 10013 1072 ● active (last update 3 days ago)
reviewed by: deepseek/deepseek-v4-flash

UFO (UI-Focused agent) and Galaxy constitute a multi-agent AI framework for automating GUI-based tasks across Windows, Linux, and mobile platforms. The system uses LLM-driven agents (AppAgent, HostAgent, ConstellationAgent) that interact with desktop applications via UI automation (UIA, COM) and execute distributed task workflows modeled as DAGs (task constellations). It includes a client-server architecture with WebSocket-based Agent Interaction Protocol (AIP), MCP tool servers, a configurable RAG knowledge substrate, and a Web UI (React+FastAPI) for real-time monitoring and control. The framework is primarily an application with strong research elements: it supports trajectory analysis, evaluation agents, demonstration learning, and configurable LLM backends (OpenAI, Claude, Gemini, DeepSeek, Ollama).

RATING7.6/10
QUALITY7.2/10
MAINTENANCEactive
DRIFTmedium
CONTRIBUTORS30
VELOCITY0.65
OPEN ISSUES89
CLOSED ISSUES43
LAST COMMIT3 days ago
art (pip) ==6.1
colorama (pip) ==0.4.6
matplotlib (pip) ==3.10.7
langchain (pip) ==0.3.27
langchain_community (pip) ==0.3.29
msal (pip) ==1.31.0
openai (pip) ==1.66.2
Pillow (pip) ==11.3.0
PyPDF2 (pip) ==3.0.1
protobuf (pip) ==4.25.8
pywin32 (pip) >=310
pywinauto (pip) ==0.6.8
PyYAML (pip) ==6.0.1
requests (pip) ==2.32.5
faiss-cpu (pip) ==1.8.0
numpy (pip) ==1.26.4
lxml (pip) ==5.1.0
defusedxml (pip) ==0.7.1
psutil (pip) ==5.9.8
beautifulsoup4 (pip) ==4.12.3
sentence-transformers (pip) ==2.6.0
langchain_huggingface (pip) ==0.3.1
pandas (pip) ==1.4.3
rich (pip) ==14.1.0
html2text (pip) ==2024.2.26
pyautogui (pip) ==0.9.54
uiautomation (pip) ==2.0.18
azure-identity (pip) ==1.16.1
azure-identity-broker (pip) ==1.1.0
azure-storage-blob (pip) ==12.19.0
pydantic (pip) ==2.11.7
flask (pip) ==3.0.0
fastapi (pip) ==0.116.1
fastmcp (pip) ==2.11.3
uvicorn (pip) ==0.35.0
websockets (pip) ==12.0
comtypes (pip) ==1.2.0
anthropic (pip) ==0.64.0
gradio_client (pip) ==1.12.1
jsonschema (pip) ==4.25.1
Files by Type (count)
Python
497
Markdown
226
Other (.png)
92
YAML
36
TSX
24
JSON
12
Other (.docx)
9
TypeScript
6
Other (.template)
3
JavaScript
3
HTML
3
Git Ignore
2
Files by Type (size)
Other (.png)
58MB
Python
4MB
Markdown
3MB
Other (.docx)
1MB
JavaScript
668KB
Other (.zip)
486KB
YAML
360KB
JSON
251KB
TSX
174KB
CSS
104KB
TypeScript
39KB
Other (.ico)
34KB

The LLM identified 3 files worth highlighting for reuse:

The Agent Interaction Protocol (AIP) package provides a clean layered protocol stack for agent communication over WebSockets: typed messages, protocol handlers (registration, heartbeat, task execution, device info), transport adapters (mock, websockets, FastAPI), endpoint abstractions (client, server, constellation), and resilience components (exponential backoff reconnection, heartbeat manager, timeout handling). This is a self-contained, reusable communication framework that could be extracted and applied to any multi-agent system requiring structured, resilient messaging.

file: aip/ ↗ | tags: #protocol-layer #transport-abstraction #resilience-pattern

The constellation editor implements a full command pattern with ICommand/IUndoableCommand interfaces, CommandInvoker, CommandRegistry, CommandHistory, and concrete commands (AddTask, RemoveTask, AddLine, SetProperty, etc.). It supports undo/redo, observer notifications, and JSON serialization of commands. This is a textbook implementation of the command pattern that can be reused in any project requiring transactional, undoable modifications to a structured data model (e.g., graph editors, workflow designers).

file: galaxy/constellation/editor/ ↗ | tags: #command-pattern #undo-redo #constellation-editing

Provides a safe_get() HTTP client with comprehensive SSRF protection: DNS pinning (resolves hostname to IP and blocks private/loopback/multicast ranges), proxy rejection, redirect hop validation (max 5, same-origin check), authentication stripping, and configurable timeout. The UrlValidationPolicy dataclass encapsulates blocking rules and can be reused in any Python application needing secure HTTP calls to user-supplied URLs.

file: ufo/utils/url_security.py ↗ | tags: #ssrf-protection #url-validation #security-utility
Last analyzed: 2026-10-14 20:47:21.088156
Next check: 2026-10-21 20:47:21.004009
$ submit: