Skip to main content
Glama

agent-computer

skills.sh

npx skills add FrancoAA/agent-computer

Give any coding agent its own Linux desktop: a Docker container with XFCE, Chromium, Blender, LibreOffice, GIMP, a shell with sudo, and your project folder at /workspace. You can watch it live in your browser.

It isn't tied to one agent. The same computer can be used three ways:

How

Command

Works with

MCP tools (agent on your machine, operating the computer)

agent-computer mcp

Claude Code, Codex, Cursor, pi, T3 Code, any MCP client

CLI + skill (agent drives it from bash)

agent-computer screenshot, click, type, exec…

pi, Claude Code skills, any agent with a shell

Agent inside the computer (stdio passthrough)

agent-computer run -- <agent>

ACP clients (T3 Code, Zed, Open Codex), interactive TUIs

npx skills add FrancoAA/agent-computer installs it for Claude Code, Codex, pi, Cursor and other agents (add -g for all projects). Manual alternatives:

The skill folder skills/agent-computer/ is self-contained: SKILL.md, a single bundled CLI (scripts/agent-computer.mjs, no npm install needed) and the Dockerfile. Requirements: Docker and Node.js 20+.

node skills/agent-computer/scripts/agent-computer.mjs install-skill all   # Claude Code, Codex (~/.agents), pi
# or one target: install-skill claude | codex | pi | agents | <folder>

Or unzip release/agent-computer-skill.zip (npm run pack:skill) into any of:

Agent

Skill folder

Claude Code (and T3 Code's Claude sessions)

~/.claude/skills/ or <project>/.claude/skills/

Codex (and T3 Code's Codex sessions)

~/.agents/skills/ or <project>/.agents/skills/

pi

~/.pi/agent/skills/, or pi --skill <folder>

Claude Code can also install it as a plugin: /plugin install agent-computer --marketplace FrancoAA/agent-computer (Claude Code 2.1.275+).

On first use the skill builds the desktop image in the background (~10 minutes, ~9 GB) and tells the agent to retry; agent-computer image status shows progress.

Sandboxed agents: the CLI needs the Docker socket. Codex's workspace-write sandbox blocks it, so Codex asks you to approve running agent-computer commands outside the sandbox (non-interactive codex exec can't, and reports that clearly).

Skills that run on hosted sandboxes (claude.ai, the API's code execution) won't work: they have no Docker.

Related MCP server: Harness

Install the CLI (for MCP and run-inside)

npm install && npm run build && npm link     # `agent-computer` on your PATH (bundled CLI)
agent-computer image build                   # optional: build the image now instead of on first use
agent-computer up && agent-computer view     # start it and watch the desktop
agent-computer setup claude                  # MCP: claude | codex | pi; `setup cursor` prints the JSON

T3 Code runs Claude Code and Codex with their own configs, so the skill or setup claude / setup codex covers T3 sessions too. To run an agent entirely inside the computer from T3 Code (or Zed, or Open Codex), add a custom ACP agent with command agent-computer and arguments run -- claude-agent-acp (or run -- codex-acp, or run -- cursor-agent acp with a Cursor-enabled image).

MCP tools

computer_info, screenshot, click, move_mouse, drag, type_text, press_keys, scroll, shell, open (URL or GUI app), list_windows, focus_window, read_file, write_file, view_image, blender (headless bpy scripts and renders).

For DOM-level browser automation, add Playwright's MCP server attached to the computer's Chromium: claude mcp add agent-computer-browser -- agent-computer browser-mcp.

Which computer?

One per project folder by default (named after the folder), so agents in different repos don't share a desktop. Override with --name NAME or AGENT_COMPUTER=NAME. The project folder is shared at /workspace, except $HOME and /, which get a private volume instead (also forced with --no-workspace).

agent-computer list
agent-computer --name blender-lab up --gpu --cpus 8 --memory 16g
agent-computer --name blender-lab destroy

--gpu shares /dev/dri (Mesa/AMD/Intel) for hardware-accelerated Blender viewports and EEVEE.

Running agents inside

run copies the matching host login into the computer (~/.claude/.credentials.json, ~/.codex/auth.json, Cursor's auth.json, Gemini's OAuth file), forwards common API-key variables, and passes stdio through. Interactive TUIs get a TTY; Ctrl-C goes to the agent. When the caller stops run (SIGTERM/SIGHUP), the agent's whole process group is killed inside the container.

The image includes Claude Code, Codex, claude-agent-acp, codex-acp and Playwright MCP. Cursor's agent CLI is only distributed as a remote install script, so it is opt-in: build with AGENT_COMPUTER_WITH_CURSOR=1 agent-computer image build.

Security model

  • This is a container, not a VM: it shares the host kernel. It contains mistakes and sprawl well; it is not a hard boundary against a hostile workload. For stronger isolation install gVisor or Kata Containers and set AGENT_COMPUTER_RUNTIME=runsc (or kata-runtime); new computers then start under that runtime.

  • The shared /workspace folder is read-write. Use --no-workspace for a fully private computer.

  • Logins copied in with run/auth are readable by anything running inside the computer.

  • The desktop (noVNC) and DevTools ports are bound to 127.0.0.1 on random ports and have no password. Anyone with access to your machine's localhost can view and control the desktop.

  • No Docker socket is mounted, and the container is not privileged. The agent has sudo inside the container.

How it works

skills/agent-computer/docker/ builds a Debian trixie image. Its entrypoint starts Xvfb (:1), an XFCE session, x11vnc (container-local) and noVNC on port 6080, plus a relay for Chromium DevTools on 9223. The CLI talks to Docker directly: docker exec + xdotool/scrot for input and screenshots, docker cp for files, and docker exec -i with a per-command process group for run/exec.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables tool-capable AI models to operate a private Linux desktop and headless browser, with terminal, file, and application controls, while keeping your physical mouse and keyboard separate.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to see and control an existing Linux X11 desktop over SSH by taking screenshots and performing mouse, scroll, typing, and keyboard-shortcut actions across browsers, terminals, file managers, and other apps.
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Gives a coding agent its own persistent, authenticated Linux desktop over MCP, so it can browse signed-in sites, run shell commands, move files, and paste credentials that the model never sees, with logins surviving between tasks and human takeover available at any time.
    1
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to spin up real Linux desktops in Docker and drive them by reading windows, pages, and documents as text and acting with tools like opening apps, running menu commands, filling file dialogs, and exporting files. It exposes these capabilities uniformly over MCP, function calling, HTTP, CLI, and Python/TypeScript SDKs, with token-efficient diffs, code mode, and parallel or forked desktops.
    56 PyPI
    MIT