| name | aidog-flow-ia |
| description | aidog 用户流程与信息架构(IA)优化——梳理任务流、减少步骤与跳转、对齐 create/update 等成对操作的一致性、保存/同步/反馈时序、tab 与侧栏的信息层级。聚焦"用户完成一件事要点几下、会不会卡住、状态有没有反馈",区别于纯视觉的 aidog-frontend-experience。触发词:流程、步骤太多、太繁琐、几下、卡住、一致性、create 和 update 不一样、保存没反应、状态不同步、信息架构、IA、导航结构、tab 太乱、找不到。 |
| when_to_use | 某个操作流程繁琐/易卡住要精简;成对操作(新增vs编辑、导入vs导出)行为不一致要对齐;保存/同步状态无反馈或时序混乱;侧栏/tab 信息层级混乱要重组时 |
aidog 流程与信息架构优化
针对「用户完成一件事的路径」而非单个像素。aidog 是代理网关管理器,核心流程围绕:平台(Platforms) → 分组(Groups) → 日志(Logs) → 设置/统计。本 skill 优化这些流程的步骤数、一致性、状态反馈、信息层级。
何时用
- 某流程「步骤太多 / 太绕 / 中途会卡」。
- 成对操作不一致:新增 vs 编辑、导入 vs 导出、启用 vs 停用 行为/UI 不对称。
- 保存/同步「点了没反应」「状态不更新」。
- 侧栏/tab 信息层级乱,用户「找不到」。
aidog 流程现状锚点
| 流程 | 入口 | 关键约定 |
|---|
| 导航结构 | App.tsx 侧栏(页级)+ AppSettings.tsx tab(设置内) | 无 react-router,纯本地 state |
| 离页保护 | utils/navGuard.ts 注册表 | 有未保存改动时拦截切页 |
| 设置保存 | 字段保存时确定性物化,禁靠 debounce effect | 改 group 配置后须 syncGroupSettings |
| Group 统计 | 前端逐 group 调 groupUsageApi.stats | 后端按 proxy_log.group_name 聚合 |
| 平台重试 | 多平台失败 failover + 三态 status | 后端 router.rs + scheduling.rs |
| 导入导出 | 7 scope 逐项冲突处理 | gateway/import_export/ |
执行流程
Step 1:画现状流程图(禁凭感觉改)
- 把目标流程拆成步骤序列:用户从哪进入 → 每步点什么 → 每步看到什么反馈 → 在哪结束。
- 标注痛点类型:①步骤冗余 ②无反馈 ③易误触 ④成对操作不一致 ⑤状态不同步。
- grep 涉及的 page/command,确认真实交互(如保存走哪个 invoke、同步触发点)。
Step 2:对照「成对操作一致性」
aidog 大量成对操作。优化一个流程时检查它的「对偶」是否需同步改:
| 操作 | 对偶 | 一致性检查点 |
|---|
| 新增平台 | 编辑平台 | 字段、校验、保存反馈是否对称 |
| 导入 | 导出 | scope 范围、冲突提示是否对齐 |
| 启用 skill | 停用 skill | 乐观更新 + 失败回滚是否都做了 |
| 创建 group | 修改 group | 改完是否都触发 syncGroupSettings |
🔴 CHECKPOINT:改成对操作之一前,确认是否要同步改对偶。只改一半 = 引入新的不一致。
Step 3:状态反馈与时序
每个会产生副作用的操作必须有:发起态(loading/busy)→ 成功态 → 失败态(可回滚)。
- 保存/同步:禁靠 debounce effect 隐式触发,须显式确定性物化(项目踩坑:statusLine 字段曾因 debounce 丢保存)。
- 改 group 配置后必须
syncGroupSettings,否则磁盘配置与 UI 不一致。
- 长操作(安装 skill、同步价格)做乐观更新,禁全页 spinner 阻塞(Skills 页已是范本)。
Step 4:信息架构(侧栏/tab 层级)
- 一个页放太多 → 拆 tab(参考
AppSettings.tsx 模式)。
- 高频操作前置,低频/危险操作收起。
- 改导航结构同步检查 navGuard 注册是否仍覆盖新增页。
Step 5:验证
yarn build
yarn check:i18n
实际走一遍改后流程,数点击次数 / 确认每步有反馈。
失败模式编码(if-then)
| 触发 | 一线修复 | 仍失败兜底 |
|---|
| 改完保存「点了没反应」 | 确认是显式物化而非 debounce effect | 检查 invoke 是否真触发 + 加成功 toast |
| group 改完 UI 对但实际没生效 | 确认调了 syncGroupSettings | 查 do_sync_group_settings(会 strip _aidog_statusline 等) |
| 精简步骤后丢了离页保护 | navGuard 注册随新流程更新 | 检查注册/注销时机 |
| 成对操作改一半导致不一致 | 回 Step 2 同步改对偶 | 列对偶清单逐项核对 |
反例黑名单(不要做)
- ❌ 只改成对操作的一半(如只改"新增"不改"编辑")。
- ❌ 用 debounce effect 做关键保存 —— 必显式确定性物化。
- ❌ 改 group 配置不调 syncGroupSettings。
- ❌ 长操作用全页阻塞 spinner —— 用乐观更新。
- ❌ 重组导航后忘了更新 navGuard 覆盖。
- ❌ 凭感觉精简步骤而不先画现状流程图。
相关
- 视觉/布局:
aidog-frontend-experience skill
- 请求链路:
aidog-request-inspect skill
- 性能:
aidog-perf-audit agent