# Dingtalk Workflow Social Tracker

> 社交媒体数据追踪 — 维护社交账号配置，通过 AI WebSearch 获取公开数据生成每日快照，支持长期趋势分析和跨平台对比

- Skill: `liangdabiao/dingtalk-workflow-social-tracker` (Agent Skill)
- Install (CLI): `npx skillmds@latest add liangdabiao/dingtalk-workflow-social-tracker`
- Raw SKILL.md: https://api.skillmd.com/api/skills/liangdabiao/dingtalk-workflow-social-tracker/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- Author: liangdabiao (https://skillmd.com/u/liangdabiao)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/liangdabiao/dingtalk-workflow-social-tracker

---


# 社交媒体数据追踪 (dingtalk-workflow-social-tracker)

> 维护社交媒体账号配置，通过 AI 获取公开数据生成每日快照，支持长期趋势分析和跨平台对比。
> 数据全部存储在钉钉 aitable 中。

## 触发方式

```
"社交数据"  "平台数据"  "粉丝趋势"  "内容表现"  "数据追踪"  "YouTube数据"  "账号管理"
```

## 数据来源

| 来源 | 说明 | 阶段 |
|------|------|------|
| AI WebSearch | 搜索 Social Blade 等公开数据 | 当前可用 |
| 用户手动录入 | 直接告诉 AI 数据 | 当前可用 |
| Apify / TikHub | 第三方数据采集平台 | 预留接入 |
| 平台官方 API | YouTube/Instagram/Twitter/TikTok API | 预留接入 |

## 支持的平台

| 平台 | 主要指标 |
|------|---------|
| YouTube | 订阅者、观看次数、视频数 |
| Instagram | 粉丝、帖子数、互动率 |
| Twitter/X | 粉丝、推文数、互动率 |
| TikTok | 粉丝、视频数、点赞数 |
| B站 | 粉丝、播放量、投币数 |
| 小红书 | 粉丝、笔记数、点赞收藏 |
| 其他 | 自定义指标 |

## 数据初始化

首次使用时，自动创建 aitable 数据表：

```bash
# 创建 Base
dws aitable base create --name "社交媒体追踪" --yes -f json
# 返回 baseId，记为 <st-base-id>

# 创建 3 张表
dws aitable table create --base-id <st-base-id> --name "社交账号" --yes -f json
# 返回 tableId，记为 <accounts-table-id>
dws aitable table create --base-id <st-base-id> --name "每日快照" --yes -f json
# 返回 tableId，记为 <snapshots-table-id>
dws aitable table create --base-id <st-base-id> --name "内容表现" --yes -f json
# 返回 tableId，记为 <content-table-id>

# 添加业务字段（表创建后自动带一个"标题"primaryDoc字段，需额外添加业务字段）
dws aitable field create --base-id <st-base-id> --table-id <accounts-table-id> --fields '[{"fieldName":"平台","type":"text"},{"fieldName":"账号名","type":"text"},{"fieldName":"账号ID","type":"text"},{"fieldName":"主页链接","type":"text"},{"fieldName":"状态","type":"text"},{"fieldName":"开始追踪日期","type":"date"}]' --yes -f json

dws aitable field create --base-id <st-base-id> --table-id <snapshots-table-id> --fields '[{"fieldName":"平台","type":"text"},{"fieldName":"账号名","type":"text"},{"fieldName":"日期","type":"date"},{"fieldName":"粉丝数","type":"number"},{"fieldName":"新增粉丝","type":"number"},{"fieldName":"内容总数","type":"number"},{"fieldName":"互动率","type":"number"},{"fieldName":"备注","type":"text"}]' --yes -f json

dws aitable field create --base-id <st-base-id> --table-id <content-table-id> --fields '[{"fieldName":"平台","type":"text"},{"fieldName":"账号名","type":"text"},{"fieldName":"内容ID","type":"text"},{"fieldName":"标题","type":"text"},{"fieldName":"发布日期","type":"date"},{"fieldName":"点赞数","type":"number"},{"fieldName":"评论数","type":"number"},{"fieldName":"分享数","type":"number"},{"fieldName":"播放数","type":"number"},{"fieldName":"互动率","type":"number"}]' --yes -f json
```

**表1: 社交账号 (social_accounts)**

| 字段名 | 类型 | 说明 |
|--------|------|------|
| 平台 | 文本 | YouTube/Instagram/Twitter/TikTok/B站/小红书/其他 |
| 账号名 | 文本 | @handle |
| 账号ID | 文本 | 平台内唯一ID |
| 主页链接 | 文本 | 平台主页 URL |
| 状态 | 文本 | 活跃/暂停/已删除 |
| 开始追踪日期 | 日期 | 首次记录日期 |

