maomomo-article-writer/references/delivery-rules.md

11 KiB
Raw Blame History

MAOMOMO 完整交付规则

本文件用于完整文章、配图、发布包、打包、一键下载和后续更新任务。只要用户没有明确说“只要文字”“不要图片”“不要打包”“先不要生成文件”“先只要大纲”,默认按完整交付模式执行。

完整交付模式指“最终交付物必须完整”,不代表可以跳过确认一次性全量生成。执行时必须遵守 SKILL.md 的阶段门禁:先读资料和事实表,再确认标题 / 口径 / 大纲 / 素材映射 / 配图风格 / 生图后端,随后写文章、整理 prompts、先出一张样张样张确认后再逐张生成剩余图片。

强制完整交付规则

当用户请求包含以下任一表达时,必须默认进入“完整交付模式”:

  • “使用 skill 生成文章”
  • “按 skill 生成”
  • “配图也是按 skill”
  • “配图也按 SKILL”
  • “完整文章”
  • “发布用 Markdown”
  • “打包”
  • “一键下载”
  • “给我文件”
  • “文章和配图一起”
  • “生成文章 + 配图”
  • “最终交付”

完整交付模式最终必须完成以下交付物,但必须分阶段推进:

  1. 读取并核对用户提供的所有官方链接、PDF、参考文章和条款。
  2. 在写最终稿前给用户确认标题、核心口径、outline.md 大纲、来源缺口、必选素材映射和配图风格。
  3. 用户确认后输出发布用 Markdown 文件,而不是只在聊天框展示正文。
  4. 出图前把全部图片 prompt 写入 prompts/ 或 manifest 文件,让用户可直接编辑。
  5. 先生成并确认一张样张,优先封面图;样张确认后再逐张生成剩余独立高清 PNG。
  6. 将通过 QA 的图片同步到 assets/ 目录,并以相对路径插入 Markdown例如 ![图片说明](assets/hsbc-mastercard-alipay-campaign-01-cover.png)
  7. 用脚本检查 Markdown 中所有本地图片路径真实存在。
  8. 创建 ZIP 包,结构类似:
article_package.zip
  article.md
  assets/
    hsbc-mastercard-alipay-campaign-01-cover.png
    hsbc-mastercard-alipay-campaign-02-overview.png
    hsbc-mastercard-alipay-campaign-03-timeline.png
  1. 最终回复只给路径和极简说明,同时说明图片数量、生图后端、状态记录和已知限制。

如果因为工具限制、图片生成失败、文件写入失败或资料缺失导致无法完成完整交付,必须明确说明失败点,并尽量交付已经完成的部分。不要只输出配图提示词代替图片文件,不要只输出文章正文代替 Markdown 文件。

多渠道交付策略

完整交付默认生成 Markdown、assets 和 ZIP但最终发送方式按渠道和用户要求调整。

  • 本地 / Web优先给 Markdown + ZIP如用户要图片也附独立图片。
  • Telegram / 聊天ZIP 可能失败,优先发送 Markdown + 多张图片独立附件ZIP 作为可选补充。
  • Email按用户要求选择 ZIP 或独立附件。
    • 用户说“打包发我 email”发送 ZIP。
    • 用户说“不打包”“分多个附件”:发送 Markdown 和图片作为多个独立附件,不再附 ZIP。
  • 若附件发送失败,不要反复重复发送同一批附件;改用更稳定的渠道或分批发送,并说明只保留最后版本。
  • 发送前确认附件对应的是最后确认版,不要把旧图、旧 Markdown 或临时文件发出。

配图执行规则

具体视觉风格、图片清单、文件命名、Markdown 插图和图片 QA 规则见 references/visual-assets.md。本节只规定完整交付时的执行边界。

