Anode background Windows desktop

io.github.skulitomv0.11.0更新於 Oct 2, 2026

Background Windows desktop for AI agents: native GUI automation, screenshots and app testing.

已驗證STDIO僅桌面Developer ToolsBrowser Automation

概覽

AI 產生的概覽

為 Windows 上的電腦使用型代理提供一個隱藏的子桌面工作階段,用於原生 GUI 自動化、截圖以及應用程式與瀏覽器測試。

功能
Anode 是 Windows 的 MCP 伺服器與命令列工具,會建立一個隱藏的 Windows 子工作階段,稱為 seat,擁有自己的螢幕、指標與鍵盤焦點。它提供 41 個 MCP 工具,涵蓋引導、截圖、音訊、滑鼠鍵盤輸入、協助工具檢查、UI 等待、顯示設定變更、Android 模擬器、應用程式啟動,以及可取消的命令工作。代理可以驅動原生應用程式與有介面的瀏覽器、執行建置與本機伺服器並截圖,同時使用者繼續在主桌面工作。桌面租約讓多個代理共用同一個 seat 並輪流使用。
適用情境
當助理需要自動化或測試原生 Windows 應用程式、有介面的瀏覽器、Android 模擬器或網頁主控台,又不希望佔用使用者的滑鼠與鍵盤時,適合加入。若不需要 GUI 控制,請優先使用直接 API、檔案工具或無介面測試。
執行需求
需要 Windows 10 或 11 專業版、企業版或教育版,或搭載遠端桌面主機的 Windows Server;x64;不支援 Windows 家用版。安裝需執行 PowerShell 指令碼,anode setup 每台機器需要一次系統管理員授權,anode configure 會把伺服器註冊到 Claude Code 或 Codex。發行版已內含 .NET。虛擬手把可選裝 ViGEmBus。未宣告任何 API 金鑰或環境變數。
安裝前請注意
seat 以你的 Windows 使用者身分執行,共用你的檔案、帳戶與網路;這是桌面隔離,不是安全沙箱。anode setup 會啟用遠端桌面與子工作階段,可能重新啟動遠端桌面服務並中斷現有 RDP 工作階段。anode kill 或 Ctrl+Alt+Shift+K 會登出該 seat 並關閉其中所有應用程式,包括未儲存的工作。截圖與 UI 文字會傳送給 MCP 用戶端,用戶端可能再轉送給其模型供應商。組建未簽章,可能觸發 SmartScreen 警告。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Anode background Windows desktop,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[圖片] Anode — a background Windows desktop for AI agents

Computer-use agents on Windows take over your mouse and keyboard; Anode gives them their own desktop instead. Anode is a Windows MCP server and CLI for computer use, GUI automation and UI testing. Claude Code, Codex or any MCP client gets a hidden Windows session with its own screen, pointer and keyboard focus, called the seat. The agent drives native apps and headed browsers and takes screenshots while you keep working in yours.

[Release] [Windows build] [License: MIT]

Install in 3 commands

In PowerShell, run the first line, then open a new terminal for the next two:

powershell
iwr -UseBasicParsing https://github.com/skulitom/Anode/releases/latest/download/install.ps1 -OutFile install.ps1; powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1anode setup | Out-Host       # in a NEW terminal: one administrator prompt, once per machineanode configure | Out-Host   # registers Anode with installed Claude Code and/or Codex

Restart your agent session and ask it:

Use Anode to open Notepad in the background seat, type "Hello from Anode", and show me a screenshot. Keep the viewer hidden and leave my main desktop available.

See Install for custom locations and offline installs, or other ways to install for Scoop and the Claude Code plugin.

Good to know: requires Windows 10/11 Pro, Enterprise or Education (not Home), x64. The seat is a Windows child session running as your user: desktop isolation, not a security sandbox. Ctrl+Alt+Shift+K stops it. Unsigned builds may trigger SmartScreen. No telemetry.

