53 lines
2.5 KiB
Markdown
53 lines
2.5 KiB
Markdown
# RPA Studio
|
||
|
||
画布式 RPA 桌面端(Electron + React Flow)。把 1016 项能力目录拖到画布上,连线、配置、运行,生成可执行的 RPA 流程。
|
||
|
||
> 当前状态:Day 1 纵向切片。画布、1016 项目录、属性面板、容器(IF/循环)、保存/加载已可用;执行内核与运行时(浏览器/桌面/Office)按三天计划在 Day 2–3 接入。
|
||
|
||
## 已实现(Day 1)
|
||
|
||
- Electron 31 + React 18 + TypeScript + React Flow 画布
|
||
- 1016 项组件目录:997 厂商 + 16 控制 + 3 触发器,搜索 / 11 组筛选 / 可执行与待接入状态
|
||
- 拖拽到画布、节点卡片、连线、缩放/平移/MiniMap、框选、撤销/重做
|
||
- IF / 计次循环 / 遍历 / 条件循环 / 异常捕获 容器:可把组件拖入分支或循环体
|
||
- 属性面板:按字段类型渲染输入、必填、变量、失败策略(超时/重试/间隔/跳过/延时)
|
||
- 流程 JSON 本地原子保存、自动保存、重启恢复
|
||
- 运行页与设置页骨架;运行期完全离线
|
||
|
||
## 开发
|
||
|
||
```powershell
|
||
npm install
|
||
npm run dev:local # 使用 RPA_ELECTRON_DIST 或 C:\electron-rpa\dist 的 Electron
|
||
# 或
|
||
npm run build
|
||
node scripts/start.mjs --no-sandbox
|
||
```
|
||
|
||
> 为什么需要 `dev:local`:当前工作区 `D:\RPA` 的 ACL 会让 Electron 自带的 Chromium 沙箱启动失败(`--version` 都返回 0x80000003)。
|
||
> 把 Electron 运行时放在工作区外(例如 `C:\electron-rpa\dist`)即可正常启动;打包产物解压到普通目录后不受影响。
|
||
> `--no-sandbox` 仅用于本地调试,不作为产品默认。
|
||
|
||
## 目录
|
||
|
||
```
|
||
src/main 主进程:窗口、目录加载、流程存储、IPC
|
||
src/preload 白名单桥
|
||
src/renderer React UI:画布、组件库、属性面板、运行/设置页
|
||
src/shared 主/渲染共享类型
|
||
scripts build-catalog / dev-safe / start / cdp-probe / 打包
|
||
resources catalog.json(1016 项派生元数据)、夹具站、桌面桥
|
||
docs 现状分析、实施方案
|
||
```
|
||
|
||
## 文档
|
||
|
||
- [现状分析与可行性](docs/01-现状分析与可行性.md)
|
||
- [实施方案(三天)](docs/02-实施方案.md)
|
||
|
||
## 边界
|
||
|
||
- 1016 项目录中当前只有 15 项标记为可执行(控制/触发/基础);其余灰标「待接入」,运行到该节点会明确失败。
|
||
- 不包含厂商代码、二进制、模型或前端资产;目录是从厂商元数据派生的静态定义。
|
||
- 运行期不访问云服务;HTTP/邮件属于用户显式配置的外部系统。
|