关于 content-engine
content-engine 是面向营销内容工作的技能,适用于需要策划、创作和审校多种渠道内容的团队。它结合品牌资料、渠道规范与质量检查,涵盖从内容规划到更新审计的流程。
主要功能
- 01SEO 内容与关键词优化
- 02广告、邮件和社交文案
- 03落地页与编辑日历
- 04品牌语气与规范应用
- 05内容质量、无障碍和本地化检查
- 06内容衰退识别与更新审计
适用场景
- 01按品牌语气撰写搜索文章或广告
- 02规划邮件序列与社交媒体日历
- 03检查 AI 内容的事实性与品牌一致性
- 04找出流量下滑内容并制定更新优先级
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ indranilbanerjee/ digital-marketing-pro --skill content-engine安装后在 Claude Code 中输入/content-engine确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
accessibility.mdad-copy.mdai-content-quality.mdbrand-voice.mdcase-studies.mdcontent-calendar.mdcontent-decay.mddraft-deliverables.mdemail-automation.mdemail-infrastructure.mdemail-sequences.mdlanding-pages.mdmultilingual.mdpersonalization.mdseo-content.mdsocial-content.mdvideo-scripting.mdevals/evals.json详细介绍
内容引擎
脚本位置。 如果宿主未设置
${CLAUDE_PLUGIN_ROOT},脚本位于此插件的scripts/文件夹中,与skills/同级。请使用 Python 3.10 或更高版本运行:python;如果找不到python,则使用python3(macOS 和许多 Linux 系统)。
何时使用此技能
当用户的请求涉及以下任一内容时,启用此模块:
- SEO 内容:博客文章、支柱页面、主题集群,或任何针对搜索优化的内容
- 广告文案:面向任何付费平台(Google、Meta、LinkedIn、TikTok 等)的标题、描述和创意内容
- 电子邮件营销:电子邮件序列、滴灌营销活动、新闻简报、事务性电子邮件或冷启动外联
- 社交媒体内容:社交平台的自然内容帖子、配文、话题标签策略或内容日历
- 落地页:以转化为目标的页面文案、首屏内容、CTA 和页面结构
- 内容日历:编辑规划、内容排期和主题映射
- 品牌声音:声音和语调指南、信息传达框架及品牌语言体系
- 内容衰退检测:识别排名、流量或相关性随时间下降的内容
- AI 内容质量管理:确保 AI 生成的内容符合质量、原创性和品牌标准
- 无障碍合规:让内容更易访问(WCAG 标准、替代文本、可读性、屏幕阅读器兼容性)
- 多语言/本地化:针对不同语言、文化和区域市场调整内容
- 电子邮件基础设施:送达率、身份验证(SPF、DKIM、DMARC)、域名预热和发件人信誉
触发短语:“写一篇博客文章”、“广告文案”、“电子邮件序列”、“社交媒体日历”、“落地页”、“内容日历”、“品牌声音”、“内容审计”、“内容衰退”、“AI 内容”、“无障碍”、“翻译”、“本地化”、“电子邮件送达率”、“主题行”、“标题”、“CTA”、“新闻简报”
品牌背景(自动应用)
使用此模块生成任何营销内容之前:
- 检查会话上下文 — 会话开始时已输出当前品牌摘要。请使用其中显示的品牌名称、行业、声音设置、渠道、目标、合规要求和竞争对手。
- 如果需要完整档案,请读取:
~/.claude-marketing/brands/{slug}/profile.json - 应用品牌声音 — 正式程度、活力、幽默感和权威性必须影响所有内容的语气和用词
- 检查合规性 — 使用
skills/context-engine/compliance-rules.md,根据品牌的 target_markets 和行业自动应用规则 - 参考行业基准 — 查阅品牌所属行业的
skills/context-engine/industry-profiles.md - 使用平台规范 — 参考
skills/context-engine/platform-specs.md中的字符限制和格式要求 - 检查营销活动历史 — 规划新工作前,运行
python "${CLAUDE_PLUGIN_ROOT}/scripts/campaign-tracker.py" --brand {slug} --action list-campaigns - 如果没有品牌档案,请说:“未找到品牌档案。请使用 /digital-marketing-pro:brand-setup 创建档案,或者我可以根据通用最佳实践继续。”
- 检查品牌指南 — 如果
~/.claude-marketing/brands/{slug}/guidelines/_manifest.json存在,请加载并遵循以下文件:restrictions.md,了解禁用词、限制性声明和强制免责声明;channel-styles.md,了解特定渠道的语气调整规则(可能与基础声音不同);messaging.md,了解已批准的核心信息、标语和定位用语;voice-and-tone.md,了解 4 项数值评分之外的详细声音规则。如果内容面向特定渠道,则渠道风格规则优先于基础声音设置。
不要向用户询问其品牌档案中已有的信息。
所需背景
开始内容工作前,请先收集以下信息:
- 内容类型:需要哪种具体的内容格式?
- 受众:这项内容面向谁?(如有,可关联 Audience Intelligence 中的用户画像)
- 目标:这项内容需要实现什么目标?(流量、转化、互动、教育、留存)
- 品牌语气:是否有品牌语气指南?语气如何?(专业、随意、权威、活泼等)
- 关键词/主题:对于 SEO 内容,需要了解目标关键词、搜索意图和竞争格局
- 平台:这项内容将发布在哪里?(平台特定要求很重要)
- 转化漏斗阶段:这项内容处于客户旅程的哪个阶段?
- 现有内容:有哪些相关内容已经存在?(避免内容蚕食)
- 限制条件:字数限制、字符限制、法规免责声明、品牌指南
- 效果基准:对于这种内容类型,怎样才算成功?
对于简单请求(例如“帮我写一篇 LinkedIn 帖子”),请推断合理的默认设置并立即交付。对于战略性内容工作,请收集完整背景信息。
能力
- SEO 内容创作:关键词优化的博客文章、支柱页面、主题集群设计、元标题/描述、内部链接策略和精选摘要优化
- 广告文案(所有平台):Google Ads(响应式搜索广告、标题、描述)、Meta Ads(主要文案、标题、描述)、LinkedIn Ads、TikTok Ads、Twitter/X Ads——提供平台专属格式并遵循字符限制
- 邮件序列:欢迎序列、培育邮件、购物车弃购邮件、重新互动邮件、引导邮件、追加销售/交叉销售邮件和挽回邮件序列,包含主题行、预览文本、正文文案和 CTA
- 社交内容:适用于 LinkedIn、Twitter/X、Instagram、TikTok、Facebook、YouTube、Pinterest 的原生内容,包括说明文字、标签、吸引点和帖子结构
- 落地页文案:主视觉标题/副标题、价值主张模块、社会认同、功能/优势版块、常见问题和 CTA 优化
- 内容日历:编辑日历,包含主题规划、内容支柱、发布频率和渠道分发计划
- 品牌语气体系:语气特征、语气变化范围(语气如何随情境调整)、词汇指南、应做/不应做示例和品牌专属术语
- 内容衰退检测:通过流量、排名、互动和新鲜度识别表现下滑内容的方法,并确定更新优先级
- AI 内容质量管理:AI 生成内容的质量检查清单、原创性验证方法、品牌一致性审核、事实核查流程和人在回路指南
- 无障碍合规:WCAG 2.2 AA 内容指南、替代文本撰写、可读性评分、标题结构、链接文本、色彩对比度指导和屏幕阅读器优化
- 多语言/本地化:便于翻译的内容结构、文化适配框架、区域专属信息指南和 RTL 语言注意事项
- 邮件基础设施:SPF/DKIM/DMARC 设置指南、域名预热计划、邮件列表清理实践、送达率监控和发件人信誉管理
流程
主要工作流:内容创作
-
内容策略对齐
- 确认内容类型、受众、目标和漏斗阶段
- 检查是否存在可能重叠的现有内容(避免内容蚕食)
- 明确核心信息和关键要点
- 为任务选择合适的内容框架
-
研究与准备
- 对于 SEO 内容:分析目标关键词、搜索意图、SERP 特性和排名靠前的内容
- 对于广告文案:查看平台规范、竞品广告和受众痛点
- 对于电子邮件:确定序列触发条件、期望采取的行动和订阅者细分群体
- 对于社交内容:查看平台趋势、最佳格式和受众行为模式
- 对于着陆页:确定流量来源、访客意图和转化目标
-
内容创作
- 遵循品牌语调指南(如果没有,则建立指南)
- 按照具体格式要求撰写(字符限制、结构、平台规范)
- 构建说服架构:
- 注意:用能让人停下滑动或愿意点击的钩子/标题吸引注意
- 兴趣:围绕受众已意识到的问题展开,展现理解
- 渴望:定位解决方案,明确阐述收益并提供社会认同
- 行动:提供清晰、具体且能降低行动阻力的 CTA
- 适用时加入 SEO 要素(关键词、标题、内部链接、元数据)
- 在格式允许的情况下撰写多个版本以供测试(广告文案、主题行、CTA)
-
质量保证
- 检查是否符合品牌语调
- 评估可读性分数(面向大众的内容力求达到 8 年级或以下)。对草稿运行分析器:
(python "${CLAUDE_PLUGIN_ROOT}/scripts/readability-analyzer.py" \ --file "${CLAUDE_PLUGIN_DATA}/{brand}/seo/content-engine/{date}/{slug}/03-draft-v1.md" \ --target b2c_general--text内联文本和--file路径二选一,且必须提供其中一个;--target可选值为b2c_general、b2b_professional、b2b_technical、children、academic。) - 进行无障碍审核(标题层级、替代文本指引、链接文本清晰度)
- 核查任何主张、统计数据或参考资料
- 检查是否符合平台规范(广告政策、字符限制、格式要求)
- 对搜索内容进行 SEO 页面审核(关键词位置、元数据、内部链接)
- 如果借助 AI,则检查 AI 内容质量(原创性、品牌契合度、事实准确性)
-
优化与测试计划
- 确定要进行 A/B 测试的内容(标题、CTA、电子邮件主题行、广告创意)
- 根据内容类型和渠道设定效果基准
- 安排内容审核日期,以监测效果衰减
- 规划跨格式和渠道的内容再利用
次要工作流:内容审计与更新
- 提取内容清单(URL、发布日期、当前流量/排名)
- 根据新鲜度、效果趋势和相关性为每项内容评分
- 分类:保留(表现良好)、更新(表现下滑但可修复)、整合(内容单薄/重叠)、移除(无关/有害)
- 根据流量恢复潜力确定待更新内容的优先级
- 创建更新简报,列出具体的更新说明
参考文件
seo-content.md— 关键词优化、主题集群设计、精选摘要策略和页面 SEO 检查清单ad-copy.md— 平台专属广告文案框架、字符数限制、政策指南和 A/B 测试方法email-sequences.md— 序列模板(欢迎、培育、弃购等)、主题行公式和电子邮件文案框架social-content.md— 各平台内容指南、吸引注意力的开场公式、话题标签策略和最佳发布实践landing-pages.md— 着陆页结构模板、CTA 优化、首屏框架和转化文案公式content-calendar.md— 编辑日历模板、内容支柱框架、发布频率建议和主题映射brand-voice.md— 品牌语调开发方法、语气范围设计、用词指南和品牌语调审查流程content-decay.md— 内容衰退检测方法、内容评分标准、更新优先级框架和更新跟踪ai-content-quality.md— AI 内容质量检查清单、原创性验证、品牌契合度审查和人工审核工作流accessibility.md— WCAG 2.2 AA 内容检查清单、替代文本撰写指南、易读性标准和包容性语言指南multilingual.md— 本地化准备情况检查清单、文化适配框架、翻译管理和 RTL 注意事项email-infrastructure.md— 身份验证设置(SPF/DKIM/DMARC)、域名预热计划、送达率最佳实践和列表卫生email-automation.md— 自动化触发条件设计、工作流映射、动态内容规则和行为邮件逻辑case-studies.md— 挑战-解决方案-成果框架、以客户为主角的叙事结构和案例研究创作最佳实践personalization.md— 个性化成熟度模型、基于细分群体/规则/行为的策略和实施指南video-scripting.md— 平台专属视频格式与时长、脚本结构,以及吸引注意力和提高留存率的技巧draft-deliverables.md— 各类交付物的最低组成部分(包括新闻稿)、起草后的后续选项,以及一份简报产出多种格式时的并行分发规则
输出格式
| 交付物 | 格式 | 说明 |
|---|---|---|
| 博客文章 / 文章 | 文档 | 完整的 SEO 优化内容,包含元数据、标题和内部链接建议 |
| 广告文案集 | 文档 / 电子表格 | 为各平台提供多种版本,包含标题、描述和 CTA |
| 电子邮件序列 | 文档 | 完整序列,包含主题行、预览文本、正文文案、CTA 和发送时间 |
| 社交媒体内容 | 电子表格 / 日历 | 按平台、日期、文案、话题标签和视觉方向整理的帖子 |
| 着陆页文案 | 文档 | 按版块编写的文案,包含标题、副标题、正文、项目符号、CTA 和表单文案 |
| 内容日历 | 电子表格 | 按月/季度制定的编辑计划,包含主题、话题、格式、渠道和负责人 |
| 品牌语调指南 | 文档 | 完整的语调体系,包含特征、语气范围、用词和示例 |
| 内容审计报告 | 电子表格 + 文档 | 内容清单及评分、分类和优先级排序后的更新建议 |
| 无障碍报告 | 清单文档 | 内容层面的无障碍评估,包含具体的整改步骤 |
边缘情况
受监管行业内容(必须包含免责声明)
- 情境:医疗保健、金融服务、法律、保险、大麻、赌博或其他要求强制添加免责声明、披露信息或合规措辞的行业
- 方法:在开始创建内容时就标明监管要求。加入免责声明占位文本,并建议发布前进行法律审核。对于广告平台,注明具体政策限制(例如,Facebook 金融服务免责声明、Google 医疗保健广告政策)。未经法律审核,绝不可将营销内容说成符合规定——始终建议进行专业合规核验。让营销文案与合规措辞在视觉上清晰区分。
多语言营销活动
- 情境:内容需要适用于多种语言和文化背景
- 方法:撰写源内容时考虑本地化(避免使用难以翻译的习语、文化典故和幽默)。随内容提供本地化说明,标出文化敏感元素。最终交付内容不得使用机器翻译——建议聘请具备营销专业知识的专业译者。对于 RTL 语言(阿拉伯语、希伯来语、波斯语),提醒设计团队注意版式影响。对于字符数受限的格式,预留文本扩展空间(德语文本比英语长约 30%)。
内容蚕食
- 情境:多个页面争夺同一关键词或涉及相同主题
- 方法:创建新内容前先审核现有内容。如果存在内容蚕食,建议整合内容(将表现较弱的页面合并为一个优质页面),而不是再创建一篇竞争内容。使用规范标签、内部链接和内容差异化来解决现有的内容蚕食。创建新内容时,检查关键词和主题是否与现有内容库重叠。
AI 生成内容披露
- 情境:用户希望发布 AI 生成的内容,并需要披露方面的指导
- 方法:建议保持透明。说明平台政策仍在变化(Google 不会因 AI 内容而处罚,但重视质量;一些社交平台要求披露 AI 内容)。始终建议由人工审核和编辑 AI 生成的草稿。提醒用户,完全由 AI 生成且未经人工监督的内容存在事实错误、品牌不一致和受众信任问题等风险。提供 AI 辅助内容的质量保证检查清单。
视频/音频内容的无障碍处理
- 情境:内容包含需要无障碍处理的视频、音频或交互元素
- 方法:建议为所有视频内容添加字幕(不要使用自动生成的字幕——准确性很重要)。为视频中仅以视觉形式呈现的信息提供音频描述。为播客和音频内容创建文字稿。确保交互元素可通过键盘操作。使用屏幕阅读器进行测试。至少遵循 WCAG 2.2 AA 标准;对于面向公众的内容,可将 AAA 作为更高目标。
RTL 语言
- 情境:内容使用阿拉伯语、希伯来语、波斯语、乌尔都语或其他从右向左书写的语言
- 方法:尽早标明 RTL 带来的影响。内容结构、CTA 位置和视觉层级都需要反转。在 RTL 语境中,数字和嵌入的拉丁文本仍保持 LTR 方向(双向文本)。建议所有 RTL 内容都由母语人士审核。设计模板必须支持 RTL 布局。专门在 RTL 模式下测试电子邮件模板,因为许多电子邮件客户端对 RTL 的处理并不一致。
编号输出约定
所有内容引擎输出均保存至 ${CLAUDE_PLUGIN_DATA}/{brand}/seo/content-engine/{YYYY-MM-DD}/{slug}/:
00-input.md topic, target keyword, intent, format, source brief (from keyword-cluster?)
01-research.md source list, key data points, expert quotes, competitor references
02-outline.md H1, H2/H3 structure with target word counts per section
03-draft-v1.md first complete draft
04-fact-check.md per-claim verification + citations
00-source-draft.md the author's own words, verbatim (ONLY when --source-draft was given)
05-humanize.md AI-pattern detection + rewrite log (flags from scripts/ai-tell-scan.py)
05-scans.json Surface + structural scan output, keyed {"surface":…, "structure":…}
05-authorship.json author-sentence provenance (ONLY when 00-source-draft.md exists)
06-brand-voice-check.md voice score (formality/energy/humor/authority) vs brand profile
07-seo-checklist.md title, meta, schema, internal links, image alt text
08-quality-scorecard.md the gates below
09-publish-ready.md final clean copy + handoff metadata
PLAN.md summary + publish instructions
质量评分卡
| 门槛 | 检查内容 |
|---|---|
| brand_voice_match | 06-brand-voice-check.md 显示每个维度的 distance ≤ 0.15(正式程度/活力/幽默感/权威性)。单位是评分器的 0–1 刻度,而不是档案的 1–10 刻度。 此门槛之前写的是“偏差 ≤ 1.5 分”,但 brand-voice-scorer.py 输出的 distance 上限为 1.0——因此按字面理解,它永远不会失败,这与没有测量依据的门槛一样形同虚设。0.15 是评分器已经用于标记偏差的阈值。请注意,这项检查衡量什么、不衡量什么:目标维度值来自 brand-setup 将声音描述映射为数字的结果,而它没有针对未见过的描述制定评分标准——因此,FAIL 提示你检查档案的目标值,也要检查文案 |
| fact_check_clean | 04-fact-check.md 显示未核实的声明为 0,且每条事实陈述至少有 1 个引用 |
| humanize_passed | python "${CLAUDE_PLUGIN_ROOT}/scripts/ai-tell-scan.py" --file 05-humanize.md 报告 humanize_passed: true——也就是说,flagged_paragraph_pct ≤ 品牌阈值(默认 10%)。请运行脚本;不要凭目测判断。 哪些情况会被标记,详见下文的“Humanize 步骤” |
| seo_complete | 07-seo-checklist.md 显示标题 ≤ 60 个字符,元描述为 150–160 个字符,至少有 1 种 schema 类型、至少有 3 个站内链接,且所有图片均有替代文本。其中两项标准应明确标为 N/A,而非通过: 品牌没有已发布的网站时,站内链接不适用(预发布品牌的首篇文章无法链接到站内任何内容——记录为 N/A (no site),门槛会忽略此项,但绝不能将其记录为已满足);文章没有图片时,替代文本不适用(0 张图片中有 0 张图片带替代文本,这种通过结果无法验证任何内容——记录为 N/A (no images))。N/A 必须注明原因;仅写 N/A 即为 FAIL |
| eu_disclosure_if_ai | 如果品牌的 target_markets 包含 EU,且内容由 AI 生成,09-publish-ready.md 必须包含所需的第 50 条披露(机器可读 + 可见) |
status: ready 要求全部五项门槛通过,并由运行审计重新推导结果:
python "${CLAUDE_PLUGIN_ROOT}/scripts/run-audit.py" --run-dir "${CLAUDE_PLUGIN_DATA}/{brand}/seo/content-engine/{date}/{slug}"
请在写完 08-quality-scorecard.md 后、声明 status: ready 前运行此项。它会根据产物本身重新推导评分卡的声明:每个编号产物均已存在;通过重新运行 ai-tell-scan.py 测量人性化处理结论(绝不从评分卡读取);authorship.py 测量的文件中未嵌入扫描 JSON;存在源草稿时,记录的作者身份与重新测量的结果一致;记录的声音距离确实在 0.15 门槛以内;以及已准备发布的文案中不含生产占位符。退出码 1 表示评分卡声称的内容缺乏产物支持——请修正审计发现的问题,绝不要修改措辞。 审计结论会写入与产物放在一起的 run-audit.json,让后续读者能够确认此次运行经过验证,而非仅凭信任。
AI 协助披露(适用于所有运行,不仅限于欧盟)
除上述欧盟门槛外,每份可发布的草稿都会应用品牌在 profile.json 中的 ai_disclosure 区块——{"mode": "claude-surfaces"|"always"|"off", "text": null|custom, "author": null|name}(缺少该区块时的默认值:claude-surfaces、无自定义文本、无作者)。
- 运行
python "${CLAUDE_PLUGIN_ROOT}/scripts/detect_surface.py" --mode {mode}——其disclosure_applies字段就是判定结果。此处特意采用故障安全策略:在 claude-surfaces 模式下,如果界面判定为uncertain,则应用披露(只有明确检测到非 Claude 特征,才能跳过)。切勿凭猜测覆盖脚本的判定。 - 如果适用,将该区块作为
09-publish-ready.md的最后一个正文段落追加——放在正文内,确保它能保留在/digital-marketing-pro:publish-blog的处理结果中——使用以下规则:无自定义文本且无作者 →*Created with AI assistance and reviewed by our editorial team.*;已设置作者 →*Created with AI assistance; researched, fact-checked, and edited by {author}.*;自定义文本 → 原样使用。默认措辞不涉及特定供应商(不包含模型或供应商名称),且只声明此工作流执行的审核。作者字段为可选项——切勿捏造姓名,也绝不要因其为空而阻塞流程。 - 无论是否应用披露,都要在交接元数据中记录判定结果:
disclosure: {applied, mode, surface}——未应用披露也是一项有记录的选择,而非遗漏。
Humanize 步骤(05-humanize.md)——标记究竟是什么
humanize_passed 门槛由 scripts/ai-tell-scan.py 衡量,而不是凭印象判断。运行它,并处理它返回的标记。
05-scans.json 会在命名键下保存两次扫描结果——绝不能在同一个文件中放两个 JSON 文档。 将其写成 {"surface": {...ai-tell-scan output...}, "structure": {...structural-tell-scan output...}}。对同一路径执行两次 > 重定向,会生成一个 json.load 无法解析的文件;正是一次这样运行时发现了这个问题。在 Windows 上,重定向时请设置 PYTHONIOENCODING=utf-8——默认的 cp1252 会将建议说明中的 em dash 编码为字节 0x97,随后文件便无法解析。
05-humanize.md 只保留文章正文。 scripts/authorship.py --draft 05-humanize.md 会对该文件中的每个句子进行分类,因此放在其中的扫描 JSON 或报告文字会被计作机器添加文本,从而影响作者占比。在一次真实运行中的测量结果是:附加扫描 JSON 和一份简短报告后,author_word_share 从 0.253 降至 0.206,may_claim_authored 也从 true 变为 false——仅仅因为文件布局,就剥夺了作者对其实际完成工作的署名资格。报告放在 05-scans.json 中;草稿文件就只保留草稿。
python "${CLAUDE_PLUGIN_ROOT}/scripts/ai-tell-scan.py" --file 05-humanize.md [--max-flagged-pct N]
两种语言特征会计入门槛,因为它们足够明确,可以作为门槛依据:
significance_marker——某个句子唯一的作用,就是告诉读者相邻句子的含义:“重点来了”“这就是让我印象深刻的地方”“这正是问题所在”“仔细想想”。→ 删除这个句子。不要改写它。 它所指的具体内容本身已经发挥了作用;把标记弱化成更温和的标记并不能解决问题。如果这一刻很重要,就回到具体内容,而不是特意宣布它。soft_adverb_cluster——同一个句子中出现两个或更多 honestly / genuinely / truly / literally / actually / basically / quietly → 删除它们。需要力量的句子需要的是具体内容,而不是副词。
扫描报告中的其他所有内容都是参考信息,不属于门槛判定——llm_favored_word、连接词开头(“So,”、“However,”)、分词开头、em dash 密度,以及缺乏具体依据的短句。这些也会出现在普通人类写作中,以它们作为门槛依据会误判优秀文案,并让流水线陷入毫无意义的反复改写。扫描指出的问题确实存在时就修正;不要一味追逐数值。
llm_favored_word(自 2026-08-15 起仅作参考)——delve、leverage、seamless、tapestry、testament、pivotal、myriad……→ 仍值得修改:换成你平时会说的简单词,或者更好,用文章主题中的具体名词代替。经过测量后,它不再计入门槛:在 ChatGPT 问世前发布的 272 段散文中,这些词有 23 次触发,而且每一次都只出现在人类写作中,没有一次出现在模型写作中。技术和新闻英语通常会使用 “robust”、“facilitate” 和 “leverage”,而当前模型的训练语料基本不再使用这些词——因此,它作为门槛信号只会造成误报。
通过这道关卡意味着什么,不意味着什么
通过意味着没有密集出现这两种明确特征。这是底线,不是定论。在 39 篇 ChatGPT 出现前发布的文档上进行测量时,这道关卡一篇也没拦下;在 18 篇未经编辑的模型生成文本上进行测量时,它一篇也没识别出来。因此,通过并不能证明这篇文章读起来像是人写的,也无法识别出完全没有起作用的 humanize 步骤。请将 advisory_rating 和结构扫描视为面向编辑的信号——它们确实能区分这两类文本(未经编辑的模型生成文本有 83% 被评为 HIGH,已发布的人类作品则为 9%)——并将两者都视为供人处理的待办事项,而非作者身份的证明。
**处理任何标记的方式,都是使用 04-fact-check.md 中经过核实的具体信息,而不是替换同义词,更不是捏造事实。**如果某句话没有依据,就删掉这句话,或补充站得住脚的限定说明——不要为了让文字听起来像人写的而捏造数字、日期、来源或示例。
使用你自己的文字(--source-draft)
当用户提供自己的粗略草稿时——例如语音备忘录转录、要点或意识流文字——请将其原样保存为 00-source-draft.md,并围绕他们的句子来写,而不是覆盖他们的句子。不要在引入时整理润色;杂乱本身就是信号。
- 将他们的句子原样保留在
03-draft-v1.md中——包括错别字、连写、全小写等。绝不要改述、压缩、合并或修正语法;“改善”他们的表达方式,正是抹去作者身份的做法。 - **humanize 步骤的特征不适用于他们的句子。**如果作者写了 “here's the thing”,就保留原样。某种模式描述的是模型未经提示时会写什么,而不是一个人选择说什么。
- 在他们的句子之间加入你的内容:研究、带来源的具体信息、结构,以及他们只是一带而过的部分。
- **他们的主张体现的是他们的表达,不是经核实的事实。**你新增的任何事实内容仍须来自
04-fact-check.md。如果他们的某项主张与研究相矛盾,请标记出来交给人工编辑,并保留原句——由他们决定,而不是由你决定。 - 完成 humanize 后,验证是否兑现了这一承诺:
python "${CLAUDE_PLUGIN_ROOT}/scripts/authorship.py" \
--source 00-source-draft.md --draft 05-humanize.md --out 05-authorship.json
退出代码 3 表示作者的句子被改写或删除了。**请逐字恢复这些句子,并重新运行,直到退出代码为 0。**这一项不是建议:这里所有 AI 特征扫描都只是建议,因为检测信号是概率性的判断;但“作者写了这句话,而它现在不在这里了”是可以核实的事实,关系到这条流水线是否兑现了承诺。
- **如实披露来源。**当
05-authorship.json报告may_claim_authored: true时——这要求成稿中至少 25% 的词语是作者原样写下的,而且他们的句子没有任何一句被改写或删除——09-publish-ready.md中的披露语应改为*由 {author} 撰写,AI 协助进行了研究、结构安排和事实核查。*(若未注明作者,则改为*根据作者自己的草稿撰写,在 AI 协助下完善,并在发布前经过审核。*)。否则使用上文的标准措辞。**绝不要根据这条记录以外的任何信息推断作者身份。**这一设计是单向的:作者身份记录只能让披露更具体地说明确实发生过的人类参与。过度宣称人类作者身份,是读者无法核实的唯一一种此类表述。 - 没有目标比例。
author_word_share的存在是为了确保披露准确;任何数字都不能让文本变得“足够像人写的”,这里也没有任何内容是为了迎合检测器而设计的。
结构特征检查(仅供参考,绝不作为门槛)
完成 05-humanize.md 后,运行 python "${CLAUDE_PLUGIN_ROOT}/scripts/structural-tell-scan.py" --file {draft}——这是 Tier-2 STRUCTURAL 层(基于 StoryScope:即使表层处理完美,AI 文本的结构仍然容易被识别)。如果报告 NOTE/ATTENTION(说教式结尾、模板化对称、具体性不足、缺乏立场、节奏单一、实体展开),请依据事实核查文件进行结构调整:删去直白点明的结论,打破内容本身支撑不起的对称结构,补充具体且经核实的事实(绝不编造),并表明有依据的立场。
entity_development 值得单独说明,因为很容易用错方法修复。NOTE/ATTENTION 级别意味着文章不断引入新名称、新数字,却都只提一次便不再提及——这像是机器在构建场景,而非专家在论证。**修复方式是展开,而不是删除:**为论点已经依托的具体内容,依据 04-fact-check.md 增加第二处有实质意义的提及——说明它意味着什么、谁对此有异议、它付出了什么代价。删减具体内容来降低这个数值,会让同一扫描中的 specificity 检查结果变差,而后者更重要;编造提及内容则完全不允许。如果文章少于 600 个单词,或涉及的不同实体少于 12 个,代理指标不会给出提示,因为短文受篇幅所限,通常只会提及事物一次。将扫描 JSON 添加到 05-scans.json 的 "structure" 键下,与表层扫描的 "surface" 键并列(绝不要添加到 05-humanize.md——参见 humanize 步骤:authorship.py 会逐句测量该文件),并在 08-quality-scorecard.md 中记录总体级别为 ADVISORY——它绝不会影响 status: ready,且只衡量可见结构(它无法检测统计水印,也与任何统计水印无关)。
链路交接
- 上游:
/digital-marketing-pro:content-brief(首选——已完成前期研究),或/digital-marketing-pro:keyword-cluster(06-pillar-pages.md会成为内容简报) - 下游:
/digital-marketing-pro:publish-blog——将可发布的草稿推送到 CMS/digital-marketing-pro:content-repurpose+/digital-marketing-pro:social-strategy——将文章改编并发布到各个平台/digital-marketing-pro:check——发布前的最终门槛/digital-marketing-pro:c2pa-metadata——如果文章配有 AI 生成的图片且目标市场包含欧盟,则使用此项
提示与注意事项
- 品牌语气的偏差容忍度按单项计算,而非按总分计算。 每个维度都偏差 1 分的文章,不等于仅幽默这一项偏差 4 分——即使平均分看起来没问题,后者仍然不合格。
- Humanize 步骤不能保证通过 AI 检测工具的检测——它只是提高概率,且此处的扫描都无法检测或去除任何统计水印。
ai-tell-scan.py只衡量可见文本。对于必须尽量减少 AI 风格特征的文章,请额外运行 humanize 步骤,并使用/digital-marketing-pro:eval-content重新评分,反复迭代,直到标记的特征消除;最终由人工编辑仍是最强信号——而其中最强的信号,是作者自己写的句子,这正是--source-draft保留的内容。 - 事实核查是内容流程中最常被跳过的门槛。 不要仅仅因为没人检查,就让文章带着“0 unverified”上线。如果没有事实核查人员参与,请针对草稿运行
/digital-marketing-pro:verify-claims。 - **对于支柱内容,**目标字数应达到上限(SaaS 为 3000+,B2B 研究为 5000+)——支柱页面需要足够深入,才能建立主题权威性。对于辐射内容,达到字数下限即可。
- 不要最后才写元描述。 应当先写元描述,再写文章——它要回答“这个页面承诺提供什么?”最后才写,会变成事后总结,无法激发点击意愿。
相关技能
- 受众洞察 — 用于针对特定用户画像的内容定向,以及打造能引起既定细分受众共鸣的信息
- AEO/GEO 洞察 — 用于优化内容,使其被 AI 答案引擎引用,并保持实体一致性
- 营销活动协调器 — 用于将内容映射到营销活动渠道,并确保各触点的信息一致
- 漏斗架构师 — 用于使内容与漏斗阶段相匹配,并确保每个阶段都有适当的内容支持
- 数字公关与权威建设 — 用于思想领导力内容、新闻稿,以及通过内容建立 E-E-A-T 权威性
- 分析与洞察 — 用于衡量内容表现、发现效果衰退,并根据数据进行优化
上下文效率
此技能的参考文档(skills/<this-skill>/*.md)总计约 30–50 KB。不要急于全部加载,而应选择所需章节:
- 先用 Grep,再用 Read。 先查找关键词或章节标题,然后使用
offset+limit只读取相应范围。 - 只遍历一次
${CLAUDE_SKILL_DIR}。 使用一次目录列表查看其中的内容,然后只读取与当前步骤匹配的文件。 - 一次处理一个来源。 如果工作流要求“查阅三个参考文件”,先确定每个文件需要查看的内容,再依次读取。一次性全部加载会耗尽自动压缩为每项技能预留的 5K token 预算。
- 清理 CSV 输入中的冗余内容。 如果输入是大型 CSV,先用 grep 查看标题行以选出所需列,再逐行处理;不要将整个文件读入上下文。