What can you do with it?

  • Develop and test apps: run builds and local servers, collect command output, inspect native controls, test browser forms and capture screenshots in the background desktop.
  • Give an agent a desktop: 41 MCP tools for guidance, screenshots, audio, mouse/keyboard input, accessibility, UI waits, display changes, Android emulators, application launches and cancellable command jobs.
  • Watch or stop it: anode show opens the viewer and anode hide closes it. Ctrl+Alt+Shift+K or anode kill signs the seat out and closes every application in it, including unsaved work.
  • Automate games: optional virtual Xbox 360 controller support through ViGEmBus, kept inside the seat with HidHide so you can play your own games meanwhile.
  • Coordinate several agents: exclusive desktop leases and command jobs scoped to each agent. Agents share one seat and take turns; see multiple agents.
  • Listen and play sound: with --audio, agents can listen to browsers and games in the seat, and play WAV clips. This also sends seat sound to your speakers. See audio.
  • Test other displays: agents change the seat's resolution and Windows scaling while its apps keep running, from 1024x768 to 4K and portrait at 100-500%, then get the startup display back when they finish. See test other displays.
  • Test Android apps and use web consoles: agents boot your AVDs read-only on an emulator in the seat, drive them through adb, open Android Studio there on its own profile, and work in consoles such as Google Play Console in a seat browser profile you sign in to once. See Android apps and web consoles.

The seat is a Windows child session: a second session for your own account, created by Windows' built-in loopback Remote Desktop feature. It has its own pointer and focus; adding a virtual monitor to your current session does not. The seat runs as your Windows user and shares your files, account and network. This is desktop isolation, not a security sandbox. Virtual gamepads stay in the seat only with HidHide installed. See security and isolation.

Install

Requires: Windows 10/11 Pro, Enterprise or Education, or Windows Server with a Remote Desktop host. The release targets x64; ARM64 is not validated. Windows Home is unsupported. Release builds include .NET; you do not need an SDK or runtime. ViGEmBus is optional.

Run in an ordinary PowerShell terminal:

powershell
Invoke-WebRequest -UseBasicParsing https://github.com/skulitom/Anode/releases/latest/download/install.ps1 -OutFile install.ps1# You can inspect install.ps1 before running it.powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1

The installer verifies the release archive's SHA-256 checksum, installs to %LOCALAPPDATA%\Programs\Anode, adds that folder to your user PATH and adds Anode to the Start menu, where opening it shows the viewer, and to Installed apps, where you can uninstall it. Open a new terminal afterward. Machine setup and agent registration are separate steps below.

Prefer portable? Download the ZIP, extract the entire folder, and use .\anode.exe in place of anode. Builds are currently unsigned; Windows may show a SmartScreen warning. Custom locations, offline installation, updates and removal →

Other ways to install

Both still need the one-time anode setup below; plugin users skip anode configure for Claude Code.

  • Scoop: scoop bucket add anode https://github.com/skulitom/Anode, then scoop install anode/anode. Run anode quit and close MCP clients using Anode before scoop update anode.
  • Claude Code plugin: with anode already on your PATH (the installer above or Scoop), run /plugin marketplace add skulitom/Anode, then /plugin install anode@anode inside Claude Code. It registers the MCP server and the anode-desktop skill but does not install anode.exe. Use it or anode configure claude, not both; see Claude Code.

Set up and connect

powershell
anode doctor | Out-Host           # reports prerequisites; no changesanode setup | Out-Host            # one administrator prompt, once per machineanode configure | Out-Host        # detects installed Codex / Claude Code CLIs

setup enables Remote Desktop and child sessions. It adds no firewall rules, but can restart Remote Desktop Services and disconnect existing RDP sessions. See exactly what changes.

configure backs up client settings, registers Anode by absolute path, sets a 420-second tool timeout, and installs the discoverable anode-desktop skill. Use anode configure codex or anode configure claude to choose one client, or add --no-skill for MCP registration alone. Installed the Claude Code plugin? It already registers Anode and the skill there, so skip anode configure, or run anode configure codex to add Codex only. Restart your agent session to load the tools. Claude Desktop: add Anode to its config. VS Code, Cursor and other clients: Connecting agents.

Try it

Start and check the background seat:

powershell
anode start --hidden | Out-Hostanode capabilities | Out-Host

