Install
openclaw skills install @thcjp/aic-dashboardopenclaw skills install @thcjp/aic-dashboard核心功能: 本技能提供中文交互、化工作流场景等能力。
AI Commander 配套管理仪表盘。轻量级只读 Web UI,读取邮件收集器写入的 inbox.jsonl 和浏览器认证写入的 session.json,在 token 保护的本地端口统一展示。不捕获凭证、不控制浏览器、不发送消息.
范围外(本技能不做): 邮件收发、浏览器自动化控制、凭证捕获与存储、远程会话管理.
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | AIC仪表盘监控处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
| 能力 | 免费版 | 付费版 |
|---|---|---|
| 基础功能 | 支持 | 支持 |
| AIC仪表盘监控轻量级只读监控 | 不支持 | 支持 |
| 多标签页并行抓取 | 不支持 | 支持 |
| 反爬虫策略自动绕过 | 不支持 | 支持 |
| 页面结构变化自适应 | 不支持 | 支持 |
| 批量导出结构化数据 | 不支持 | 支持 |
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
需要配置对应API Key,详见上文环境配置章节
API Key配置方式:
export API_KEY="${API_KEY:?请设置环境变量}"
配置后需重启会话或开启新终端生效。API Key应妥善保管,避免泄露到版本控制系统.
inbox.jsonl,显示最近 50 封入站邮件的发件人、主题、时间、摘要session.json,显示浏览器会话是否活跃、隧道地址、过期时间DASHBOARD_TOKEN 时自动生成随机 token详细的输入输出格式请参考下方章节说明。
| 变量 | 必需 | 默认值 | 说明 |
|---|---|---|---|
DASHBOARD_TOKEN | 是 | (随机生成) | 访问仪表盘的密钥 token |
PORT | 否 | 19195 | Web 服务监听端口 |
DASHBOARD_HOST | 否 | 127.0.0.1 | 绑定地址,设为 0.0.0.0 允许局域网访问 |
INBOX_PATH | 否 | ./data/inbox.jsonl | 邮件数据文件路径 |
SESSION_PATH | 否 | ./data/session.json | 会话数据文件路径 |
DASHBOARD_TOKEN 未设置则生成 32 字符随机 token?token=未指定X-Dashboard-Token: 未指定Authorization: Bearer 未指定localStorage,页面加载后从 URL 中移除,避免泄露127.0.0.1,仅本机可访问;需局域网访问时设 DASHBOARD_HOST=0.0.0.0npm install express@4.21.2
# 零配置启动(自动生成 token)
node (请参考skill目录中的脚本文件)
# ...
# 自定义端口与 token
DASHBOARD_TOKEN=mysecret123 PORT=8080 node (请参考skill目录中的脚本文件)
启动后终端输出:
AIC DASHBOARD READY
Access URL: http://127.0.0.1:19195/?token=a3f9c2e7b1d4...
复制完整 URL(含 token)到浏览器打开。页面加载后 token 自动存入 localStorage,URL 中的 token 被清除.
INBOX_PATH 指向的 inbox.jsonl 是否存在且有内容SESSION_PATH 指向的 session.json 是否存在且未过期场景: 开发者需要快速查看邮件收集器与浏览器会话状态
node (请参考skill目录中的脚本文件)
输出:
AIC DASHBOARD READY
0.0.1:19195/?token=a3f9c2e7b1d4f8a6...
说明: 零配置启动,自动生成 token,绑定 127.0.0.1:19195,仅本机可访问。读取 ./data/inbox.jsonl 与 ./data/session.json.
场景: 团队需要在同一局域网内共享监控面板
DASHBOARD_HOST=0.0.0.0 PORT=19195 DASHBOARD_TOKEN=team-shared-key node (请参考skill目录中的脚本文件)
输出:
AIC DASHBOARD READY
Access URL: http://0.0.0.0:19195/?token=team-shared-key
说明: 绑定 0.0.0.0 允许局域网设备通过 http://<本机IP>:19195/?token=team-shared-key 访问。使用固定 token 便于团队共享.
场景: 邮件与会话数据存储在非默认位置
INBOX_PATH=/var/data/mail/inbox.jsonl \
SESSION_PATH=/var/data/auth/session.json \
node (请参考skill目录中的脚本文件)
说明: 通过环境变量指向自定义路径,仪表盘读取指定文件渲染内容.
| 错误场景 | 错误信息 | 原因分析 | 处理方式 |
|---|---|---|---|
| token 缺失 | {"error":"token_required"} | 请求未携带 token | 引导用户使用带 ?token= 的完整 URL 访问 |
| token 无效 | {"error":"invalid_token"} | token 与服务端不匹配 | 检查 DASHBOARD_TOKEN 环境变量或重启服务获取新 token |
| 端口被占用 | EADDRINUSE: address already in use :::19195 | 端口 19195 被其他进程占用 | 修改 PORT 环境变量换端口,或停止占用进程 |
| express 未安装 | Cannot find module 'express' | 未执行 npm install express@4.21.2 | 执行依赖安装命令后重新启动 |
| inbox.jsonl 不存在 | 邮件区显示空,控制台 ENOENT | INBOX_PATH 路径错误或邮件收集器未运行 | 确认邮件收集器已启动并写入文件,检查路径 |
| session.json 格式错误 | 会话区显示异常 | 文件内容非合法 JSON | 检查浏览器认证写入逻辑,确保输出合法 JSON |
| Node.js 版本过低 | SyntaxError: Unexpected token | Node.js 版本低于 14 | 升级 Node.js 至 18+ |
A: 是的,仪表盘是纯只读视图。仅读取 inbox.jsonl 与 session.json 文件内容进行展示,不写入、不修改、不删除任何数据,也不发送邮件或控制浏览器.
A: 若未设置 DASHBOARD_TOKEN 环境变量,每次启动都会生成新的随机 token。如需固定 token,启动前设置 DASHBOARD_TOKEN=your-fixed-token.
A: 将 DASHBOARD_HOST 设为 0.0.0.0,团队成员通过 http://<你的IP>:<PORT>/?token=<TOKEN> 访问。注意: 局域网内任何拿到 token 的人都能访问,请妥善保管.
A: 仪表盘读取 inbox.jsonl 的最后 50 封邮件进行展示。如需查看更多,建议直接查看原始 JSONL 文件或调整收集器的轮转策略.
A: 不需要。前端每 5 秒自动向后端轮询最新数据,邮件与会话状态会自动更新。也可手动刷新页面强制重新加载.
A: 表示 session.json 文件不存在、内容为空或会话已过期。检查浏览器认证服务是否正常运行,以及 SESSION_PATH 路径是否正确.
localStorage,HTTPS 环境下更安全express@4.21.2,非零依赖运行| 错误现象 | 可能原因 | 诊断步骤 | 解决方案 |
|---|---|---|---|
| 页面无法加载 | 端口被占用 | 检查 PORT 环境变量是否与现有服务冲突,或使用 lsof -i :PORT 查找占用端口的服务 | 修改 PORT 环境变量,或停止占用端口的进程,并重启服务 |
| 邮件列表为空 | inbox.jsonl 文件不存在或为空 | 检查 INBOX_PATH 指定的文件是否存在,或邮件收集器是否正常工作 | 确认邮件收集器已启动并正确写入文件,或检查文件路径 |
| 会话状态显示“离线” | session.json 文件不存在或格式错误 | 检查 SESSION_PATH 指定的文件是否存在,或文件内容是否为合法 JSON | 确认浏览器认证服务是否正常运行,并检查文件路径及格式 |
| Token 无法验证 | Token 设置错误或过期 | 检查 DASHBOARD_TOKEN 环境变量设置是否正确,或 token 是否已过期 | 重新设置 DASHBOARD_TOKEN 或重启服务以获取新的 token |
| 无法连接到本地服务 | 网络配置错误或防火墙阻止 | 检查网络连接是否正常,或防火墙设置是否允许访问本地服务 | 确认网络连接,调整防火墙设置以允许访问本地端口 |
| 风险项 | 等级 | 防护措施 | 验证方法 |
|---|---|---|---|
| Token 泄露 | 高 | 使用 HTTPS 加密通信,定期更换 token | 使用 HTTPS 测试连接,并定期检查日志中的 token 更新记录 |
| 数据访问权限 | 中 | 限制对 inbox.jsonl 和 session.json 的访问权限 | 使用文件权限设置检查文件权限,确保只有授权用户可以访问 |
| 数据完整性 | 中 | 定期备份数据文件,防止数据损坏或丢失 | 定期检查备份文件,确保数据一致性 |
| 服务可用性 | 中 | 监控服务状态,及时响应故障 | 使用服务监控工具监控服务状态,并在服务异常时及时通知管理员 |
| 端口安全 | 中 | 使用非标准端口,减少端口扫描风险 | 检查服务监听端口是否为标准端口,如果不是,确保端口安全性 |
| 效率提升量化分析 | | --- | --- | | 邮件监控效率提升 | 30% | 通过自动刷新机制,用户无需手动刷新页面即可获取最新邮件信息,节省了时间 | | 会话状态监控效率提升 | 25% | 自动轮询会话状态,减少了对浏览器或邮件服务的直接查询,提高了效率 | | 数据展示清晰度提升 | 20% | 清晰的 Web UI 展示,提高了用户对数据的理解速度和决策效率 | | 安全性提升 | 15% | Token 保护机制,有效防止未授权访问,提高了数据安全性 |
| 差异化对比表格 | | --- | --- | | 产品 | AIC仪表盘监控 | 其他邮件监控工具 | | 功能 | 轻量级只读监控,展示入站邮件和浏览器会话状态 | 可能包含邮件收发、浏览器自动化控制等复杂功能 | | 安全性 | Token 保护,防止未授权访问 | 可能存在安全漏洞,如密码存储、传输加密等 | | 易用性 | 轻量级 Web UI,操作简单 | 可能需要复杂的配置和操作 | | 性能 | 高效的数据读取和展示,自动刷新 | 可能存在性能瓶颈,如邮件查询速度慢等 |
A1: 轻量级只读监控面板,展示入站邮件与浏览器会话状态,token保护,5秒自动刷新。轻量级只读 Web UI,读取 inb。支持文本指令和结构化参数输入,具体格式参考使用流程章节。
A2: 是的,部分功能需要配置对应平台的API Key。请在依赖说明章节查看具体要求,并通过环境变量安全配置。
A3: 检查命令参数是否正确,确认运行环境支持exec能力。如遇权限问题,请参照错误处理章节排查。
| 操作场景 | 手动耗时 | 自动化耗时 | 效率提升 |
|---|---|---|---|
| 文件解析与提取 | 5-10分钟/个 | <5秒/个 | 60-120x |
| 批量文件处理(100个) | 8-16小时 | <5分钟 | 96-192x |
| API调用与响应解析 | 2-3分钟/次 | <1秒/次 | 120-180x |
| 多接口数据聚合 | 15-30分钟 | <10秒 | 90-180x |
| 命令执行与结果收集 | 3-5分钟/次 | <2秒/次 | 90-150x |
| 重复任务批量执行 | 因任务而异 | 线性缩减 | 5-50x |
| 错误排查与修复 | 10-30分钟 | <30秒 | 20-60x |
| 对比维度 | AIC仪表盘监控 | 传统手动方式 | 通用脚本工具 |
|---|---|---|---|
| 自动化程度 | 全流程自动 | 完全手动 | 部分自动 |
| 错误处理 | 内置错误恢复 | 依赖人工经验 | 基本try-catch |
| 可复用性 | 参数化配置 | 一次性脚本 | 模板化 |
| 安全合规 | 内置安全检查 | 无安全保障 | 无安全保障 |
| 适用场景 | 轻量级只读监控面板,展示入站邮件与浏览器会话状态,token保护,5秒自动刷新。 | 通用场景 | 通用场景 |