Metabase Skill 是 onsen-ai/metabase-skill 提供的 Metabase BI 开发技能,所有脚本位于 ${CLAUDE_SKILL_DIR}/scripts/,只需 Node.js,无需 npm install;渲染图片需要 Node 22+ 和 Google Chrome。命令形式为 node ${CLAUDE_SKILL_DIR}/scripts/metabase.mjs <command>。
用途与工作流 该技能覆盖 Metabase 仪表盘的完整开发周期:设计、编写并测试 SQL、把仪表盘保存为项目文件、发布、查看结果、分享或定时发送。它区分多种任务模式:NEW(新建仪表盘:设计→项目文件→validate/lint/test→push→视觉检查)、EDIT(项目内编辑:pull→改文件→diff→push→视觉检查)、EDIT(直接编辑未保存为文件的仪表盘)、STUDY(理解、审计仪表盘)、SHARE & SCHEDULE(渲染、警报、订阅)、EXPLORE / REORGANIZE(浏览、搜索、移动、重命名)、HISTORY(查看历史与回滚)、USAGE-ANALYTICS(Pro/Enterprise)、ADMIN(用户、组、权限)。
认证与连接 首次使用运行 instances 查看已有连接;未配置时需用户在终端执行 login --instance <name> --url <url> 完成浏览器登录(Metabase v63+),令牌存于 macOS Keychain 并自动续期。API Key 仍可用于脚本和 CI。status 可查看当前用户、认证方式、令牌过期时间、Metabase 版本及是否为免费版。
主要能力
- 项目即代码:project new 创建项目文件夹,project pull 将仪表盘或集合拉取为 YAML + SQL 文件,project validate/lint/diff/status 做结构校验、设计检查、变更对比与同步状态检查,project push 将文件推回 Metabase,project test 运行所有卡片,project render 输出 PNG/PDF。
- 卡片(问题):创建、更新、删除/恢复、复制、运行查询、导出 CSV/JSON/XLSX、查看历史与回滚;pivot build 生成结构化透视问题。
- 仪表盘:创建、整布局保存、局部更新、单个卡片位调整、删除/恢复、复制、历史与回滚。
- 警报与订阅:列出、创建、更新、归档/恢复警报,立即发送;订阅支持按计划通过邮件/Slack 发送仪表盘。
- SQL 片段与集合:片段的增改查与归档,集合的创建、重命名、移动、归档。
- 元数据:database sync-schema、field rescan-values、field discard-values 刷新列与下拉值。
- 用户、组、权限:用户与组的增删改、权限查看与设置,部分命令为 Pro/Enterprise 专属。
- 渲染:card image、dashcard image、dashboard render 支持 PNG/PDF,也可由 Metabase 服务端直接生成 PDF(v63+)。
使用方式与限制 全局选项包括 --instance、--json、--fields、--max-bytes、--skip-preflight、--theme;退出码 0 表示成功,1 表示操作失败,2 表示输入或预检问题。安全规则要求不要将完整仪表盘/卡片载荷载入上下文,不要读取或打印密钥与令牌文件,发送内容一律使用项目目录中的文件而非 /tmp,评判图表应查看渲染图片而非载荷。创建或修改 Metabase 内容前应展示计划或 project diff,向真实收件人发送警报或新建订阅前需确认地址。Pro/Enterprise 专属功能在免费版会被提前拒绝。项目文件夹一旦存在(含 project.yaml 和 ids.json),应始终通过项目编辑,直接在 Metabase 中修改会使文件过期并在推送时提示漂移。