mcpField
A
Anode background Windows desktop

Anode background Windows desktop

本地服务
github.com开发工具35 天前更新

关于 Anode background Windows desktop

Anode 是面向 Windows 开发者的 MCP 服务和命令行工具,可让 Agent 在独立后台会话中自动操作原生应用、浏览器并执行界面测试,不接管用户正在使用的桌面。

主要功能

  1. 01隔离的后台 Windows 桌面
  2. 02原生应用与浏览器自动化
  3. 03截图和辅助功能检查
  4. 04可取消的命令任务
  5. 05用于协调 Agent 的租约
  6. 06可选音频和虚拟游戏手柄

适用场景

  1. 01在继续其他工作时测试桌面应用
  2. 02自动填写浏览器表单并截屏
  3. 03在后台运行 Android 模拟器测试
  4. 04让多个 Agent 轮流使用同一桌面

MCP 相关

Anode 通过 stdio 向客户端提供 41 个 MCP 工具,涵盖截图、输入、辅助功能、界面等待和命令任务等桌面会话操作。它还提供租约机制,协调 Agent 使用共享后台桌面。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
mcpbanode-windows-x64.mcpb0.11.3

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

README 配图 Anode — 面向 AI Agent 的后台 Windows 桌面

操控 Windows 桌面的计算机使用 Agent 会接管你的鼠标和键盘;Anode 则为它们提供独立桌面。 Anode 是用于计算机操作、GUI 自动化和 UI 测试的 Windows MCP 服务和 CLI。Claude Code、 Codex 或其他本地(stdio)MCP 客户端会获得一个隐藏的 Windows 会话,拥有自己的屏幕、指针和键盘焦点, 称为 seat。Agent 可以操作原生应用和有头浏览器并截取屏幕截图,而你仍可在自己的桌面上继续工作。

Agent 在 Anode 后台 seat 中操作 Calculator 并在示例 Web 应用中勾选任务

使用 Anode 0.11.0,在 seat 内录制,内容来自真实的 MCP 工具调用。调用之间的空闲时间已剪掉;耗时 0.4 秒的九次点击以慢四倍的速度显示。

Release Windows build License: MIT

  • **适用人群:**使用 Windows 并让 AI Agent 测试桌面应用、浏览器页面或 Android 应用,或在真实 Windows 程序中执行其他工作,同时继续使用同一台电脑的开发者;以及让多个 Agent 轮流使用同一个共享后台桌面的用户。
  • **适合在以下情况使用:**Agent 必须在原生应用或有头浏览器中点击、输入、读取控件并截取屏幕截图,而且不能接管你的鼠标、键盘或屏幕。
  • **不适合在以下情况使用:**你使用 Windows Home 或 macOS;需要安全沙箱(seat 以你的用户身份运行,可访问你的文件和网络);或者任务完全不需要桌面操作:使用 API、Shell 或无头浏览器测试会更简单。如何选择对比了各种替代方案。
  • **与以下工具对比:**BgDesk、Windows-MCP、Desktop Touch MCP、windows-computer-use-mcp 和 Terminator,比较 Agent 是否会移动你的真实指针,并给出 Anode 的实测结果:面向 AI Agent 的 Windows 桌面自动化对比 (核验日期:2026 年 10 月 24 日)。
  • **正在使用 Windows-MCP?**从 0.8.8 开始,其控制门会在你使用自己的鼠标或键盘时暂停 Agent。请在 seat 内运行,这样你的输入就会保留在自己的会话中:在后台运行 Windows-MCP (2026 年 10 月 22 日在电脑旁无人时测试:13 次工具调用,没有暂停,电脑的指针从未移动;有人操作时尚未测量)。

3 条命令完成安装

开始之前: Anode 需要在 x64 架构的 Windows 10/11 Pro、Enterprise 或 Education 版(不支持 Home 版)上运行,并且在执行 anode setup 时需要一次管理员权限。在受管理的工作电脑上,如果策略禁止运行未签名程序或关闭了远程桌面,Anode 将无法运行;查看 setup 会具体修改哪些内容。

在 PowerShell 中运行第一行,然后打开一个新终端再运行后两行:

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

