# Brand Campaign Recap

> RITFIT 品牌营销活动复盘工作流。当用户说"复盘 [活动名]"、"写 [活动] 复盘"、"campaign recap"、"复盘完成，更新所有文档"时触发。覆盖完整流程：Plan vs Actual 对照 → 数据分析（Python 图表）→ 按模板撰写复盘文档（英文正文）→ 存入 Obsidian → 复盘后 5 步强制更新。仅限 RF（RITFIT）品牌，不处理 KH (Kangaroo Hoppers)。

- Skill: `nana7536/brand-campaign-recap` (Agent Skill, multi-file: 5 files)
- Install (CLI): `npx skillmds@latest add nana7536/brand-campaign-recap`
- Raw SKILL.md: https://api.skillmd.com/api/skills/nana7536/brand-campaign-recap/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Marketing & Growth
- Author: nana7536 (https://skillmd.com/u/nana7536)
- Updated: 2026-09-22
- Page: https://skillmd.com/skills/nana7536/brand-campaign-recap

---


# Brand Campaign Recap 工作流

> **适用范围**: 仅限 RF（RITFIT）品牌。KH (Kangaroo Hoppers) 一律不处理。
> **服务对象**: 吴双 (Christina)，RITFIT 海外品牌营销专家。
> **复盘正文语言**: 英文（行业惯例）；与用户沟通用中文。
> **数据缺失原则**: 绝不编造数据，缺失字段标 `[TBD]`，整模块缺失必须停下来问用户。

完整流程细节见 `references/recap-process.md`，复盘文档结构见 `references/recap-template.md`，复盘后 5 步强制更新见 `references/post-recap-checklist.md`。

## 🛑 第 0 步：前置校验（最高优先级，不可跳过）

写复盘**之前**必须完成校验，任一不满足就停下来向用户求证：

1. **找到 Campaign Plan 文档（铁律：没有 Plan 不写复盘）**
   - 在 `C:\Users\fancy\Documents\Obsidian Vault\01-Projects 项目\` 下查找 `Campaign - [活动名]*.md`，或在工作目录 / 飞书 Event Plan 表中查找 Plan 链接。
   - 找到 → 通读全文，提取 Campaign Objectives、Core Concept、Timeline、KOL 策略、KPIs、预算。
   - 找不到 → **立即停止**，向用户求证："我没有找到 [活动名] 的 Plan 文档。没有 Plan vs Actual 对照的复盘是无效复盘。请提供 Plan 文档或飞书链接。" 不得自行开始写复盘。

2. **确认模块数据已到位（与 Plan 逐一对应）**
   - 数据存放路径：`C:\Users\fancy\AppData\Roaming\CherryStudioEnterprise\Data\Agents\Ray\_outputs\_raw-data\`，按活动名称建子文件夹。
   - 先读 Plan 确认本次活动涉及哪些模块，再核对数据（KOL Excel / 广告 PDF / GMV 数据等）。
   - 整模块缺失 → 列出缺失清单向用户求证，不自行跳过；用户确认跳过 → 删除相应章节并注明；次要字段缺失 → 标 `[TBD]` 继续。

3. **确认人员映射**
   - KAM 英文名映射必须准确（Angel = Angeline Prasetio / Christina = 吴双 / Miranda = 丁露 / Renlong Li = 李仁龙 / Isaac Rojo = Diego Isaac Rojo Molina / lili = 李佳蕾），不确定就向用户求证。
   - 只 @ 已确认的品牌部成员；**绝不从文档中自行提取人名加入通讯录**（铁律）。

## 📝 第 1 步：Plan vs Actual 对照分析

逐项对照 Plan 与实际结果，这是复盘的骨架：

| 维度 | Plan 承诺 | Actual 结果 | 达成率 | 差距原因 |
|---|---|---|---|---|
| GMV | | | | |
| KOL 内容数量/曝光 | | | | |
| 付费媒体 ROI | | | | |
| 社区/UGC | | | | |
| KPI 逐项 | | | | |

- GMV 达成率必须算出来（如 $1.91M / $5.64M = 33.9%）。
- 每个差距都要给出有数据支撑的原因，不用"可能/也许"等模糊词。
- 主动识别流程问题（如 tracking link 缺失、成本未录入、GMV 未回填）。

## 📊 第 2 步：分模块数据分析

按模板包含的模块逐一分析（不适用的模块删除）：
1. **Social Media Performance** — 发帖量、曝光、互动、link clicks
2. **Advertising Performance** — 分 ad set 拆解（KOL 共创广告 / TVC / 再营销 / Giveaway）
3. **KOL Performance** — 按 KAM 分组统计；每个 KAM 选 1 个最佳创作者做案例分析（"Why It Worked" 是 AI 推测，需注明）
4. **TVC Shoot** — 素材产出与跨平台表现
5. **TikTok Shop**（如有）— GMV、Affiliate、广告 ROI
6. **PR and Media Exposure** — 报道清单与定位评估
7. **Community / Partnership**（如有）— 群组增长、Giveaway 参与、获客成本 vs FB Ad CPA 基准
8. **Offline Event**（如有）— attendance、内容产出、媒体提及

**必做 Python 分析**（在活动原始数据目录中执行）：
- KOL 数据清洗：去重、KAM 英文名映射、按 KAM / 平台 / 国家分组统计、识别 Top 10 创作者
- 广告数据整合：Prime Video、DSP Linkout 的 impressions / revenue / ROAS，计算整体 ROAS
- Plan vs Actual 对照：计划创作者名单 vs 实际发布名单、计划目标 vs 实际结果

**图表要求**（matplotlib/seaborn，PNG 300dpi，标签全部用英文避免中文字体乱码）：
- 保存位置：`C:\Users\fancy\Documents\Obsidian Vault\02-Areas 领域\活动复盘\charts\YYYY [Campaign Name]\` + 本地备份 `_outputs\charts\`
- 引用路径：`charts/YYYY [Campaign Name]/chart[N]_[description].png`（空格用 %20 编码）
- 必出图表：KAM 分组对比、平台分布、Top 10 创作者、GMV 达成率、国家分布

## ✍️ 第 3 步：撰写复盘文档

**使用模板**: `references/recap-template.md`，按适用性裁剪。
- **Campaign Verdict 先行**：开头一段话给出结论（成功/未达成 + 核心原因），写成自信的 verdict，不是计划复述。
- 删除所有不适用的章节，替换所有 `[bracketed]` 占位符，缺失数据标 `[TBD]`。
- **Key Learnings 必须可执行**：每条配"优化动作 + 负责人 + 优先级（🔴🟡🟢）"，不写"加强沟通"这类空话。
- 广告投放分析要包含：花费占比、核心贡献、深度分析、结论、优质素材链接。

**保存路径**:
```
C:\Users\fancy\Documents\Obsidian Vault\02-Areas 领域\活动复盘\YYYY [活动名] Campaign Recap.md
```

**YAML frontmatter**:
```yaml
---
type: recap
status: completed
tags: [recap, campaign, 活动标识, gmv-X.XXm, roi-X.X, target-achieved 或 target-missed]
updated: YYYY-MM-DD
---
```

**本地备份**: 复制一份到 `C:\Users\fancy\AppData\Roaming\CherryStudioEnterprise\Data\Agents\Ray\outputs\活动复盘\`。

## 🔄 第 4 步：复盘后 5 步强制更新（不可省略）

复盘文档写完后**立即**执行（详细规范见 `references/post-recap-checklist.md`）：
1. **更新 FACT.md"当前项目状态"** — 活动从"进行中"移入"刚完成"（只动当前状态部分，不动团队通讯录）
2. **追加洞察到 Campaign Insights Library** — `02-Areas 领域/活动复盘/Campaign Insights Library.md`，只追加不删除，每条洞察含：发现 / 数据支撑 / 优化动作 / 负责人 / 优先级 / 适用场景
3. **更新 H2 Campaign Calendar** — `01-Projects 项目/2026 H2 Campaign Calendar.md`，状态 🔄→✅，填实际 GMV，更新下个活动优先级
4. **更新 Campaign Plan 状态标签** — frontmatter `status: completed`，tags 加成果标记
5. **记录 JOURNAL** — 用 agent memory 的 `append`，含 event/campaign/period/GMV/达成率/key learnings，tags 含 `recap, campaign, 活动标识`

全部完成后向用户汇报 5 项的勾选状态。

## 📤 第 5 步：可选项（询问用户后再做）
- 上传复盘到飞书（lark-doc / lark-drive 流程）
- 重大活动（World Cup / BFCM 级）提醒用户：是否发送给 @蒋鑫 和团队
- 主动提出下一步建议（如下一活动策划启动会时间、发现的流程风险）

## ⚠️ 红线（违反 = 严重错误）
1. ❌ 没有 Plan 就写复盘
2. ❌ Plan 涉及的模块数据缺失时，不询问用户就自行跳过该模块或强行开始复盘
3. ❌ 编造数据（缺失就标 [TBD]）
4. ❌ 从任何文档中擅自提取人名加入 FACT.md 团队通讯录
5. ❌ @ 未确认的人员（如邢雨婷已不在品牌部）
6. ❌ 处理 KH 品牌内容
7. ❌ 写完复盘就结束，跳过第 4 步的 5 步强制更新
8. ❌ "Why It Worked" 分析不注明是 AI 推测

## 🔗 关键路径速查

| 项目 | 路径 / 标识 |
|---|---|
| Obsidian Vault | `C:\Users\fancy\Documents\Obsidian Vault\` |
| Ray 工作区 | `C:\Users\fancy\AppData\Roaming\CherryStudioEnterprise\Data\Agents\Ray\` |
| 原始数据 | `...\Ray\_outputs\_raw-data\[活动名]\` |
| 复盘输出 | `02-Areas 领域\活动复盘\YYYY [活动名] Campaign Recap.md` |
| Plan 文档 | `01-Projects 项目\Campaign - *.md` |
| 洞察库 | `02-Areas 领域\活动复盘\Campaign Insights Library.md` |
| H2 排期 | `01-Projects 项目\2026 H2 Campaign Calendar.md` |
| 飞书营销总 base | `IesVbgMA4aynsosoeZecSI2Anmd`（Event Plan 表 `tblnCeyHa7xto2Ag`，每周更新） |
| 飞书 CRM base | `F2pVbsy0OaaocEsQeuYcJKkHnBI` |
| 飞书访问 | `lark-cli base +record-list --base-token <token> --table-id <id> --as user` |

