# Let your agents check their own work.

A portal puts a real browser page or an Android device on the canvas. Wire it to an agent and that agent can drive it: navigate, click, type, read what is on screen, and take a screenshot to prove it worked.

## A live browser page as a node

A browser portal is a Chromium page that lives on the canvas beside your terminals. The agent wired to it navigates, clicks, fills forms, reads the accessibility tree and takes screenshots with mao portal. It needs a Chromium install on your machine.

## An Android phone on the canvas

A device portal holds an Android emulator or a physical phone. The agent taps, swipes, types, presses hardware keys, launches apps and reads logcat, the same way it drives a browser.

## Only the agents you wire

A portal answers to the agents connected to it and to no one else. Draw the wire to hand an agent the browser; remove it to take it back.

## Close the loop on a build

The agent that changed the checkout page can open it, pay with a test card and tell you what broke, while you watch it happen on the same canvas.

## Frequently asked questions

### How does a coding agent control a browser portal?

In MAO, wire the agent's terminal to the portal, and the agent drives it with the `mao portal` command: `navigate` opens a page, `info`, `screenshot` and `snapshot` inspect it, and `click`, `fill`, `type`, `key`, `scroll`, `text` and `evaluate` interact with it. Every command checks that the wire is still there.

### Does the MAO browser portal need Chrome?

It needs a Chromium browser, such as Chrome, installed on your machine. MAO looks for one in Homebrew, `/Applications` and the usual Windows and Linux install locations, not only on your PATH.

### Can an agent read passwords in a browser portal?

No. In a MAO browser portal, a password or one-time-code field shows the agent only whether it is filled, both in snapshots and in the page text and HTML it reads.

### What do I need to put an Android emulator on the MAO canvas?

The Android SDK tools, or an Android phone attached to your computer. MAO finds `adb` and the emulator through `ANDROID_HOME`, Homebrew and the SDK's default folders; choose **New device portal** and pick the device.

### Does MAO support the iOS Simulator?

Yes, on a Mac with Xcode. A MAO device portal shows an existing iOS Simulator on the canvas, where you or a wired agent can drive it; you create and delete simulators in Xcode.

Source: https://trymao.dev/portals