**表2: 每日快照 (daily_snapshots)**

| 字段名 | 类型 | 说明 |
|--------|------|------|
| 平台 | 文本 | 关联平台 |
| 账号名 | 文本 | 关联账号 |
| 日期 | 日期 | 快照日期 |
| 粉丝数 | 数字 | 当前粉丝/订阅者数 |
| 新增粉丝 | 数字 | 较上次变化 |
| 内容总数 | 数字 | 累计发布内容数 |
| 互动率 | 数字 | 综合互动率（%） |
| 备注 | 文本 | 特殊事件说明 |

**表3: 内容表现 (content_performance)**

| 字段名 | 类型 | 说明 |
|--------|------|------|
| 平台 | 文本 | 关联平台 |
| 账号名 | 文本 | 关联账号 |
| 内容ID | 文本 | 内容唯一标识 |
| 标题 | 文本 | 内容标题 |
| 发布日期 | 日期 | 发布时间 |
| 点赞数 | 数字 | likes |
| 评论数 | 数字 | comments |
| 分享数 | 数字 | shares/reposts |
| 播放数 | 数字 | views |
| 互动率 | 数字 | (点赞+评论+分享)/播放数×100% |

## 工作模式

### 模式 1: 账号管理

**触发：** "添加我的 YouTube 账号 @mychannel" / "我的追踪账号有哪些" / "删除 XXX 账号"

**工作流：**

```
Step 1: 添加账号
└── dws aitable record create --base-id <st-base-id> --table-id <accounts-table-id> --records '[{"cells":{"平台":"YouTube","账号名":"@mychannel","主页链接":"https://youtube.com/@mychannel","状态":"活跃","开始追踪日期":"2026-04-06"}}]' --yes -f json

Step 2: 查看账号列表
└── dws aitable record query --base-id <st-base-id> --table-id <accounts-table-id> --limit 50 --yes -f json

Step 3: 删除/暂停账号
└── dws aitable record update --records '[{"recordId":"...","cells":{"状态":"已删除"}}]' --yes -f json
```

### 模式 2: 手动录入快照

**触发：** "YouTube 今天 1000 粉丝了" / "记录一下今天的社交数据"

**工作流：**

```
Step 1: 解析用户输入的平台和数据

Step 2: 查询上一次快照，计算新增变化
└── dws aitable record query --base-id <st-base-id> --table-id <snapshots-table-id> --keyword "<账号名>" --limit 5 --yes -f json

Step 3: 写入新快照
└── dws aitable record create --base-id <st-base-id> --table-id <snapshots-table-id> --records '[{"cells":{"平台":"YouTube","账号名":"@mychannel","日期":"2026-04-06","粉丝数":1000,"新增粉丝":12,"内容总数":45}}]' --yes -f json

Step 4: 输出确认
```

**输出格式：**

```markdown
✓ 已记录 YouTube @mychannel 快照：
- 粉丝：1000（+12）
- 内容总数：45
```

### 模式 3: 自动数据采集

**触发：** "采集今天的社交数据" / 定时自动执行

**工作流：**

```
Step 1: 获取所有活跃账号
└── dws aitable record query → 状态=活跃的账号

Step 2: 逐个账号 WebSearch 获取最新数据
├── WebSearch → "@mychannel subscribers count 2026"
├── WebSearch → Social Blade 数据
└── 解析搜索结果中的粉丝数和内容数

Step 3: 计算变化并写入快照
├── 对比上次快照
├── 计算新增粉丝
└── dws aitable record create 批量写入

Step 4: 异常/里程碑检测
├── 粉丝下降 → 警告
├── 里程碑（如突破 1000 粉丝）→ 祝贺
└── dws chat message send-by-bot 发送通知
```

### 模式 4: 趋势分析

**触发：** "这周哪个平台增长最快？" / "最近一个月的粉丝趋势" / "生成趋势报告"

**工作流：**

```
Step 1: 查询指定时间范围的快照
└── dws aitable record query --base-id <st-base-id> --table-id <snapshots-table-id> --limit 100 --yes -f json

Step 2: AI 分析趋势
├── 按平台分组统计
├── 计算增长率
├── 识别增长/下降拐点
└── 对比各平台表现

Step 3: 生成趋势报告
```

**输出格式：**