anode setup 可能会重启远程桌面服务,从而断开连接到这台电脑的所有远程桌面会话,因此请在电脑本机运行。如果你只使用 PIN 或 Windows Hello 登录 Windows,座席需要你的 Windows 密码才能登录;创建另一个座席时,Windows 可能会再次要求输入密码:请参阅登录。

重启 Agent 会话,然后向它提出请求:

使用 Anode 在后台座席中打开记事本,输入“Hello from Anode”,并给我看一张截图。 隐藏查看器,并让我的主桌面保持可用。

请参阅安装,了解自定义安装位置和离线安装;或参阅其他安装方式,了解 Scoop 和 Claude Code 插件。

须知:座席是以你的用户身份运行的 Windows 子会话:它提供的是桌面隔离,而非安全沙箱。 Ctrl+Alt+Shift+K 可停止座席(如果其他程序占用了此快捷键,请在查看器中使用停止座席,或运行 anode kill)。未签名的构建版本可能会触发 SmartScreen。不会收集遥测数据。

可以用它做什么?

  • **开发和测试应用:**运行构建和本地服务器、收集命令输出、检查原生控件、测试浏览器表单,并在后台桌面中截取屏幕截图。
  • **为 Agent 提供桌面:**41 个 MCP 工具,支持引导、屏幕截图、音频、鼠标/键盘输入、辅助功能、等待 UI、显示设置、Android 模拟器、启动应用以及可取消的命令作业。
  • 查看或停止它:anode show 会打开查看器,anode hide 会关闭查看器。按 Ctrl+Alt+Shift+K 或运行 anode kill,即可注销该会话并关闭其中的所有应用,包括尚未保存工作的应用。
  • **自动化游戏:**可选支持通过 ViGEmBus 使用虚拟 Xbox 360 控制器,并通过 HidHide 将其限制在该会话中,这样你仍可同时玩自己的游戏。
  • **协调多个 Agent:**提供专属于各 Agent 的独占桌面租约和命令作业。多个 Agent 共用一个会话并轮流使用;请参阅多个 Agent。
  • **聆听和播放声音:**通过 --audio 在 Anode 启动时启用音频后,Agent 可以录制会话中播放的声音,例如来自浏览器或游戏的声音,并播放较短的 16 位 PCM WAV 音频片段。会话声音也会输出到扬声器。请参阅音频。
  • **测试其他显示设置:**Agent 可以更改会话的分辨率和 Windows 缩放设置,同时让其中的应用继续运行。分辨率范围为 640x480 至 8192x8192,也包括竖屏;Windows 缩放级别为 100% 至 500%,按 Windows 的缩放步进设置。Agent 完成后,Anode 会还原启动时的显示设置,并报告 Windows 实际应用的设置。请参阅测试其他显示设置。
  • **测试 Android 应用并使用 Web 控制台:**Agent 可以在会话中的模拟器上以只读方式启动你的 AVD,通过 adb 操作它们,在独立配置文件中打开 Android Studio,并在你登录的会话浏览器配置文件中打开 Google Play Console 等 Web 控制台(网站可能会要求你重新登录)。请参阅Android 应用和 Web 控制台。

实际应用:haltere 是作者的研究项目:果蝇连接组在竞速模拟器中操控 FPV 无人机。游戏、画面采集和虚拟游戏手柄都运行在 Anode 会话中。安装 HidHide 后,Anode 会将游戏手柄限制在该会话中(haltere 会检查 anode gamepad state),因此用户在主桌面上玩游戏时,无人机仍可继续飞行。请参阅haltere 的游戏设置。

该会话是 Windows 的子会话:通过 Windows 内置的环回远程桌面功能,为你自己的账户创建的第二个会话。它拥有独立的指针和焦点;在当前会话中添加虚拟显示器并不能实现这一点。该会话以你的 Windows 用户身份运行,并共享你的文件、账户和网络。**这是桌面隔离,不是安全沙箱。**只有安装 HidHide 后,虚拟游戏手柄才会仅限于该会话。请参阅安全性和隔离。

安装

**要求:**Windows 10/11 Pro、Enterprise 或 Education,或带有远程桌面主机的 Windows Server。此发行版面向 x64;尚未验证 ARM64。**不支持 Windows Home。**发行版构建已包含 .NET;无需安装 SDK 或运行时。ViGEmBus 为可选项。

在普通 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

