Skip to content

WW-AI-Lab/Agent-RPA

Repository files navigation

Agent-RPA · 面向 Agent 的浏览器 RPA 底座

Agent 探索一次,结晶为参数化技能;之后以确定性执行引擎进行 0 Token 回放与批量运行。

Agent-RPA 是一个面向 Agent 的浏览器自动化底座。它把认知与执行分开:外部 Agent 负责探索、判断和必要时的自愈,praxisd 负责浏览器生命周期、技能结晶与注册、确定性回放、定位、自愈编排、策略、Vault 和可观测性。

项目目前处于 alpha / 架构实现阶段,尚不适合直接用于生产环境。核心契约及 M0–M3 组件、M4 编排治理面已经实现并通过单元、契约和 fake-driver 集成测试;真实浏览器回放仍需完成 daemon 侧驱动接线,批量执行、MCP 工具面、Agent adapters 与多节点服务化仍在后续 OpenSpec change 中。

为什么是 Agent-RPA

  • 底座不内置 Agent:认知经 Cognition Port 委托给 Cursor、Codex、Claude、openclaw 或自研 Agent;没有 Agent/密钥时,确定性路径仍可运行。
  • 回放期 0 Token:正常回放与批量路径不得调用 LLM;Token 只允许出现在外部 Agent 的探索或分级自愈中,并被计量。
  • 记录语义,重合成执行:技能包保存“做什么”,轨迹与时序在回放时按身份画像重新采样。
  • 传输可替换:上层只依赖 BrowserNode,T0–T3 驱动通过同一契约接入。
  • 机密不进技能包和日志:所有凭据只通过 %vault:...% 占位符引用。

当前进度

阶段 状态 已落地内容
M0 已归档 praxisd 骨架、BrowserNode、Cognition Port、技能包与注册表契约
M1 已归档 浏览器生命周期、T2 driver-cdp、探索/录制/结晶、0 Token 解释器与影子回放门禁
M2 已归档 多模态感知、定位器仓库、L1/L2/L3 分级自愈
M3 已归档 行为合成、指纹一致性、隐身阶梯控制面
M4 部分完成 编排、Run 模型、Policy、Vault、Observability 已归档;批量参数模板待实现
M5–M6 已提案 MCP 工具面、Agent adapters、多节点服务化待实现

“已归档”表示对应 OpenSpec change 的实现和仓库内验证已完成,不等于真实站点生产验收。当前 daemon 仍有 NoTransportDialernoDriverReplay 接线占位;真实 Chrome、反检测站点与完整 Agent→MCP→浏览器闭环是后续发布门槛。

实时状态与依赖以开发路线图openspec/changes/ 为准。

架构速览

flowchart TB
    AGENT["外部 Agent<br/>Cursor / Codex / Claude / openclaw / 自研"]
    subgraph PRAXIS["praxisd · Go 控制面"]
        PORTS["MCP inbound / Cognition Port outbound"]
        CONTROL["Orchestrator / Registry / Recorder / Crystallizer<br/>Interpreter / Self-Heal / Batch / Policy / Vault / Observability"]
        RUNTIME["Browser Pool / Multimodal / Behavior / Fingerprint / Stealth"]
    end
    NODE["BrowserNode gRPC contract"]
    DRIVERS["T0 HTTP / T1 Patchright / T2 CDP / T3 extreme"]
    CHROME["System Chrome"]

    AGENT --> PORTS
    PORTS --> CONTROL --> RUNTIME --> NODE --> DRIVERS --> CHROME
    PORTS -. cognition request .-> AGENT
Loading

六条不可违背的架构不变量见 AGENTS.md,完整设计从 docs/blueprint/00-vision-and-scope.md 开始。

快速开始

前置条件:

  • Go 1.26+
  • OpenSpec 1.4.3(仅规格工作流需要)
  • Python 3.11+ 与本地 Chrome(仅 driver-cdp 和真实浏览器集成需要)
  • protoc 33.x(仅重新生成 proto 时需要)

构建并运行控制面:

git clone https://github.com/WW-AI-Lab/Agent-RPA.git
cd Agent-RPA
cp praxis.config.example praxis.config
go build -o bin/praxisd ./cmd/praxisd
./bin/praxisd --config praxis.config

默认监听 127.0.0.1:7420

curl http://127.0.0.1:7420/healthz
curl http://127.0.0.1:7420/statusz

配置优先级为 --config$PRAXIS_CONFIG./praxis.config~/.praxis/praxis.config。不要把真实凭据写进配置;只提交 %vault:...% 占位符。

验证

go test ./...
go build ./...
openspec validate --all --strict
make driver-cdp-license-check

需要本地 Chrome 的检查:

make driver-cdp-venv
make driver-cdp-test
go test -tags=integration ./test/...

仓库结构

cmd/praxisd/        守护进程入口与装配
internal/           控制面与执行面实现
api/proto/          BrowserNode / Cognition 契约
drivers/            浏览器传输驱动与契约 harness
pkg/                可复用公共包与技能包 schema
test/               integration / e2e / invariant tests
docs/blueprint/     架构蓝图(设计真理源)
docs/roadmap/       change DAG、里程碑与实施 gate
openspec/           当前规格、活动 change 与归档 change

参与开发

本项目采用 OpenSpec 规格驱动开发:先对齐蓝图与现状规格,再提交 proposal → specs → design → tasks,严格验证后实现并归档。开始前请阅读 AGENTS.md;变更顺序以路线图为准。

安全与责任使用

Agent-RPA 的抗检测能力用于降低合法用户代理被自动化系统误判的概率,不用于绕过授权、访问控制或人工验证。硬挑战应升级人工;部署者必须遵守目标站点 ToS、数据保护要求和当地法律。安全问题请按 SECURITY.md 私下报告。

许可证状态

仓库当前尚未声明项目级开源许可证。在根目录 LICENSE 经组织确认落地前,代码保持版权所有;公开可读不等于获得复制、修改或分发授权。第三方依赖仍适用各自许可证。

About

一个面向 Agent 的浏览器自动化底座。它把认知与执行分开:外部 Agent 负责探索、判断和必要时的自愈,praxisd 负责浏览器生命周期、技能结晶与注册、确定性回放、定位、自愈编排、策略、Vault 和可观测性。

Topics

Resources

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages