Skip to content

实现原理 ​

自动化技术按照不同的维度有多种分类方式。从自动化范式来看,自动化程序分为传统自动化脚本和 Agent 自动化。

传统脚本的具体技术方案和工具介绍见 传统自动化。Agent 自动化实现原理参考大模型应用覆盖层技术栈。

通用架构 ​

所有自动化系统本质上都在实现同一个闭环:感知环境状态,理解状态含义,生成行动计划,执行操作,再检查执行结果是否达成预期。这个感知-理解-决策-执行-反馈的循环,既是人类操作计算机时的认知过程,也是自动化程序的工作模型。

人类操作计算机时,看见屏幕上的按钮并理解其功能,决定点击它,然后移动鼠标完成操作——这一过程与 AI 自动化系统的工作流程完全对应:截屏获取画面,视觉模型识别界面元素,Agent 推理当前状态并规划下一步操作,最后通过鼠标模拟完成执行。不同类型的自动化工具,本质上是在这个闭环的不同环节上采用不同技术方案:API 脚本跳过了感知和理解,直接执行;图色脚本实现了感知但理解能力有限;Agent 系统则尝试闭合整个循环。

控制方式 ​

基本地,自动化程序本身需要与外界系统进行交互从而获取信息,并对外界产生实质影响,从而输出劳动成果。

自动化系统与目标程序交互的方式,按照控制方式分类主要分为三类:

  • API 接口。自动化程序通过目标程序主动暴露的外部接口进行编程从而实现自动化,稳定高效但依赖目标程序暴露接口;

    常见的接口包括:网络服务 API、进程间通信、SDK 开发包、第三方库、命令行接口;

  • GUI 操作。自动化程序通过模拟键鼠操作实现自动化,通用性最强但速度慢、可靠性低;

    GUI 是暴露给人类的交互接口,图色脚本或者视觉 AI 可以使用 GUI,模拟人类操作,从而达到自动化的效果。

  • 内存读写。自动化程序通过读写内存、DLL 注入、Hook 等技术直接介入程序运行过程,控制能力强但开发门槛高;通过驱动、内核模块甚至硬件直接干预系统行为,权限最高但风险也最大。

已有实现 ​

从封装程度来看,自动化工具可以分为四类。

传统自动化agent
成品软件n8n、DifyCursor 和 Claude Code
开发框架PyAutoGUI、Selenium、OpenCVLangChain、transformers、AutoGen

成品软件面向垂直领域,开箱即用,如 Cursor 和 Claude Code 等 AI 编程工具,以及 n8n、Dify 等可视化编排平台。框架库位于中间层,如 LangChain 系列、transformers、AutoGen 等,提供半成品能力供开发者集成。全量脚本则是从零开始构建,灵活性最高但开发成本也最大。Python 自动化库(PyAutoGUI、Selenium、OpenCV)和编排引擎(n8n、Dify、ComfyUI、Coze)的详细介绍见 传统自动化。

Agent 自动化 ​

传统自动化关注流程——告诉计算机每一步怎么做,通过 if-then 逻辑和固定工作流完成任务。Agent 自动化关注目标——告诉计算机要达到什么结果,由 Agent 自主规划执行路径。这是自动化领域正在发生的范式转变。 传统脚本的典型逻辑是确定性的:检测到某个图像就执行某个点击,流程是人为预设的,遇到预期之外的情况就会失败。Agent 则通过 ReAct(Reasoning + Acting)循环持续运作:观察当前环境状态,思考和分析,规划下一步操作,执行操作,再观察结果。这个循环不断重复,直到任务完成或确认无法完成。ReAct 循环的详细实现机制可以参考 Agent 循环 一文,Agent 的完整架构设计可以参考 Agent 概述。 从通用架构的角度看,Agent 自动化的核心价值在于它尝试闭合"感知-理解-决策-执行-反馈"的完整循环。传统脚本往往只实现了感知和执行的线性连接,缺少理解和反馈能力,而 Agent 通过大模型的推理能力填补了这一缺口。

图色脚本 ​

图色脚本是 GUI 层自动化的传统方案,通过截屏获取画面、CV 技术解析图像内容、根据业务逻辑生成键鼠操作指令来驱动自动化流程。它在界面元素固定、操作流程确定的场景下表现可靠,但当界面频繁变化或需要理解语义含义时,图色脚本的能力就遇到了边界——这正是 AI GUI 要解决的问题。图色脚本的技术细节、工具选型和开发实践见 传统自动化。

AI GUI ​

AI GUI(AI Assisted GUI)让 AI 直接"看"到屏幕并操控图形界面,而非通过 API 接口。与传统图色脚本基于模板匹配不同,AI GUI 使用视觉大模型理解屏幕内容的语义,将自然语言描述的操作意图映射为具体的 GUI 操作(点击、输入、滑动),大幅降低了自动化脚本的开发门槛。 当前 AI GUI 的实践已经分化为两个方向。GUI Agent 专注于纯视觉驱动的界面操作,代表产品包括 Claude Computer Use、OpenAI Operator、Browser Use 等,它们通过截屏-识别-操作的循环直接操控图形界面。Environment Agent 则不局限于视觉,而是综合运用终端、文件系统、浏览器和 MCP 协议等多种工具完成自动化任务,代表产品包括 Claude Code、OpenHands、OpenClaw 等,其架构组合了视觉感知、工具调用、长期记忆和 Agent 循环,能力边界远超纯视觉方案。关于 Claude Code 的具体实现,可以参考 Claude Code 分析。 AI GUI 的技术挑战主要集中在操作精度和可靠性上。视觉模型可能将外观相似的按钮混淆,坐标定位存在像素级偏差,嵌套菜单和滚动区域等复杂界面容易导致操作规划出错。工程上的应对策略包括:操作前截图确认目标区域、关键操作前请求用户确认、失败时自动回滚并重新规划。这些工具已经在探索方向上取得了初步成果,但距离生产级的可靠性仍有差距。