Agent-S

GitHub
10.9k 1.3k 较难 1 次阅读 今天Apache-2.0其他开发框架语言模型图像Agent
AI 解读 由 AI 自动生成,仅供参考

Agent S 是一个开源的智能体框架,旨在让 AI 像人类一样直接操作电脑。它能够通过视觉识别屏幕内容,并自主控制鼠标和键盘来完成跨应用程序的复杂任务,从而解决了传统自动化工具依赖固定规则、难以适应动态图形界面(GUI)的痛点。无论是处理繁琐的日常办公流程,还是执行需要多步骤判断的系统操作,Agent S 都能灵活应对。

该工具特别适合开发者、AI 研究人员以及希望探索自动化边界的极客用户。开发者可利用其构建更强大的计算机使用代理(CUA),研究人员则能基于其在 OSWorld 等基准测试中的表现进行深入分析。虽然普通用户目前主要通过云端体验其能力,但其开源特性为未来集成到各类桌面应用中奠定了基础。

Agent S 最显著的技术亮点在于其卓越的绩效表现:最新版本的 Agent S3 在 OSWorld 基准测试中取得了 72.60% 的分数,成为首个超越人类平均水平的 AI 智能体。此外,它支持 Windows、macOS 和 Linux 全平台,具备出色的泛化能力和执行效率,代表了当前电脑操作自动化领域的最高水准。

使用场景

某电商数据分析师需要在每周一早晨从多个内部系统(ERP、CRM 及网页后台)提取上周销售数据,整理为 Excel 报表并发送给管理层。

没有 Agent-S 时

  • 跨系统操作繁琐:人工登录三个不同系统,反复复制粘贴数据,耗时约 45 分钟且容易输错账号。
  • 流程中断频繁:遇到网页弹窗、验证码或非标准下拉菜单时,传统 RPA 脚本直接报错停止,需人工介入修复。
  • 环境适配困难:若公司更新操作系统或浏览器版本,原有自动化脚本往往失效,维护成本极高。
  • 异常处理僵化:一旦某个数据字段格式微调,脚本无法像人一样灵活识别,导致整条链路崩溃。

使用 Agent-S 后

  • 拟人化自主执行:Agent-S 像真人一样“看”屏幕、“动”鼠标,自动完成跨系统登录、导航与数据抓取,全程仅需 8 分钟。
  • 智能应对交互障碍:面对突发弹窗或动态验证码,Agent-S 能视觉识别并灵活点击处理,无需人工干预即可继续任务。
  • 跨平台无缝运行:基于其强大的泛化能力,无论是在 Windows 还是 macOS 环境下,Agent-S 均能自适应操作,无需重写代码。
  • 鲁棒性显著提升:即使界面布局微调,Agent-S 也能通过语义理解定位目标元素,确保数据提取流程稳定不中断。

Agent-S 将原本脆弱且耗时的手动/脚本流程,转化为具备人类级感知与决策能力的自主工作流,彻底释放了重复性电脑操作的生产力。

运行环境要求

操作系统
  • Linux
  • macOS
  • Windows
GPU

未说明(主要依赖外部 API 或本地部署的 Grounding 模型,如 UI-TARS,具体 GPU 需求取决于 Grounding 模型的部署方式)

内存

未说明

依赖
notes1. 仅支持单显示器环境。 2. 必须安装 Tesseract OCR(macOS 用户需执行 'brew install tesseract')。 3. 需要配置大模型 API 密钥(如 OpenAI, Anthropic 等)。 4. 强烈建议部署或使用 'UI-TARS-1.5-7B' 作为 Grounding 模型(可通过 Hugging Face Inference Endpoints 或本地部署)。 5. 若启用本地代码执行环境(--enable_local_env),Agent 将以当前用户权限执行任意 Python 和 Bash 代码,存在安全风险,仅在受信任环境中使用。 6. Linux 和 macOS 系统需确保 /bin/bash 可用。
python未说明(需与运行 Agent S3 的解释器一致)
gui-agents
pyautogui
tesseract (brew install tesseract)
Agent-S hero image

快速开始

Logo Agent S: 像人类一样使用电脑

🏆 Agent S3:首个在OSWorld上超越人类表现(72.60%)

  🌐 [S3博客]  📄 [S3论文]  🎥 [S3视频]

  🌐 [S2博客]  📄 [S2论文(COLM 2025)]  🎥 [S2视频]

  🌐 [S1博客]  📄 [S1论文(ICLR 2025)]  🎥 [S1视频]

  simular-ai%2FAgent-S | Trendshift

Windows macOS Linux Discord    PyPI Downloads

  

跳过设置?试试在Simular Cloud中使用的Agent S

🥳 更新

  • 2025/12/15: Agent S3是首个在OSWorld上以令人印象深刻的**72.60%**成绩超越人类水平表现的模型!
  • 2025/10/02: 发布了Agent S3及其技术论文,在OSWorld上创造了新的SOTA记录——69.9%(接近72%的人类表现),同时在WindowsAgentArena和AndroidWorld上也展现出强大的泛化能力!此外,它更加简单、快速且灵活。
  • 2025/08/01: Agent S2.5发布(gui-agents v0.2.5):更简单、更好、更快!在OSWorld-Verified上创下新SOTA。
  • 2025/07/07: Agent S2论文已被COLM 2025接收!蒙特利尔见!
  • 2025/04/27: Agent S论文荣获ICLR 2025 Agentic AI for Science Workshop的最佳论文奖🏆!
  • 2025/04/01: 发布了Agent S2论文,并在OSWorld、WindowsAgentArena和AndroidWorld上取得了新的SOTA结果!
  • 2025/03/12: 发布了Agent S2以及v0.2.0版的gui-agents,成为当前计算机使用代理(CUA)领域的最新技术水平,性能超越了OpenAI的CUA/Operator和Anthropic的Claude 3.7 Sonnet Computer-Use!
  • 2025/01/22: Agent S论文已被ICLR 2025接收!
  • 2025/01/21: 发布了v0.1.2版的gui-agents库,新增对Linux和Windows的支持!
  • 2024/12/05: 发布了v0.1.0版的gui-agents库,使您能够轻松地在Mac、OSWorld和WindowsAgentArena上使用Agent S!
  • 2024/10/10: 发布了Agent S论文及代码库!

目录

  1. 💡 简介
  2. 🎯 当前成果
  3. 🛠️ 安装与设置
  4. 🚀 使用方法
  5. 🤝 致谢
  6. 💬 引用

💡 简介

欢迎来到Agent S,这是一个开源框架,旨在通过代理-计算机界面实现与计算机的自主交互。我们的使命是构建智能GUI代理,使其能够从过往经验中学习,并在您的计算机上自主完成复杂任务。

无论您对人工智能、自动化感兴趣,还是希望为前沿的基于代理的系统做出贡献,我们都热烈欢迎您加入!

🎯 当前成果

Agent S3 Results

在OSWorld上,仅使用Agent S3在100步设置下即可达到66%,已超过此前的最先进水平63.4%(GTA1 w/ GPT-5)。而通过结合行为Best-of-N策略,性能进一步提升至72.6%,超越了OSWorld上的人类水平表现(约72%)!

Agent S3还展现了强大的零样本泛化能力!在WindowsAgentArena上,仅使用Agent S3时准确率为50.2%,但通过从3次运行结果中选择最佳方案,准确率可提升至56.6%。同样地,在AndroidWorld上,性能也从68.1%提高到71.6%。

🛠️ 安装与设置

前提条件

  • 单显示器:我们的代理专为单显示器屏幕设计
  • 安全性:代理会运行Python代码来控制您的电脑,请谨慎使用
  • 支持平台:Linux、Mac和Windows

安装

若不希望克隆仓库直接安装Agent S3,可运行:

pip install gui-agents

如果您想在修改代码的同时测试Agent S3,可以先克隆仓库,然后使用以下命令进行安装:

pip install -e .

别忘了还要brew install tesseract!Pytesseract需要此额外安装才能正常工作。

API配置

