GELab-Zero: a 4B GUI agent with the ADB plumbing included
STEP-GUI: The top GUI agent solution in the galaxy. Developed by the StepFun-GELab team and powered by StepFun’s cutting-edge research capabilities.
At a glance
- What is it?
- StepFun's open-source release pairs a locally runnable 4B GUI agent model with the infrastructure that normally blocks mobile agent work: multi-device ADB, dependency setup, inference serving and trajectory recording. The engineering is the point, but the benchmark claims in the README are not yet numbers you can check.
- Who is it for?
- Adopt GELab-Zero if you are building or evaluating Android GUI agents and want the ADB, device-management and inference plumbing handled locally rather than assembled yourself; the MIT licence and the 4B model weights make that a low-commitment starting point. Do not adopt it if you need iOS coverage, if you cannot tolerate the memory and VRAM cost of hosting the model on your own hardware, or if you require reproducible benchmark numbers before you commit.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 128 days ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The problem GELab-Zero actually targets
Mobile GUI agents have a compatibility argument on their side: they drive apps through the screen, so they do not need each app vendor to ship an API or adapt to an agent protocol. The README makes exactly this case, describing GUI-based solutions as having "universal compatibility with all apps and zero-cost integration without requiring app vendor adaptation." The cost moves elsewhere. It lands in the plumbing: multi-device ADB connections, dependency installation, permission configuration, inference service deployment, and task recording and replay. The README lists those five items explicitly as the work that "Agent developers and MCP users need to handle" before anything interesting happens. GELab-Zero is aimed at that gap. It is not primarily a model release, even though a 4B model ships with it. It is an engineering bundle: the inference pipeline, device management and task distribution, packaged so that a developer can get to strategy work instead of fighting USB debugging and Python environments. The audience named in the README is two groups. Agent developers who want to test new interaction strategies quickly, and enterprise users who want to reuse the infrastructure to add MCP capabilities to a product. Both groups care less about peak model accuracy and more about whether the loop runs end to end on hardware they control.
Two halves: a 4B model and the pipeline around it
The repository is split into a model and an infrastructure layer. The model is GELab-Zero-4B-preview, published on Hugging Face and ModelScope, sized at 4B parameters. The README's claim for that size is local deployment on consumer-grade hardware, with the stated trade-off being latency against privacy: run it yourself and nothing leaves the machine, but you pay for it in inference time and memory. The infrastructure layer handles everything between a task description and a phone. According to the README it covers a unified deployment pipeline that resolves environment dependencies and device management, task distribution across multiple phones, and trajectory recording for observability and reproducibility. That last item is the one worth pausing on. Recording interaction trajectories is what turns an agent run into something you can inspect after the fact, and the README ties it to reproducibility rather than to training. There is also a third surface: an MCP server, added in the 2025-12-12 news entry, which exposes the agent as tools so an MCP client can drive it. The README's example client is Chatbox. Quantization is handled outside the repository. The news section credits several external projects and authors for GGUF and EXL3 conversions of the 4B weights, plus community tutorials in Chinese and English. Those conversions are third-party artifacts, not part of the core repo, which matters if you are planning to run the model in a memory-constrained setup.
Three agent modes and where the data goes
The README names three working modes: ReAct loops, multi-agent collaboration, and scheduled tasks. It does not document the control flow of any of them in the material available here, so treat the mode list as a capability claim rather than an architecture description. What is described is the surrounding data path. A task is distributed to one or more connected phones, the agent acts on the device, and the interaction trajectory is recorded. That recording is the observability surface. If you are evaluating an agent strategy, the trajectory is where you find out whether a failure came from the model's decision or from a mis-tap that the device layer should have caught. The MCP server changes the shape of that path. Instead of a standalone process owning the device connection, the MCP server exposes device management and task distribution as tools, and an MCP client such as Chatbox orchestrates them. The README's own framing for this is "multi-device management and task distribution," which suggests the server is intended as a shared control point rather than a per-developer convenience. What the README does not say is how state is shared between concurrent tasks, how device claims are arbitrated, or what happens when a task is interrupted mid-trajectory. Those are the questions to answer from the source before you put the MCP server in front of a team.
Getting it running: what the README actually gives you
The installation material in the supplied README is thin. There is a Table of Contents entry for "Installation & Quick Start," but the section body is not present in the material provided here, so any command beyond the MCP example would be guesswork. The one concrete command the README does give is the MCP server launch:
python mcp_server/detailed_gelab_mcp_server.py
That single line carries more information than it first appears to. It tells you the MCP server lives under an mcp_server directory, that the entry point is a Python script rather than a packaged console command, and that the file name includes "detailed," which implies there may be other server variants in the same directory. The README's Step 2 is client-side and has no command: import the MCP tools in Chatbox, with a screenshot as the only guidance. Everything else, including how the model weights are fetched, how a device is registered, and what configuration keys the pipeline reads, is not in the material I have. The README does link to a project page at opengelab.github.io and to the Hugging Face model card, and those are the places to look for the setup steps this excerpt omits. If you are deciding whether to adopt the project, the honest position is that the quick-start path is not verifiable from the README alone.
AndroidDaily and the benchmark claim the README does not settle
The repository ships a benchmark. AndroidDaily is published as a dataset on Hugging Face, described in the README as a "self-built benchmark close to daily life," with tasks released in 2025-11. There is also an "Open Benchmark" section in the table of contents, but its contents are not in the material provided, so no score can be quoted from it. This is the weakest part of the release as presented. A GUI agent's value is almost entirely a function of task success rate on real apps, and the README asserts a position ("the top GUI agent solution in the galaxy") without the numbers to back it locally. The AndroidDaily dataset is the right instrument for that claim, and its existence is a positive signal about how the team thinks about evaluation. But a dataset is not a result. If you are choosing between GUI agent stacks, the sequence should be: pull AndroidDaily, run the 4B model against the task categories that resemble your own, and compare the trajectories. The README gives you the dataset and the infrastructure to do that. It does not give you the answer. That is a fair division of labour, and it is also the reason the model card and project page matter more than the repository's prose.
Where the local-first design breaks down
The central design choice is local deployment of a 4B model, and it has a cost the README frames as a benefit. Running the model on your own machine means you need the memory and VRAM to hold it, plus enough headroom for the inference service the pipeline deploys. The README's phrasing is "consumer-grade hardware," which is a wide band. A laptop that runs the model at acceptable latency and a workstation that runs it comfortably are both consumer-grade. The 4B size makes local hosting plausible in a way a larger model would not, but it also caps what the agent can be expected to reason through, and the README offers no failure analysis on long-horizon or multi-app tasks. The second constraint is platform. Everything in the material is Android: ADB connections, phones, the AndroidDaily benchmark. There is no iOS path described. If your product targets iPhone, this infrastructure does not transfer, because the device-control layer is Android-specific even though the model itself is not. The third constraint is operational. Multi-device task distribution and trajectory recording are useful precisely when you run many tasks, and that is also when the absence of documented device arbitration and state sharing starts to hurt. This is not a tool for a single developer driving one phone by hand; it is a tool for someone running a fleet, and the fleet-management details are the least documented part of the README.
The alternative: a hosted vision model plus your own harness
The obvious alternative is to skip the bundled infrastructure and build the loop yourself around a hosted vision-language model. In that approach you write the screenshot capture, the action parser and the ADB wrapper, and you call a remote API for each decision. The difference is not model quality, it is where the engineering and the data live. The hosted route gives you a larger model and no local memory requirement, at the cost of per-step network latency and the fact that every screenshot of your user's phone leaves your machine. GELab-Zero inverts that: smaller model, local inference, and the device layer already written. The README states the privacy position directly, describing "complete privacy control" as a property of the no-cloud-dependency design. For enterprise work on internal apps, that inversion is the whole argument. For a prototype where you just want to see whether GUI automation is viable, the hosted route gets you to a first result faster because you are not provisioning hardware. The second alternative is simply waiting for app vendors to expose agent-callable APIs, which sidesteps screen automation entirely. The README's compatibility argument is precisely why that has not happened at scale: GUI agents work across apps today, API integrations work per app and per vendor relationship.
Licence, maintenance and what to check before you commit
The repository is MIT licensed, which is permissive and imposes no copyleft obligation on your own code. Two caveats belong here, stated as observations rather than legal advice. First, the licence covers the repository code; the 4B model weights are distributed separately on Hugging Face and ModelScope, and the community GGUF and EXL3 conversions are third-party artifacts with their own terms, so check each one you plan to ship. Second, the news section credits external projects and authors for quantization tools and tutorials, which means part of the practical deployment path runs through code the StepFun team did not write. On maintenance, the material shows an active cadence rather than a steady state: infrastructure released in 2025-11, the AndroidDaily tasks the same month, the MCP server in 2025-12, and a "Coming Soon" placeholder at the top of the news list. That placeholder is the honest signal about upgrade cost. A project still adding surfaces will keep changing them, and the MCP server is the newest and therefore the least stable piece. The 4B model weights are the opposite: a fixed artifact you can pin. If you adopt GELab-Zero, pin the model version, treat the MCP server as the moving part, and read the project page at opengelab.github.io for the setup steps the README excerpt does not carry.
Editorial conclusion
Adopt GELab-Zero if you are building or evaluating Android GUI agents and want the ADB, device-management and inference plumbing handled locally rather than assembled yourself; the MIT licence and the 4B model weights make that a low-commitment starting point. Do not adopt it if you need iOS coverage, if you cannot tolerate the memory and VRAM cost of hosting the model on your own hardware, or if you require reproducible benchmark numbers before you commit. Verify three things first: that the 4B model runs inside your available memory at the latency you need, that your target devices connect cleanly through the project's ADB path, and that the AndroidDaily dataset covers the app categories you care about, because those three checks decide whether the rest of the stack is useful to you.
Community notes