当用户要求“配图也按 Skill”“高清配图”“精美配图”“生成配图”“文章和配图一起”时

  • 必须生成独立 PNG 图片文件,而不是只给提示词。
  • 出图前必须先写入 prompt 文件,包含文件名、用途、放置位置、核心文案、完整 prompt、alt text、风格和依赖素材。
  • 必须先生成一张样张,优先封面图;用户确认前不得生成剩余图片。
  • 样张确认后,每张图按一个 job / 一次请求 / 一次 QA 推进;运行环境支持子 agent 时,可以一图一个子 agent 并发。
  • 不要只生成一张大长图替代所有配图。
  • 每张图必须有独立主题例如封面图、活动总览图、时间线图、重点规则图、交易法图、避坑图、FAQ 图。
  • 银行、券商、支付品牌、卡组织或支付网络 Logo 只要已由官方材料、用户素材或用户明确口径核对正确,就可以作为辅助识别出现;用户未提供素材时,应主动尽力从官方活动页、条款 PDF、品牌资源页、官网 / App 截图等来源查找准确 Logo。无法核对时使用通用符号。
  • 出现信用卡、支付卡、卡组织、支付网络或机构 Logo 时,必须按官方材料或用户素材核对,并在 prompt、manifest 或 deck_spec.json 记录参考素材、卡组织、allowed_brand_marksbrand_mark_sources;不得把银联 / UnionPay 画成 Mastercard、Visa 等其他卡组织。
  • 第三方 Logo 必须尺寸克制、位置辅助,不能抢占、替代或压过 MAOMOMO 主标识。
  • 不得伪造真实 App 截图。
  • prompt 中的视觉风格只能写成后台画面描述,不要写容易被模型照抄的中文风格标签;可见文字只允许出现指定业务文案、MAOMOMO 和已核对允许出现的品牌 / 支付标识。
  • 生成图应明确是 MAOMOMO 示意图 / 信息图,不伪装成真实截图或官方页面。
  • 生成后的原始最终图先保存到 origin_image/,通过 QA 后同步到 assets/,并插入 Markdown。
  • 港币金额在发布稿、图片文案、prompt、manifest 和 deck_spec.json 中统一写 HKD,来源原文抽取文件除外。
  • 图片文件名使用稳定英文小写命名,并包含主题前缀,例如 hsbc-mastercard-alipay-campaign-01-cover.png
  • 不要使用中文文件名或缺少主题前缀的通用文件名作为最终 assets 文件名,避免站点路径兼容和多文章混淆问题。
  • 不要用 Playwright、HTML/CSS、SVG、Pillow、canvas、本地拼贴或手工覆盖文字替代 GPT Image2 / 图片 API 生成最终配图。

图片生成偏差处理

  • 每张图应独立生成高清 PNG不要主动生成一张拼图再裁切。
  • 如果图片工具意外只返回一张拼图或长图,应视为不合格结果。
  • 除非用户接受临时方案,否则应重新生成独立图片。
  • 若临时裁切拼图,必须明确说明这是临时补救,并尽快补独立版本。
  • 用户要求加入参考图元素时,应把参考图作为视觉元素来源,但不要复制真实卡号、个人信息或伪造 App 截图。

禁止半成品交付

以下都属于半成品,除非用户明确只要求这样做:

  • 只输出文章正文,不给 .md 文件。
  • 只输出配图提示词,不生成图片文件。
  • 只生成图片,不插入 Markdown。
  • 只生成一张总图,不生成多张独立配图。
  • 只给 assets不打 ZIP。
  • 只给一段新增内容,不输出更新后的完整文章。
  • 只给旧文件链接,没有确认文件内容已更新。
  • 修改了正文,但没有同步更新标题、摘要、配图清单、来源区和 ZIP 包。
  • 用户要求“输出完整文章”时,只输出新增片段。
  • 用户要求“打包给我”时,只给 Markdown 或只给图片。

当用户说“输出完整文章”“别只给一段”“打包给我”“文章和配图一起”时,必须交付完整文件,而不是片段。

改稿更新检查

