Skip to main content

linux-x11-harness

Run Linux GUI apps in isolated X11 displays for AI agents.

CI License: MIT

English · 中文


What is this?

linux-x11-harness creates isolated X11 displays and lets AI agents control GUI applications. Each display gets its own X server, window manager, and application process group, so agents can click, type, capture screenshots, and read accessibility trees without touching the host desktop.

A live preview panel opens on your desktop while the agent works, so you can watch every click and screenshot in real time. Previews are read-only by default; double-click one to open an expanded interactive view where your mouse and keyboard directly control the sandboxed app.

Typical uses:

  • Let an agent operate a GUI app without taking over your real desktop.
  • Watch what the agent is doing live in a small preview window.
  • Run end-to-end tests that need real input, focus, and screenshots.
  • Capture accessibility trees or click UI elements programmatically.
  • Discover installed/running apps and launch them by name.
  • Invoke application menus by path and assert UI state after actions.
  • Test GUI installers, system settings, and multi-app workflows.
  • Verify accessibility compliance by auditing AT-SPI element metadata.
  • Read screen text with local OCR — works even without a vision model.

See the agent skill for concrete workflows and tool usage patterns.

Quick start

Install and register with your agents in one step:

pip install linux-x11-harness
linux-x11-harness setup

After setup, open your agent and start asking it to use GUI apps. The agent will launch the harness automatically when needed.

Requirements: Python 3.10+, Rust toolchain, Linux with xvfb and openbox.

Supported agents

linux-x11-harness setup auto-configures both the MCP server and the agent skill where the agent supports them.

Agent MCP server Agent skill
Claude Code ✅ ✅
Codex ✅ ✅
Qwen ✅ —
OpenCode ✅ —
Kimi Code — ✅
Pi — ✅

Other MCP-compatible agents can connect manually with linux-x11-harness mcp.

Documentation

License

MIT

Metadata

Release files for linux-x11-harness 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for linux-x11-harness 0.1.1
File Interpreter ABI Platform
linux_x11_harness-0.1.1-py3-none-manylinux_2_34_x86_64.whl Python 3 none Linux glibc 2.34+ x86-64 Details

Release files / linux_x11_harness-0.1.1-py3-none-manylinux_2_34_x86_64.whl

Download URL linux_x11_harness-0.1.1-py3-none-manylinux_2_34_x86_64.whl
Size 4.3 MB
Tags Linux glibc 2.34+ x86-64 Python 3
SHA-256 checksum
How to use checksums
30279685d82620cfb6a87fa560f05d375ac2e52ff1573cc185c70efc154ab24f
BLAKE2b-256 checksum
How to use checksums
6699d123b3b7b84553edf08276707bc2f569bbca523d47be3aad00dc31c2e762
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.13

Release history Release notifications | RSS feed

0.1.2

1 release file

This release

0.1.1 This release

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page