Agent-RPA 以 Polanyi 默会知识论为设计启发:技能在“实践”中被结晶,“我们知道的比能说出来的更多”。 这是一套范式对调的 RPA 底座:传统 RPA 由人类录制/编排脚本供机器人回放;Agent-RPA 由 Agent 探索一次(花 Token 推理),把过程结晶成可参数化技能,之后0 Token 确定性回放,且探索期与回放期都模拟真人、规避自动化识别。
本目录是可供 Review 的目标架构蓝图;实现状态与尚未接通的运行链路以 ../roadmap/、openspec/specs/ 和活动 change 为准。设计引用见 09-references.md。
让任何 Agent(包括驱动本项目的 AI 助手自己)能把一句自然语言意图变成稳定、可复用、抗封锁的浏览器自动化能力,并自动管理浏览器的启停与身份。
| # | 文档 | 讲什么 | 给谁看 |
|---|---|---|---|
| 00 | 愿景与范围 | 问题、范式对调、目标/非目标、成功标准、术语、责任使用 | 所有人先读 |
| 01 | 总体架构 | 分层架构、组件目录、探索/回放两条主链路、时序图 | 架构 Review |
| 02 | 技能生命周期 | NL 意图→探索→结晶→0Token 回放→分级自愈(核心) | 架构 Review |
| 03 | 抗检测子系统 | 三层检测模型、可插拔传输、指纹一致性、行为合成、身份/代理/会话 | 深度 Review |
| 04 | 浏览器运行时 | 浏览器/会话/Profile 生命周期、传输驱动抽象、自动启停与恢复 | 深度 Review |
| 05 | 编排与数据面 | Orchestrator、技能注册表、工作队列、密钥库、可观测性、存储模型 | 深度 Review |
| 06 | Agent 接口 | MCP/API 接口、原语、Agent(含本 AI)如何驱动、与 Skills 对齐 | 集成 Review |
| 07 | 技能包规范 | 技能包格式(清单/动作图/定位器/断言/变量/版本),含 JSON 示例 | 实现契约 |
| 08 | 路线图·选型·风险 | MVP 闭环、分期路线、技术选型对比、风险与开放问题 | 决策 Review |
| 09 | 术语与参考 | 术语表 + 一手资料/工具对比矩阵 | 备查 |
| 10 | Agent 驱动可插拔 | 底座无内置 Agent;Cognition Port + Cursor/Claude/Codex/openclaw 适配器;自愈在场/脱离模式 | 架构 Review |
| 11 | 批量执行与参数模板 | 从技能 schema 自动生成 CSV/XLSX 模板 → 导入 → 批量 0 Token 回放 → 导出 | 集成 Review |
| 12 | 多模态感知与融合 | 截图/AX/DOM/OCR/坐标/网络多通道,复杂页面处理册,回沉定位器 | 深度 Review |
建议:先读 00 → 01 → 02 建立整体心智;底座与 Agent 的边界看 10;再按你关心的方向深入 03/04/05;集成时读 06/07/11;复杂页面看 12;决策时读 08。
v2 修订摘要(本轮澄清):① 底座不含 Agent,改为经 Cognition Port 可插拔接入外部 Agent 驱动(新增 10,改写 01/02);② 新增参数模板与批量 0 Token 执行(新增 11);③ 显式化多模态组合能力(新增 12)。
| 传统 RPA(面向人类) | Agent-RPA(面向 Agent) | 说明 |
|---|---|---|
| Studio(人拖拽/录制流程) | 外部 Agent 探索 + 底座录制/结晶(Planner-Actor-Validator 在 Agent 侧,底座只录制与确定性结晶) | 设计者从"人"换成可插拔的外部 Agent(见 10) |
| Robot / Runner(回放固定脚本) | 执行引擎(确定性回放 + 行为合成 + 隐身传输) | 回放时重新合成"怎么做" |
| Orchestrator(部署、排程、监控) | Orchestrator / 控制面(技能注册表、排程、队列、密钥、观测) | 治理层职责基本一致 |
| Object Repository(选择器库) | 定位器仓库(AX-tree ref / CSS / XPath / 视觉 / 语义 多模态 + 韧性排序) | 多模态、可自愈 |
| Activities(活动库) | 原语库(navigate/humanClick/humanType/extract/assert/loop/branch…) | 动作粒度对齐 |
| Queues / Assets(工作项队列 / 资产) | 工作队列 / Vault(凭据、代理、身份/Profile) | 批量与机密治理 |
| 流程库(Process) | 技能库 = Skills(与 Cursor/Claude Skills 概念对齐,可被任意 Agent 发现调用) | 复用单元 |
- 记录语义、重合成执行:技能包只固化"做什么(语义动作 + 多模态定位器 + 断言 + 变量)";"怎么做(鼠标轨迹、时序、节奏)"在每次回放时按身份画像重新采样。逐帧复刻的固定时序本身就是机器人签名。
- 一致性优先于欺骗(借鉴 mochi 的隐身哲学):目标是"看起来像一个真实的 Chrome",而非"制造矛盾去骗过检测"。所有指纹面从单一
(profile, seed)派生、跨面自洽;本地跑真实浏览器是最优隐身形态。 - 确定性为主、Agent 兜底(借鉴 workflow-use / Stagehand):能确定性回放就 0 Token 跑;只有当定位/断言失败时才分级触发自愈,并把修复回写进技能包。
- 传输可插拔、隐身分档:没有任何单一浏览器传输能通过所有反机器人层,因此传输是一个接口,按目标站点自动选择"隐身阶梯"中最小够用的档位(详见 03 / 04)。
- 底座无内置 Agent、认知可插拔(本轮新增):底座是"手脚+记忆+治理","脑"由外部 Agent(Cursor/Claude/Codex/openclaw/自研)经 Cognition Port 接入;无任何 Agent 时底座仍能 0 Token 确定性回放与批量(详见 10)。
背景:初版曾把"Node + patchright"当作约束;但 2026 基准证明以 Playwright 为控制面的方案存在硬天花板(过不了自动化协议指纹层)。既然目标包含高强度抗检测,最佳实践要求在高强度档放弃 Playwright 控制面。完整对比与理由见 08 · 技术选型。
- 架构不变量:
可插拔传输 gRPC 接口+技能包规范。语言选择藏在接口之后,因此是低后悔决策。 - 控制面(推荐 Go):Orchestrator / 技能注册表 / 0-Token 回放解释器 / Vault / MCP 服务 / 浏览器·会话·Profile 池。单二进制本地守护进程;复刻 RPA 的 Orchestrator ↔ Robot 拆分。
- 传输驱动(子进程"浏览器节点",gRPC/UDS 挂到控制面),即隐身阶梯:
- T0 无浏览器:TLS 一致 HTTP(curl_cffi / tls-client 系),处理无需 JS 的页面。
- T1 均衡:Patchright(
channel=chrome真实 Chrome)+ 行为合成——覆盖主流电商/内容站。 - T2 高强度:裸 CDP over pipe 直驱系统 Chrome(无 TCP、无
Runtime.enable、headful、一致性指纹)——参考 nodriver 一系,可换 mochi(MIT/TS) 或自研 Go 驱动。 - T3 极限:T2 + 住宅身份/代理轮换 + 必要时 patched 二进制(camoufox/Cloak 系)+ CAPTCHA 升级人工。
- 传输选择:站点策略 + 轻量"闸门探针"选出最小够用档,被拦即升档并按站点记忆。
- MVP 快路径(备选):单语言 Python 一体化(nodriver + patchright + curl_cffi + browser-use/stagehand 探索器 + Python MCP),最快跑通高强度闭环,之后按同一 gRPC 接口抽出驱动、收敛到 Go 控制面。
见 00 · 成功标准。每篇深度文档末尾都附验收检查表,便于逐项 Review。