← 返回
数据分析 中文

SQL to BI Builder

Convert a markdown file containing SQL queries (for example `sql.md`) into a BI dashboard specification and UI scaffold. Use when user asks to build analytic...
将包含 SQL 查询的 Markdown 文件转换为 BI 仪表板规范和 UI 脚手架。当用户请求构建分析内容时使用。
bamboo9805
数据分析 clawhub v1.2.0 1 版本 100000 Key: 无需
★ 1
Stars
📥 554
下载
💾 17
安装
1
版本
#latest

概述

SQL To BI Builder

Overview

Use this skill to transform sql.md query collections into a service-based BI prototype.

This skill must generate both backend and frontend services from SQL-derived artifacts.

Workflow

  1. Parse markdown SQL blocks into a normalized query catalog.
  2. Infer query semantics (metrics, dimensions, time columns, grain hints).
  3. Extract P0 filter candidates from SQL DSL (WHERE predicates) into structured filter metadata (dsl_ast first, regex fallback).
  4. Recommend chart types from inferred semantics.
  5. Build a dashboard specification with layout coordinates.
  6. Generate a UI scaffold that renders the dashboard structure.
  7. Generate service bundle (services/backend + services/frontend) that depends on generated SQL artifacts.

Input Contract

Expect one markdown file with one or more SQL fenced blocks.

Use this pattern for best results:

# Sales Dashboard

## card: Daily GMV
- id: daily_gmv
- datasource: mysql_prod
- refresh: 5m
- chart: auto
- filters: date, region

SELECT DATE(pay_time) AS dt, SUM(amount) AS gmv

FROM orders

WHERE pay_status = 'paid'

GROUP BY 1

ORDER BY 1;

Rules:

  • Keep one logical query per SQL fenced block.
  • Provide stable id metadata when possible.
  • Keep aliases explicit (AS alias) to improve semantic inference.

Python Environment Setup (Required)

Run from the skill folder.

  1. Ensure python3.11 is installed and available in PATH.

If missing, follow references/install_python311.md.

  1. Create virtual environment:
bash scripts/setup_venv.sh
  1. Activate and verify:
source .venv/bin/activate
python --version

Expected version: Python 3.11.x.

Use --with-dev when dev dependencies are needed:

bash scripts/setup_venv.sh --with-dev

Run Commands

After activating .venv, run pipeline and service generation:

python scripts/run_pipeline.py \
  --input /abs/path/sql.md \
  --out /abs/path/out \
  --with-services

Run each step separately when debugging:

python scripts/parse_sql_md.py --input /abs/path/sql.md --output /abs/path/out/query_catalog.json
python scripts/infer_semantics.py --input /abs/path/out/query_catalog.json --output /abs/path/out/semantic_catalog.json
python scripts/recommend_chart.py --input /abs/path/out/semantic_catalog.json --output /abs/path/out/chart_plan.json
python scripts/build_dashboard_spec.py --queries /abs/path/out/query_catalog.json --semantics /abs/path/out/semantic_catalog.json --charts /abs/path/out/chart_plan.json --output /abs/path/out/dashboard.json
python scripts/generate_ui_scaffold.py --dashboard /abs/path/out/dashboard.json --out /abs/path/out/ui
python scripts/generate_service_bundle.py --artifacts /abs/path/out --output /abs/path/out/services

Start generated services:

bash /abs/path/out/services/start_backend.sh
bash /abs/path/out/services/start_frontend.sh

Runtime And Version Control

  • Use Python 3.11.x only.
  • Keep .python-version at 3.11.
  • Keep pyproject.toml requires-python = ">=3.11,<3.12".
  • Install dev dependency before running upstream validator: pip install -r requirements-dev.txt.
  • Commit changes by scope: parser, semantics, chart rules, layout rules, scaffold.
  • Tag stable milestones using semantic version tags such as v0.1.0, v0.2.0.

Outputs

  • query_catalog.json: Parsed query units and metadata.
  • semantic_catalog.json: Field roles, grain hints, and dsl_filters extracted from SQL conditions.

dsl_filters includes value_type and value_format, with date support for:

yyyy-mm-dd, yyyy/mm/dd, yyyymmdd, yyyy-mm-dd hh:mm:ss, ISO-8601, yyyymmdd_int, unix second/ms integers.

  • chart_plan.json: Recommended chart type per query.
  • dashboard.json: Final dashboard definition for rendering, including page-level global_filters.
  • ui/: Static UI scaffold (index.html, app.js, style.css).
  • services/backend: FastAPI backend service using generated artifacts.
  • services/frontend: Frontend service consuming backend API.
  • services/start_backend.sh and services/start_frontend.sh: service start scripts.

UI Upgrade Notes (2026-03)

When using repo-level service UI (services/frontend), the upgraded experience includes:

  • KPI summary strip (click-to-focus widgets)
  • Layout switch (Classic / Focus)
  • New Midnight Ops theme preset
  • stronger visual hierarchy for demos

Heuristic References

Load only the file needed for the current issue:

  • SQL parsing and naming constraints: references/sql_style.md
  • Chart mapping rules: references/chart_rules.md
  • BI layout and widget sizing: references/layout_rules.md
  • Python 3.11 installation and venv setup: references/install_python311.md

Limits And Escalation

Treat current scripts as heuristic MVP.

Escalate for manual review when SQL includes nested CTE chains, window-heavy ranking logic, or unions with incompatible column semantics.

Fallback to table visualization when chart confidence is low.

版本历史

共 1 个版本

  • v1.2.0 当前
    2026-03-30 00:44 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

data-analysis

Data Analysis

ivangdavila
{"answer":"数据分析与可视化。查询数据库、生成报告、自动化电子表格,将原始数据转化为清晰可行的见解。适用于:(1) 您……"}
★ 198 📥 64,917
data-analysis

Excel / XLSX

ivangdavila
创建、检查和编辑 Microsoft Excel 工作簿及 XLSX 文件,支持可靠的公式、日期、类型、格式、重算及模板保留功能。
★ 367 📥 140,076
data-analysis

A股量化 AkShare

mbpz
A股量化数据分析工具,基于AkShare库获取A股行情、财务数据、板块信息等。用于回答关于A股股票查询、行情数据、财务分析、选股等问题。
★ 163 📥 59,745