V
vercel-labs/agent-desktop
Computer use CLI for AI agents
在 GitHub 查看 ↗链接已于 2026-11-12 核查 · HTTP 200 · 打开的是厂商自己的官网
安装与配置
客户端配置(取自该仓库的安装命令)
{
"mcpServers": {
"vercel-labs-agent-desktop": {
"command": "npx",
"args": ["skills"]
}
}
}解析自我们于 2026-11-02 抓取的该仓库 README;我们未执行过。
command/args 来自仓库写明的安装命令;不确定时请以该项目 README 为准。
VS Code(.vscode/mcp.json —— 键名是 servers)
{
"servers": {
"vercel-labs-agent-desktop": {
"command": "npx",
"args": ["skills"]
}
}
}VS Code 顶层键是 <code>servers</code>,其余与上面那份相同。
Claude Code(命令行)
claude mcp add --transport stdio vercel-labs-agent-desktop -- npx skills
Claude Code 不收 JSON 文件,用这条命令直接加。
配置项的键名以你的客户端为准:客户端与 CLI
- ★ 数取值
- 23,229 ★ · vercel-labs/agent-desktop · 取自 GitHub 搜索 API · (2026-11-13 20:00:50 核对)
- 来源明细
- 从该仓库的 GitHub 页面直接读取 · 条目类型:MCP 服务
- 收录与活跃
- 收录于 2026-11-03 · 最近见到 2026-11-14 · 共见到 9 次 · 被 1 个来源列出
- 安装
npx skills
常见问题(答案都来自我们的记录)
怎么安装?
该仓库给出的安装命令是
npx skills。我们的记录里它是仓库自己提供的;不保证在你的客户端上直接可用。它适合谁 / 用来做什么?
我们还没有为它记录标签。
谁维护它、还在更新吗?
仓库
vercel-labs/agent-desktop;我们收录于 2026-11-03;最近见到 2026-11-14。这里没有"官方认证"或"质量评级"——我们只记录来源与时间。# agent-desktop
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Computer use for AI agents: read and operate desktop apps through the OS accessibility tree.
A CLI and C library for macOS, Windows and Linux. A snapshot returns JSON with a ref for every element an agent can act on. The agent acts on a ref and snapshots again to check, with no pixel matching; the loop stays in your agent.
On macOS, CLI calls reuse a private command host for each snapshot namespace and binary build. It retains native accessibility objects so a removed row cannot silently resolve to a surviving row with the same identifier. The host exits after 15 idle minutes. TMPDIR must be owned by the current user with mode 0700; the standard macOS per-user temporary directory satisfies this requirement. Headless calls still prohibit foreground activation and synthesized input.
Snapshots, clipboard reads, screenshots, command output and debug artifacts can contain private desktop content. Keep them out of public logs and uploads. The optional JEV helper sends screen descriptions to a configured model provider; it is separate from the native CLI. See privacy and data handling.
## Installation
Install on macOS, Windows or Linux with npm:
bash
npm install -g agent-desktop
agent-desktop version
Bun, Yarn and pnpm can install the same package. It includes native binaries and platform helpers for x64 and ARM64.
For direct execution without a JavaScript launcher, download the matching native archive from
GitHub Releases and keep its helper beside the executable.
Official Homebrew and Scoop packages are being submitted; they are not yet available in the default catalogs.
The repository no longer maintains a custom Homebrew tap or Scoop bucket.
macOS needs Accessibility permission: agent-desktop permissions --guide.
Windows needs no grant for apps at your terminal's integrity level.
Linux needs the user's graphical session with at-spi2-core.
See installation and permissions for package-manager behavior, release archives, and building from source.
## Quick start
Observe, act on a ref, observe again. Any app name from agent-desktop list-apps works; Finder is the macOS example.
Each command prints one JSON envelope; a trimmed snapshot follows the commands.
bash
agent-desktop snapshot --app Finder -i # interactive elements, each with a ref
agent-desktop click @s8f3k2p9:e8 # act on a ref from that snapshot
agent-desktop snapshot --app Finder -i # observe again to verify
json
"version": "2.5",
"ok": true,
"command": "snapshot",
"data": {
"app": "Finder",
"window": { "id": "w-204749", "title": "Downloads" },
"snapshotid": "s8f3k2p9",
"refcount": 59,
"complete": true,
"tree": {
"role": "window",
"name": "Downloads",
"children": [
{ "role": "treeitem", "name": "Documents", "refid": "@s8f3k2p9:e8", "availableactions": ["Click"] }
Refs belong to their snapshot. A bare @e8 is rejected with INVALIDARGS. When the UI changes, an action
returns STALEREF or AMBIGUOUSTARGET: take a new snapshot and use its refs.
Several windows give AMBIGUOUSTARGET; snapshot lists the candidate window ids in error.details. Pass one
with --window-id.
Dense apps: map first with snapshot --skeleton --app Slack -i --compact, then drill into one region with
A CLI and C library for macOS, Windows and Linux. A snapshot returns JSON with a ref for every element an agent can act on. The agent acts on a ref and snapshots again to check, with no pixel matching; the loop stays in your agent.
On macOS, CLI calls reuse a private command host for each snapshot namespace and binary build. It retains native accessibility objects so a removed row cannot silently resolve to a surviving row with the same identifier. The host exits after 15 idle minutes. TMPDIR must be owned by the current user with mode 0700; the standard macOS per-user temporary directory satisfies this requirement. Headless calls still prohibit foreground activation and synthesized input.
Snapshots, clipboard reads, screenshots, command output and debug artifacts can contain private desktop content. Keep them out of public logs and uploads. The optional JEV helper sends screen descriptions to a configured model provider; it is separate from the native CLI. See privacy and data handling.
## Installation
Install on macOS, Windows or Linux with npm:
bash
npm install -g agent-desktop
agent-desktop version
Bun, Yarn and pnpm can install the same package. It includes native binaries and platform helpers for x64 and ARM64.
For direct execution without a JavaScript launcher, download the matching native archive from
GitHub Releases and keep its helper beside the executable.
Official Homebrew and Scoop packages are being submitted; they are not yet available in the default catalogs.
The repository no longer maintains a custom Homebrew tap or Scoop bucket.
macOS needs Accessibility permission: agent-desktop permissions --guide.
Windows needs no grant for apps at your terminal's integrity level.
Linux needs the user's graphical session with at-spi2-core.
See installation and permissions for package-manager behavior, release archives, and building from source.
## Quick start
Observe, act on a ref, observe again. Any app name from agent-desktop list-apps works; Finder is the macOS example.
Each command prints one JSON envelope; a trimmed snapshot follows the commands.
bash
agent-desktop snapshot --app Finder -i # interactive elements, each with a ref
agent-desktop click @s8f3k2p9:e8 # act on a ref from that snapshot
agent-desktop snapshot --app Finder -i # observe again to verify
json
"version": "2.5",
"ok": true,
"command": "snapshot",
"data": {
"app": "Finder",
"window": { "id": "w-204749", "title": "Downloads" },
"snapshotid": "s8f3k2p9",
"refcount": 59,
"complete": true,
"tree": {
"role": "window",
"name": "Downloads",
"children": [
{ "role": "treeitem", "name": "Documents", "refid": "@s8f3k2p9:e8", "availableactions": ["Click"] }
Refs belong to their snapshot. A bare @e8 is rejected with INVALIDARGS. When the UI changes, an action
returns STALEREF or AMBIGUOUSTARGET: take a new snapshot and use its refs.
Several windows give AMBIGUOUSTARGET; snapshot lists the candidate window ids in error.details. Pass one
with --window-id.
Dense apps: map first with snapshot --skeleton --app Slack -i --compact, then drill into one region with
收录徽章(可选)
想把收录标记放进 README 就复制这行,可选,不影响收录。
[](https://anclum.com/zh/s/vercel-labs-agent-desktop/)
- 来源
- github · https://github.com/vercel-labs/agent-desktop
- Traction
- 23,229 ★
- 收录于
- 今天