Open-source project
microsoft/magentic-ui avatar
microsoft/magentic-ui

MagenticLite: Microsoft's Small-Model Agent for Browser and File Tasks

MagenticLite is an experimental agent that works across the browser and local file system

10,091 stars1,014 forksPythonMIT

At a glance

What is it?
MagenticLite pairs the MagenticBrain orchestrator with the Fara browser-use model and runs browser sessions inside a Quicksand VM sandbox. It is a research prototype for developers who want computer-use agents without frontier-scale compute.
Who is it for?
Adopt MagenticLite if you are a developer or researcher who wants to evaluate human-in-the-loop computer-use agents on small, self-hostable models, and you accept that this is an alpha-stage research prototype with the browser confined to a Quicksand VM. Do not adopt it as production automation for unattended workflows, and do not expect it to run without a model endpoint you host or connect yourself.
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 5 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

What MagenticLite solves, and who it is for

Most computer-use agents assume you can afford a frontier model behind every click. MagenticLite inverts that assumption. The README describes it as "the next generation of Magentic-UI", redesigned to "do more with less" by pairing an on-device-friendly orchestrator called MagenticBrain with a specialized browser-use model called Fara. The stated goal is strong agentic performance without frontier-scale compute. The audience is developers and researchers who want to run a browser-and-file agent on hardware they control, rather than paying per-token for a hosted frontier model.

The scope is deliberately two-sided. The README says it works "across the browser and your local file system", listing web research, form filling, and file management as one workflow. The demo tasks in the README follow that pattern: fill expense forms, find prices for recipe ingredients, find and book a restaurant, organize local files. Two of those are browser tasks, one mixes browsing with booking, and one is local file work. That combination is the point. A browser-only agent cannot tidy your downloads folder, and a file-only agent cannot look up a price.

Human oversight is treated as a feature, not a fallback. The README states that you can "steer, approve, or take over at any point" and that MagenticLite "stops and checks in before taking critical actions". That design choice shapes everything downstream, including the installation and the sandbox, and it is the main reason to look at this project rather than a fully autonomous alternative.

MagenticBrain, Fara, and the Quicksand sandbox

The architecture visible in the README is a two-model split. MagenticBrain handles orchestration: deciding what to do next. Fara handles browser use: interpreting pages and acting on them. Both are linked to Microsoft Foundry pages in the README. The pyproject.toml confirms the shape of the runtime: dependencies include playwright (pinned to >=1.58,<1.61), fastapi[standard], typer, sqlmodel, alembic and psycopg, plus quick-sandbox with the qemu and cua extras and quicksand-cua. So the application is a local FastAPI service with a CLI entry point, a SQL-backed store with migrations, and a browser that lives inside a VM.

The sandbox is the part worth pausing on. The README says browser sessions run inside a lightweight VM sandbox, Quicksand, "so the agent can't reach the rest of your machine without your say-so". That is a stronger isolation story than a plain Playwright process, which runs with your user's permissions. It is also why the dependency list pulls in QEMU-related extras: a VM has to be started, which costs setup time and disk.

The control loop is human-in-the-loop by construction. The README's phrasing about stopping and checking in before critical actions implies an approval gate between the agent's plan and its execution. The configuration doc is listed as covering "Sandbox, agent mode, tool approval, full config.yaml example", and the repository ships a config.yaml.example at the top level, so the approval behaviour is configurable rather than hardcoded. The README does not spell out the exact approval policy, so treat config.yaml.example and docs/configuration.md as the source of truth.

Install MagenticLite from PyPI and run a first task

The README's quick start targets macOS and Windows via WSL, and points to docs/installation.md for other platforms. The commands below are copied from the README. The first block creates a project directory, builds a Python 3.12 virtual environment with uv, activates it, and installs the latest 0.2.x release from PyPI. Note the package name uses an underscore (magentic_ui) while the CLI uses a hyphen (magentic-ui).

