用途
Markdown to Google Sheets Presenter 用于把 Markdown 报告(竞品分析、广告侦察、效果复盘等)转换成可直接交付客户的 Google Sheet,包含多标签页布局、主题化格式和条件颜色。
主要能力
- 将 Markdown 报告解析为结构化内容,识别标题与元数据、章节层级(H1/H2/H3)、带表头的数据表格、列表(项目符号、编号、复选框)以及评分数据(如 X/45、百分比等)。
- 按报告类型生成标准标签页结构。竞品分析/广告侦察报告:Summary、Strategic_Scores、Tactical_Scores、Gaps、Recommendations,以及按竞品拆分的 Competitor_[Name]。效果报告:Dashboard、Campaigns、Action_Items。
- 使用主题文件 templates/professional-blue-theme.json 统一控制颜色(含 API 可用的 RGB 小数)、字体层级、条件格式阈值、行高与列宽。
- 通过脚本创建电子表格,再由智能体组合 API 调用完成重命名标签页、写入数值、设置表头/子表头样式、交替行、评分与状态列的条件格式、列宽和数字格式。
使用方式
- 识别输入:若提供路径则直接使用;若对话中有近期分析则使用该内容;若含糊则请用户指定。
- 解析 Markdown 结构。
- 确定标签页结构(按上述标准映射,偏离规则见 rules.md)。
- 加载主题文件,读取后再组合任何格式调用,不要内联临时取值。
- 在项目根目录(google-ads.yaml 所在处)运行: python .claude/skills/markdown-to-sheets-presenter/scripts/create_spreadsheet.py "Report Name" 若凭据在其他位置,可传 --config path/to/google-ads.yaml。脚本返回电子表格 ID 和 URL 的 JSON,后续填充与格式化调用使用该 ID。 命名约定:[Client Name] - [Report Type] - [YYYY-MM-DD],例如 "Example Client - Competitive Analysis - 2025-12-16"。
- 填充与格式化:重命名/新增标签页、写入数值、按主题设置格式。
- 返回结果:可点击的 Google Sheets 链接、创建的标签页摘要、各标签页数据行数。
前置条件
- 凭据:项目根目录下的 google-ads.yaml。脚本复用该文件的 OAuth 凭据访问 Sheets API,其 refresh token 必须带有 spreadsheets 作用域(setup 技能的生成器默认授予;若 token 早于该作用域,需重新运行生成器一次)。
- Python 包:pip install google-api-python-client google-auth pyyaml
适用场景
- 需要把竞品分析、广告侦察或效果复盘报告整理成客户可读的 Google Sheet。
- 输入来自 competitor-analysis-v2(其 15 项战略 + 7 项战术评分正对应 Strategic/Tactical 标签页映射)。
- 需要机器可读数据而非展示时,应使用 google-ads-query 的 CSV;若源技能已原生写出 Sheet(如 account-diagnostic 的 --sheet-id),应直接使用,不要再次展示。
限制
- 从不编辑报告内容:这是格式化环节,数字、广告文案和引语原样落地,广告文案不截断;错误发现应在源报告中修正。
- 不附带转换器:create_spreadsheet.py 只创建一个带表头格式的标签页后退出,解析、填充和条件格式是智能体组合的 API 调用,不是隐藏代码。
- 不执行 Drive 操作:仅限 Sheets 范围,文件落在授权账户的 Drive 根目录,需手动移动/共享。
- 不是数据管道:周期性导出与重新导入工作流属于原始 CSV,不属于展示层。
- 创建非幂等:重复运行会生成同名第二个电子表格,Drive 允许如此。
错误处理
- 无凭据:指向 google-ads-api-setup 技能。
- 403 / PERMISSION_DENIED:refresh token 早于 Sheets 作用域,重新运行 api-setup 生成器一次,将新的 refresh_token 粘贴到 google-ads.yaml。
- 文件未找到:请用户核实路径。
- API 配额:建议等待或手动复制。
- 解析失败:回退到原始文本布局。
文件说明
- SKILL.md:工作流与路由。
- rules.md:判断层,包括展示 vs 原始 CSV、主题判断、表格结构、误报、升级。
- examples.md:三个示例决策,含应拒绝的请求。
- references/presentation-contract.md:脚本/智能体分工、脚本确切行为、主题文件契约。
- SETUP.md:凭据设置、快速测试与故障排查。
- scripts/create_spreadsheet.py:引导脚本,创建一个电子表格和一个格式化表头行,stdout 输出 JSON。
- templates/professional-blue-theme.json:主题文件,所有展示值的唯一来源,由智能体消费(无脚本读取)。
- README.md:面向用户的概览与安装。
运行之后
Google Sheet 即产物,本地磁盘不落任何内容。电子表格 ID 和 URL 以 JSON 打印到 stdout;若后续需以编程方式使用该表,请捕获它们,因为创建从不幂等。