架构与界面约定
模块边界
bin/agent-purge.mjs解析 CLI,web/server.mjs提供本地控制 API。- 两个入口通过
lib/apply.mjs应用配置,不各自实现不同的安装/暂停语义。 lib/state.mjs管理配置,lib/activation.mjs解析最终启用状态。lib/persist.mjs、lib/slashes.mjs、lib/shim.mjs、lib/project.mjs管理不同通道。lib/footprints.mjs和lib/restore.mjs保留写入所有权与恢复凭据;失败不得抹掉恢复材料。backends/负责宿主启动参数;lib/capture.mjs和bench/负责请求级验证。- 用户数据独立于安装目录。升级程序不得覆盖人设和状态。
产品约定
Web 是配置台,不是内嵌交互终端。默认启动项、通道范围、表单草稿与已保存状态分别显示。
配置写入、历史测试和当前会话实际生效必须区分:
- 已加载动态插件下一轮读取;静态入口需要新会话。
- 插件首次安装或代码更新需要重新加载宿主。
- 失败逐项显示,保留草稿并允许重试。
- 暂停保留通道选择;撤销与删除用户数据必须明确区分。
UI 基础
原生 HTML/CSS/JavaScript,不引入前端框架或外部字体。
| 用途 | 约定 |
|---|---|
| 页面 / 表面 | #f6f7f9 / #ffffff |
| 正文 / 次级文字 | #101828 / #344054 / #5d6b81 |
| 操作色 | #2459cf,hover #1d4ab2 |
| 状态色 | 成功 #067647、警告 #93370d、错误 #b42318;始终附文字 |
| 字体 | 系统中文字体;正文 14px、标题 22px;路径用等宽字体 |
| 间距 / 圆角 | 4/8px 体系;6/8/12px 圆角 |
控制台、人设库、验证与诊断共享导航。一次只展开一个执行器详情,避免将所有技术路径铺在首页。
新界面应具备可见焦点、键盘可达、清晰错误、减少动态效果支持;验证 1440/768/390/320px,无页面横向溢出。刷新不得覆盖未保存编辑,离开脏表单需确认。