bash
# Create a project directory
mkdir magentic-lite && cd magentic-lite

# Create and activate a virtual environment
uv venv --python=3.12 --seed .venv
source .venv/bin/activate

# Install the latest 0.2.x release from PyPI
uv pip install "magentic_ui>=0.2.0"

After the install finishes, launch the application on port 8081. The README uses this exact command:

bash
magentic-ui --port 8081

Open http://127.0.0.1:8081/ in a browser and follow the in-app onboarding to connect a model endpoint. The README notes that if you do not have an endpoint yet, docs/model-hosting-guide.md walks through standing one up. This is the step where most first attempts stall: the agent is useless until MagenticBrain and Fara have somewhere to run. The README does not claim the installer provisions a model for you.

If you prefer to run from a clone instead of PyPI, the repository lists docs/build-from-source.md, which the README says covers `uv sync` and `pnpm dev`. The frontend/ directory in the repository layout is consistent with a separate Node build. For a first real task, the README's own examples are the safest starting point: try the local file organization demo or a simple price lookup, and watch for the approval prompt before the agent acts.

Where MagenticLite is the wrong tool

The project labels itself honestly. The pyproject.toml carries the classifier "Development Status :: 3 - Alpha", and the package description calls it "a research prototype of a human-centered interface powered by a multi-agent system". That is not marketing hedging; it tells you the failure modes are expected. The repository also ships docs/limitations.md, described in the README as covering "tasks and usage patterns MagenticLite doesn't handle well today". If you are evaluating adoption, that file is the one to read before anything else.

The human-in-the-loop design is itself a limitation for some use cases. An agent that stops and checks in before critical actions is a poor fit for unattended batch automation, overnight scraping, or anything where no one is watching the approval prompt. If your requirement is a headless job that runs on a schedule, this is the wrong shape of tool.

The sandbox adds a second constraint. Running browser sessions inside a Quicksand VM means QEMU-backed virtualization, which the dependency list confirms via the qemu extra. On a machine without hardware virtualization, or inside a container that forbids nested virtualization, that setup can fail before any agent code runs. The README directs users to docs/troubleshooting.md for common errors, which is a signal that environment problems are a known category.

Finally, MagenticLite is not a drop-in replacement for the earlier Magentic-UI 0.1 line. The README states that the 0.1 release, "optimized to run with frontier models", lives on a separate branch, magentic-ui-0.1. If your existing setup was tuned for frontier models, the small-model redesign is a different operating point, not an upgrade path.

How MagenticLite differs from browser-use style libraries

The closest comparison is a browser automation library such as Playwright, which the project depends on. Playwright gives you a deterministic script: you write the selectors and the control flow, and it does exactly that every time. MagenticLite inverts the responsibility. You describe a task, and MagenticBrain decides the steps while Fara interprets the page. The README's demo tasks, like finding prices for recipe ingredients or booking a restaurant, are the kind of work where writing a Playwright script is impractical because the sites and the goal vary.

The trade-off is predictability. A Playwright script fails loudly when a selector changes; an agent can improvise around a changed page, which is useful, or improvise into a wrong action, which is not. MagenticLite's answer to that risk is the approval gate and the Quicksand sandbox: the agent may propose something odd, but it cannot silently touch the rest of your machine, and it should pause before critical actions.

A second comparison is the earlier Magentic-UI 0.1 release on the magentic-ui-0.1 branch. Same repository, different compute assumption. MagenticLite is the small-model variant; 0.1 is the frontier-model variant. Choosing between them is a question of what hardware and endpoint you already have, not which is newer.

The third axis is model hosting. Because MagenticBrain and Fara are separate components with their own Foundry pages, you are not locked to a single vendor endpoint in the way a monolithic agent would lock you. The README's model hosting guide exists precisely because connecting an endpoint is a user decision.

Maintenance, releases, and the MIT licence

