用途:为分析类应用提供查询多个数据源的通用方法,帮助在回答分析问题时选对数据源、复用已有能力并如实呈现结果。
主要能力与做法:
- 目录优先:查询前先看注入的 <data-dictionary> 和数据源状态,确认已配置的数据源及可用的表、列、连接路径,选择真正拥有该事实的单一数据源,避免盲目发散查询。
- 先读对应提供方技能:查看 .agents/skills/<provider>/SKILL.md 获取表名、列映射、认证与注意事项;BigQuery 需先读 .agents/skills/bigquery/SKILL.md,并在猜测表名或列名前使用 search-bigquery-schema。
- 歧义先澄清:若指标定义、日期范围或粒度不清且猜错会改变数字,使用 ask-question 澄清工具(多选),每轮最多一次。
- 优先复用已有动作或已连接的提供方 MCP 工具,用结构化参数调用后再过滤或聚合;没有现成脚本时在 actions/ 中编写临时脚本,通过 pnpm action <name> 运行。
- 第一方事件:通过 /track 端点记录的事件使用 pnpm action query-agent-native-analytics --sql "SELECT ... FROM analytics_events ..." 查询,涵盖页面浏览、站点/应用流量、模板与应用使用、事件计数等。
- 对话内图表:使用实时 /chart 嵌入,而非 generate-chart;仅当构建在应用外渲染的保存分析产物时才用 generate-chart。
- 跨源分析:按 cross-source-analysis 技能规划各事实归属,分别获取,用稳定 id 与邮箱双重拼接身份,去重并标注来源。
- 完成后沉淀知识:将新确认的指标定义、提供方坑点、模式发现、身份拼接规则写入 save-memory 或 LEARNINGS.md。
限制与注意:必须查询真实数据,绝不猜测或近似;只呈现实际检索到的数字。不要用 db-query 做数据源分析,它仅用于内部应用表。数据源状态、数据字典读取、仪表盘试运行、update-dashboard、generate-chart、save-analysis 都不算数据查询,分析与仪表盘至少运行一次提供方查询动作并保留证据。最终答案应说明来源、时间窗口、过滤条件、样本量或行数、连接或匹配方式、注意事项与缺口。