用户在已有文章上连续修改时,执行最小变更并同步验证。

  1. 先定位用户指定范围标题、TLDR、某节、某句、某几个字、图片、来源区或附件。
  2. 只修改指定范围;不要因为用户说“删掉 X”就删除整条信息。
  3. 若修改影响编号、目录、图片 alt、来源区或 ZIP才同步更新相关部分。
  4. 修改完成后读取相关片段验证,而不是只凭替换命令结果回复。
  5. 最终回复只说明改了什么,不要重复发送不必要附件。

更新任务规则

当用户在已有文章基础上提出修改,例如“删掉 One+”“增加 BOXX 交易法”“不要用 Week”“输出完整文章”“再打包”

  1. 不要只输出修改片段,除非用户明确要求“只给新增段落”。
  2. 默认更新完整 Markdown 文件。
  3. 如果修改影响配图或配图清单,必须同步更新对应图片引用和 assets 文件名。
  4. 如果用户要求文件或打包,必须重新生成 ZIP。
  5. 最终回复给出最新 Markdown 和 ZIP 链接,避免继续给旧文件。

最终交付前检查清单

交付前必须逐项确认:

  • Markdown 文件已生成。
  • outline.md 已按用户确认版本保存。
  • prompts/ 中每张图的 prompt 文件已保存,且与最终图片数量和顺序一致。
  • 一张样张已确认,后续图片继承同一生图后端和视觉系统。
  • slide_jobs.json / slide_run_state.json 已记录图片任务状态;如缺少记录,最终回复必须说明原因。
  • origin_image/ 中最终原始图片存在。
  • assets/ 目录已生成。
  • 已运行 uv run python scripts/maomomo_check_markdown_assets.py article/article.md 或等效脚本,确认所有 Markdown 图片路径都能对应到真实图片文件。
  • 图片是多张独立 PNG不是一张大图代替全部。
  • 图片文件名包含文章主题前缀,未沿用旧文章文件名。
  • 图片可见文字没有出现风格标签、prompt 描述、额外 slogan 或无关文案;除业务文案、MAOMOMO 和已核对允许出现的品牌 / 支付标识外,没有多余文字。
  • 图片日期、金额、公式、卡组织 / 支付网络 / 机构 Logo 和禁用分支都已核对。
  • 用户未提供 Logo / 卡面素材时,已尽力查找准确标识,并在 sources/、prompt、manifest 或 deck_spec.json 记录素材来源和核对结论;无法核对时没有凭记忆画真实 Logo。
  • 第三方 Logo 没有抢占、替代或压过 MAOMOMO 主标识。
  • 发布稿、图片文案、prompt、manifest、deck_spec.jsonspeech.md 中港币金额统一使用 HKD
  • 文末来源区只包含实际使用的来源。
  • 正文没有 contentReferenceoaicite、调试标记或工具残留。
  • 用户要求删除的分支,标题、正文、配图清单和来源区都已删除干净。
  • ZIP 包已创建。
  • 用户最后确认的标题是否已同步到 frontmatter 和 H1。
  • 用户要求删除的词是否只删除指定词,未误删整条信息。
  • 正文是否残留编辑指令或模型解释。
  • 用户不喜欢的模糊词,例如“更像”“可能”“大致”,是否已按上下文清理。
  • 用户提供的明确实测结论是否写成确定语气,未被改软成“可能 / 疑似 / 大概”。
  • 用户提供的“以往惯例 / 过往尿性 / 过往经验”是否写成“大概率 / 按过往案例判断”的强概率语气,并保留合理边界。
  • TLDR 是否过长,是否适合当前平台。
  • 小红书图是否为 9:16 竖版,是否每张都有 MAOMOMO 标识。
  • 图片是否匹配最终文章口径,未残留旧规则、旧金额、旧标题。
  • 邮件/聊天附件是否按用户要求选择 ZIP 或多个独立附件。
  • 若已发送过旧版本,最终回复要明确这是最后版本,避免重复发同一批图片。
  • 最终回复包含 Markdown 下载链接和 ZIP 下载链接。