The repository is not archived, and its last push was on 2026-09-10. The most recent release listed is v0.2.1, tagged "Magentic-UI 0.2 release", dated 2026-05-21. Before that, v0.1.6 ("Magentic-UI 0.1.6: Fara-7B") landed on 2025-11-29, and 0.1.5 ("Magentic-UI 0.1.5: 'Tell Me When' tasks enabled by SentinelSteps") on 2025-10-21. The gap between the 0.2.1 release and the most recent push suggests ongoing work between tagged releases, but the release cadence itself is not fast, and the version numbers still sit below 1.0.

Upgrade cost is shaped by the dependency pins. Playwright is constrained to >=1.58,<1.61 and tiktoken to >=0.12,<0.14, so major jumps in either will require a coordinated release rather than a silent `uv pip install --upgrade`. The presence of alembic and psycopg means there is a database schema with migrations; a version upgrade can involve a migration step, and the README does not document rollback. If you deploy this anywhere shared, plan for the database, not just the Python package.

Licensing is straightforward to state and not to over-interpret. The README says Microsoft and contributors grant a licence to the code under the MIT License, and pyproject.toml declares `license = "MIT"`. The same README adds a trademark carve-out: the project licences do not grant rights to Microsoft names, logos or trademarks. MIT covers the code; it does not cover the brand. That distinction matters if you plan to redistribute a rebranded build. For anything beyond that, the LICENSE and NOTICE files in the repository are the documents to read, and this is not legal advice.

Editorial conclusion

Adopt MagenticLite if you are a developer or researcher who wants to evaluate human-in-the-loop computer-use agents on small, self-hostable models, and you accept that this is an alpha-stage research prototype with the browser confined to a Quicksand VM. Do not adopt it as production automation for unattended workflows, and do not expect it to run without a model endpoint you host or connect yourself. Before committing, verify that your platform is covered by the installation guide, that your chosen model endpoint is compatible with the MagenticBrain and Fara pairing, and that the sandbox dependencies (quick-sandbox with qemu and cua extras) install cleanly on your machine.

Frequently asked questions

What is MagenticLite?

It is the next generation of Magentic-UI, an agentic application from Microsoft AI Frontiers that pairs the MagenticBrain orchestrator model with the Fara browser-use model so tasks can run without frontier-scale compute. It works across the browser and the local file system, keeps the user in the loop with approval checkpoints, and runs browser sessions inside a Quicksand VM sandbox.

What is an alternative to MagenticLite?

The earlier Magentic-UI 0.1 release is the in-repository alternative: the README says it is optimized to run with frontier models and lives on the magentic-ui-0.1 branch. Outside the project, a deterministic browser automation library such as Playwright, which MagenticLite itself depends on, trades agent improvisation for scripts you write and control.

How do I install MagenticLite?

The README's quick start creates a project directory, builds a Python 3.12 virtual environment with uv, and installs the latest 0.2.x release from PyPI with `uv pip install "magentic_ui>=0.2.0"`. It then runs the app with `magentic-ui --port 8081` and asks you to open http://127.0.0.1:8081/ and connect a model endpoint through the in-app onboarding.

Can MagenticLite run without a model endpoint?

No. The README's quick start ends by directing you to the in-app onboarding to connect a model endpoint, and points to the Model Hosting Guide if you do not have one yet. MagenticBrain and Fara both need somewhere to run.

Is MagenticLite production ready?

The repository classifies the package as Development Status 3 - Alpha and describes it as a research prototype of a human-centered interface. It also ships a limitations document covering tasks and usage patterns it does not handle well today.

What licence does MagenticLite use?

The code is licensed under the MIT License, as stated in the README and in the pyproject.toml license field. The README separately notes that this licence does not grant rights to use Microsoft names, logos or trademarks.

Official sources

  1. License: MIT
  2. microsoft/magentic-ui on GitHub
  3. Project website
  4. README
  5. Releases
Community notes

Community notes