一种元技能,从分析师那里提取公司特定的数据知识,并生成定制化的数据分析技能。
该技能有两种模式:
适用场景:用户希望为其数据仓库创建新的数据上下文技能。
步骤 1:识别数据库类型
询问:"你使用的是什么数据仓库?"
常见选项:
使用 ~~data warehouse
工具(查询和模式)进行连接。如果不确定,请检查当前会话中可用的 MCP
工具。
步骤 2:探索模式
使用 ~~data warehouse 模式工具:
按方言划分的示例探索查询:
-- BigQuery:列出数据集
SELECT schema_name FROM INFORMATION_SCHEMA.SCHEMATA
-- BigQuery:列出数据集中的表
SELECT table_name FROM `project.dataset.INFORMATION_SCHEMA.TABLES`
-- Snowflake:列出模式
SHOW SCHEMAS IN DATABASE my_database
-- Snowflake:列出表
SHOW TABLES IN SCHEMA my_schema模式探索后,以对话方式(而非一次性全部)询问这些问题:
实体消歧(关键)
"这里的人说'用户'或'客户'时,具体指什么?有不同类型吗?"
注意听取:
主要标识符
"[客户/用户/账户]的主要标识符是什么?同一个实体有多个 ID 吗?"
注意听取:
关键指标
"人们最常问的 2-3 个指标是什么?每个指标如何计算?"
注意听取:
数据卫生
"哪些内容应该始终从查询中排除?(测试数据、欺诈数据、内部用户等)"
注意听取:
常见陷阱
"新分析师在使用这些数据时通常会犯什么错误?"
注意听取:
创建具有以下结构的技能:
[公司]-data-analyst/
├── SKILL.md
└── references/
├── entities.md # 实体定义和关系
├── metrics.md # KPI 计算
├── tables/ # 每个领域一个文件
│ ├── [领域1].md
│ └── [领域2].md
└── dashboards.json # 可选:现有仪表盘目录
SKILL.md 模板:参见
references/skill-template.md
SQL 方言部分:参见
references/sql-dialects.md,包含相应的方言说明。
参考文件模板:参见
references/domain-template.md
适用场景:用户已有技能但需要添加更多上下文。
要求用户上传其现有技能(zip 或文件夹),或如果在当前会话中,则定位该技能。
阅读当前的 SKILL.md 和参考文件,了解已记录的内容。
询问:"哪个领域或主题需要更多上下文?哪些查询失败了或产生了错误的结果?"
常见的缺口:
针对已识别的领域:
~~data warehouse
模式工具查找该领域的表references/[领域].md每个参考文件应包含:
在交付生成的技能之前,请验证: