ClawGUI Logo

ClawGUI: A Unified Framework for Training, Evaluating, and Deploying GUI Agents

[![Python 3.12](https://img.shields.io/badge/Python-3.12-blue.svg)](https://www.python.org/downloads/release/python-3120/) [![License](https://img.shields.io/badge/License-Apache_2.0-green.svg)](https://opensource.org/licenses/Apache-2.0) [![Stars](https://img.shields.io/github/stars/ZJU-REAL/ClawGUI?style=social)](https://github.com/ZJU-REAL/ClawGUI/stargazers) [![arXiv](https://img.shields.io/badge/πŸ“„%20arXiv-2604.11784-b31b1b.svg)](https://arxiv.org/abs/2604.11784) [![Daily Paper](https://img.shields.io/badge/πŸ€—%20Daily-Paper-yellow.svg)](https://huggingface.co/papers/2604.11784) [![HuggingFace Model](https://img.shields.io/badge/πŸ€—%20HuggingFace-ClawGUI--2B-yellow.svg)](https://huggingface.co/SugarVapeur/OpenGUI-2B) [![ModelScope Model](https://img.shields.io/badge/πŸ€–%20ModelScope-ClawGUI--2B-purple.svg)](https://www.modelscope.cn/models/SugarFree/OpenGUI-2B) [![Project Page](https://img.shields.io/badge/🌐%20Project-Page-orange.svg)](https://zju-real.github.io/ClawGUI-Page/) [English](README.md) | [δΈ­ζ–‡](README_zh.md)
A full-stack framework for GUI agents, covering online RL training, standardized evaluation, and deployment.

ClawGUI-Agent controls a real phone
via natural language

ClawGUI-RL trains a GUI agent with online
reinforcement learning
## News + πŸ“„ **[2026/4/14]** Our paper is available on arXiv: [ClawGUI: A Unified Framework for Training, Evaluating, and Deploying GUI Agents](https://arxiv.org/abs/2604.11784). + πŸ”₯ **[2026/4/13]** ClawGUI is released β€” train with ClawGUI-RL (GiGPO), evaluate with ClawGUI-Eval, deploy with ClawGUI-Agent. ClawGUI-2B, a 2B agent trained end-to-end with this pipeline, hits **17.1** MobileWorld SR vs. the **11.1** baseline. See [Quick Start](#-quick-start). ## Table of Contents - [Overview](#-overview) - [Architecture](#️-architecture) - [Quick Start](#-quick-start) - [ClawGUI-RL β€” Build](#-clawgui-rl--build) - [ClawGUI-Eval β€” Evaluate](#-clawgui-eval--evaluate) - [ClawGUI-Agent β€” Deploy](#-clawgui-agent--deploy) - [ClawGUI-Skills β€” Self-Evolving Skills](#-clawgui-skills--self-evolving-skills) - [ClawGUI-APP β€” On-Device Deploy](#-clawgui-app--on-device-deploy) - [Roadmap](#️-roadmap) - [Acknowledgements](#-acknowledgements) - [License](#-license) ## πŸ’‘ Overview **ClawGUI** is a research framework for GUI agents, covering the complete lifecycle from **online RL training** and **standardized evaluation** to **real-device deployment**. Building a capable GUI agent involves three tightly coupled problems that are rarely solved together: you need an environment to train the agent online, rigorous benchmarks to measure what it has learned, and a production system to deploy it on real devices. ClawGUI addresses all three. | Module | Role | |--------|------| | πŸš€ **[ClawGUI-RL](clawgui-rl/)** | **Build** β€” Train GUI agents online with scalable RL: parallel Docker environments, real Android devices, and GiGPO+PRM for fine-grained step-level rewards | | πŸ“Š **[ClawGUI-Eval](clawgui-eval/)** | **Evaluate** β€” Measure what the agent has learned: 6 benchmarks, 11+ models, 95.8% faithful reproduction of official results | | πŸ€– **[ClawGUI-Agent](clawgui-agent/)** | **Deploy** β€” Use GUI agents in the real world: control mobile devices via natural language through 12+ chat platforms, with one-command evaluation built in | | 🧩 **[ClawGUI-Skills](clawgui-skills/)** | **Self-evolving skills** β€” Training-free skill evolution proposed and validated in our paper: structured packages, retrieval, failure diagnosis, restricted revision, and reuse | | πŸ“± **[ClawGUI-APP](clawgui-app/)** | **On-Device Deploy** β€” Run the full brain + GUI agent stack directly on one Android phone, no desktop coordinator needed, powered by Shizuku | | πŸ† **ClawGUI-2B** | End-to-end validation: trained entirely with ClawGUI-RL and GiGPO, achieving **17.1** MobileWorld SR vs. the **11.1** baseline | ## πŸ—οΈ Architecture
ClawGUI System Architecture
## πŸš€ Quick Start ```bash git clone https://github.com/ZJU-REAL/ClawGUI.git cd ClawGUI ``` Each module is independent with its own environment. Click into each one for full installation and usage instructions. ### πŸš€ ClawGUI-RL β€” Build > πŸ“ [`clawgui-rl/`](clawgui-rl/) Β· πŸ“– [Full Documentation](clawgui-rl/README.md) ClawGUI-RL trains GUI agents with online reinforcement learning. It runs dozens of Docker-based Android emulators in parallel or trains directly on physical devices β€” and replaces standard GRPO with GiGPO+PRM for fine-grained step-level rewards that drive stronger policy learning. - **Parallel multi-environment** β€” Dozens of Docker-based virtual Android environments simultaneously - **Real-device training** β€” Physical or cloud Android phones with the same API - **GiGPO + PRM** β€” Fine-grained step-level reward for better policy optimization than standard GRPO - **Spare server rotation** β€” Automatic failover keeps training running without interruption - **Episode visualization** β€” Record and replay any training trajectory
ClawGUI-RL Architecture
β†’ **[Get started with ClawGUI-RL](clawgui-rl/README.md)** ### πŸ“Š ClawGUI-Eval β€” Evaluate > πŸ“ [`clawgui-eval/`](clawgui-eval/) Β· πŸ“– [Full Documentation](clawgui-eval/README.md) Β· [πŸ€— Dataset](https://huggingface.co/datasets/johnzqlu/clawgui-eval) Β· [πŸ€– ModelScope](https://modelscope.cn/datasets/Matrix0602/clawgui-eval) ClawGUI-Eval gives GUI grounding research a reliable measurement baseline. Its three-stage **Infer β†’ Judge β†’ Metric** pipeline covers 6 benchmarks and 11+ models, with a **95.8%** reproduction rate against official results β€” so numbers across papers are actually comparable. - **6 benchmarks** β€” ScreenSpot-Pro, ScreenSpot-V2, UIVision, MMBench-GUI, OSWorld-G, AndroidControl - **11+ models** β€” Qwen3-VL, Qwen2.5-VL, UI-TARS, MAI-UI, GUI-G2, UI-Venus, Gemini, Seed 1.8, and more - **Dual backend** β€” Local GPU (`transformers`) or remote API (OpenAI-compatible) - **Multi-GPU & multi-thread** β€” Parallel inference with automatic resume - **ClawGUI-Agent integration** β€” Pair with ClawGUI-Agent to run the full pipeline via natural language
ClawGUI-Eval Architecture
β†’ **[Get started with ClawGUI-Eval](clawgui-eval/README.md)** ### πŸ€– ClawGUI-Agent β€” Deploy > πŸ“ [`clawgui-agent/`](clawgui-agent/) Β· πŸ“– [Full Documentation](clawgui-agent/README.md) Β· [δΈ­ζ–‡](clawgui-agent/README_CN.md) ClawGUI-Agent closes the loop from training to production. Built on OpenClaw and powered by nanobot, it lets you control Android, HarmonyOS, or iOS devices with natural language from 12+ chat platforms β€” and trigger the full ClawGUI-Eval benchmark pipeline with a single sentence, no scripts required. - **Cross-platform** β€” Android (ADB), HarmonyOS (HDC), iOS (XCTest) - **Multi-model** β€” AutoGLM, MAI-UI, GUI-Owl, Qwen-VL, UI-TARS via OpenAI-compatible API - **One-command evaluation** β€” Say "benchmark qwen3vl on screenspot-pro" and it handles env check β†’ multi-GPU inference β†’ judging β†’ metrics β†’ result comparison - **Personalized memory** β€” Automatically learns user preferences and injects context across tasks - **Episode recording** β€” Every task saved as structured episodes for replay and dataset building - **Web UI** β€” Gradio interface for device management, task execution, and memory inspection
ClawGUI-Agent
β†’ **[Get started with ClawGUI-Agent](clawgui-agent/README.md)** ### 🧩 ClawGUI-Skills β€” Self-Evolving Skills > πŸ“ [`clawgui-skills/`](clawgui-skills/) Β· πŸ“– [Full Documentation](clawgui-skills/README.md) Β· [δΈ­ζ–‡](clawgui-skills/README_zh.md) ClawGUI-Skills implements the training-free self-evolving GUI skill architecture proposed and validated in our paper **β€œReflect, Revise, Reuse: Training-Free Skill Evolution for GUI Agents.”** It stores procedural task knowledge as structured skill packages and lets PhoneAgent retrieve, inject, diagnose, and revise them on demand. - **Four modes** β€” `off`, `trace`, `reuse`, and `evolve`; disabled by default to avoid extra context cost - **Structured packages** β€” `meta_info.json`, `plan.md`, `backup.md`, `recover.md`, and `failure_examples/` - **Instant revision** β€” failed runs are diagnosed by an isolated verifier and mapped to targeted skill-file edits - **Visual inspection** β€” the Web UI shows matched skill name, `skill_id`, injected context, revisions, and failure examples β†’ **[Get started with ClawGUI-Skills](clawgui-skills/README.md)** ### πŸ“± ClawGUI-APP β€” On-Device Deploy > πŸ“ [`clawgui-app/`](clawgui-app/) Β· πŸ“– [Setup Guide](clawgui-app/SETUP.md) ClawGUI-APP runs the full ClawGUI "brain + GUI agent" stack directly on one Android phone, removing the old split architecture where a desktop host orchestrates tasks and the phone only executes them. Built on Shizuku for high-privilege, non-root device control. - **Phone-only workflow** β€” No desktop coordinator required; a device with Shizuku is enough - **Two-agent design** β€” Brain LLM handles planning and tool orchestration, phone agent handles screen understanding and actions - **Multi-model support** β€” AutoGLM, MAI-UI, GUI-Owl, Qwen-VL, UI-TARS and more via OpenAI-compatible API - **Voice input (STT)** β€” Tap-to-record microphone with OpenAI-compatible speech-to-text transcription (SiliconFlow, Groq Whisper, etc.) - **Conversation + automation** β€” Sessions, long-term memory, external channels (Feishu), and trace replay - **Built for real usage** β€” Floating overlay status, built-in IME, session persistence, and diagnostics β†’ **[Build ClawGUI-APP](clawgui-app/SETUP.md)** ## 🎯 Roadmap - [x] **ClawGUI-Agent** β€” GUI agent framework for phone control and evaluation via natural language - [x] **ClawGUI-RL** β€” Scalable mobile online RL training infrastructure with GiGPO + PRM - [x] **ClawGUI-Eval** β€” Standardized GUI grounding evaluation suite with 6 benchmarks and 95%+ reproduction rate - [x] **ClawGUI-2B** β€” 2B GUI agent trained with GiGPO, achieving 17.1 MobileWorld SR (vs. 11.1 baseline) - [x] **On-device ClawGUI-Agent ([ClawGUI-APP](clawgui-app/))** β€” Deploy ClawGUI-Agent directly on real phones β€” no desktop coordinator, paving the way for fully on-device inference (brain/VLM still served via cloud API today) - [ ] **Desktop Online RL** β€” Extend ClawGUI-RL to desktop environments for online reinforcement learning - [ ] **Web Online RL** β€” Extend ClawGUI-RL to web environments for online reinforcement learning - [ ] **More Skills for ClawGUI-Agent** β€” Add more pluggable skills to expand ClawGUI-Agent's capabilities - [ ] **Hybrid CLI & GUI Mechanism** β€” Explore hybrid interaction combining command-line and GUI operations - [ ] **Real-time RL** β€” Integrate real-time reinforcement learning based on the OPD algorithm for ClawGUI-RL and ClawGUI-Agent ## 🀝 Contributing We welcome contributions of all kinds β€” new model support, new RL environments, bug fixes, and documentation improvements. See [CONTRIBUTING.md](CONTRIBUTING.md) for how to get started, module-specific guidelines, and PR requirements. ## πŸ™ Acknowledgements ClawGUI is built upon the following excellent open-source projects. We sincerely thank their contributors: - [**verl-agent**](https://github.com/langfengq/verl-agent) - [**MAI-UI**](https://github.com/Tongyi-MAI/MAI-UI) - [**MobileWorld**](https://github.com/Tongyi-MAI/MobileWorld) - [**Mobile-Agent**](https://github.com/x-plug/mobileagent) - [**nanobot**](https://github.com/HKUDS/nanobot) - [**Open-AutoGLM**](https://github.com/zai-org/Open-AutoGLM) ## License This project is licensed under the [Apache License 2.0](LICENSE). ## πŸ“ Citation If you find ClawGUI useful in your research, please consider citing our paper: ```bibtex @article{tang2026clawgui, title={ClawGUI: A Unified Framework for Training, Evaluating, and Deploying GUI Agents}, author={Tang, Fei and Lu, Zhiqiong and Zhang, Boxuan and Lu, Weiming and Xiao, Jun and Zhuang, Yueting and Shen, Yongliang}, journal={arXiv preprint arXiv:2604.11784}, year={2026} } ``` ## Star History Star History Chart