Agent Skills
返回列表
💻

DeepBI DHTML 页面生成器

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3cd0c9e2/deepbi-dhtml-builder 技能到 AI 助手。

技能介绍

解决的问题

DeepBI 沙箱里的自定义页面无法依赖 React 运行时和外部资源。控制台的现有页面是 React 应用,但生成的页面必须是能跑在 iframe 里的自包含 HTML 文件:样式内联、脚本内联、不引入外部 CSS 框架,数据只能通过注入的 window.deepbi API 获取。同时,每个数据获取路径都要处理 loading、error、empty 三态,手写这类页面很容易出错。

工作原理

技能用「页面名 → UI 模式」决策树组织生成:SettingsPage 映射为 TreeNav 侧边栏布局,DatasetOpsPage 映射为指标条加搜索表格与抽屉,OpsOverviewPage 映射为指标卡网格加趋势图。生成 KPI 看板时通过 deepbi.data.querySql 发起 SQL 聚合查询,按 TDesign 腾讯蓝(#0052D9)规范渲染,卡片带 3px 左侧装饰条;数据表格自带分页、搜索、列排序;文件浏览器调用 deepbi.files.getFolderTree(),成员列表调用 deepbi.space.listMembers()。输出始终是单个自包含 HTML 文件,SVG 图表高度控制在 max-height:400px 以内防止变形。

容易踩的坑

  • 表名必须用 dataset_{id} 格式,界面显示名不被 DuckDB 引擎识别;
  • 查询结果是 POJO 数组,用 r[0].col 取值,r.value 永远是 undefined;
  • 用户输入拼入 SQL 前必须用 '' 转义;
  • getFolderTree() 要 try-catch 加三层 fallback,CDN SDK 的 /vfs 端点可能返回非数组结构;
  • srcdoc iframe 里 <script onload> 不可靠,需要动态创建 script 元素并用 Promise 包装;
  • 默认生成只读页面,saveTable 这类写操作需用户明确要求才执行;
  • 图表类型由用户确认,agent 不会自行选择。

适用边界

只处理 DeepBI 沙箱内的展示页面:不修改 SDK 或后端 API,不生成 React/Vue 组件,不接入外部数据源,也不产出需要服务端运行时的页面。

使用场景

  • 在 DeepBI 沙箱里做 KPI 看板,需要把 `querySql` 聚合结果渲染成指标卡,并处理加载失败和空数据状态。
  • 构建数据集详情页时,要做带搜索、分页、列排序的筛选表格,点击行后在抽屉里看字段详情。
  • 搭建空间管理后台,需要文件浏览器目录树和成员列表,沿用现有 zinc+blue 线框风格。
  • 迁移旧控制台页面到独立运行的 HTML,需要自动识别表单、Tab、抽屉等 UI 模式并转成纯 HTML/CSS/JS。

适合人员

  • 在 DeepBI 沙箱内做内部数据工具的前端工程师,需要快速产出自包含的 HTML 管理页。
  • 维护数据看板的开发者,常把 SQL 聚合结果变成 KPI 卡片和趋势图,不想每次手写三态处理。
  • 把控制台页面迁移到沙箱环境的研发人员,要把 React 页面结构转写成纯 HTML/CSS/JS。