技能文档
设置 首次使用时,请阅读 setup.md 了解集成指南。 ## 何时使用 当用户需要从 Mixpanel 获取产品分析数据时。代理可处理事件查询、漏斗分析、留存队列、用户分群及用户画像查询。 ## 架构 记忆存储于 ~/mixpanel/。结构详见 memory-template.md。 `` ~/mixpanel/ ├── memory.md # 项目、已保存查询、洞察 └── queries/ # 已保存的 JQL 查询 ` ## 快速参考 | 主题 | 文件 | |-------|------| | 设置流程 | setup.md | | 记忆模板 | memory-template.md | ## 核心规则 ### 1. 认证 需要 Mixpanel 服务账号: `bash export MP_SERVICE_ACCOUNT="your-service-account" export MP_SERVICE_SECRET="your-service-secret" export MP_PROJECT_ID="123456" ` 在 Mixpanel → Organization Settings → Service Accounts 创建服务账号。 ### 2. 使用 Query API 进行分析 使用 Query API 获取洞察、漏斗、留存: `bash BASE="https://mixpanel.com/api/query" AUTH=$(echo -n "$MP_SERVICE_ACCOUNT:$MP_SERVICE_SECRET" | base64) # Insights query (event counts) curl -s "$BASE/insights?project_id=$MP_PROJECT_ID" \ -H "Authorization: Basic $AUTH" \ -H "Content-Type: application/json" \ -d '{ "params": { "event": ["Sign Up", "Purchase"], "type": "general", "unit": "day", "from_date": "2024-01-01", "to_date": "2024-01-31" } }' | jq ` ### 3. 漏斗分析 `bash curl -s "$BASE/funnels?project_id=$MP_PROJECT_ID" \ -H "Authorization: Basic $AUTH" \ -H "Content-Type: application/json" \ -d '{ "params": { "events": [ {"event": "Sign Up"}, {"event": "Complete Onboarding"}, {"event": "First Purchase"} ], "from_date": "2024-01-01", "to_date": "2024-01-31", "unit": "day" } }' | jq '.data.meta.overall' ` ### 4. 留存队列 `bash curl -s "$BASE/retention?project_id=$MP_PROJECT_ID" \ -H "Authorization: Basic $AUTH" \ -H "Content-Type: application/json" \ -d '{ "params": { "born_event": "Sign Up", "event": "App Open", "from_date": "2024-01-01", "to_date": "2024-01-31", "unit": "week", "retention_type": "birth" } }' | jq ` ### 5. 用户画像 `bash curl -s "https://mixpanel.com/api/query/engage?project_id=$MP_PROJECT_ID" \ -H "Authorization: Basic $AUTH" \ -H "Content-Type: application/json" \ -d '{ "filter_by_cohort": {"id": 12345}, "output_properties": ["$email", "$name", "plan"] }' | jq ` ### 6. 导出原始事件 `bash curl -s "https://data.mixpanel.com/api/2.0/export?project_id=$MP_PROJECT_ID" \ -H "Authorization: Basic $AUTH" \ -d "from_date=2024-01-01" \ -d "to_date=2024-01-07" \ -d "event=[\"Purchase\"]" ` ### 7. 使用 JQL 进行复杂查询 `javascript // Mixpanel JQL (JavaScript Query Language) function main() { return Events({ from_date: "2024-01-01", to_date: "2024-01-31", event_selectors: [{event: "Purchase"}] }) .groupByUser(["properties.$city"], mixpanel.reducer.sum("properties.amount")) .groupBy(["key.$city"], mixpanel.reducer.avg("value")) .sortDesc("value") .take(10); } ` ## 常见查询 | 目标 | 端点 | 关键参数 | |------|----------|------------| | 事件计数 | /insights | event, type, unit, dates | | 转化漏斗 | /funnels | events array, dates | | 用户留存 | /retention | born_event, event, unit | | 用户分群 | /engage | filter_by_cohort, properties | | 原始事件导出 | /export | dates, event filter | ## Mixpanel 陷阱 - 日期格式错误 → 使用 YYYY-MM-DD,而非时间戳 - 缺少 project_id → 每次 Query API 调用都必须包含 - 速率限制 → 免费层级 60 次/小时,尽量批量查询 - JQL 超时 → 超过 60 秒的查询会失败,添加 .take(N) 限制结果 ## 外部端点 | 端点 | 发送的数据 | 目的 | |----------|-----------|---------| | mixpanel.com/api/query/ | 凭据、项目 ID、查询参数 | 分析查询 | | data.mixpanel.com/api/2.0/ | 凭据、项目 ID、日期范围 | 原始数据导出 | 不会向其他外部服务发送任何数据。 ## 安全与隐私 通过 HTTPS 发送到 Mixpanel 的数据: - 服务账号凭据用于认证 - 查询参数(事件名称、日期范围、过滤器) - 项目 ID 本地保留的数据: - 凭据仅存储于环境变量 - 查询结果缓存于 ~/mixpanel/ 本技能不会: - 在 memory.md 或任何文件中存储凭据 - 向 mixpanel.com 以外的服务发送数据 - 修改你的 Mixpanel 跟踪代码或 SDK ## 信任 使用本技能即表示从 Mixpanel 查询分析数据。只有在你信任 Mixpanel 处理你的产品数据时才安装。 ## 相关技能 若用户确认,可通过 clawhub install 安装: - analytics — 多平台分析 - data-analysis — 数据处理模式 - api — REST API 最佳实践 ## 反馈 - 若觉得有用:clawhub star mixpanel - 保持更新:clawhub sync`