选项1:环境变量

将以下内容添加到您的.bashrc(Linux)或.zshrc(MacOS)中:

export OPENAI_API_KEY=<YOUR_API_KEY>
export ANTHROPIC_API_KEY=<YOUR_ANTHROPIC_API_KEY>
export HF_TOKEN=<YOUR_HF_TOKEN>

选项2:Python脚本

import os
os.environ["OPENAI_API_KEY"] = "<YOUR_API_KEY>"

支持的模型

我们支持Azure OpenAI、Anthropic、Gemini、Open Router以及vLLM推理。详细信息请参阅model.md

接地模型(必填)

为获得最佳性能,我们推荐使用 Hugging Face 推理端点或其他提供商托管的 UI-TARS-1.5-7B。有关设置说明,请参阅 Hugging Face 推理端点

🚀 使用方法

⚡️ 推荐配置:
为了达到最佳效果,我们建议将 OpenAI gpt-5-2025-08-07 作为主模型,并搭配 UI-TARS-1.5-7B 进行接地。

命令行界面

请注意,此处运行的是我们改进后的智能体 Agent S3,未启用 bBoN 功能。

使用所需参数运行 Agent S3:

agent_s \
    --provider openai \
    --model gpt-5-2025-08-07 \
    --ground_provider huggingface \
    --ground_url http://localhost:8080 \
    --ground_model ui-tars-1.5-7b \
    --grounding_width 1920 \
    --grounding_height 1080

本地编码环境(可选)

对于需要执行代码的任务(例如数据处理、文件操作、系统自动化),您可以启用本地编码环境:

agent_s \
    --provider openai \
    --model gpt-5-2025-08-07 \
    --ground_provider huggingface \
    --ground_url http://localhost:8080 \
    --ground_model ui-tars-1.5-7b \
    --grounding_width 1920 \
    --grounding_height 1080 \
    --enable_local_env

⚠️ 警告:本地编码环境会在您的本地机器上执行任意 Python 和 Bash 代码。请仅在受信任的环境中并使用受信任的输入时使用此功能。

必需参数

  • --provider:主生成模型提供商(例如 openai、anthropic 等) - 默认值:“openai”
  • --model:主生成模型名称(例如 gpt-5-2025-08-07) - 默认值:“gpt-5-2025-08-07”
  • --ground_provider:接地模型的提供商 - 必填
  • --ground_url:接地模型的 URL - 必填
  • --ground_model:接地模型的名称 - 必填
  • --grounding_width:接地模型输出坐标分辨率的宽度 - 必填
  • --grounding_height:接地模型输出坐标分辨率的高度 - 必填

可选参数

  • --model_temperature:所有模型调用的温度固定值(对于 o3 等模型必须设置为 1.0,其他模型可留空)

接地模型尺寸

接地宽度和高度应与您接地模型的输出坐标分辨率匹配:

  • UI-TARS-1.5-7B:使用 --grounding_width 1920 --grounding_height 1080
  • UI-TARS-72B:使用 --grounding_width 1000 --grounding_height 1000

其他可选参数

  • --model_url:主生成模型的自定义 API URL - 默认值:“”
  • --model_api_key:主生成模型的 API 密钥 - 默认值:“”
  • --ground_api_key:接地模型端点的 API 密钥 - 默认值:“”
  • --max_trajectory_length:轨迹中保留的最大图像轮次数 - 默认值:8
  • --enable_reflection:启用反思代理协助工作代理 - 默认值:真
  • --enable_local_env:启用本地编码环境以执行代码(警告:会在本地执行任意代码) - 默认值:假

本地编码环境详情

本地编码环境使 Agent S3 能够直接在您的机器上执行 Python 和 Bash 代码。这尤其适用于以下场景:

  • 数据处理:操作电子表格、CSV 文件或数据库
  • 文件操作:批量文件处理、内容提取或文件整理
  • 系统自动化:配置更改、系统设置或自动化脚本
  • 代码开发:编写、编辑或执行代码文件
  • 文本处理:文档操作、内容编辑或格式化

启用后,该智能体可以使用 call_code_agent 操作来执行代码块,完成那些可以通过编程而非 GUI 交互来实现的任务。

要求:

  • Python:与运行 Agent S3 相同的 Python 解释器(自动检测)
  • Bash:位于 /bin/bash(macOS 和 Linux 上的标准路径)
  • 系统权限:该智能体将以与其用户相同的权限运行

安全注意事项:

  • 本地环境会以与运行该智能体的用户相同的权限执行任意代码
  • 仅在受信任的环境中启用此功能
  • 当智能体生成用于系统级操作的代码时要格外小心
  • 对于不受信任的任务,建议在沙盒环境中运行
  • Bash 脚本将被限制在 30 秒内执行完毕,以防止进程挂起

gui_agents SDK

首先,我们导入必要的模块。AgentS3 是 Agent S3 的主智能体类。OSWorldACI 是我们的接地智能体,负责将智能体动作转换为可执行的 Python 代码。

import pyautogui
import io
from gui_agents.s3.agents.agent_s import AgentS3
from gui_agents.s3.agents.grounding import OSWorldACI
from gui_agents.s3.utils.local_env import LocalEnv  # 可选:用于本地编码环境

# 加载您的 API 密钥。
from dotenv import load_dotenv
load_dotenv()

current_platform = "linux"  # "darwin", "windows"

接下来,我们定义引擎参数。engine_params 用于主智能体,而 engine_params_for_grounding 则用于接地部分。对于 engine_params_for_grounding,我们支持自定义端点,如 HuggingFace TGI、vLLM 和 Open Router。

engine_params = {
  "engine_type": provider,
  "model": model,
  "base_url": model_url,           # 可选
  "api_key": model_api_key,        # 可选
  "temperature": model_temperature # 可选
}

# 从自定义端点加载接地引擎
ground_provider = "<your_ground_provider>"
ground_url = "<your_ground_url>"
ground_model = "<your_ground_model>"
ground_api_key = "<your_ground_api_key>"

# 根据您模型的输出坐标分辨率设置接地尺寸
# UI-TARS-1.5-7B:grounding_width=1920,grounding_height=1080
# UI-TARS-72B:grounding_width=1000,grounding_height=1000
grounding_width = 1920  # 输出坐标分辨率的宽度
grounding_height = 1080  # 输出坐标分辨率的高度

engine_params_for_grounding = {
  "engine_type": ground_provider,
  "model": ground_model,
  "base_url": ground_url,
  "api_key": ground_api_key,  # 可选
  "grounding_width": grounding_width,
  "grounding_height": grounding_height,
}

然后,我们定义接地智能体和 Agent S3。


# 可选:启用本地编码环境
enable_local_env = False  # 设置为 True 以启用本地代码执行
local_env = LocalEnv() if enable_local_env else None

grounding_agent = OSWorldACI(
    env=local_env,  # 传递 local_env 以获得代码执行能力
    platform=current_platform,
    engine_params_for_generation=engine_params,
    engine_params_for_grounding=engine_params_for_grounding,
    width=1920,  # 可选:屏幕宽度
    height=1080  # 可选:屏幕高度
)

agent = AgentS3(
    engine_params,
    grounding_agent,
    platform=current_platform,
    max_trajectory_length=8,  # 可选:最多保留的图像轮次
    enable_reflection=True     # 可选:启用反思代理
)

最后,让我们查询该代理!

# 获取屏幕截图。
screenshot = pyautogui.screenshot()
buffered = io.BytesIO() 
screenshot.save(buffered, format="PNG")
screenshot_bytes = buffered.getvalue()

obs = {
  "screenshot": screenshot_bytes,
}

instruction = "关闭 VS Code"
info, action = agent.predict(instruction=instruction, observation=obs)

exec(action[0])

有关推理循环如何工作的更多详细信息,请参阅 gui_agents/s3/cli_app.py

OSWorld

要在 OSWorld 中部署 Agent S3,请按照 OSWorld 部署说明 进行操作。

💬 引用

如果您觉得这个代码库有用,请引用以下文献:

