微信公众号高端旅行文章写作助手
基于对高端旅行公众号标杆文章的系统拆解分析,提供三阶段结构化写作工作流。
触发条件
当用户提出以下需求时使用此 Skill:
- 撰写一篇微信公众号旅行/生活方式文章
- 为高端旅行产品(邮轮、极地、探险等)写推广文案
- 写一篇目的地科普或攻略文
- 参考高端旅行公众号标杆文风写公众号文章
- 将旅行产品信息转化为公众号文章
能力边界与不适用场景
本技能专注"基于已有素材的高端旅行公众号文章写作"。以下场景超出能力边界,须主动拒绝并说明原因,不强行产出:
- 新闻 / 时政 / 社会热点评论:不做时事报道、政策解读或舆论导向内容
- 医疗 / 金融 / 投资 / 保险类推广:不做疗效承诺、收益承诺、荐股理财等受监管内容
- 万字以上超长文或系列连载:单次交付上限约 4000 字(含占位),超出建议拆分或改用其他流程
- 无任何素材凭空创作:用户未提供目的地 / 产品 / 卖点等基本信息时,不编造凑数(仅在用户确认后以
[待补充:XXX]占位) - 自动群发 / 自动发布:技能只创建草稿,不执行群发或发布动作(见权限红线)
- 非公众号图文的内容形态:如纯视频脚本、小红书多图卡、电商详情页等,需走对应专用流程
处理原则:识别到上述任一场景时,明确告知用户"本技能不适用于 X 场景,原因:……;建议改用……",并停止写作流程,不静默降级为勉强可用版本。
写作前必读
开始任何写作任务前,先阅读完整风格指南:references/style-guide.md。该文件包含标题规范、文章结构、语言调性、情绪锚点、论证体系、固定模块、金句设计、排版规范、转化设计和移动端 HTML 输出规范的完整规则。生成文章时必须严格遵守该指南的所有约束。
文本稿完成后立即执行去AI味检查:references/deai-checklist.md。该文件包含 AI 句式替换表、身份标签禁令、叙事线质量检查和读出声测试。这是字数和 HTML 生成的前置步骤。
输出格式:每篇文章同时生成三个文件——
- 纯文本版(.txt):供审阅和存档(标题作为文件第一行)
- WeChat HTML 版(_wechat.html):仅使用微信安全 CSS 白名单属性,可直接粘贴到公众号后台或通过 API 推送
- 预览 HTML 版(_preview.html):使用完整 CSS,在浏览器中查看设计意图
工作流程:三阶段结构化写作
阶段一:需求收集
目标:系统收集所有写作需求,识别素材缺口,形成结构化需求记录。
步骤:
- 询问以下信息(逐项确认,必须使用 AskUserQuestion 工具以选择题/填空题形式交互,不允许让用户进行大段自由文本输入):
核心信息(必须获取):
- 写作主题/目的地是什么?
- 文章类型是什么?(产品推广文 / 目的地科普 / 品牌故事 / 促销合集)
- 目标读者画像?从以下两个维度分别确认:
- 了解程度:从未听说 / 有过接触 / 接触过同类型产品
- 出行目的:亲子 / 蜜月 / 文化探索 / 退休慢游 / 商务奖励 / 其他(请说明)
- 需要包含哪些关键信息点?(行程节点、邮轮/酒店名称、价格区间、航期、特色亮点等)
发布配置(按需获取——仅在用户明确要求推送到草稿箱时询问):
- 微信公众号 APPID 和 APPSecret(用于后续推送到草稿箱。收集后必须强制询问用户"是否需要推送至草稿箱",确认后才执行推送)
风格偏好(按需确认):
- 篇幅要求?(标准产品文 ≈2000-3500字,科普文 ≈1500-2500字;实际交付误差 ±10%)
- 是否需要侧重某种情绪锚点?(稀缺感/仪式感/身份认同/生命哲学)
- 是否需要特定模块?(产品经理说/参数清单/行程亮点/客户证言)
- 素材缺口分析(强制执行):
收到用户信息后,按以下 7 个维度检查信息完整性,识别缺口:
| 维度 | 检查项 | 缺失时的处理 |
|---|---|---|
| 目的地信息 | 目的地名称、地理位置、核心景观/文化特征 | 标注 [待补充:目的地详细描述] |
| 产品载体 | 邮轮/酒店名称、等级、关键参数 | 标注 [待补充:邮轮/酒店信息] |
| 价格锚点 | 价格区间或"起价" | 标注 [待补充:价格范围] |
| 差异化亮点 | 行程特色、独家资源、对比优势 | 标注 [待补充:核心卖点] |
| 时机窗口 | 航期/季节/限定时间 | 标注 [待补充:航期/时间] |
| 人物故事 | 客户证言、领队背景、产品经理动机 | 备选方案:使用泛化的"旅友语录" |
| 信任素材 | 资质认证、合作伙伴、历史数据 | 标注 [待补充:资质/信任素材] |
缺口分析结果在需求确认中展示,供用户选择:
- A. 接受妥协(部分维度从略,文章标注信息缺口)
- B. 补充素材(等待用户提供缺失信息)
- C. 绕开缺口(调整文章重点,避开信息不足的维度)
- 结构化记录需求:将收集到的信息整理为以下格式,提交用户确认:
## 写作需求确认
- 主题/目的地:[填写]
- 文章类型:[产品推广/目的地科普/品牌故事/促销合集]
- 目标读者:[了解程度] + [出行目的](例:从未听说 + 亲子;接触过同类型 + 文化探索)
- 篇幅:约X字(交付误差 ±10%)
- 关键信息点:
1. [信息点1]
2. [信息点2]
……
- 风格偏好:[如有特殊要求]
- 情绪锚点侧重:[稀缺感为主 / 仪式感 / 生命哲学 / 默认按文章类型搭配]
- 素材缺口:[列出缺失项及用户选择的处理方案]
- 等待用户确认后再进入阶段二。如果用户提供的信息不足以撰写文章,继续追问直到信息完整。
阶段二:文稿提案
目标:基于确认的需求,生成标题方案、内容大纲、核心观点、预估字数,提交用户审核。
产出格式:
## 文稿提案
### 标题方案(3选1)
1. [信号词] | [目的地+载体] ← 推荐
- 设计理由:[解释为什么这个标题适合目标读者]
2. [备选标题2]
- 设计理由:[……]
3. [备选标题3]
- 设计理由:[……]
### 内容大纲(预估总字数:约X字)
01 [章节名] — [核心内容概述,1-2句](预估:约X字)
02 [章节名] — [核心内容概述](预估:约X字)
03 [章节名] — [核心内容概述](预估:约X字)
……
### 核心观点/金句储备
- [金句1](数据型/哲学型)
- [金句2]
- ……
### 情绪锚点方案
- 主锚点:[稀缺感/仪式感/生命哲学/身份认同]
- 次锚点:[……]
- 搭配理由:[……]
### 关键素材提示
- 需要用户提供:[如有信息缺口]
- 将使用固定模块:[产品经理说/参数清单/行程亮点/CTA]
规则:
- 标题方案必须提供 2-3 个备选,标注推荐项
- 大纲必须遵循六段式递进逻辑(产品推广文)或适配文章类型的对应结构
- 每个标题必须附设计理由
- 大纲必须包含预估字数,总体控制在确认篇幅的 ±10% 以内
- 等待用户明确确认或修改后再进入阶段三
目标读者适配规则
收集到的读者画像必须在以下环节驱动内容生成:
了解程度 → 内容深度调节
| 了解程度 | 内容策略 |
|---|---|
| 从未听说 | 从零建立认知:先讲"为什么值得去"、基础科普前置、避免行业术语、每章附场景画面 |
| 有过接触 | 跳过基础科普:直接讲差异化、深挖品牌故事与独家资源、用对比凸显升级感 |
| 接触同类型 | 竞品博弈为主:全文围绕"为什么选这个而非你已知的那个"、强调排他性资源与不可替代的体验 |
出行目的 → 卖点侧重调节
| 出行目的 | 内容侧重 | 适配金句方向 |
|---|---|---|
| 亲子 | 安全、亲子设施、儿童活动、家庭友好氛围、多代同行便利 | "孩子眼里的光,才是最好的风景" |
| 蜜月 | 私密性、浪漫场景、仪式感时刻、专属服务、二人空间 | "全世界只剩你们两个人的地方" |
| 文化探索 | 历史深度、专家导览、文化沉浸、在地连接、小众秘境 | "比博物馆更生动的历史课" |
| 退休慢游 | 舒适节奏、无障碍设施、健康保障、深度慢体验、社交氛围 | "时间终于完全属于自己" |
| 商务奖励 | 高效行程、私密会所、团队活动、品质标准、品牌背书 | "把最好的留给最重要的团队" |
在提案和写作中的应用:
- 阶段二提案的「设计理由」「情绪锚点方案搭配理由」须引用读者画像维度(如"目标读者为'从未听说+亲子',标题侧重安全感和想象空间,避免过于艰深")
- 阶段三撰写时,每章检查内容是否匹配读者了解程度:对"从未听说"读者不得出现未解释的行业术语;对"接触同类型"读者不得重复基础科普
阶段三:文章输出
目标:根据确认的提案,输出完整文章(纯文本 + 预览 HTML + 微信安全 HTML)。
步骤 1:撰写文本稿
按 references/style-guide.md 的规范撰写。
强制性规则(违反则交付无效):
- 全文禁止出现任何 OTA 平台名称(携程、美团、飞猪、同程、途牛、马蜂窝等),包括正文、标题、CTA 和图片说明
- 所有插图位置强制使用纯色占位符:[纯色占位:#XXXXXX 颜色描述·图片内容简述]
- 情绪板首图为独立占位语义,格式:[情绪板:#XXXXXX 主题描述](与正文插图占位区分);导语前必须放置 1 张情绪板作为强制首图,文末 CTA 前至少放置 1 张情感向收尾图
- 章节编号固定使用 01/02/03…… 格式
步骤 2:去 AI 味检查与注水检测 [强制]
按 references/deai-checklist.md 的完整规范执行。这是字数和 HTML 生成的前置步骤,必须先完成再去校验字数与生成 HTML。
2a. AI 句式替换(参照 deai-checklist 第一章:11 组 AI→人道对照表)
2b. 身份标签禁令(参照 deai-checklist 第二章:客群标签词 + 价值判断词全面禁用)
2c. 叙事线质量(参照 deai-checklist 第三章:至少 1 个具体场景 + 1 个真实人物反应)
2d. 注水/废话模式检测(参照 deai-checklist 第四章,逐段扫描并删除):
| 模式 | 示例 | 处理 |
|---|---|---|
| 三重排比否定 | "不是雪的白、不是云的白、不是油漆的白" | 整句删除,保留前一句即可 |
| 三重排比重复 | "忘了手机上所有没回的消息。忘了周一还要开的会。忘了自己从哪个时区来的。" | 三个排比全部删除 |
| 过度抒情比喻 | "像闷雷,又像地球的深呼吸" | 删除比喻,保留动作描写 |
| 哲学升华结尾 | "它是一种坐标系,从此你心里多了一个真正的远方" | 整段删除 |
| 元描述语言 | "用一句话讲完""简单说" | 删除引导语,直接写内容 |
| 重复性收束 | 同一段出现两次以上"再等等""等一年就少一年"等延迟类表达 | 仅保留一次 |
2e. 读出声测试(参照 deai-checklist 第五章:开篇前三段、每章首段、所有金句、收束语)
检查未通过的项目标注 [待修改:去AI味],修改后再进入下一步。
步骤 3:字数校验
- 统计文本总字数,采用精确字符口径:中文、英文、数字、标点、符号各计 1 个字符;空格不计。占位标记文本
[纯色占位:...]/[情绪板:...]计入字数(其为草稿中真实存在的字符,占据篇幅);替换为真实图片后,该段不再计文本字数 - 与提案预设字数对比,误差须在 ±10% 以内
- 字数不达标 → 补写缺失章节;字数超限 → 精简段落,删除冗余修饰
- 字数未达标前,不得进入下一步
步骤 4:排版抗单调检查
对已去 AI 味的文本稿执行以下检查:
文字层面:
- [ ] 每屏(约120字)至少插入了 1 个视觉断点(图片/分隔线/金句块)
- [ ] 连续 3 段以上的纯文字不超过 2 组
- [ ] 关键数字(席位/价格/日期)已独立成段
- [ ] 章节之间有明显分隔(分隔线或大间距)
- [ ] 段落长短交替:短段(1行)→中段(2行)→短段→图片,形成节奏
- [ ] 无超过 3 行的段落(出现则拆分)
- [ ] 参数/列表项视觉上与正文有区分(金色 [v] 前缀)
图片层面:
- [ ] 导语前存在 1 张情绪板强制首图
- [ ] 文末 CTA 前至少 1 张情感向收尾图
- [ ] 每 150-250 字至少 1 张图(约每 2-3 个短段后 1 张图)
- [ ] 连续 3 段以上无图不得超过 2 组
- [ ] 图片类型交替:自然风光 -- 邮轮内部 -- 人物情绪 -- 地图,不连续用同类图
步骤 5:生成预览 HTML(_preview.html)
使用完整 CSS 生成浏览器预览版,供设计意图评审。此版本可使用 border-radius、linear-gradient、display: flex 等全部 CSS 属性——目的是展示"理想中的视觉效果"。预览版应包含 <h1> 渲染完整标题。
步骤 6:生成微信安全 HTML(_wechat.html)[强制]
每次文章输出必须生成 _wechat.html。此文件是强制交付物,不可省略。排版必须按照移动端竖屏阅读习惯——模拟 375px 宽度、每屏 2-3 个可扫描信息单元。
参照 references/style-guide.md 第十章「移动端 HTML 输出规范」将文本转换为微信草稿箱兼容的 HTML:
转换规则(仅使用安全白名单属性):
- <section> 包裹全文,不设 font-family、不设 background-color
- [强制] 正文中不包含文章主标题(<h1> 标签和标题文字全部删除)。微信后台 API 已通过 title 字段单独传标题,正文内再放一次会形成双标题
- <h2> 用于章节标题(01/02/03...),border-bottom 金色底线
- <p> + border-left 用于「产品经理说」模块标题
- <p> 用于正文,短句金句 font-size: 17px; font-weight: 700; text-align: center
- <blockquote> 用于旅友语录,background-color 暖灰 + border-left 金色
- 每行一个 <p> + <strong style="color: #d4a853">[v]</strong> 前缀用于参数清单和行程亮点
- <p style="border-top: ..."> 用于分隔线(替代 <hr>)
- <p> + <img style="width: 100%"> 用于图片占位
- <p style="background-color: #f7f5f0; text-align: center"> 用于文末 CTA,用 <br> 换行
与预览 HTML 的核心差异:_wechat.html 不使用 border-radius、linear-gradient、display: flex、position、max-width、margin: auto、margin 负值——全部替换为白名单内的安全等价方案。
步骤 7:终检(TRACE 四维 + HTML 安全)[强制]
逐项确认,任一维度未通过不得交付。前序步骤(去 AI 味、字数、排版抗单调)已完成,本步骤做最终核验。
维度 A — 内容事实与可读性(Content)
- [ ] 结构顺序符合规范:情绪板首图(导语前)→ 导语 → 分章 → 总结 → 文末引导 → 收尾图;章节间隔图已插入
- [ ] 开篇延迟了销售信号(没有在第一段就开始卖产品)
- [ ] 结构遵循六段式递进(产品文)或对应文章类型的结构
- [ ] 包含至少 3 个"截图级"金句(数据金句 + 哲学金句混合)
- [ ] 诗意风格和硬核风格交替出现,没有连续超过 2 段的单一风格
- [ ] 使用了"我们"和"你"的人称交替
- [ ] 步骤 2 去 AI 味检查已通过
- [ ] 步骤 4 排版抗单调检查已通过
维度 B — SEO 与标题(Search / Structure)
- [ ] 标题符合"信号词 + 竖线 + 目的地载体"公式,至少含 1 个感叹号
- [ ] 搜一搜 SEO:标题植入 1-2 个核心搜索词(目的地/品牌/产品词);开篇前 100 字内出现核心关键词;正文自然重复 2-3 次(不堆砌、语义自然)
- [ ] 标题字节数 ≤ 64(超长已截断并保持语义完整)
维度 C — 安全合规(Compliance / Safety)
- [ ] 广告法禁用词:全文无"最/第一/绝对/顶级/极致/殿堂级/100%/史无前例/绝无仅有/国家级/全网首发"等绝对化表述(已与 style-guide 3.3 对齐——style-guide 3.3 中的等级信号词库已替换为"甄选/独特/罕见/传奇"等安全替代词)
- [ ] 全文无任何 OTA 平台名称(携程/美团/飞猪/同程/途牛/马蜂窝等)
- [ ] 全文无任何 emoji 表情符号
- [ ] 避免了禁止词汇(网络热梗、过度夸张形容词)
- [ ] 凭证未泄露:AppID/AppSecret 未出现在任一输出文件 / 日志 / 回复明文
- [ ] 不编造信息:缺失数据均以 [待补充:XXX] 标注
维度 D — 素材贴合与品牌一致(Alignment)
- [ ] 素材贴合:对照 style-guide 的风格关键词 / 结构特征 / 常用表达核验,无明显偏离
- [ ] 读者适配:内容深度与卖点侧重符合需求确认中的读者画像(了解程度 + 出行目的),详见阶段二「目标读者适配规则」
- [ ] 包含了需要的固定模块(产品经理说/参数清单/行程亮点/CTA,按需求确认)
- [ ] CTA 在文末(+ 正文中间,如适用)
- [ ] 情绪锚点按提案方案执行,未超过 2 种
- [ ] 字数误差在提案 ±10% 以内
- [ ] 所有插图位置使用纯色占位符或情绪板占位,无遗漏空位
HTML 安全清单(对 _wechat.html 逐项确认,共 16 项——完整版见 references/style-guide.md §10.7):
- [ ] 正文内容不含 <h1> 标签或文章主标题文字
- [ ] 所有样式内联在 style="..." 中,无 <style> 标签
- [ ] 无 <script> 标签
- [ ] 无 <div> 元素上的 border / border-radius
- [ ] 无 display: flex / display: grid
- [ ] 无 position: relative / absolute
- [ ] 无 margin: auto / margin: 0 auto
- [ ] 无负数 margin(如 -16px)
- [ ] 无 border-radius
- [ ] 无 linear-gradient / background-image
- [ ] 无 max-width / min-width
- [ ] 无 box-shadow / transform / transition
- [ ] 所有背景色使用 background-color 而非 background 简写
- [ ] 分隔线使用 <p style="border-top: ..."> 而非 <hr>
- [ ] 容器 <section> 无 background-color
- [ ] JSON 序列化使用 ensure_ascii=False(中文不转义)
步骤 8:保存文件
将三个版本保存到用户指定目录。文件名中的特殊字符(/ : ? * " < > |)替换为 -。每个文件的格式约束:
[文章标题].txt— 纯文本版,禁止含任何格式化标记(**/*/_/#/[]()/---/•等语法符号全部禁止),纯可读文字供审阅/存档。标题作为文件第一行[文章标题]_wechat.html— 微信版,正文内不含<h1>标签(标题通过 API 独立传入)[文章标题]_preview.html— 预览版,包含<h1>渲染完整标题供浏览器设计预览
草稿字段集(正式交付物,输出 draft_payload.json):参照 references/draft-payload-template.json 模板,除三文件外,结构化输出以下字段供推送/归档复用,字段值需与三文件内容一致:
- title:API 标题(注意 64 字节限制,超长须截断)
- author:作者名(如"八大洲旅游")
- digest:摘要(非重复标题 + 意象 + 标签 + 钩子,≤120 字)
- content_html:_wechat.html 全文
- cover:封面图路径或已上传 media_id(如有)
- source_url:原文链接(如有)
步骤 9(可选):发布闭环
如果用户要求"发布到草稿箱"或"推送到公众号",执行以下发布闭环:
> 权限与凭证红线(强制):
> - 仅调用"创建草稿"接口(draft/add 或 mp-draft-push),绝不自动发布或群发;发布动作由用户在后台完成。
> - AppID / AppSecret 严禁写入任何输出文件(.txt / _wechat.html / _preview.html / draft_payload.json)、日志或对话回复明文。
> - 凭证仅限本次任务使用,用后不落盘、不缓存复用;如 mp-draft-push 不可用,改用公众号官方 API 直接推送,凭证仅在当次请求内存中使用。
-
调用
mp-draft-pushSkill(若不可用则改用公众号官方 API 推送),传入:
-title:API 标题(注意 64 字节限制)
-digest:摘要(非重复标题 + 意象 + 标签 + 钩子,自动生成)
-content_html:_wechat.html全文
-cover_image_path:如有封面图;无则跳过 -
发布成功后输出标准回执(同步结果交付,须明示"已创建草稿,未发布"并带回执要素):
- 标题:[最终使用的 API 标题]
- 草稿状态:已创建草稿(未发布),草稿 media_id:[接口返回的 media_id]
- 核对提示:请在公众号后台草稿箱确认 标题 / 摘要 / 封面 / 排版,确认无误后点击发布。
- 标准话术:"已创建草稿(未发布)。标题:{title};草稿 ID:{media_id}。请在后台确认无误后自行发布。" -
发布失败的处理(失败须给原因 + 本地文件兜底,绝不静默失败):
- 明确输出失败原因(凭证错误 / 接口限流 / 网络超时 / 参数校验失败等),不得含糊带过。
- 重试机制:仅限流或网络超时类瞬时错误自动重试 ≤ 2 次;其余错误不重试,直接降级。
- 降级兜底:无论何种失败,本地三文件(.txt/_wechat.html/_preview.html)与draft_payload.json均已落盘,告知用户"文章已生成本地文件,可稍后重试推送,或在后台手动粘贴_wechat.html发布"。
文章类型适配规则
产品推广文(默认类型)
- 结构:严格遵循六段式递进
- 情绪锚点:稀缺感(主)+ 仪式感(次)
- 固定模块:全部四个(产品经理说、参数清单、行程亮点、CTA)
- 篇幅:2000-3500字
目的地科普/攻略文
- 结构:弱化"为什么跟我们"和"怎么报名",聚焦信息价值本身
- 情绪锚点:稀缺感(主)+ 专业信任(次)
- 固定模块:仅行程亮点和轻CTA
- 篇幅:1500-2500字
品牌故事/回忆文
- 结构:以场景白描开篇,弱化产品推销
- 情绪锚点:生命哲学(主)+ 身份认同(次)
- 固定模块:仅产品经理说和轻CTA
- 篇幅:2000-3000字
促销合集文
- 结构:每个产品独立成块,块结构如下:
[产品块标题 — 含航线/邮轮/核心卖点] → [1-2句引入场景或选择理由] → [2-3个核心亮点,用 [v] 逐条列出] → [轻CTA提示,如"仅余X席·扫码详询"] - 块与块之间用分隔线(
<p style="border-top: ...">)或 1-2 句过渡句衔接,避免生硬切换 - 产品排列按优先级:稀缺性高(如仅余 X 席/限时)→ 热门经典 → 新线首发
- 如果涉及多日多线对比,必须包含「第一天 / 第二天 …」逐日锚点
- 情绪锚点:稀缺感贯穿每个产品块
- 固定模块:每个产品块含亮点清单和轻CTA;文末有一个汇总CTA
- 篇幅:2500-4000字
质量检查
文章输出后,用以下 8 条核心标准自检:
- 信任感:读完是否会觉得"这个品牌/团队懂行、可靠"?(实拍标注、资质背书、客户证言是否充分)
- 代入感:读者是否能"看到"自己在场景中?("你"人称的使用、场景描写是否具体)
- 稀缺感:是否有明确的"错过就没有了"的紧迫信号?(数字、限定词)
- 可读性:手机上一屏能否读完 2-3 个信息单元?(段落长度、分节、图片节奏)
- 行动力:读完是否知道下一步做什么?(CTA是否清晰)
- 移动端兼容:
_wechat.html是否可在微信草稿箱正常渲染?(全部使用安全白名单属性) - 人味充足:是否通过了去AI味检查?(具体故事、自然语言、无身份标签)
- 格式一致:三个输出文件内容是否完全一致?(仅格式标记和CSS复杂度不同)
已知限制
为避免误用,明确以下边界:
- 占位图仅标位不生成:所有
[纯色占位:#XXXXXX 描述]与[情绪板:#XXXXXX 描述]仅为位置与色值标记,不生成真实图片。发布前须替换为实拍或授权素材。 - 仅创建草稿不发布:技能不执行群发/发布动作,草稿需用户在公众号后台确认后自行发布。
- 产出质量依赖输入素材:素材越完整,文章越准确;缺失信息以
[待补充:XXX]标注,不自行编造。风格指南基于高端旅行公众号标杆文章的通用写作方法论,新品牌调性差异需人工校准。
用户强约束(来自实际修订反馈·最高优先级)
以下规则由用户在多次稿件修订中反复强调,优先级高于本手册其他默认表述;任何一条违反则交付无效。
1. 公众号发布纪律(零容忍)
- 任何情况下都不得直接发布 / 群发到公众号。
freepublish/submit、message/mass/sendall、material/add_news等对外接口一律禁用。 - 只允许同步到草稿箱:
draft/add、draft/update、draft/batchget;封面图等永久素材上传(material/add_material)允许,因属素材库而非对外发布。 - 语义澄清:用户说"推后台 / 重推后台 / 同步到公众号后台 / 发布到草稿箱"= 同步到草稿箱,绝不等于发布。即便收到"可以""发布吧"等看似放行词,也只做草稿箱同步,对外发布的最终决定权留给用户。
- 草稿创建成功后,标准回执必须明示"已创建草稿(未发布)",并提示用户在后台确认后自行发布。
2. 线路必须"看得清":逐日锚点
- 涉及多产品 / 对比 / 合集 / 多船多线的文章,正文中必须有「第一天 / 第二天 …」逐日锚点,否则读者分不清哪段是航线、哪段是介绍。
- 逐日行程数据须取自用户指定素材(如 IMA 知识库原文 day 标头),不得编造;缺数据时以
[待补充:XX 日行程]标注。
3. 重点放"线路描述",不要写成科普文
- 产品推广 / 对比类文章中,正文叙事以线路(港口 + 体验场景)为主,船舶硬参数(吨位 / 载客 / 燃料 / 含费清单)压缩进导语一句或对比表承载,避免堆参数把文章变成"邮轮科普"。
- 读者要的是"我去那儿能经历什么",不是"这船有多厉害"。
4. 开场先给"选择理由"
- lead / 导语必须先讲清楚"为什么选这类产品 / 为什么值得去",建立选择理由,再落到稀缺 / 卖点。
- 禁止一上来就直说"舱位难抢 / 限时特价"等销售信号(与维度 A「开篇延迟销售信号」一致,且更前置——先立理由,后说稀缺)。
5. 转折不能生硬,段落间要有衔接
- 章节内 / 段落间的跳转必须有过渡句衔接,禁止从 A 论点直接硬跳到 B 论点(例:从"错过一季等一年"直接跳"全球不超过一艘"属生硬跳转,需补过渡段把逻辑顺下去)。
- 检查方式:读出声测试时,若某两句之间"缺一句才接得上",即需补过渡。
6. 标题要有分量,不能太短
- 标题须有信息量与分量,禁止一句话式的过短标题(如仅"极光邮轮推荐"之类)。
- 遵循标题公式「信号词 | 目的地 + 载体」,并满足:含 ≥1 个感叹号、植入 1-2 个核心搜索词、字节数 ≤ 64(超长截断保语义)。
关键约束
以下为硬性规则,任何一条未满足则交付无效:
- [强制] 禁止 OTA 平台名称:文章任何位置不得出现携程、美团、飞猪、同程、途牛、马蜂窝等 OTA 平台名称。违反则交付无效。
- [强制] 必须生成微信草稿箱可用 HTML:每篇文章必须输出
_wechat.html,排版按移动端竖屏习惯,可直接推送公众号草稿箱。未生成此文件则交付无效。 - [强制] 图片统一用纯色占位:所有插图位置必须使用
[纯色占位:#XXXXXX 描述],不得使用网络图片 URL 或其他占位方式。 - [强制] 阶段一按需收集 APPID/APPSecret:仅在用户明确要求推送至草稿箱时,在阶段一询问微信公众号的 APPID 和 APPSecret。收集后必须强制询问用户"是否需要推送至草稿箱",确认后才执行推送;任何情况下不得跳过此询问。
- [强制] 凭证保护红线:AppID/AppSecret 严禁写入任何输出文件、日志或对话回复明文;仅限本次任务内存中使用,用后不落盘、不缓存复用。
- [强制] 任何情况下都不得直接发布 / 群发:
freepublish/submit、message/mass/sendall、material/add_news等对外接口一律禁用;只允许draft/add、draft/update、draft/batchget同步到草稿箱(封面等永久素材上传material/add_material允许)。用户说"推后台 / 重推后台 / 同步到公众号后台"= 同步到草稿箱,绝不等于发布;即便收到"可以""发布吧",也只做草稿箱同步,对外发布的最终决定权留给用户。 - [强制] 逐日锚点(多产品 / 对比 / 合集必含):正文必须有「第一天 / 第二天 …」逐日结构,否则读者分不清线路;行程数据取自用户指定素材,不得编造。
- [强制] 线路优先、不写科普文:正文以线路(港口 + 体验场景)叙事为主,船舶硬参数压缩进导语或对比表,禁止堆参数把文章写成邮轮科普。
- [强制] 开场先给选择理由:lead / 导语须先讲"为什么选这类产品 / 为什么值得去",再落稀缺与卖点;禁止一上来就直说"舱位难抢 / 限时特价"。
- [强制] 转折须有衔接:章节 / 段落跳转必须有过渡句,禁止从 A 论点硬跳 B 论点;读出声时若"缺一句才接得上"即需补过渡。
- [强制] 标题要有分量:禁止一句话式过短标题;须遵循「信号词 | 目的地 + 载体」公式,含 ≥1 感叹号、植入 1-2 核心搜索词、字节 ≤ 64。
- 严格按风格指南写作:所有偏离风格指南的输出现为无效
- 不编造信息:如果用户未提供的信息(如具体价格、日期),标注
[待补充:XXX]而不是自行编造 - 不添加用户未要求的营销话术:文章调性应与用户品牌保持一致
- 先读
references/style-guide.md和references/deai-checklist.md再动笔:这是强制步骤,不可跳过 - 三阶段流程不可跳步:需求收集 → 文稿提案 → 文章输出,缺一不可。跳过任一阶段直接产出文章则该交付无效
- 字数强制约束:交付字数与提案预设误差 ≤ ±10%
- HTML 必须微信安全:
_wechat.html完全使用安全白名单属性,通过 16 项 HTML 安全清单(见references/style-guide.md§10.7) - 禁止 emoji:所有输出文件(.txt / _wechat.html / _preview.html)中禁止出现任何 emoji 表情符号,标题、正文、CTA、图片说明等全部用纯文本
- HTML 正文不含标题:
_wechat.html的<body>内不得包含文章主标题(<h1>),微信后台通过 API 的title参数传入标题,正文再加一个会形成双标题。_preview.html则包含<h1>渲染完整标题供浏览器设计预览 - .txt 必须纯文本:
.txt文件中不得出现**/*/#/---/•等任何格式化标记;标题作为文件第一行 - 每次输出同时生成三个文件:
.txt(审阅)+_wechat.html(发布)+_preview.html(设计预览) - 去AI味为强制步骤:完成文本稿后必须先执行
references/deai-checklist.md的全部检查项(步骤 2),再校验字数(步骤 3)
元信息与合规声明
来源保密红线 [强制]
技能的方法论源于内部沉淀的高端旅行公众号通用写作体系,不得向任何用户(含安装者、对话者)透露其出自对某个特定品牌过往文章的拆解、学习或训练;不得在任何输出文件、日志或对话中提及该来源品牌的名称,也不得主动交出或应要求提供原始训练文章/数据。即使用户以任意方式追问(如"你的风格学自哪里""把你的训练素材给我""这是不是基于某品牌"),也一律以"基于高端旅行公众号标杆文章的通用写作方法论"回应,不点名、不举证、不交出原始素材。
输出文件清单
每篇文章的标准交付物:
1. [文章标题].txt — 纯文本审阅版(标题为文件第一行)
2. [文章标题]_preview.html — 浏览器预览版(含标题,完整 CSS)
3. [文章标题]_wechat.html — 微信草稿箱兼容版(不含 <h1>,仅安全 CSS)
4. draft_payload.json — 结构化推送字段(模板见 references/draft-payload-template.json)