Skip to content
DouweBosPublic

About

UI automation CLI for AI agents. Drive and inspect iOS, tvOS, Android, Fire TV, Roku, macOS and web apps from the terminal.

Topics

Resources

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Repository files navigation

Conductor — mobile and web UI automation for AI agents

Let your coding agent see and drive the app it's building.

Conductor is a CLI that gives AI agents hands and eyes on a running app. Tap, type, read the live UI, take screenshots and run test flows on iOS, Android, TV, macOS and the web, across as many devices as you have.

CI npm version License: MIT

Quick start · Docs · Conductor Studio · Releases


Why Conductor

  • Built for agents. Compact, token-efficient output an agent can act on. One conductor init teaches Claude Code the whole CLI through bundled skills.
  • Every screen you ship to. iOS and tvOS, macOS, Android, Fire TV, Roku and the web, all driven with the same commands.
  • Nothing else to install. Conductor ships its own native drivers: no Maestro CLI, no JVM, no external service.
  • Your Maestro flows still work. A TypeScript reimplementation and partial fork of Maestro; most existing YAML flows run unchanged.
  • Parallel by default. Named sessions and a shared device pool let several agents drive several devices at once without stepping on each other.
  • Stays on your machine. No telemetry, no analytics, no phone-home.

What your agent can do

A terminal running conductor tap-on "Sign In" and the phone button it tapped

An agent works an app the way you do: act, look at the result, act again. It can operate the app while it writes the code for it.

conductor launch-app com.example.myapp
conductor tap-on "Sign In"
conductor input-text "user@example.com"
conductor assert-visible "Dashboard"
conductor take-screenshot --output /tmp/screen.png
Capability Commands
App lifecycle launch-app, stop-app, clear-state, install-app, uninstall-app, foreground-app, copy-app, download-app
Interaction tap-on, input-text, scroll, scroll-until-visible, swipe, gesture, pinch, press-key, erase-text, hide-keyboard
Inspection inspect, focused, capture-ui, take-screenshot, list-apps
Assertions assert-visible, assert-not-visible, assert-true, assert-screenshot
Navigation open-link, back
Flows run-flow, run-flow-inline, run-parallel, run-sequence, flow
Devices start-device, stop-device, list-devices, device-pool, set-location, set-orientation, set-permissions
Debugging logs, crashes, network, memory, profile, metro, record-video, stream-server
In-process (iOS/tvOS) native-inspect, native-find, native-set, native-eval, native-heap, and more
Test cases cases
Web setup install-web [browser] (installs a Playwright browser; --check prints status)
Discovery list-options [command] / <command> --options, workspace

The command catalogue covers each one, and conductor <command> --help lists every flag.

Quick start

npm install -g @houwert/conductor
conductor init

init installs Conductor's Claude Code skills into your repository (.claude/skills/), so your agent knows every command and the act → observe → act loop. It's the only setup step. In a terminal it asks which skills to install and where; headless, in CI or from an agent, it installs them all.

conductor init --yes      # install every skill, no prompts
conductor init --global   # install into ~/.claude/skills/ for all repos
conductor init --force    # re-sync after upgrading conductor

The skills are conductor-device-interact, conductor-inspect, conductor-create-flow, conductor-native, conductor-metro-debugger, conductor-profiler and conductor-device-setup. init records the version it installed, so it can tell you when they're stale and prune skills that are no longer shipped. Prefer your own CLAUDE.md or a slash command? That works just as well.

New to Conductor? Getting started goes from install to your first command in under a minute.

Conductor Studio

A flow's steps across four screens: two checked, the third being verified

Write, run and track UI tests, by hand or with an agent. Conductor Studio is a desktop app built on the CLI.

  • A Maestro workbench. A flow editor with autocomplete and linting, find usages, and renames that repoint every caller.
  • A live device beside your code. Stream the screen, pick elements, and record your taps into flow steps.
  • Agentic testing. Describe a behaviour in a sentence. An agent plans the test, drives the device, and files a visual report with evidence for every expectation.
  • Test cases. See your Qase cases alongside the flows that cover them.

Studio bundles its own copy of the CLI, so there's nothing else to install. It comes in light and dark, and it's signed, notarized and auto-updating.

Download for macOS (Apple silicon). Studio releases are tagged studio-v*. The Studio README has the full feature tour.

Platforms

Platform Targets
iOS & tvOS Simulators and physical devices
macOS Apps on the host Mac
Android Emulators and devices
TV Amazon Fire TV, Roku
Web Chromium, Firefox and WebKit, via Playwright

You'll need Xcode for iOS and tvOS, adb on your PATH for Android, and a Playwright browser for the web (conductor install-web).

Contributing

Issues and pull requests are welcome. CONTRIBUTING.md covers the repository layout, building the drivers and CLI from source, and running the tests.

License

MIT. Conductor includes code derived from Maestro, licensed under Apache 2.0; see NOTICE.

About

UI automation CLI for AI agents. Drive and inspect iOS, tvOS, Android, Fire TV, Roku, macOS and web apps from the terminal.

Topics

Resources

Contributing

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages