核心用法
AI Commander Dashboard 是一款面向自动化工作流的集中式管理界面,主要服务于需要统一监控多源数据的开发者与运维人员。其核心功能体现在三方面:
数据聚合层:通过配置 INBOX_PATH 与 SESSION_PATH 环境变量,实时读取 email-webhook 技能产生的邮件队列(inbox.jsonl)以及 browser-auth 技能的会话状态(session.json),实现跨技能数据的无缝整合。
进程调度层:当用户在界面触发「New Login」操作时,面板会主动跨目录调用 browser-auth/scripts/auth_server.js,利用 Node.js 子进程生成新的认证服务实例。该设计突破了传统单技能沙箱限制,形成「控制器-执行器」架构。
环境隔离机制:子进程仅继承白名单变量(PATH、HOME、BROWSER_PROXY),在灵活性与安全性之间取得平衡。
显著优点
- 架构解耦:通过文件系统与进程间通信解耦三大技能,降低单点故障风险
- 配置驱动:全量环境变量控制,无需修改源码即可适配不同部署场景
- 令牌安全:URL 自动擦除
DASHBOARD_TOKEN的设计,减少凭证泄露面
潜在局限
- 目录耦合:硬编码的相对路径(
../email-webhook/)要求技能必须按固定结构部署,移动任一组件即导致功能失效 - 权限扩张:作为 Controller 技能拥有跨目录读写与进程生杀大权,一旦令牌泄露,攻击者可操纵整个技能链路
- 依赖单一:核心功能强绑定
express@4.21.2,版本锁定可能带来供应链风险
适合人群
- 需要可视化监控邮件抓取与浏览器自动化状态的中高级开发者
- 已部署 OpenClaw 框架、熟悉容器化编排的运维团队
- 具备 Node.js 运行时环境维护能力的自托管用户
常规风险
| 风险类型 | 说明 |
|---------|------|
| 令牌爆破 | 弱 `DASHBOARD_TOKEN` 可能遭受暴力破解,建议 32 字节以上随机字符串 |
| 端口暴露 | 默认监听 `127.0.0.1:19195`,若错误配置为 `0.0.0.0` 且无防火墙,面板完全暴露 |
| 路径遍历 | `INBOX_PATH`/`SESSION_PATH` 若接受外部输入,可能存在目录穿越漏洞(当前版本未显示输入校验) |
| 供应链攻击 | `express` 历史版本曾出现原型链污染漏洞,需持续关注安全通告 |