```markdown
## 社交媒体趋势报告（04/01 - 04/06）

### 增长概览
| 平台 | 起始粉丝 | 结束粉丝 | 增长率 | 新增内容 |
|------|---------|---------|--------|---------|
| YouTube | 950 | 1000 | +5.3% | 3 |
| Instagram | 500 | 550 | +10% | 8 |
| B站 | 200 | 210 | +5% | 2 |

### 分析
- 增长最快：Instagram（+10%）
- 内容产出最活跃：Instagram（8 条内容）
- YouTube 增长稳定，建议保持发布频率
- B站增长偏慢，建议提高内容质量

### 里程碑
- YouTube 突破 1000 订阅者 🎉
```

### 模式 5: 跨平台对比

**触发：** "对比 YouTube 和 Instagram 的表现" / "各平台互动率对比"

**工作流：**

```
Step 1: 查询各平台快照和内容表现
└── dws aitable record query → 按平台过滤

Step 2: AI 生成对比报告
├── 粉丝增长对比
├── 互动率对比
├── 内容产出效率对比
└── 最佳发布时间分析
```

### 模式 6: 内容表现记录

**触发：** "记录一下这条视频的表现" / "这条内容点赞 500"

**工作流：**

```
Step 1: 解析内容数据

Step 2: 写入内容表现表
└── dws aitable record create --base-id <st-base-id> --table-id <content-table-id> --records '[...]' --yes -f json

Step 3: 计算互动率并输出
```

## dws CLI 命令参考

### 创建社交追踪

```bash
dws aitable base create --name "社交媒体追踪" --yes -f json
dws aitable table create --base-id <st-base-id> --name "社交账号" --yes -f json
dws aitable table create --base-id <st-base-id> --name "每日快照" --yes -f json
dws aitable table create --base-id <st-base-id> --name "内容表现" --yes -f json
```

### 账号管理

```bash
# 添加账号
dws aitable record create --base-id <st-base-id> --table-id <accounts-table-id> --records '[{"cells":{"标题":"YouTube-@mychannel","平台":"YouTube","账号名":"@mychannel","主页链接":"https://...","状态":"活跃","开始追踪日期":"2026-04-06"}}]' --yes -f json

# 查看账号
dws aitable record query --base-id <st-base-id> --table-id <accounts-table-id> --limit 50 --yes -f json
```

### 快照记录

```bash
dws aitable record create --base-id <st-base-id> --table-id <snapshots-table-id> --records '[{"cells":{"标题":"@mychannel-2026-04-06快照","平台":"YouTube","账号名":"@mychannel","日期":"2026-04-06","粉丝数":1000,"新增粉丝":12,"内容总数":45,"互动率":3.5}}]' --yes -f json
```

### 查询趋势数据

```bash
dws aitable record query --base-id <st-base-id> --table-id <snapshots-table-id> --limit 100 --yes -f json
```

### 内容表现

```bash
dws aitable record create --base-id <st-base-id> --table-id <content-table-id> --records '[{"cells":{"标题":"教程视频","平台":"YouTube","账号名":"@mychannel","内容ID":"vid123","发布日期":"2026-04-05","点赞数":500,"评论数":30,"播放数":10000,"互动率":5.3}}]' --yes -f json
```

### 发送通知

```bash
dws chat message send-by-bot --robot-code "bot_code" --group "openConversationId" --title "社交数据更新" --text "YouTube 突破 1000 订阅者！" --yes
```

## 定时任务

| 任务 | Cron | 说明 |
|------|------|------|
| 数据采集 | `30 22 * * *` | 每天 22:30 自动采集 |

```bash
CronCreate: cron="30 22 * * *", prompt="采集今天的社交媒体数据快照，记录到多维表格，如有异常或里程碑发送通知", recurring=true, durable=true
```

## 联动 Skill

| 联动 Skill | 数据交互 | 说明 |
|-----------|---------|------|
| business-advisor | 提供社交数据 | 顾问团营销/增长分析 |
| morning-brief | 提供昨日数据 | 晨间简报展示社交表现 |
| content-pipeline | 提供内容表现 | 创意管道评估发布效果 |

## 注意事项

1. 所有 `dws` 命令必须加 `--yes` 标志
2. WebSearch 获取的数据可能存在延迟，建议标注数据来源和获取时间
3. 互动率计算公式：(点赞+评论+分享) / 播放数 × 100%（视频类），(点赞+评论) / 粉丝数 × 100%（图文类）
4. 新增粉丝需要对比上次快照计算，首次记录新增粉丝为 0
5. 数据保留建议：快照数据保留 1 年以上，内容表现保留 3 个月
6. Apify/TikHub 接入为未来扩展，当前阶段以 WebSearch + 手动录入为主

## 已知问题

无已知问题，所有核心命令（base CRUD、table CRUD、record CRUD、query、template search）均测试通过