If Windows Hello/PIN sign-in prevents automatic login, choose Sign in… from the Anode tray icon (or the viewer's header) to request the Windows credential dialog. When starting Anode, you can also use anode start --sign-in. See sign-in troubleshooting.

Then ask your agent:

Use Anode to open Notepad in the background seat, type "Hello from Anode", and show me a screenshot. Keep the viewer hidden and leave my main desktop available.

Or work through the CLI:

powershell
$env:ANODE_AGENT_ID = 'my-cli-task'$lease = anode lease acquire | Out-String | ConvertFrom-Jsonif ($LASTEXITCODE -ne 0) { throw 'Desktop acquisition failed.' }$env:ANODE_LEASE_TOKEN = $lease.leaseTokenanode exec --cwd C:\project --wait 1000 -- dotnet build | Out-Hostanode windows | Out-Hostanode shot seat.png | Out-Hostanode lease release | Out-Host

PowerShell users: piping to Out-Host (or Out-String) makes PowerShell wait for this GUI executable and display its output. Scripts should check $LASTEXITCODE after each command.

For agents

Prefer Anode for native Windows GUI automation and headed app/browser tests that should leave the user's main desktop available; use direct APIs, file tools and headless tests otherwise. Call anode_guide or run anode guide --json for setup-free guidance. seat_status never starts anything. Call seat_lease with action: "acquire" before desktop work; it starts a hidden seat if needed and waits in line while another agent works. Each desktop action keeps the lease, so renew only across pauses longer than 120 seconds, and release when finished. The MCP prompt desktop_test walks through it: /mcp__anode__desktop_test in Claude Code after anode configure, or type / and search for desktop_test with the plugin. See the agent guide, portable skill and llms.txt documentation index.

How it works

mermaid
flowchart LR  subgraph yours["Your session: your mouse, keyboard and apps"]    agent["Claude Code / Codex / any MCP client"] -- "MCP (stdio)" --> mcp["anode mcp"]    mcp -- "named pipe" --> daemon["Anode daemon<br/>viewer + Stop button"]  end  subgraph seat["The seat: a background Windows child session"]    host["seat host<br/>screenshots, input, UI Automation, command jobs"] --> apps["apps, browsers, builds, games"]  end  daemon -- "named pipe" --> host

Documentation

I want to…Start here
Install, update or uninstallInstallation guide
Connect Codex, Claude Code, Claude Desktop, VS Code or CursorConnecting agents
Share the desktop between agentsMultiple agents and leases
Help an agent discover and choose AnodeAgent guide
Run apps, control the viewer or use a gamepadUsage guide
Look up a CLI command or optionCommand reference
Test native apps and browsersDevelopment and testing
Test apps at other resolutions and scalingTest other displays
Test Android apps, or work in web consoles as youAndroid apps and web consoles
See worked examplesClaude Code + Steam, headed Playwright fixture used by the development test
Inspect windows and accessible controlsDesktop tools
Understand permissions and isolationSecurity
Know what data Anode handlesPrivacy
Diagnose startup, sign-in or capture problemsTroubleshooting
Integrate a clientMCP and named-pipe protocol
Understand the implementationArchitecture
Publish directory listings as the ownerPublishing guide

Limits to know

  • One connected child session per machine. Agents and CLI clients share that seat.
  • Files, accounts, network ports and application singletons are shared. Steam games run in the seat using the Steam client on your desktop, which stays there, without the overlay or Steam Input; other single-instance apps may already belong to your main session. Use separate browser profiles for browser testing.
  • Capture and input depend on Windows and the application. Use anode capabilities to check; a connected seat alone does not prove screenshots or input work.
  • Protected video and exclusive fullscreen may not capture. Without HidHide, virtual gamepads also reach games on your main desktop.

Privacy Policy

Anode sends nothing to its maintainers: the runtime has no telemetry, update check or remote endpoint. Screenshots and UI text go only to the MCP client or CLI that asked for them, and that client may send them to its model provider. Read the privacy policy.

Build and contribute

Install the .NET 10 SDK, then:

powershell
git clone https://github.com/skulitom/Anode.gitcd Anodepowershell -NoProfile -ExecutionPolicy Bypass -File scripts\build.ps1 -QuickTest -Package

The executable and docs are in dist; the downloadable bundle and checksums are in artifacts\release. Quick checks require no seat and send no desktop input. Contributing and release process.

Found a problem? Report a bug or suggest an improvement.

Credits and license

Built on documented Windows child sessions, the Remote Desktop ActiveX control and Task Scheduler. Optional gamepad support uses ViGEmBus, and HidHide keeps the virtual controllers inside the seat. Related projects: Cathode, LibreAutomate and BetterGI.

MIT license.

來源:README.md,提交 af47fdf

工具

0
工具後設資料尚未被收錄。

版本歷史

1
  1. v0.11.0最新Oct 2, 2026