Computer Use Agents 是一套围绕“让 AI 智能体像人一样操作计算机”的实践模式集合,来源于 davila7/claude-code-templates。其核心目标是帮助开发者从零构建能够查看屏幕、移动光标、点击按钮、输入文字的计算机使用型智能体。
一、用途 该资料面向需要构建或部署计算机使用智能体的开发者,提供可参考的架构模式、代码示例与安全配置。适用场景包括:从零构建计算机使用智能体、将视觉模型与桌面控制集成、理解智能体行为模式、安全地测试智能体行为、运行不受信任的自动化任务,以及构建生产级计算机使用智能体、需要最高质量的视觉理解、需要完整桌面控制(而非仅浏览器)的场景。
二、主要能力与模式
-
感知-推理-行动循环(Perception-Reasoning-Action Loop) 这是计算机使用智能体的基础架构:观察屏幕、推理下一步动作、执行动作、重复。该循环通过迭代流水线将视觉模型与动作执行整合。关键组件包括:感知(截图捕获当前屏幕状态)、推理(视觉语言模型分析并规划)、行动(执行鼠标/键盘操作)、反馈(观察结果,继续或纠正)。资料特别指出一个关键洞察:视觉智能体在“思考”阶段(1-5 秒)完全静止,形成可被检测的停顿模式。示例代码定义了 ComputerUseAgent 类,包含截图捕获(使用 pyautogui 截图并缩放至 1280x800 以节省 token)、执行动作(点击、输入、按键、滚动)等方法,并设置 max_steps=50 防止失控循环、action_delay=0.5 秒作为动作间隔。
-
沙箱隔离环境模式(Sandboxed Environment Pattern) 资料强调计算机使用智能体必须在隔离的沙箱环境中运行,绝不能让智能体直接访问主系统,因为安全风险过高。应使用带虚拟桌面的 Docker 容器。关键隔离要求包括:网络(仅限必要端点)、文件系统(只读或限定在临时目录)、凭据(不得访问宿主机凭据)、系统调用(过滤危险调用)、资源(限制 CPU、内存、时间)。目标是“爆炸半径最小化”——智能体出错时损害被限制在沙箱内。资料提供了 Dockerfile 示例(基于 Ubuntu 22.04,安装 xvfb、x11vnc、fluxbox、xterm、firefox 等,创建非 root 用户 agent,移除 capabilities,仅暴露 VNC 端口 5900,以非 root 运行)以及 docker-compose.yml 安全约束示例(no-new-privileges、seccomp 配置、CPU/内存限制、内部网络默认无互联网、只读根文件系统、tmpfs 挂载等)。
-
Anthropic Computer Use 官方实现模式 资料介绍使用 Claude 的 computer use 能力的官方实现模式,并提到 Claude 3.5 Sonnet 是首个提供 computer use 的前沿模型,Claude Opus 4.5 被称为“世界上最好的计算机使用模型”。关键能力包括:screenshot(捕获当前屏幕状态)、mouse(点击、移动、拖拽)、keyboard(输入文本、按键)、bash(运行 shell 命令)、text_editor(查看和编辑文件)。工具版本方面:computer_20251124(Opus 4.5)新增 zoom 动作用于细节检查;computer_20250124(其他所有模型)为标准能力。资料引用 Anthropic 文档指出一个关键限制:“某些 UI 元素(如下拉菜单和滚动条)可能对 Claude 来说难以操作”。示例代码定义了 AnthropicComputerUse 类,包含 get_tools 方法(定义 computer、bash、str_replace_editor 工具)和 execute_tool 方法(分发处理计算机动作、bash、编辑器操作),并展示通过 scrot 截图等实现细节。
三、使用方式 资料以代码示例形式展示使用方式,包括 Python 类实现、Dockerfile 与 docker-compose 配置。开发者需要准备 Docker 容器与虚拟显示、VNC 用于观察智能体动作,并正确实现各工具。示例中涉及 anthropic、PIL、pyautogui、subprocess、base64 等库。
四、限制与注意事项 资料列出若干“尖锐问题”(Sharp Edges),以表格形式给出问题、严重程度与解决方向,包括:需要纵深防御(没有单一方案有效,critical)、为动作添加类人变化(medium)、尽可能使用键盘替代方案(high)、接受权衡(medium)、实现上下文管理(high)、监控并限制成本(high)、始终使用沙箱(critical)。此外,Anthropic 文档指出下拉菜单和滚动条等 UI 元素可能难以操作。
五、其他 资料中部分代码示例存在截断(如 execute_action 的 scroll 分支、_handle_computer_action 的截图读取部分、Python 包装器导入部分),原文未完整给出。关于收费、价格、平台支持范围等信息,资料暂未提供。