@misc{Agent-S3,
      title={计算机使用代理规模化的不合理有效性}, 
      author={Gonzalo Gonzalez-Pumariega 和 Vincent Tu、Chih-Lun Lee、Jiachen Yang、Ang Li 和 Xin Eric Wang},
      year={2025},
      eprint={2510.02250},
      archivePrefix={arXiv},
      primaryClass={cs.AI},
      url={https://arxiv.org/abs/2510.02250}, 
}

@misc{Agent-S2,
      title={Agent S2:用于计算机使用代理的组合式通才-专才框架}, 
      author={Saaket Agashe、Kyle Wong、Vincent Tu、Jiachen Yang、Ang Li 和 Xin Eric Wang},
      year={2025},
      eprint={2504.00906},
      archivePrefix={arXiv},
      primaryClass={cs.AI},
      url={https://arxiv.org/abs/2504.00906}, 
}

@inproceedings{Agent-S,
    title={{Agent S:一个像人类一样使用计算机的开放代理框架}},
    author={Saaket Agashe、Jiuzhou Han、Shuyu Gan、Jiachen Yang、Ang Li 和 Xin Eric Wang},
    booktitle={国际学习表征会议(ICLR)},
    year={2025},
    url={https://arxiv.org/abs/2410.08164}
}

星标历史

星标历史图表

版本历史

v0.3.22025/12/16
v0.3.12025/10/04
v0.3.02025/10/03
v0.2.52025/08/01
v0.2.42025/05/24
v0.2.32025/04/22
v0.2.22025/04/01
v0.2.12025/03/12
v0.2.02025/03/12
v0.1.32025/02/24
v0.1.22025/01/22
v0.1.02024/11/27

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|1周前
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|1周前
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

158.1k|★★☆☆☆|今天
开发框架Agent语言模型

opencode

OpenCode 是一款开源的 AI 编程助手(Coding Agent),旨在像一位智能搭档一样融入您的开发流程。它不仅仅是一个代码补全插件,而是一个能够理解项目上下文、自主规划任务并执行复杂编码操作的智能体。无论是生成全新功能、重构现有代码,还是排查难以定位的 Bug,OpenCode 都能通过自然语言交互高效完成,显著减少开发者在重复性劳动和上下文切换上的时间消耗。 这款工具专为软件开发者、工程师及技术研究人员设计,特别适合希望利用大模型能力来提升编码效率、加速原型开发或处理遗留代码维护的专业人群。其核心亮点在于完全开源的架构,这意味着用户可以审查代码逻辑、自定义行为策略,甚至私有化部署以保障数据安全,彻底打破了传统闭源 AI 助手的“黑盒”限制。 在技术体验上,OpenCode 提供了灵活的终端界面(Terminal UI)和正在测试中的桌面应用程序,支持 macOS、Windows 及 Linux 全平台。它兼容多种包管理工具,安装便捷,并能无缝集成到现有的开发环境中。无论您是追求极致控制权的资深极客,还是渴望提升产出的独立开发者,OpenCode 都提供了一个透明、可信

144.3k|★☆☆☆☆|今天
Agent插件

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

108.3k|★★☆☆☆|6天前
开发框架图像Agent

gemini-cli

gemini-cli 是一款由谷歌推出的开源 AI 命令行工具,它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言,它提供了一条从输入提示词到获取模型响应的最短路径,无需切换窗口即可享受智能辅助。 这款工具主要解决了开发过程中频繁上下文切换的痛点,让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用,还是执行复杂的 Git 操作,gemini-cli 都能通过自然语言指令高效处理。 它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口,具备出色的逻辑推理能力;内置 Google 搜索、文件操作及 Shell 命令执行等实用工具;更独特的是,它支持 MCP(模型上下文协议),允许用户灵活扩展自定义集成,连接如图像生成等外部能力。此外,个人谷歌账号即可享受免费的额度支持,且项目基于 Apache 2.0 协议完全开源,是提升终端工作效率的理想助手。

100.8k|★★☆☆☆|1周前
插件Agent图像