安装程序会验证发行版压缩包的 SHA-256 校验和,将其安装到 %LOCALAPPDATA%\Programs\Anode,将该文件夹添加到用户 PATH,并将 Anode 添加到“开始”菜单和“已安装的应用”中。在“开始”菜单中打开它会显示查看器;在“已安装的应用”中可以卸载它。之后请打开新的终端。机器设置和 Agent 注册是下面的独立步骤。

更偏好便携版?下载 ZIP,解压整个文件夹,并使用 .\anode.exe 代替 anode。 当前构建尚未签名;Windows 可能会显示 SmartScreen 警告。 自定义位置、离线安装、更新和卸载 →

其他安装方式

这两种方式仍需在下方执行一次性设置 anode setup;使用插件的用户可跳过 Claude Code 的 anode configure。

  • **Scoop:**运行 scoop bucket add anode https://github.com/skulitom/Anode,然后运行 scoop install anode/anode。运行 scoop update anode 前,请先运行 anode quit,并关闭正在使用 Anode 的 MCP 客户端。
  • **Claude Code 插件:**确保 anode 已在 PATH 中(通过上述安装程序或 Scoop 安装),然后在 Claude Code 中运行 /plugin marketplace add skulitom/Anode,再运行 /plugin install anode@anode。 它会注册 MCP 服务和 anode-desktop 技能,但不会安装 anode.exe。 请使用插件或运行 anode configure claude,不要同时使用两者;请参阅 Claude Code。

设置并连接

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

setup 会启用远程桌面和子会话。它不会添加防火墙规则,但可能会重启远程桌面服务并断开现有 RDP 会话。 查看具体更改。

configure 会备份客户端设置,通过绝对路径注册 Anode,设置 420 秒的工具超时,并安装可发现的 anode-desktop 技能。运行 anode configure codex 或 anode configure claude 可选择一个客户端,也可添加 --no-skill,仅注册 MCP。 已安装 Claude Code 插件?它已在 Claude Code 中注册 Anode 和该技能,因此请跳过 anode configure,或运行 anode configure codex 仅添加 Codex。 重启 Agent 会话以加载工具。Claude Desktop: 将 Anode 添加到其配置中。 VS Code、Cursor 和其他客户端:连接 Agent。

试用

启动并检查后台会话:

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

如果 Windows Hello/PIN 登录阻止自动登录,请从 Anode 托盘图标(或查看器标题栏)中选择 登录…,以调出 Windows 凭据对话框。启动 Anode 时,也可以使用 anode start --sign-in。请参阅登录问题排查。

然后向 Agent 提出请求:

使用 Anode 在后台会话中打开记事本,输入“Hello from Anode”,并给我看一张屏幕截图。保持查看器隐藏,并让我的主桌面保持可用。

也可以通过 CLI 操作:

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

PowerShell 用户:管道传递给 Out-Host(或 Out-String)会使 PowerShell 等待此 GUI 可执行文件运行完毕,并显示其输出。脚本应在每条命令后检查 $LASTEXITCODE。

面向 Agent

对于原生 Windows GUI 自动化,以及需要保留用户主桌面可用状态的有界面应用/浏览器测试,优先使用 Anode;其他情况则使用直接 API、文件工具和无头测试。 调用 anode_guide 或运行 anode guide --json,即可获取无需设置的指导。seat_status 不会启动任何内容。进行桌面操作前,调用 seat_lease 并设置 action: "acquire";如果需要,它会启动隐藏会话,并在其他 Agent 工作时排队等待。每次桌面操作都会保留租约,因此只有暂停超过 120 秒时才需要续租,完成后则应释放租约。MCP 提示词 desktop_test 会引导完成整个流程:在运行 anode configure 后,于 Claude Code 中使用 /mcp__anode__desktop_test;或者使用插件时输入 / 并搜索 desktop_test。 请参阅 Agent 指南、可移植技能 和 llms.txt 文档索引。

工作原理

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

文档

我想……从这里开始
安装、更新或卸载安装指南
连接 Codex、Claude Code、Claude Desktop、VS Code 或 Cursor连接 Agent
让多个 Agent 共用桌面多个 Agent 与租用
帮助 Agent 发现并选择 AnodeAgent 指南
判断 Anode 是否适合,或是否该选其他工具如何选择:Windows-MCP、Cua Driver、Desktop Commander、Windows 365 for Agents
在 Windows-MCP 点击时继续使用电脑在座席中运行 Windows-MCP:Agent 的点击和输入会留在座席中,闸门应保持安静(在电脑前无人时测量)
查看完整示例使用 Claude Code 测试桌面应用、填写网页表单、检查 Android 应用
运行应用、控制查看器或使用游戏手柄使用指南
查找 CLI 命令或选项命令参考
测试原生应用和浏览器开发与测试
在其他分辨率和缩放设置下测试应用测试其他显示器
测试 Android 应用,或以你的身份使用 Web 控制台Android 应用和 Web 控制台
查看完整示例Claude Code + Steam、开发测试使用的有头 Playwright 测试装置
检查窗口和可访问控件桌面工具
了解权限和隔离安全
了解 Anode 处理哪些数据隐私
排查启动、登录或捕获问题故障排除
集成客户端MCP 和命名管道协议
了解实现方式架构
以所有者身份发布目录列表发布指南

需要了解的限制

  • 每个 Windows 会话只有一个座席:Agent 和 CLI 客户端共用该座席并轮流使用。
  • 不适用于 Windows Home 或 macOS,也不适用于需要安全沙箱的场景: 如何选择说明了可替代的方案。
  • 文件、账户、网络端口和应用程序单实例均为共享状态。Steam 游戏会在座席中运行,使用桌面上的 Steam 客户端;该客户端会留在桌面上,且不使用覆盖层或 Steam Input。其他单实例应用可能已归主会话所有。测试浏览器时请使用独立的浏览器配置文件。
  • 捕获和输入取决于 Windows 和具体应用。使用 anode capabilities 进行检查;仅仅连接了座席,并不能证明截图或输入功能可用。
  • 受保护视频和独占全屏内容可能无法捕获。如果没有安装 HidHide,虚拟游戏手柄输入也会传递到主桌面上的游戏。

隐私政策

Anode 不会向维护者发送任何数据:运行时没有遥测、更新检查或远程端点。截图和 UI 文本只会发送给请求它们的 MCP 客户端或 CLI,而该客户端可能会将其发送给模型提供商。请阅读隐私政策。

构建与贡献

安装 .NET 10 SDK,然后:

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

可执行文件和文档位于 dist;可下载的程序包和校验和位于 artifacts\release。快速检查无需座席,也不会向桌面发送输入。 贡献和发布流程。

发现问题?报告错误 或提出改进建议。

许可

Anode 是基于 MIT license 发布的免费软件,并将始终如此。本仓库中的每个版本和所有代码,任何人都可以免费使用、修改和分发,包括在公司内部使用。

在工作中使用 Anode? 可选的 Anode Business licence 费用为每位开发者每年 £50 (在 Gumroad 上购买)。它不会解锁任何功能,也不会改变 MIT 条款:使用 Anode 永远不需要它。它为你提供:

  • 一份许可记录(许可条款、注明席位数量的收据)和发票,供采购和合规使用;
  • 优先分类处理:许可确认后,标题以 [business] 开头的问题会优先处理。你可以通过电子邮件私下确认许可(尽力而为,不提供服务级别保证;具体方式见条款)。

如果你愿意,可以先阅读 Business licence terms。欢迎通过问题咨询许可相关事宜:请在标题中注明“licensing”。问题是公开的,因此切勿在其中发布许可证密钥或任何私人信息。

相关工具

Anode 是同一作者为 Agent 开发的五款免费、基于 MIT 许可的工具之一。每款工具都可在本地作为 MCP 服务运行:

  • Pixelbolt:根据可编辑的 JSON 配方制作像素艺术和精灵动画,并导出为精灵表、图集、动画 PNG 和 GIF。
  • Cutbolt:视频编辑引擎,支持精确时间线、字幕和渲染。
  • Inkbolt:用于编辑图表和插画的矢量与光栅图像,支持导入 SVG,并导出 SVG 和 PDF。
  • Nestbolt:将零件二维排版到板材上,用于激光、CNC、等离子和水刀切割,也可在浏览器中使用。

致谢与许可

基于已记录的 Windows 子会话、远程桌面 ActiveX 控件和任务计划程序构建。可选的游戏手柄支持使用 ViGEmBus,而 HidHide 可将虚拟控制器限制在会话内。 相关项目:Cathode、LibreAutomate 和 BetterGI。

MIT license。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。