Skill: yujietech/xhs-creator-copilot (version 1.0.1)

--- name: xhs-creator-copilot description: > 小红书创作者本地辅助桌面工具(期货/财经账号「不期而遇」专用)。 当用户提到小红书选题、写笔记、起草回复、回复粉丝评论、私信回复、 内容去AI化、排版优化、合规预检、批量评论处理时使用。 本工具完全本地运行,**不接触小红书平台任何接口**, 只做内容生成、合规预检、去AI化润色、本地文件输出和回复草稿建议。 所有发布和回复动作必须由真人在小红书 App/Web 内手动完成。 严格遵循小红书 2026-03-10《关于打击 AI 托管运营账号的治理公告》 及 2025-09《人工智能生成合成内容标识办法》要求。 compatibility: > 通用 — 仅需 LLM 文本/视觉能力 + 本地文件系统。 推荐环境:Cowork / Claude.ai / Claude Code / OpenClaw。 本 skill **不需要** 浏览器工具组,**不访问** 小红书域名。 metadata: version: "1.1.0" account_type: 期货/财经创作者 scope: 本地辅助,零平台接触 predecessor: xiaohongshu-ops-yj v1.8(已弃用,违反平台规则) compliance_baseline: 小红书2026-03公告 + 2026-02 AI标识公告 + GB 45438-2025 国标 --- # 小红书创作者本地辅助桌面工具 — xhs-creator-copilot v1.0 > **核心定位**:本地辅助工具,零平台接触,真人主驾,AI 副驾。 > > **诞生背景**:前身 `xiaohongshu-ops-yj`(v1.7/v1.8) 因包含浏览器自动化发布与互动模块, > 在 2026-03-10 小红书 AI 托管治理新规下属违规工具,已永久弃用。本 skill 是从零设计的 > 合规替代方案,严格按"AI 辅助创作、真人完成发布与互动"原则构建。 --- ## 🚨 合规前置声明(skill 启动必读) 依据以下监管文件,本 skill 严格遵守以下边界: - **小红书《关于打击 AI 托管运营账号的治理公告》**(2026-03-10 发布) - **小红书《关于加强 AI 生成合成内容自主标识的公告》**(2026-02-12 发布)⭐ v1.1 新加入 - **《人工智能生成合成内容标识办法》**(2025-09-01 生效) - **《网络安全技术 人工智能生成合成内容标识方法》GB 45438-2025**(强制性国标)⭐ v1.1 新加入 ### ❌ 本 skill **绝不**做的事 | 禁区 | 说明 | |------|------| | **自动登录小红书** | 不打开浏览器登录,不缓存登录态,不做扫码自动化 | | **自动发布笔记** | 不调用任何浏览器工具点击"发布"按钮 | | **自动回复评论** | 不调用任何工具在评论区写入文字 | | **自动回复私信/群聊** | 不在任何对话场景写入消息 | | **自动监听通知** | 不轮询、不订阅、不刷新通知页 | | **自动浏览检索** | 不抓取榜单、不爬取笔记、不获取用户信息 | | **绕过平台风控** | 不做指纹伪装、IP 轮换、行为拟真等对抗手段 | | **教唆去除 AI 标识** | 不指导、不暗示用户隐藏 AI 生成属性 | ### ✅ 本 skill 做的事(全部本地) | 能力 | 说明 | |------|------| | 选题辅助 | 基于真人喂入的素材(收藏/截图/趋势数据)做选题分析 | | 笔记起草 | 生成 3 版本候选(干货/故事/播报),真人选定后人工发布 | | 去 AI 化润色 | 检测并消除 24 类 AI 写作痕迹,让文字更像真人风格 | | 合规预检 | 敏感词扫描、免责声明补齐、AI 标识强制提醒 | | 排版优化 | 生成可直接复制到小红书的预格式化文本 | | 私信起草 | 真人粘贴粉丝问题 → skill 生成回复候选 → 真人手动回复 | | 评论分诊 | 真人粘贴通知页截图 → skill 批量分析 → 输出待回复清单 | | 本地文件管理 | 所有产出按日期归档到本地文件夹,清晰命名,直接复制可用 | ### 🤝 真人责任(用户必须知晓) 1. **发布动作必须真人完成**:打开小红书 App/Web,粘贴 skill 产出,**手动点击发布** 2. **必须勾选 AI 标识**:发布时打开 `设置 → 内容类型声明 → 笔记含 AI 合成内容`(平台强制) 3. **互动必须真人完成**:私信、评论、群聊回复,真人粘贴 skill 草稿后**手动发送** 4. **节奏控制**:单账号每日发布 ≤ 3 篇(skill 会提醒),不集中时段批量发布 5. **风格巡检**:定期查看 `data/publish_log.json`,确保自己笔记主页**不全是 AI 辅助产出** --- ## 📋 必填参数(任务开始前确认) 缺少以下任何参数时,**停止执行,直接向用户提问,不猜测**: | 参数 | 必填 | 说明 | |------|------|------| | `task_type` | ✅ | 枚举:`选题` / `起草笔记` / `去AI化` / `回复私信` / `批量评论分诊` / `合规预检` / `生成封面图` ⭐ v1.1 新增 | | `topic` | 仅当 task_type=起草笔记 / 生成封面图 | 笔记主题 | | `goal` | 仅当 task_type=起草笔记 | 枚举:引导关注 / 引导收藏 / 引导互动(注:**不再支持"引导开户/引导私信"等可能涉及违规导流的目标**)| | `note_type` | 仅当 task_type=起草笔记 | 枚举:`图文` / `长文`(默认图文)| | `humanize_level` | 选填 | 枚举:`light`(轻度,保留专业感)/ `medium`(默认,平衡)/ `heavy`(深度去AI化,口语化) | | `cover_style` | 仅当 task_type=生成封面图 | 枚举:`finance`(深底金字,播报类)/ `finance_light`(浅底深字,教学类)/ `warm`(暖色,故事类)| | `output_format` | 选填 | 枚举:`html`(默认,推荐)/ `md` / `both`(同时输出两种)⭐ v1.1 新增 | --- ## 🗺️ 意图路由 | 用户说的话 | 跳转目标 | |-----------|---------| | 写笔记、生成选题、多版本文章、3 个版本 | → [`references/content.md`](./references/content.md) | | 去 AI 化、太像 AI 写的、改得自然点、人话改写 | → [`references/humanizer.md`](./references/humanizer.md) | | 私信、单条评论起草、回复粉丝问题 | → [`references/faq-draft.md`](./references/faq-draft.md) | | 批量评论、通知页截图、待回复清单 | → [`references/reply-triage.md`](./references/reply-triage.md) | | **生成封面图、笔记配图、给我做张图** ⭐ | → [`references/cover-image.md`](./references/cover-image.md) | | 本地保存、文件命名、按日期归档 | → [`references/local-output.md`](./references/local-output.md) | | 合规、敏感词、免责声明、能不能这么写 | → [`references/compliance-guide.md`](./references/compliance-guide.md) | | 自动发布、登录小红书、回评论、监听通知 | → ⛔ **禁用,告知用户原因** | --- ## 🔄 标准执行顺序(按 task_type 分流) ### A. 起草笔记(`task_type=起草笔记`) ``` Step 0 必填参数确认(topic + goal + note_type + output_format) Step 1 选题素材准备 └── 用户粘贴素材(收藏/截图/官方热点),skill 不主动抓取 Step 2 生成 3 版本笔记草稿 → references/content.md Step 3 用户选定一个版本(A/B/C) Step 4 去 AI 化处理 → references/humanizer.md Step 5 合规预检(敏感词 + 免责声明 + AI 标识)→ references/compliance-guide.md └── ⭐ v1.1: 自动在正文末尾追加 "本文部分内容由 AI 辅助生成" Step 6 排版与本地输出 → references/local-output.md └── ⭐ v1.1: 默认 HTML 格式输出,可在浏览器打开后全选复制 └── 输出到 outputs/YYYY-MM-DD/notes/ 目录 Step 7 (可选)询问用户是否需要生成封面图 → references/cover-image.md └── 若需要,跳转到 task_type=生成封面图 流程 Step 8 最终交付清单(给用户的 todo list): □ 在浏览器打开 outputs/YYYY-MM-DD/notes/note-{type}-{topic-slug}-final.html □ 全选页面内容(Cmd+A / Ctrl+A) → 复制 □ 打开小红书创作者平台,粘贴到标题和正文(预格式化保留) □ 上传 outputs/YYYY-MM-DD/covers/ 中的封面图(若已生成) □ **必须在「设置 → 内容类型声明」中勾选「笔记含 AI 合成内容」** □ 真人最后审核 → 手动点击发布 ``` ### A2. 生成封面图(`task_type=生成封面图`)⭐ v1.1 新增 ``` Step 0 必填参数确认(topic + cover_style) Step 1 从已生成的笔记中提取核心信息(若有) └── 标题、关键数字、情绪基调 Step 2 按 cover_style 选择视觉模板 → references/cover-image.md Step 3 生成图片(SVG / HTML→PNG) └── ⭐ 强制添加"AI 生成"角标(高度 ≥ 5%,符合 GB 45438-2025) └── ⭐ 文件元数据写入 AI 生成属性 Step 4 本地输出 → outputs/YYYY-MM-DD/covers/cover-{topic-slug}-{style}.{png|svg} Step 5 交付清单: □ 真人查看 cover 文件 □ 满意则上传到小红书作为封面;不满意可让 skill 重新生成 □ ⚠️ 不要手动去除"AI 生成"角标(违反国标) ``` ### B. 回复私信(`task_type=回复私信`) ``` Step 0 用户粘贴粉丝问题(原文或截图) Step 1 skill 检索本地 FAQ 库 → references/faq-draft.md Step 2 生成 3 版回复候选(短/中/长) Step 3 去 AI 化处理 → references/humanizer.md Step 4 合规预检(免责声明、引流词)→ references/compliance-guide.md Step 5 本地输出 → outputs/YYYY-MM-DD/replies/ 目录 Step 6 交付清单: □ 用户选 1 条候选 □ 复制 → 切到小红书 App → 粘贴 → 真人发送 □ (可选)告诉 skill"采用了候选 X",skill 沉淀到 FAQ 库 ``` ### C. 批量评论分诊(`task_type=批量评论分诊`) ``` Step 0 用户上传通知页截图(1 张或多张) Step 1 skill 视觉识别,提取每条评论的: - 评论人昵称 - 时间 - 评论内容 - 笔记上下文(若可见) Step 2 分类与优先级标注: - 🔴 高优:粉丝提问、影响转化 - 🟡 中优:普通互动 - 🟢 低优:点赞型简短评论 - ⚠️ 特殊:引流嫌疑、合规风险 Step 3 为每条非"低优/特殊"评论生成 2-3 个回复候选 Step 4 全部候选过去 AI 化 + 合规预检 Step 5 本地输出 → outputs/YYYY-MM-DD/triage/triage-{HHMM}.md Step 6 交付清单: □ 真人逐条审阅 □ 选定回复后切回小红书 App,真人手动回复 □ ⚠️ 引流嫌疑评论建议不回复或举报 ``` ### D. 去 AI 化润色(`task_type=去AI化`,独立流程) ``` Step 0 用户粘贴待润色文本 Step 1 skill 加载 humanizer 规则 → references/humanizer.md Step 2 按 humanize_level 处理: - light:仅修破折号、AI高频词 - medium:加修句式、加入口语化标记 - heavy:深度改写,加入个人语气词、轻微"不完美" Step 3 输出对照表(原文 / 改后 / 修改点说明) Step 4 本地输出 → outputs/YYYY-MM-DD/humanized/ ``` --- ## 🔤 状态命名约定 skill 内部用以下前缀做状态/输出标识,便于跨模型理解: | 前缀 | 含义 | 示例 | |------|------|------| | `T_` | 任务态 | `T_DRAFT`(起草中)/ `T_HUMANIZE`(去 AI 化中)/ `T_COMPLIANCE`(合规检查中)/ `T_OUTPUT`(本地输出中)| | `R_` | 回复态 | `R_FAQ_DRAFT`(单条起草)/ `R_TRIAGE`(批量分诊)| | `H_` | 人在回路 | `H_SELECT_VERSION`(等用户选 A/B/C)/ `H_CONFIRM_PUBLISH`(等用户确认发布)| --- ## 🛡️ 全局异常处理 **核心原则:每步最多重试 1 次,遇违规立刻拒绝。** | 异常 | 处理 | |------|------| | 用户要求"自动发布" | 拒绝,引导走真人发布流程 | | 用户要求"打开小红书"或"登录小红书" | 拒绝,提示这违反 skill 定位 | | 用户要求"监听评论"、"自动回复" | 拒绝,引导走批量分诊模式 | | 用户要求"绕过 AI 标识" | 拒绝,这违反《标识办法》行政法规 | | 用户要求"删除 AI 标识"、"去掉 AI 角标" ⭐ | 拒绝,违反 GB 45438-2025 国标,被识别后封号 | | 用户要求生成的内容含敏感词(稳赚/必涨/喊单/带单等) | 拒绝生成,要求改主题 | | 用户要求生成"诱导开户/引流话术" | 拒绝,这是平台明确禁止的导流 | | 用户要求"伪造聊天记录"、"假装客户反馈" ⭐ | 拒绝,2026 新规明确禁止"故事营销" | | 用户要求"伪装身份发笔记"(假装公司前员工等) ⭐ | 拒绝,违反平台真实身份要求 | | 用户暗示要"管理多个矩阵账号" ⭐ | 拒绝多账号切换,防止矩阵滥用 | | 用户要求"批量生成相似笔记" ⭐ | 拒绝,2026 新规明确打击 | | 单日笔记发布提醒 ≥3 次 | skill 主动建议:"今日已生成 N 篇,建议明天再发" | | 真人压力测试(连续要求生成同一主题 5+ 次) | skill 提醒:"内容同质化风险,建议换角度" | | LLM 工具暂时不可用 | 提示用户重试,不降级到任何"假装能做"的状态 | --- ## 🔌 上游集成约定 本 skill 与其他工具的集成边界: | 工具/服务 | 是否使用 | 说明 | |----------|---------|------| | LLM 文本生成 | ✅ | 本 skill 的核心能力 | | LLM 视觉识别 | ✅ | 仅用于识别用户主动上传的截图 | | 本地文件读写 | ✅ | 输出到 `outputs/YYYY-MM-DD/` 目录 | | **浏览器工具**(navigate / javascript_tool / find / read_page / file_upload / computer)| ❌ | 全部禁用,即使可用也不调用 | | **网络请求**(web_search / web_fetch 对小红书域名)| ❌ | 不主动请求 xiaohongshu.com / xhscdn.com | | `bash_tool` | ✅ | 仅用于本地文件管理与日志,不用于联网 | **网络请求细则**:本 skill 可以使用 `web_search` 检索 **跨平台公开信息**(微信指数、百度指数等),但**不主动访问小红书域名**。如果用户提出"帮我看下小红书最近的爆款",skill 应回答"我不能主动访问小红书,请你手动浏览 App,把感兴趣的内容截图或复制给我"。 --- ## 📁 参考文件速查 | 文件 | 何时读取 | 必读? | |------|---------|-------| | `references/content.md` | task_type=起草笔记 | ✅ | | `references/humanizer.md` | 任何文本输出前的最后润色 | ✅(每次都过)| | `references/local-output.md` | 任何需要保存到本地的输出 | ✅ | | `references/faq-draft.md` | task_type=回复私信 | 按需 | | `references/reply-triage.md` | task_type=批量评论分诊 | 按需 | | `references/cover-image.md` ⭐ | task_type=生成封面图 | 按需 | | `references/compliance-guide.md` | 合规边界判断 | 按需(遇灰色场景必读)| | `data/faq-library.md` | 起草回复时检索风格参考 | 按需 | | `data/publish_log.json` | 检查发布节奏 | 按需 | **读取策略**:按需加载,不预先全部读入。每次任务启动只读 task_type 对应的文档 + humanizer.md(最后润色必读)。 --- ## 📂 本地输出目录结构 ``` 工作目录/ ├── outputs/ │ ├── 2026-04-27/ │ │ ├── notes/ │ │ │ ├── note-tuwen-qihuo-rumen-v1.html ⭐ v1.1 默认 HTML │ │ │ ├── note-tuwen-qihuo-rumen-v2.html │ │ │ ├── note-tuwen-qihuo-rumen-v3.html │ │ │ ├── note-tuwen-qihuo-rumen-final.html # 用户选定+humanize+合规后的最终版 │ │ │ └── note-tuwen-qihuo-rumen-final.md # (可选)Markdown 备份版 │ │ ├── covers/ ⭐ v1.1 新增 │ │ │ ├── cover-qihuo-rumen-finance.png # 含"AI 生成"角标 │ │ │ └── cover-qihuo-rumen-finance.svg # 矢量源文件 │ │ ├── replies/ │ │ │ └── reply-单条-zhanghui-1430.html │ │ ├── triage/ │ │ │ └── triage-1900.html │ │ └── humanized/ │ │ └── humanized-blog-post-1230.html │ └── 2026-04-28/ │ └── ... ├── data/ │ ├── faq-library.md # 用户积累的 FAQ 风格库 │ └── publish_log.json # 发布历史(由用户主动告知 skill 后写入) ``` 详细命名规范见 `references/local-output.md`。 --- ## 📝 版本历史 | 版本 | 日期 | 变更 | |------|------|------| | 1.0.0 | 2026-04-25 | 全新 skill,完全切割旧 `xiaohongshu-ops-yj` 定位。本地辅助、零平台接触、真人完成所有发布与互动。新增 humanizer 去 AI 化模块,适配小红书 2026-03 治理新规与《标识办法》要求。 | | **1.1.0** | **2026-04-27** | 吸收 2026-02-12 小红书 AI 标识公告 + GB 45438-2025 国标:① 输出格式默认 HTML(可直接复制粘贴)② 新增 `cover-image.md` 封面图生成模块(含"AI 生成"角标)③ 异常表新增 5 条新规相关拦截(故事营销/伪装身份/矩阵账号等)④ Step 5 自动追加正文级 AI 标识声明 ⑤ 高敏类目阈值收紧 ⑥ `output_format` / `cover_style` 参数新增 | --- *— EOF —*

path: CHANGELOG.md
content: # xhs-creator-copilot 变更日志

本项目遵循 [语义化版本](https://semver.org/lang/zh-CN/) 约定。

---

## [1.1.0] - 2026-04-27

### 🎯 主要改动

吸收 **2026-02-12 小红书 AI 内容治理公告** + **GB 45438-2025 国标** 的具体要求,
对 v1.0 进行外科手术式升级,**不改架构,只补合规**。

### ✨ 新增

- **新模块 `references/cover-image.md`**:笔记封面图生成
  - 3 种视觉风格:`finance`(深底金字)/ `finance_light`(浅底深字)/ `warm`(暖色)
  - SVG 模板 + LLM 文字填充,完全本地、确定性可控
  - **强制添加"AI 生成"角标**(高度 ≥ 5%,符合 GB 45438-2025)
  - 文件元数据写入 AI 生成属性(隐式标识)
  - 不生成真人面孔、不仿冒公众人物、不伪造金融数据图

- **HTML 输出**:`local-output.md` 升级到 v1.2.0
  - 笔记 final 默认 `.html` 格式,可在浏览器打开后 Cmd+A 全选粘贴
  - 实测保留段落、换行、emoji、话题标签
  - 同步可选 `.md` 备份(`output_format=both`)
  - HTML 元数据 `<meta name="ai-content">` 隐式标识

- **正文级 AI 标识**:每个 final 笔记**自动追加** "本文部分内容由 AI 辅助生成"
  - 这是 2026-02 新规要求(后台勾选 + 正文标识 双重)
  - humanizer 处理时**不得删除**该标识

- **新参数**:
  - `output_format`:`html`(默认)/ `md` / `both`
  - `cover_style`:`finance` / `finance_light` / `warm`
  - `task_type=生成封面图`:独立调用封面生成

### 🔒 强化

- **异常表新增 5 条拦截规则**:
  - 拒绝"删除 AI 角标"请求
  - 拒绝"伪造聊天记录"请求(2026 故事营销新规)
  - 拒绝"伪装身份"请求(假冒前员工/专家等)
  - 拒绝"管理矩阵账号"请求
  - 拒绝"批量生成相似笔记"请求

- **`compliance-guide.md` 升级 v1.1.0**,新增 §10 详述:
  - 双重标识(后台勾选 + 正文明示)
  - 处罚梯度(首违警告 / 二违权重-50% / 三违限制发布)
  - 双轨 AI 检测(技术 + 行为)
  - AI 图片 5% 角标规则
  - 故事营销红线
  - 矩阵账号风险
  - 高敏类目阈值收紧

- **`humanizer.md` v1.1.0**:
  - 顶部加入"合规边界声明":明确**不为绕过检测**,正确流程是 humanize + 主动勾选
  - 强调 humanizer 处理后**不得**删除正文 AI 标识

- **`content.md` v1.1.0**:
  - §5.4 自动追加正文级 AI 标识
  - §5.5 故事型红线(禁伪造对话/身份/客户反馈)
  - §5.6 矩阵账号节奏提示

### 📦 文件结构

```
xhs-creator-copilot/
├── SKILL.md                       # 主入口(v1.1.0)
├── README.md                      # 用户文档
├── CHANGELOG.md                   # 本文件
├── references/
│   ├── content.md                 # 笔记 3 版本生成(v1.1.0)
│   ├── humanizer.md               # 去 AI 化(v1.1.0)
│   ├── faq-draft.md               # 单条回复起草(v1.0.0)
│   ├── reply-triage.md            # 批量评论分诊(v1.0.0)
│   ├── cover-image.md             # 封面图生成 ⭐ 新增(v1.0.0)
│   ├── local-output.md            # 本地输出规范(v1.2.0,HTML 优先)
│   └── compliance-guide.md        # 合规红线清单(v1.1.0)
└── data/
    └── faq-library.md             # FAQ 风格库(初始为空)
```

### ⚠️ 兼容性

- 与 v1.0 用户的旧文件**完全兼容**(目录结构未变,只新增了 `covers/` 子目录)
- 已有 `outputs/` 文件不受影响
- `data/faq-library.md` 格式不变

### 🔗 法规依据

- 小红书《关于加强 AI 生成合成内容自主标识的公告》(2026-02-12)
- 强制性国标《网络安全技术 人工智能生成合成内容标识方法》GB 45438-2025
- 沿用 v1.0 已对齐的:小红书 AI 托管治理公告(2026-03-10)+《标识办法》(2025-09-01)

---

## [1.0.0] - 2026-04-25

### 🎯 初版发布

这是一个**全新 skill**,完全切割旧版 `xiaohongshu-ops-yj` v1.7/v1.8 的"端到端自动化"定位。
新定位是**本地辅助桌面工具**,严格遵守 2026-03 小红书 AI 托管治理新规与
《人工智能生成合成内容标识办法》。

### ✨ 核心能力

- **笔记起草**:三版本候选生成(干货 / 故事 / 播报)
- **去 AI 化**:24 类 AI 写作痕迹检测与重写,3 档处理强度
- **私信回复起草**:单条精修,3 长度 × 4 语气候选
- **批量评论分诊**:截图模式,视觉识别 + 分类排序 + 候选生成
- **合规预检**:三层合规体系(法规/平台/赛道),敏感词扫描 + 自动补免责
- **本地输出**:按日期归档,规范命名,预格式化"复制即用"
- **FAQ 风格库**:用户主动确认后沉淀,越用越懂用户语气

### 🛡️ 合规设计

#### 不做的事(明确禁区)
- 不打开浏览器登录小红书
- 不自动发布笔记
- 不自动回复评论 / 私信 / 群聊
- 不监听任何小红书页面变化
- 不抓取榜单 / 用户主页 / 其他人内容
- 不指导用户绕过 AI 检测
- 不指导用户隐藏 AI 标识

#### 强制做的事
- 每个笔记 final 文件**强制写入**"必须勾选笔记含 AI 合成内容"提醒
- 每个回复文件**强制写入**"真人手动发送"提醒
- 涉及具体投资建议时自动追加免责声明
- 检测到敏感词时自动拦截并要求改写

### 📦 文件结构

```
xhs-creator-copilot/
├── SKILL.md                       # 主入口(含合规前置声明)
├── README.md                      # 用户文档
├── CHANGELOG.md                   # 本文件
├── references/
│   ├── content.md                 # 笔记 3 版本生成
│   ├── humanizer.md               # 去 AI 化(24 类模式)
│   ├── faq-draft.md               # 单条回复起草
│   ├── reply-triage.md            # 批量评论分诊
│   ├── local-output.md            # 本地输出规范
│   └── compliance-guide.md        # 合规红线清单
└── data/
    └── faq-library.md             # FAQ 风格库(初始为空)
```

### 🔌 兼容性

- 仅需 LLM 文本/视觉能力 + 本地文件读写
- 不需要浏览器工具组
- 不需要网络访问
- 适配 Cowork / Claude.ai / Claude Code / OpenClaw

### 📊 与前身对比

| 维度 | xiaohongshu-ops-yj v1.8(已弃用)| xhs-creator-copilot v1.0(本版)|
|------|-------------------------------|------------------------------|
| 定位 | 全链路自动化运营 | 本地辅助,真人主驾 |
| 浏览器工具 | 必需(Chrome 工具组) | 完全不用 |
| 自动发布 | 默认行为 | 完全禁用 |
| 自动互动 | 规划中 | 完全禁用 |
| 平台合规 | ❌ 违反 2026-03 公告 | ✅ 符合公告与《标识办法》|
| 实际后果 | 真人账号被封 | 长期可持续 |
| 文档数量 | 7 份 | 7 份(完全重写)|
| 总行数 | ~3000 行 | ~2500 行(更聚焦)|

### 🔗 设计参考

- **Wikipedia**: ["Signs of AI writing" 指南](https://en.wikipedia.org/wiki/Wikipedia:WikiProject_AI_Cleanup)
- **ClawHub**: `biostartechnology/humanizer` skill(英文版)
- **小红书**:《关于打击 AI 托管运营账号的治理公告》(2026-03-10)
- **国家网信办**:《人工智能生成合成内容标识办法》(2025-09-01 生效)

### ⚠️ 关于前身的告别

旧版 `xiaohongshu-ops-yj` v1.7/v1.8 的设计思路在 2025 年还算合理,但 2026-03
小红书新规出台后,该思路被明确归类为"AI 托管工具",属于平台直接封禁的对象。
作者使用旧版后真实账号被封禁,这是产品定位错误的代价。

新版 `xhs-creator-copilot` 是从零设计的合规替代方案,**没有任何代码与前身共用**,
也不内置任何浏览器自动化能力。这是一个产品哲学的根本转变,不是技术修补。

---

*— EOF —*


path: README.md
content: # xhs-creator-copilot v1.1

> **小红书创作者本地辅助桌面工具** — 期货/财经赛道专用,严格合规
>
> 不接触平台、不自动发布、不自动互动 — 真人主驾,AI 副驾

---

## 🆕 v1.1 新增能力

| 功能 | 说明 |
|------|------|
| 📄 **HTML 输出** | 笔记 final 默认 HTML,在浏览器打开后 Cmd+A 即可全选粘贴到小红书 |
| 🎨 **封面图生成** | 三种风格(深底金字 / 浅底深字 / 暖色),自带"AI 生成"角标(GB 45438-2025) |
| ⚖️ **2026-02 新规对齐** | 落实小红书 AI 标识公告 + 国标 GB 45438-2025 |
| 🚫 **5 条新拦截规则** | 故事营销/伪造身份/矩阵账号/批量相似笔记/去除 AI 角标 |
| 📌 **正文级 AI 标识** | 输出文档**自动**追加"本文部分内容由 AI 辅助生成"

---

## 📦 这是什么

一份运行在 **Cowork / Claude.ai / Claude Code / OpenClaw** 等环境的 Skill,帮小红书创作者:

- 起草笔记内容(3 个候选版本)
- 去 AI 化润色(让文字更像真人写的)
- 起草私信/评论回复
- 批量分诊评论通知
- 合规预检(敏感词 + 免责声明)
- 本地文件归档(按日期 + 规范命名)

**所有产出都以本地文件形式交付**,真人完成最后一步:打开小红书 → 复制粘贴 → 点击发布 / 发送。

---

## ⚖️ 为什么这样设计(必读)

### 平台规则背景

2026-03-10 小红书发布《关于打击 AI 托管运营账号的治理公告》:

- ❌ 禁止 AI 托管发布、互动、注册
- 🔴 主页所有公开笔记均为 AI 代发 → **直接封禁**

2025-09-01《人工智能生成合成内容标识办法》生效:

- AI 生成内容必须显式标识
- 主动声明 AI 内容 → 正常分发
- 未声明 AI 内容 → 限流降权

### 本工具的合规设计

| 维度 | 我们的做法 |
|------|----------|
| 自动登录小红书 | ❌ 不做 |
| 自动发布笔记 | ❌ 不做 |
| 自动回复评论 / 私信 | ❌ 不做 |
| 自动监听通知 | ❌ 不做 |
| 自动浏览检索 | ❌ 不做 |
| 内容生成 | ✅ 本地完成,所有输出强制提示"必须勾选 AI 标识" |
| 真人完成最终发布 / 互动 | ✅ 强制 |

### 为什么这样反而更安全

平台公告原话:**"主动声明 AI 内容,不限分发"**。

- 试图躲过 AI 检测 → 一旦被识别,封禁
- **主动声明 + 真人发布** → 合规且不限流
- 这是**长期可持续**的方式

---

## 🚀 安装

### OpenClaw / Cowork

1. 下载 `xhs-creator-copilot.skill`(或 `.zip`)
2. 在 Skills 管理界面点击"导入 / Install"
3. 选择该文件,自动解压

### Claude.ai

1. 下载 `.skill` 文件
2. Skills 页面上传

### 本地手动部署

```bash
unzip xhs-creator-copilot.skill -d ~/.config/claude/skills/
# 或
unzip xhs-creator-copilot.skill -d /your/skills/path/
```

---

## 📂 包结构

```
xhs-creator-copilot/
├── SKILL.md                       # 主入口
├── README.md                      # 本文件
├── CHANGELOG.md                   # 变更记录
├── references/                    # 子流程文档,按需加载
│   ├── content.md                 # 笔记 3 版本生成
│   ├── humanizer.md               # 去 AI 化(24 类模式)
│   ├── faq-draft.md               # 单条回复起草
│   ├── reply-triage.md            # 批量评论分诊(截图模式)
│   ├── cover-image.md             # 封面图生成(v1.1 新增)
│   ├── local-output.md            # 本地输出规范(HTML 优先)
│   └── compliance-guide.md        # 合规红线清单
└── data/                          # 用户运行数据
    └── faq-library.md             # FAQ 风格库(初始为空)
```

---

## 🎯 核心使用场景

### 1. 起草一条笔记

```
你:帮我写一条期货入门笔记,主题是"期货的核心特征",目标引导关注

skill:
  → Step 1 询问素材(可选)
  → Step 2 生成 3 版本候选(干货 A / 故事 B / 播报 C)
  → Step 3 等你选(回复 A/B/C)
  → Step 4 去 AI 化(humanize medium)
  → Step 5 合规预检(自动补免责声明)
  → Step 6 输出到 outputs/2026-04-25/notes/note-tuwen-qihuo-tezheng-final.md
  → Step 7 给你 todo 清单,真人发布
```

最终文件长这样,**全选复制粘贴**到小红书即可:

```markdown
<!-- 复制此分隔线以下的内容到小红书 -->

【标题】
关于期货,我踩过的 3 个坑

【正文】
...

#期货入门 #投资避坑

—————————
以上仅为个人分享,不构成投资建议。

<!-- 复制完成后:必须勾选「设置→内容类型声明→笔记含 AI 合成内容」⚠️ -->
```

### 2. 起草一条私信回复

```
你:粉丝问"看你笔记说期货能做空,棕榈油现在能空吗",
   帮我起草回复

skill:
  → 检索 FAQ 库找类似历史
  → 生成 3 版候选(短/中/长)
  → 去 AI 化 + 合规预检
  → 输出到 outputs/2026-04-25/replies/reply-sixin-粉丝-1430.md
  → 你选 1 条,复制 → 切到小红书 → 粘贴 → 真人发送
```

### 3. 批量分诊每日评论

```
你:[上传 2 张小红书通知页截图]
   帮我整理今天要回的评论清单

skill:
  → 视觉识别截图,提取评论(昵称 / 时间 / 内容 / 笔记上下文)
  → 分类(🔴高优 / 🟡中优 / 🟢低优 / ⚠️引流嫌疑)
  → 为非低优/特殊评论生成回复候选
  → 输出到 outputs/2026-04-25/triage/triage-1900.md
  → 你按优先级在小红书 App 里逐条手动回复
```

### 4. 把 AI 写的东西改得像人写的

```
你:这段是 ChatGPT 写的,帮我改自然点 [paste 文本]
   humanize_level=medium

skill:
  → 识别 24 类 AI 写作痕迹
  → 改写每个命中点
  → 输出对照报告(原文 / 改后 / 改了哪些点)
  → AI 痕迹评分:78 → 32(目标 ≤40)
```

---

## ⚙️ 兼容性

本 skill **极轻量**,只需要 LLM 文本/视觉能力 + 本地文件读写,几乎在所有 Claude 环境都能跑:

| 环境 | 支持度 | 说明 |
|------|-------|------|
| Cowork | ✅ 完整 | 推荐环境 |
| Claude.ai 网页版 | ✅ 完整 | 文件读写需开启 Code Interpreter / File 工具 |
| Claude Code | ✅ 完整 | 终端原生支持 |
| OpenClaw | ✅ 完整 | 标准 Skill 格式 |
| 不支持视觉的环境 | ⚠️ 部分 | 截图分诊功能不可用,其他可用 |

**不需要**:浏览器工具、网络访问平台域名、特权权限。

---

## ❓ 常见问题

**Q1: skill 真的不会接触小红书吗?会不会偷偷登录?**

A: 不会。SKILL.md 明确禁用所有浏览器工具,即使工具可用也不调用。你可以审阅本仓库的全部代码确认,没有任何对 `xiaohongshu.com` 的网络请求。

**Q2: 我已经在 v1.8 时被封过一次,用 v1.0 安全吗?**

A: v1.0 的设计本身合规,但**已封账号建议申诉**。如果账号已被永封,新账号需要换设备 / IP / 浏览器 profile 完全冷启动,避免风控连坐。详见 `references/compliance-guide.md`。

**Q3: 用了 humanizer 是不是就能"骗过"小红书的 AI 检测?**

A: ⚠️ 这不是 humanizer 的目的。humanizer 是为了让文字"读起来更像真人写的",**不是**为了"绕过检测"。**正确流程**:humanize 改完后,你**仍然**在发布时主动勾选"笔记含 AI 合成内容"。这样既合规,又因为内容自然不被限流。

**Q4: skill 能帮我自动监听评论,只读不写,可以吗?**

A: 不可以。哪怕是"只读"的自动化轮询,也属于平台规则禁止的"通过技术手段介入"。本 skill 设计上**不开放**这个功能。请用小红书 App 的原生通知,然后用本 skill 的 reply-triage 模式批量处理。

**Q5: 选题辅助怎么做?需要我手动喂素材?**

A: 是的。skill 不主动抓取小红书数据。建议每天 15 分钟真人浏览 App,把感兴趣的笔记**收藏 / 截图**,粘贴给 skill。这是**目前唯一长期合规**的选题路径。

**Q6: 本地文件输出在哪里?**

A: skill 在你启动它的工作目录下创建 `outputs/YYYY-MM-DD/{notes,replies,triage,humanized}/` 子目录。所有产出物按日期归档,文件名规范,直接打开复制粘贴即可。

---

## 🔗 相关文档

- 治理公告:小红书《关于打击 AI 托管运营账号的治理公告》(2026-03-10)
- AI 标识办法:《人工智能生成合成内容标识办法》(2025-09-01 生效)
- 设计参考:Wikipedia "Signs of AI writing" + ClawHub humanizer 项目
- 前身:`xiaohongshu-ops-yj` v1.7/v1.8(已弃用,违反平台规则)

---

## 📝 版本

- 当前版本:**v1.1.0**
- 发布日期:2026-04-27
- 作者:Eric.Yuan + Claude 协作产出

详细变更见 [CHANGELOG.md](./CHANGELOG.md)

---

## 📜 使用约定

**本 skill 不为以下行为背书**:
- 任何形式的自动发布
- 任何形式的自动互动(评论 / 私信 / 群聊)
- 任何试图"绕过"小红书 AI 检测的尝试
- 任何"代客理财" / "拉群带单" / "诱导开户"行为

**本 skill 鼓励的使用方式**:
- AI 辅助创作 + 真人审核 + 真人发布
- 主动声明 AI 内容,坦诚透明
- 长期可持续的创作者运营,不投机

---

*合规第一,工具第二。*


path: data/faq-library.md
content: # FAQ 风格库 — 我的回复模式沉淀

> **文档类型**:用户运行数据(初始为空模板)
> **维护方式**:由 skill 在用户主动确认后追加
> **本文位置**:`data/faq-library.md`

---

## 这是什么

这是你的**个人回复风格档案**。每次你用 skill 起草私信/评论回复后,如果你告诉 skill"我用了候选 X"或"我自己改成了这样",skill 会把这条问答**追加**到本文件。

随着积累,skill 会越来越懂你的语气、习惯用词、对不同问题的标准应对方式。**它学的是风格,不是事实判断**(具体市场观点不学,因为天天变)。

---

## 如何让 skill 沉淀 FAQ

任务结束时 skill 会问:

```
本次任务你最终用了哪一条?(可选回答)
A. 候选 X(skill 直接存)
B. 我自己改写了(把最终发的内容粘给我)
C. 我没回(不存,但记录"暂未应对此类问题")
D. 跳过(不沉淀)
```

只有 A 或 B 时才会更新本文件。

---

## 库内格式约定

每个条目长这样(skill 自动生成):

```markdown
## [类别] 问题原文

**首次记录**:YYYY-MM-DD HH:MM
**最近一次出现**:YYYY-MM-DD HH:MM
**累计遇到次数**:N

### 我的标准回复
[最终发出的回复全文]

### 风格特征
- 长度:约 X 字
- 语气:[亲切 / 专业 / 边界明确 / ...]
- 关键句式:[如 "看到啦~"、"我自己的判断是" 等]
- 是否含免责声明:✓ / ✗

### 类似问题(用户后续遇到时,skill 优先匹配)
- 变体 1:...
- 变体 2:...
```

---

## 类别枚举(skill 自动归类用)

skill 会把每条问答归到以下类别之一:

| 类别 | 说明 | 频率预估 |
|------|------|---------|
| `新手入门` | 期货是什么、怎么开始、看什么书 | 高 |
| `具体操作` | 现在能做空 X 吗、X 价位能进吗 | 高(都需高强度合规处理)|
| `风险求助` | 我亏了 / 爆仓 / 帮我看 | 中 |
| `组队拉群` | 加微信、建群、找搭子 | 中(标准拒绝模板)|
| `求带单` | 求带、求暗号、求大佬 | 低(标准拒绝)|
| `表达赞赏` | 好棒、学到了、辛苦 | 高(简短回应) |
| `催更/闲聊` | 怎么不更新、最近忙吗 | 中 |
| `质疑挑战` | 你这观点不对、你也亏过 | 中(理性回应)|
| `求合作/广告` | 商务合作、推广 | 低(走联系方式) |
| `其他` | 兜底 | — |

---

## 隐私与脱敏

skill 在沉淀时**自动脱敏**:

- 粉丝昵称 → 替换为 "粉丝" 或 "@用户" (除非你坚持保留)
- 具体日期 → 保留"YYYY-MM-DD"
- 手机号 / 微信号 / 身份证号 → 一律脱敏为 `[已脱敏]`
- 你提到的具体品种代码 + 价位 → 保留(这些是公开信息)

---

## 风格指纹提取(skill 用)

skill 在每次起草新回复前,会从本库提取你的**整体风格指纹**:

```yaml
风格指纹(自动计算,每次更新):
  开头偏好:["看到啦~", "谢谢呀~", "好问题"]  # top 3
  结尾偏好:["🌱", "(不构成投资建议)", "评论区见"]
  平均长度:48 字
  emoji 使用:中等(每条 0-2 个)
  口语词频率:"呀/嘛/呢/哈" 出现率 30%
  对边界问题的态度:温和但坚定
  对求带单的标准回应:已记录 N 次,套路稳定
```

新生成的候选会**自动贴近**这个风格,不需要你每次重新教 skill。

---

## 维护建议

- **每月扫一次**本文件,看看有没有"已经过时"或"风格已变"的条目
- 想删除某条 → 直接编辑此文件删除即可,skill 下次读时自动忽略
- 想更新某条标准回复 → 找到对应 `## [类别] 问题原文`,改"我的标准回复"段
- 文件**不会自动备份**,建议定期手动备份此文件(放 iCloud / OneDrive)

---

## 初始化

本文件**当前为空**(只有这份说明)。

当你第一次用 skill 起草回复并选择沉淀后,skill 会在本文件**最后**追加第一条记录。

---

<!-- 以下为 skill 自动维护区域,新条目会追加在这里 -->

<!-- ENTRIES_START -->
<!-- (空) -->
<!-- ENTRIES_END -->

---

*— EOF —*


path: references/faq-draft.md
content: # faq-draft.md — 单条私信/评论回复起草

> **文档类型**:Skill 参考文档(单条回复起草)
> **适用 Skill**:`xhs-creator-copilot` v1.0+
> **目标路径**:`references/faq-draft.md`
> **版本**:1.0.0

---

## 0. 这个模块解决什么问题

`reply-triage.md` 是**批量分诊**(一次处理一堆评论)。
本模块是**单条精修**:你收到一条特别想认真回的私信或评论,想花点时间打磨一下回复。

---

## 1. 输入方式(三种)

### 1.1 纯文本

```
用户:
  粉丝问:期货新手应该看什么书?
  帮我起草几个回复
```

### 1.2 带上下文

```
用户:
  这个粉丝之前买过我推荐的《日本蜡烛图》,今天又问:
  "看完了,还有进阶的推荐吗?"
  起草个回复
```

skill 会**识别上下文**(之前买过书),让回复体现延续性。

### 1.3 截图

```
用户:[上传一张私信截图]
  帮我回这条
```

skill 用视觉能力读出私信内容,然后处理。

---

## 2. skill 的处理流程

```
Step 1  接收输入 → 提取问题正文 + 上下文
Step 2  检索 data/faq-library.md(用户历史问答库)
        → 找相似问题(top 3)作为风格参考
Step 3  调用 LLM 生成 3 个长度档候选
Step 4  合规预检(敏感词、免责声明)
Step 5  自动 humanize medium 等级
Step 6  输出三候选 + 优先推荐 + 真人发送提示
Step 7  (可选)用户选定后 append 到 faq-library.md
```

---

## 3. 候选回复生成规则

每条问题生成 **3 个候选**:

| 候选 | 长度 | 语气 | 适用场景 |
|------|------|-----|---------|
| A. 简短直答 | ≤30 字 | 利落 | 你忙、问题简单 |
| B. 详细解答 | ≤80 字 | 友好专业 | 标准场景、展现专业度 |
| C. 互动引导 | ≤150 字 | 亲切 + 反问 | 想维护关系、促活 |

### 3.1 三档语气示例

**问题**:"期货新手应该看什么书?"

**A(28 字)**:
推荐《日本蜡烛图》《期货交易策略》,基础打牢再实操。

**B(72 字)**:
推荐顺序:先看《日本蜡烛图技术》打底,再看《海龟交易法则》懂系统化思维,
最后《期货市场技术分析》补全图表分析。三本看完基础就稳了。
(以上仅为个人分享)

**C(135 字)**:
好问题!推荐三本,顺序也很重要:
1️⃣ 《日本蜡烛图技术》— 看图基本功
2️⃣ 《海龟交易法则》— 系统化思维入门
3️⃣ 《期货市场技术分析》— 完整方法论

我自己当年是先看 1,边看边模拟盘练手,坚持了快两个月才动真金。
你打算什么时候开盘?有没有计划先模拟练手?
(以上仅为个人分享,不构成投资建议)

---

## 4. 合规规则

### 4.1 强制处理

- 涉及具体收益数字 → 强制加"以上仅为个人分享,不构成投资建议"
- 涉及具体品种+操作建议(如"现在能不能空棕榈油")→ 全候选都加风险提示
- 涉及"保本/稳赚/必涨"敏感词 → skill 拒绝生成,改为合规回避型回复

### 4.2 拒绝生成的场景

如果对方问的是以下类型,skill **不生成对话回复**,而是给你三种真人选项(同 reply-triage.md 的引流处理):

- 索要联系方式("加你微信""私信你")
- 要求具体操作建议("现在该买入还是卖出")— 这条可以委婉回避,但不能正面回答
- 邀请你加群、跟单、合作 → 引流嫌疑

---

## 5. humanize 处理

候选回复生成后**自动**走 medium 等级。

针对回复场景的 humanize 重点:
- 模式 #03:删除"探索/构建/塑造"等 AI 高频词
- 模式 #06:删除"不仅...而且..."三段排比
- 模式 #11:删除"然而、因此、综上"过度连接词
- 模式 #16:删除"总而言之""期待未来"等套话

期货圈语气适配(适度加 1-2 处):
- 自嘲:"我也踩过这坑""当年我..."
- 时间锚点:"我去年..."、"上周三我..."
- 圈内黑话:"扛单""强平""主力洗"(如果对方是老粉)

---

## 6. 输出格式

输出文件保存到 `outputs/YYYY-MM-DD/single-reply-{topic-slug}-{HHMMSS}.md`(具体规范见 `local-output.md`)。

```markdown
# 单条回复起草

**生成时间**:2026-04-25 21:45
**问题来源**:私信(粉丝 @某某)
**问题摘要**:期货新手应该看什么书

---

## 📋 原问题

> 期货新手应该看什么书?

**问题分类**:真诚求知型(高转化潜力)
**推荐语气**:专业 + 友好,可加互动

---

## 💬 候选回复

### A:简短直答(28 字)

推荐《日本蜡烛图》《期货交易策略》,基础打牢再实操。

### B:详细解答(72 字)⭐ 推荐

推荐顺序:先看《日本蜡烛图技术》打底,再看《海龟交易法则》懂系统化思维,
最后《期货市场技术分析》补全图表分析。三本看完基础就稳了。
(以上仅为个人分享)

### C:互动引导(135 字)

好问题!推荐三本,顺序也很重要:
1️⃣ 《日本蜡烛图技术》— 看图基本功
2️⃣ 《海龟交易法则》— 系统化思维入门
3️⃣ 《期货市场技术分析》— 完整方法论

我自己当年是先看 1,边看边模拟盘练手,坚持了快两个月才动真金。
你打算什么时候开盘?有没有计划先模拟练手?

(以上仅为个人分享,不构成投资建议)

---

## 📌 真人发送提示

✅ 已保存:outputs/2026-04-25/single-reply-rumenshu-214500.md

下一步:
1. 你选 A/B/C 中的一个
2. 复制 → 切到小红书 App / Web
3. 找到对应私信或评论
4. 粘贴 → 发送

⚠️ 此回复不需要勾选"AI 合成内容"声明
   (评论/私信不在《标识办法》强制范围,但仍建议自然真人化)

---

## 💾 (可选)沉淀到 FAQ 库

如果你觉得这个问答风格不错,可以告诉 skill:
"把这个存到 FAQ"
我会 append 到 data/faq-library.md,下次类似问题用这个风格生成。
```

---

## 7. FAQ 库沉淀机制

### 7.1 触发方式

用户在用完候选后说:
- "把这个存 FAQ"
- "记下来"
- "这个回答风格不错,以后照这样回"

### 7.2 存储格式(append 到 `data/faq-library.md`)

```markdown
## Q: 期货新手应该看什么书?
- 时间:2026-04-25
- 类型:真诚求知 / 入门类
- 我用的回复:[B 候选的内容]
- 备注:这类问题用 B 长度最好,带书单顺序更显专业

---
```

### 7.3 后续调用

当用户再次问"新手书单"时,skill 会:
1. 检索 faq-library.md 找到这条记录
2. 在生成新候选时,**模仿**这个用户已用过的风格
3. 生成的候选会更贴近这个创作者的语气

这是一个**越用越懂你**的系统。

---

## 8. 与 reply-triage.md 的区别

| 维度 | reply-triage.md | faq-draft.md(本模块)|
|------|----------------|---------------------|
| 输入 | 截图 + 多条评论 | 单条问题(可带上下文)|
| 输出 | 分类清单 + 简短候选 | 3 档长度 + 精细打磨 |
| humanize 等级 | light | medium |
| 适用场景 | 每天批量处理 | 单条认真回复 |
| FAQ 库 | 选择性沉淀 | 鼓励沉淀 |

**用户应该这样组合使用**:
- 每天晚上一次 `reply-triage`(15 分钟批量处理)
- 遇到特别想认真回的,临时调用 `faq-draft`(5 分钟精修)

---

## 9. 与其他模块协作

| 模块 | 调用关系 |
|------|---------|
| `humanizer.md` | 候选生成后自动 medium |
| `compliance-guide.md` | 合规规则参考 |
| `local-output.md` | 输出格式 |
| `data/faq-library.md` | 风格沉淀 + 反哺生成 |

---

## 10. 版本历史

| 版本 | 日期 | 变更 |
|------|------|------|
| 1.0.0 | 2026-04-25 | 首版,纯粘贴模式,3 档候选,FAQ 库沉淀 |

---

*— EOF —*


path: references/content.md
content: # content.md — 笔记内容生成与选题辅助

> **文档类型**:Skill 参考文档(笔记起草)
> **适用 Skill**:`xhs-creator-copilot` v1.1+
> **目标路径**:`references/content.md`
> **版本**:1.1.0

---

## 0. 本模块作用

负责两件事:

1. **选题辅助**:根据用户提供的素材(官方后台截图、收藏笔记、跨平台指数等),帮用户选话题
2. **三版本笔记起草**:干货教学型 / 故事叙述型 / 数据播报型,起草后自动走 humanize → 合规预检 → 本地输出

**本模块不会**:
- ❌ 自动抓取小红书任何数据
- ❌ 联网访问平台
- ❌ 调用任何浏览器工具

**素材完全由真人提供**(粘贴文本 / 上传截图 / 描述记忆)。

---

## 1. 选题辅助

### 1.1 输入源(全部由真人提供)

| 素材类型 | 用户操作 | skill 处理 |
|---------|---------|----------|
| 官方后台热点截图 | 上传创作服务平台首页截图 | 视觉识别活动列表 + 笔记灵感 |
| 个人收藏清单 | 粘贴收藏笔记的标题 | 聚类分析话题方向 |
| 跨平台趋势 | 粘贴微信指数 / 百度指数截图 | 提取热度关键词 |
| 用户记忆 | 文字描述"我最近想到 X 话题" | 直接基于此扩展 |
| 历史数据 | skill 读 `data/publish_log.json` | 识别用户已发过什么 |

### 1.2 选题分析输出

```markdown
# 选题建议(2026-04-25)

## 输入素材汇总
- 官方热点活动:RED新生代创作大赛、星布谷地
- 你的收藏:5 条笔记(主题集中在止损纪律、保证金管理)
- 微信指数热词(期货相关):豆粕、棕榈油、降息预期
- 你近期已发:3 篇都是干货型

## 推荐选题(5 个候选)

### 选题 1 ⭐(推荐度最高)
**主题**:豆粕这波怎么看 — 我的判断逻辑
**类型**:故事叙述型(B 版)
**理由**:
- 豆粕是当前微信指数热词
- 你近期 3 篇都是干货型,B 版能换换节奏
- 故事型适合你想引导关注的 goal

### 选题 2
...

### 选题 3
...
```

### 1.3 选题红线

skill **不**推荐以下类型选题(即使热度高):
- ❌ "稳赚 / 翻倍 / 暴赚"叙事 → 合规违规
- ❌ "代客理财 / 跟单 / 喊单"导向 → 平台禁止
- ❌ 模仿其他博主的具体笔记 → 同质化风险
- ❌ 平台敏感事件(政策不确定的话题)→ 限流风险

---

## 2. 三版本笔记起草

每次起草**必须生成 3 个版本**(A 干货 / B 故事 / C 播报),让用户选。这是从 v1.8 沿用并强化的设计。

### 2.1 版本 A:干货教学型

**定位**:结构化知识输出,高收藏率,适合 `引导收藏` / `引导关注` 类目标。

**结构骨架**:

```
[钩子句 ≤30字]              ← 提出问题或反常识
     ↓
[核心概念定义 ≤100字]        ← 1 句话讲清是什么
     ↓
[3 个要点](或 2 个、4 个,避免每篇都是 3 个)
  要点1:标题 + 50字解释 + 具体例子
  要点2:同上
  要点3:同上
     ↓
[对比/总结 ≤80字]            ← 可选
     ↓
[免责声明]                   ← 强制
     ↓
[行动引导] ≤30字              ← 关注/收藏导向
```

**语言风格**:
- 第二人称为主("你""我们")
- 关键术语首次出现加括注:`保证金(交易所要求的履约担保金)`
- 禁用绝对化表述

**Humanize 处理**:起草完成后自动走 medium 等级,重点处理模式 #06(三段排比)、#10(总分总死结构)、#21(缺具体细节)。

### 2.2 版本 B:故事叙述型

**定位**:情感共鸣,评论区活跃,适合 `引导关注` / `引导私信` 类目标。

**结构骨架**:

```
[个人经历引子 ≈100字]        ← 时间、地点、具体场景
     ↓
[转折点 ≈80字]              ← 意料之外发生了什么
     ↓
[思考/复盘 ≈150字]           ← 学到什么
     ↓
[结论升华 ≈50字]             ← 与主题呼应(避免空洞升华)
     ↓
[互动问题 ≤30字]             ← "你有过类似经历吗?"
     ↓
[免责声明]                   ← 强制
```

**语言风格**:
- **必须**第一人称("我""我当时")
- **必须**有具体时间锚点("2024 年 4 月""上周三")
- **必须**有具体数字("亏了 2 万 8""扛了 5 分钟")
- 适度自嘲(期货圈有效)

**Humanize 处理**:走 medium 等级。故事型最容易出 AI 味(因为 AI 倾向"完美叙事"),humanize 时重点处理模式 #20(完美主义文风)、#19(客观中立腔)、#15(升华癖)。

### 2.3 版本 C:数据播报型

**定位**:信息密度高,低情感,适合每日快讯 / 高频发布场景。

**结构骨架**:

```
[数据标题 ≤20字]             ← 包含核心数字
     ↓
[核心数据 3 条]
  📊 数据1:指标 + 数值 + 环比/同比
  📊 数据2:同上
  📊 数据3:同上
     ↓
[简短分析 ≤150字]            ← 数据背后的原因/影响
     ↓
[后市关注点 ≤80字](可选)
     ↓
[免责声明]                   ← 强制
     ↓
[信源标注]                   ← "数据来源:上期所"
```

**语言风格**:
- 客观中性,不带情绪词
- 数字精确到合适量级("上涨 12.3%" 而非"大涨")
- 使用 emoji 分隔数据条目

**Humanize 处理**:走 light 等级(播报型本身就该是相对客观的;过度 humanize 反而失专业感)。

---

## 3. 字数与标题规则

### 3.1 字数硬上限

| publish_type | 标题硬上限 | 正文建议 |
|-------------|-----------|---------|
| 图文 | 20 字 | 500-1000 字 |
| 长文 | 64 字 | 1500+ 字(享受"字数和时长"徽标)|

### 3.2 标题公式

| 版本 | 公式 | 示例 |
|------|------|------|
| A 干货型 | `[数字]+[核心概念]+[价值承诺]` | "3个指标看懂期货保证金" |
| A 干货型 | `[核心概念]+[对比/区别]` | "期货和股票的 3 个本质区别" |
| B 故事型 | `[时间/数字]+[身份]+[转折]` | "10 万亏 18% 那周,我才懂..." |
| B 故事型 | `[场景]+[顿悟]` | "K 线盯到凌晨 3 点,我才懂杠杆" |
| C 播报型 | `[日期]+[品种]+[数字]` | "4.25 期货收盘 \| 沪铜+0.8%" |
| C 播报型 | `[数字]+[品种]+[动向]` | "3 大能化品普跌,沥青领跌 1.2%" |

### 3.3 标题红线

- ❌ 具体收益数字("我靠期货赚了 50 万")
- ❌ 诱导性承诺("看完必赚")
- ❌ 独家/内幕词汇

---

## 4. 期货/财经赛道词库

### 4.1 专业术语首次注释清单

| 术语 | 通俗注释 |
|------|---------|
| 保证金 | 交易所要求的履约担保金 |
| 杠杆 | 用少量资金控制大规模合约 |
| 开仓 | 建立期货合约头寸 |
| 平仓 | 结束期货合约头寸 |
| 多头/做多 | 看涨方向 |
| 空头/做空 | 看跌方向 |
| 强制平仓 | 保证金不足时被系统强平 |
| 交割 | 合约到期履约 |
| 基差 | 现货价 - 期货价 |
| 套保 | 用期货对冲现货风险 |
| 投机 | 纯粹赌方向赚价差 |

### 4.2 话题库

**常青话题**(每条配 2-3 个):
- `#期货` `#期货交易` `#期货入门`
- `#投资` `#金融投资` `#理财日记`

**场景话题**(按内容选 1-2 个):

| 内容场景 | 推荐话题 |
|---------|---------|
| 新手入门 | `#新手炒期货` `#期货入门` `#理财小白` |
| 交易心得 | `#交易技巧` `#交易感悟` `#操盘日记` |
| 数据播报 | `#期货行情` `#市场速递` `#每日复盘` |
| 风控 | `#投资避坑` `#风控第一` `#交易纪律` |
| 品种 | `#大宗商品` `#贵金属` `#能化品` `#农产品` |
| 合规 | `#投资有风险` `#理性投资` |

**绝对避免**:含"暴富""翻倍""稳赢"等词的话题。

---

## 5. 合规预检(强制)

每个版本生成后,**必须**过合规扫描。**期货/财经赛道是平台 2026 年点名的"审核加严类目"**,任何高风险词都立即拦截(不留余地)。

### 5.1 敏感词扫描(立即拦截)

发现以下词,**强制替换或拒绝**:

```
稳赚、必涨、必跌、保本、内幕消息、翻倍、跟单、喊单、居间、
一夜暴富、保证盈利、稳赢、零风险、无风险、必胜、暴富
```

### 5.2 高风险表述(标注提醒)

- 具体收益率数字("月收益 30%")→ 必须删数字或加风险提示
- 确定性预测("一定会涨")→ 改概率性表述
- 承诺性收益 → 全部删

### 5.3 免责声明(必须存在)

每个版本结尾必须含**至少**一句:
- 不构成投资建议
- 仅供参考
- 理财有风险
- 投资有风险
- 入市需谨慎

如缺失,skill 自动追加默认句:`以上仅为个人分享,不构成投资建议。`

### 5.4 AI 内容标识(v1.1.0 强制)⭐

每个版本生成后,skill **自动在正文末尾追加**:

```
本文部分内容由 AI 辅助生成。
```

这是 2026-02-12 小红书 AI 标识公告 + GB 45438-2025 国标的强制要求,
**用户不得删除该标识**(humanizer 处理时也不得移除)。

最终发布时,真人**仍需**在小红书后台勾选「设置 → 内容类型声明 → 笔记含 AI 合成内容」(双重标识)。

### 5.5 故事营销红线(v1.1.0 新增)⭐

针对**版本 B 故事叙述型**,skill **严禁**生成以下内容:

- ❌ 编造**具体对话**("我朋友老张跟我说...")
- ❌ 伪造**聊天记录截图**(skill 不生成此类素材)
- ❌ 伪装**特定身份**("我是 XX 公司前研究员")
- ❌ 伪造**客户反馈**("有学员跟我说...")

**允许的故事内容**:
- ✅ 用户**自己真实的经历**(用户口述,skill 复述)
- ✅ 公开的**真实事件**(有出处可查)
- ✅ 明确标注的**虚构案例**("举个例子,假设有人...")

### 5.6 矩阵账号风险提示(v1.1.0 新增)⭐

如果 skill 检测到用户**最近 3 天内已生成 ≥ 5 篇笔记**,主动提示:

> ⚠️ 你最近 3 天已生成 5 篇笔记。平台 2026 新规对"批量发相似内容"识别加强,
> 建议:① 错峰发布(每天 ≤2 篇)② 加入更多个人真实经历 ③ 内容结构错开

---

## 6. 输出格式(给用户看)

```markdown
# 笔记起草结果

**主题**:期货保证金详解
**目标**:引导关注
**类型**:图文笔记

---

## 【版本 A:干货教学型】⭐(goal=引导关注 推荐)

**标题**:3个指标看懂期货保证金

**正文**(580 字):

很多人以为期货的"保证金"就是押金,其实它是交易所强制的履约担保。
搞错这个,你的资金管理大概率会出问题。

(此处展开 3 要点 ...)

以上仅为个人分享,不构成投资建议。

**标签**:#期货入门 #保证金 #新手炒期货 #理性投资

**Humanize 评分**:18/100(已处理,真人感强)
**合规状态**:✅ 通过

---

## 【版本 B:故事叙述型】

(同上结构)

---

## 【版本 C:数据播报型】

(同上结构)

---

请回复 A / B / C 选择你想用的版本,我会保存到本地并提示发布注意事项。
```

---

## 7. 用户选择后的流程

用户回复 A / B / C 后:

1. skill 把选中的版本调用 `local-output.md` 输出到 `outputs/YYYY-MM-DD/`
2. 文件命名:`note-{type}-{topic-slug}-v{ABC}.md`
3. 输出末尾**必须**包含 §3.4 提示(下一节)

### 7.1 必含的发布提示

```markdown
---

## 📌 真人发布提示

✅ 内容已保存到:`outputs/2026-04-25/note-image-text-baozhengjin-vA.md`

发布步骤(由你手动完成):
1. 打开小红书 App 或 Web 创作服务平台
2. 选择对应类型(图文/长文)
3. 复制本文件内容粘贴
4. 上传配图(如有)
5. 🏷️ **必须**:在「设置 → 内容类型声明」勾选「**笔记含 AI 合成内容**」
6. 检查预览,点击发布

⚠️ 节奏提醒:
- 你最近 7 天发布了 N 篇,频次正常 / 需放缓
- 同主题内容已有 M 篇,建议下次换方向

依据《人工智能生成合成内容标识办法》,
未主动标识 AI 内容可能被平台限流。
```

---

## 8. 与其他模块协作

| 模块 | 调用关系 |
|------|---------|
| `humanizer.md` | 三版本起草后,A/B 版自动 medium、C 版自动 light |
| `compliance-guide.md` | 合规预检规则参考 |
| `local-output.md` | 输出格式与文件命名 |
| `data/publish_log.json` | 节奏检测、同质化检测 |

---

## 9. 版本历史

| 版本 | 日期 | 变更 |
|------|------|------|
| 1.0.0 | 2026-04-25 | 从 v1.8 精简,去除所有发布自动化相关;加入选题辅助、humanize 集成、本地输出指引 |
| **1.1.0** | **2026-04-27** | 对齐 2026-02 新规:① §5.4 自动追加正文级 AI 标识声明 ② §5.5 故事型红线(禁伪造对话/身份/客户反馈)③ §5.6 矩阵账号节奏提示 ④ 高敏类目阈值收紧表述 |

---

*— EOF —*


path: references/reply-triage.md
content: # reply-triage.md — 评论批量分诊(截图模式)

> **文档类型**:Skill 参考文档(批量回复辅助)
> **适用 Skill**:`xhs-creator-copilot` v1.0+
> **目标路径**:`references/reply-triage.md`
> **版本**:1.0.0

---

## 0. 这个模块解决什么问题

每天打开小红书 App 看到一长串评论通知,手动一条条回慢且容易漏。这个模块让你:

1. 在 App / Web 内截图通知页(或几张连续滚动的截图)
2. 把截图发给 skill
3. skill 自动:**视觉识别 → 分类排序 → 生成候选回复 → 输出本地清单**
4. 你按清单优先级,在 App 内**手动**回复

整套流程**真人主导**,skill 只做 **"读 + 分析 + 建议"**,不接触平台。

---

## 1. 输入规范

### 1.1 推荐输入

- **小红书 App 内**截图通知页面("评论和@"标签下)
- **Web 端 xiaohongshu.com/notification**截图
- 一次可上传 1-N 张截图(支持滚动连续截图)
- 截图清晰度要求:文字可读即可,无需高分辨率

### 1.2 不接受的输入

- ❌ 用户/粉丝主页截图(分诊不应触及他人主页)
- ❌ 来自第三方监听工具的截图(我们不鼓励此类工具)
- ❌ 非小红书的其他平台截图(这个 skill 专做小红书)

### 1.3 用户提示语示例

```
用户:这是今天的评论,帮我整理一下回复清单
[上传 3 张截图]

用户:批量分诊,优先标出引流嫌疑的
[上传 1 张长截图]
```

---

## 2. 视觉识别要做的事

skill 看到截图后,逐张提取以下结构化信息:

| 字段 | 必填 | 说明 |
|------|------|------|
| `commenter_nickname` | ✅ | 评论者昵称 |
| `commenter_avatar_hint` | ❌ | 头像特征(动物/人脸/卡通/默认头像)— 用于辅助判别新号 |
| `comment_date` | ✅ | 评论日期(如"03-31") |
| `target_note_title` | ❌ | 被评论的笔记标题(如截图中可见) |
| `comment_text` | ✅ | 评论原文 |
| `has_image` | ❌ | 评论是否含图片 |
| `nested_reply` | ❌ | 是否是其他人回复给某个评论 |

### 2.1 识别策略

- **OCR 优先**:用 Claude 的视觉能力直接读出文字
- **结构推断**:每条评论通常包含【头像 + 昵称行 + "评论了你的笔记 X-XX" + 评论正文 + (可选)图片标记】
- **去重**:多张截图可能有重复评论(滚动重叠区),按"昵称+日期+前 20 字"做去重

### 2.2 失败兜底

- 截图模糊导致无法识别 → 提示用户重新截图
- 评论内容是图片/表情包 → 标注"图片评论",建议用户手动回复
- 不可识别的特殊昵称(emoji 全昵称等)→ 用截图位置标注"第 N 条评论"

---

## 3. 分类规则

每条评论必须归类到以下**6 类**之一:

### 🔴 高优先级(必回)

#### A. 真诚提问(高转化潜力)

**信号词**:"怎么...""能不能...""新手...""请问...""有没有...""推荐"

**例子**:
- "新手应该看什么书?"
- "保证金怎么计算?"
- "请问止损怎么设?"

**回复策略**:专业 + 友好,带轻度互动引导。

#### B. 质疑型(带建设性,可能成为深度互动)

**信号词**:"我觉得不对""真的吗""感觉是...""不就是..."

**例子**:
- "日内交易开盘就操作真就是赌博啊"
- "你这止损位设得太宽了吧"

**回复策略**:**先认同部分观点**,再补充自己视角。绝不硬刚。

### 🟡 中优先级(建议回复)

#### C. 普通互动(点赞/认同/简单互动)

**信号词**:"学到了""有道理""感谢分享""收藏了"

**例子**:
- "学到了"
- "蹲一个后续"
- "讲得清楚"

**回复策略**:简短回应即可,可加 emoji。

#### D. 闲聊型(粉丝混脸熟)

**信号词**:口水话、和话题关系不大的吐槽

**回复策略**:友好简短,不必长篇大论。

### 🟢 低优先级(可选)

#### E. 表情/图片评论(无文字内容)

**回复策略**:可选,通常一个 emoji 回应即可。

### ⛔ 风险类(不建议回复 + 需警惕)

#### F. 引流嫌疑 / 广告 / 违规

**强烈信号词**:
- "搭子" "进群" "加微信" "加 v" "私我" "+我"
- "一起搞钱" "带你做" "跟我做" "稳赚" "保证盈利"
- "我这有内幕" "内部消息" "代客理财"
- 评论里直接放联系方式

**Skill 应**:
1. ⛔ **不生成对话式回复**(避免你被当成共犯/默许)
2. ✅ 标注"引流嫌疑"+ 简要说明
3. ✅ 给出三种**真人**操作建议:
   - 选项 1:**举报 + 拉黑**(平台对引流评论的官方处理)
   - 选项 2:简短礼貌划清边界,如"欢迎常来看笔记交流学习 🌟(不构成投资建议哦)"
   - 选项 3:不回复,删除该评论(笔记作者有权删除评论)
4. ⚠️ **特别警告**:期货赛道的"搭子""一起搞钱"评论,如果你**回复了对方的引流话术(哪怕只是客套)**,平台风控可能把你也判为引流共犯。所以这类评论**最稳的操作是举报 + 拉黑**。

---

## 4. 候选回复生成规则

每条评论生成 **2-3 个候选回复**:

| 候选 | 长度 | 语气 | 适用 |
|------|------|------|------|
| A | ≤30 字 | 简洁 | 你忙、不想多互动 |
| B | ≤80 字 | 友好专业 | 标准回复 |
| C(可选)| ≤150 字 | 亲切+反问 | 想维护关系、深度互动 |

### 4.1 合规前置(每个候选都过)

- 涉及具体收益/操作建议 → 强制追加"以上仅为个人分享,不构成投资建议"
- 含敏感词("稳赚""必涨""保本"等)→ skill 拒绝生成,改为礼貌回避型回复
- 涉及拉群、加微信、加 v 的诱导 → skill 强制不生成(同 §3.F 风险类)

### 4.2 humanize 处理

候选回复生成后**自动走** humanize light 等级(回复较短,light 已足够)。具体规则见 `humanizer.md §3.1`。

### 4.3 期货圈语气适配

候选回复中适度使用以下口语颗粒(见 humanizer.md §4),让回复"像真人":
- 自嘲词:"我又给主力送钱了""我之前也踩过这坑"
- 期货圈黑话:"扛单""加马""强平""主力洗盘"
- 时间锚点:"昨天""上周""我去年..."

---

## 5. 输出格式规范

输出文件保存到 `outputs/YYYY-MM-DD/reply-triage-{HHMMSS}.md`(具体规范见 `local-output.md`)。

### 5.1 完整输出模板

```markdown
# 今日评论分诊清单

**生成时间**:2026-04-25 21:38
**截图数量**:3 张
**评论总数**:12 条
**去重后**:11 条
**优先级分布**:🔴 4 | 🟡 5 | 🟢 1 | ⛔ 1

---

## 🔴 高优先级(必回,4 条)

### 1. @新手分析师 | 03-24 | 笔记「日内交易教训」

**📋 原评论**:
> 日内交易,开盘就操作真就是赌博啊

**💬 类型**:质疑型(带建设性,B 类)
**📊 转化潜力**:中 — 此粉丝有思考,适合深度互动
**🎯 推荐语气**:专业 + 认同部分观点

**候选回复**:

**A(28 字,简洁)**
说真的开盘就梭就是赌,我自己只在确认信号后才进场。

**B(78 字,标准)** ⭐ 推荐
你说的对,无脑追开盘就是给主力送钱。我做日内只做两类:
横盘突破+止损明确的,或者隔夜跳空回补的。其他时段我宁可空仓。

**C(132 字,深度互动)**
好问题 👀 我刚做日内时也总是开盘就开仓,亏到怀疑人生。
后来才发现 90% 的爆仓都是开盘 15 分钟内造成的,因为流动性差、波动大、
信号不清。现在我习惯等 9:15 左右,看明白主力意图再动。
你做日内一般什么时段进场?

---

### 2. @咪咪咪羊~ | 03-31 | 笔记「期货入门」

**📋 原评论**:
> 找个期货搭子一起搞钱 🍑

**💬 类型**:⛔ 引流嫌疑(F 类)
**⚠️ 风险提示**:"搭子""搞钱"+ 桃子 emoji 是引流话术典型组合

**Skill 不生成对话回复**。建议你的操作:

🟢 **建议优先**:举报 + 拉黑
   小红书评论右滑 → 举报 → 选"诱导引流"
   然后长按头像 → 拉黑

🟡 **如果想保留礼貌**:
   "欢迎常来看笔记交流学习 🌟(不构成投资建议哦)"

🔴 **最不推荐**:深度回复 — 期货赛道里此类评论一旦你和对方"建立对话",
   平台风控可能把你也判定为引流场所提供方,影响账号权重。

---

### 3. @小红薯64F09960 | ...
(同样结构)

---

## 🟡 中优先级(建议回复,5 条)

### 5. @xxx | 04-22

**📋 原评论**:学到了

**💬 类型**:点赞式互动(C 类)

**候选回复**:
**A**:❤️
**B**:谢谢支持~ 有问题随时评论区聊
**C**:如果有具体想了解的方向也可以告诉我,后面笔记安排上 ✍️

---

(其他 🟡 评论同样结构,简化展示)

---

## 🟢 低优先级(可选,1 条)

### 11. @xxx | 04-20

**📋 原评论**:🍑[图片]

**💬 类型**:表情评论(E 类)
**建议**:🍑 回应即可,或不回。

---

## ⛔ 风险类(已在高优先级中标注,见第 2 条)

---

## 📌 处理建议清单(给真人的 TODO)

按优先级建议你的操作顺序:

1. ✅ 第 2 条(咪咪咪羊~)→ 举报+拉黑(2 分钟)
2. ✅ 第 1 条(新手分析师)→ 复制候选 B 回复(1 分钟)
3. ✅ 第 3 条(小红薯64F09960)→ 复制候选 ?
4. ✅ ...

**预估总耗时**:10-12 分钟

---

## 🏷️ 真人发送提示

请你逐条在小红书 App 内手动复制 → 粘贴 → 发送回复。
**不建议**对引流嫌疑评论(F 类)做对话式回复,以免被平台风控关联。
```

---

## 6. 降级模式(纯文本输入)

当用户的环境**没有视觉能力**(纯 API、弱视觉模型),或截图识别失败时,降级为**文本粘贴模式**:

### 6.1 用户操作

```
1. 在 Web 端 xiaohongshu.com/notification
2. Cmd+A / Ctrl+A 全选
3. 复制粘贴整页文本到 skill
4. 提示语:"帮我做评论分诊"
```

### 6.2 skill 处理

- 用文本结构识别(昵称行 + "评论了你的笔记 X-XX" + 内容行)拆分
- 其他流程相同

---

## 7. 不该做的事

- ❌ **不主动**问用户要小红书登录信息或 Cookie
- ❌ **不主动**提议"帮你监听新评论"或"轮询"
- ❌ **不生成**针对引流嫌疑评论的对话式回复
- ❌ **不忽略**合规守门(任何回复候选都要走 humanize + 合规检查)
- ❌ **不替**用户做"该不该回复"的最终决定 — 优先级是建议,不是命令

---

## 8. 数据沉淀机制

每次分诊完成后,可以问用户:

```
本次有 X 条回复你打算用候选 Y。要把这种"问题→你的回答风格"
存到 FAQ 库吗?(下次类似问题 skill 会参考你的风格生成)
```

用户同意后,append 到 `data/faq-library.md`。

---

## 9. 与其他模块的协作

| 协作模块 | 调用关系 |
|---------|---------|
| `humanizer.md` | 候选回复生成后自动调用,light 等级 |
| `compliance-guide.md` | 引流嫌疑判定逻辑参考此文档 |
| `local-output.md` | 输出文件路径与格式规范 |
| `data/faq-library.md` | 沉淀用户的 FAQ 风格,反哺下次生成 |

---

## 10. 版本历史

| 版本 | 日期 | 变更 |
|------|------|------|
| 1.0.0 | 2026-04-25 | 首版,默认截图模式,降级支持文本模式 |

---

*— EOF —*


path: references/humanizer.md
content: # humanizer.md — AI 写作痕迹去除(中文 + 期货/财经赛道适配版)

> **文档类型**:Skill 参考文档(去 AI 化引擎)
> **适用 Skill**:`xhs-creator-copilot` v1.0+
> **目标路径**:`references/humanizer.md`
> **版本**:1.1.0
> **最后更新**:2026-04-27
> **设计参考**:Wikipedia "Signs of AI writing" 指南 + ClawHub `biostartechnology/humanizer` skill 思路,**已中文化并适配期货/财经赛道**

---

## ⚠️ 合规边界声明(v1.1.0 强化)

**本模块的目的是让文字"读起来更自然",不是"骗过 AI 检测器"。**

依据 2026-02-12 小红书 AI 内容治理公告 + GB 45438-2025 国标:

- 平台采用**双轨识别**(技术轨 + 行为轨),humanizer 改写**不能**长期"绕过"检测
- humanizer 改完后,用户**仍然**必须在发布时勾选"笔记含 AI 合成内容"(后台标识)
- 输出的笔记 final 文件**自动追加**正文级 AI 标识声明:"本文部分内容由 AI 辅助生成"
- 用户**不得**手动删除该正文标识 — 否则违反《标识办法》

**正确流程**:humanize 改文风 + 主动勾选 AI 标识 = 平台官方承诺**不限分发**。
**错误流程**:humanize 改文风 + 隐瞒 AI 属性 = 被识别后限流 + 信用记录。

---

## 0. 为什么需要这一步

小红书在 2025-09 之后启用「机器+人工」双重 AI 内容识别(包括音画识别和文本识别),且 2026-03 之后对 AI 托管账号梯度处罚到永封。**未做去 AI 化处理的内容,有三大风险**:

1. **限流风险**:平台识别为 AI 生成 → 限制分发
2. **降权风险**:连续多篇 AI 味浓的内容 → 账号整体推荐权重下降
3. **被举报风险**:小红书读者对 AI 味敏感,期货/财经赛道用户尤其反感"机器感",举报会触发人工审核

**我们的目标不是"骗过 AI 检测器"**(这是反对抗赛跑,会输),**而是产出"真人会写出来的内容"**:有口语颗粒、有具体细节、有个人情绪、有不完美的句法。这本身也提升了内容质量。

---

## 1. 检测模式总览(24 类)

中文版 AI 写作痕迹分四大类共 24 个模式。每个模式都有**识别标志 + 改写策略**。

| # | 类别 | 模式名 | 严重度 | 中文典型表现 |
|---|------|--------|--------|------------|
| 01 | 词汇 | 夸大修饰滥用 | 🔴 高 | 卓越、非凡、显著、深刻、关键、至关重要 |
| 02 | 词汇 | 推销式语言 | 🔴 高 | 标志性、突破性、革命性、引领、赋能 |
| 03 | 词汇 | AI 高频词 | 🔴 高 | 探索、构建、塑造、绽放、织就、谱写 |
| 04 | 词汇 | 抽象名词堆砌 | 🟡 中 | 维度、层面、本质、内核、底层逻辑 |
| 05 | 词汇 | 万能形容词 | 🟡 中 | 多元、丰富、深度、立体、全方位 |
| 06 | 句式 | 三段式排比泛滥 | 🔴 高 | "不仅...而且...更..."、"既...又...也..." |
| 07 | 句式 | 否定式排比 | 🟡 中 | "不是...不是...而是..." |
| 08 | 句式 | 浮于表面的"-ing"分析 | 🔴 高 | "深入剖析着...、生动诠释着..." |
| 09 | 句式 | 模糊归因 | 🔴 高 | "有研究表明"、"业内人士指出"、"专家认为" |
| 10 | 句式 | 总分总死结构 | 🔴 高 | 开篇定调 + 三点展开 + 升华结尾 |
| 11 | 句式 | 过度连接词 | 🟡 中 | 然而、因此、综上所述、值得一提的是 |
| 12 | 句式 | 平衡对仗执念 | 🟡 中 | 每段字数雷同、每点长度一致 |
| 13 | 标点 | 破折号 — 滥用 | 🟡 中 | 中文文本里出现大量长破折号 |
| 14 | 标点 | 双引号包装术语 | 🟢 低 | 把普通词都加上"引号""来""强调" |
| 15 | 风格 | 升华癖(意义膨胀)| 🔴 高 | "这不仅是 X,更是对 Y 的深刻诠释" |
| 16 | 风格 | 通用结尾套话 | 🔴 高 | "总而言之、让我们一起、期待未来" |
| 17 | 风格 | 万金油开场 | 🔴 高 | "在这个 X 的时代""随着 Y 的发展" |
| 18 | 风格 | 价值观抒情结尾 | 🟡 中 | 突然升华到"美好生活""时代精神" |
| 19 | 风格 | 客观中立腔 | 🟡 中 | 全篇没有第一人称的真实情绪 |
| 20 | 风格 | 完美主义文风 | 🟡 中 | 没有口误、没有犹豫、没有"嗯…" |
| 21 | 内容 | 缺具体细节 | 🔴 高 | 全是概念描述,没有具体数字/时间/地点 |
| 22 | 内容 | 同质化举例 | 🟡 中 | 例子是"小李、小王"这种符号化 |
| 23 | 内容 | 过度全面 | 🟡 中 | 一个回答把所有可能性都列出来 |
| 24 | 内容 | 列表化思维 | 🔴 高 | 任何东西都拆成 1234 编号 |

🔴 高严重度 = 必须改写;🟡 中 = 建议改写;🟢 低 = 提醒用户但可保留

---

## 2. 各模式详解 + 改写策略

### 2.1 词汇类(模式 01-05)

#### 模式 01 — 夸大修饰滥用 🔴

**识别**:每段都有"卓越""非凡""显著""深刻""关键""至关重要""极致"

**坏例子**(AI 味满分):
> 期货市场的杠杆机制具有**至关重要**的作用,它**深刻**改变了**卓越**的资金效率,**显著**提升了风险对冲能力。

**改写策略**:删掉这些词,大多数情况下句子反而更清晰。

**好例子**(改写后):
> 期货的杠杆把资金效率拉高了好几倍,但风险也跟着放大。

#### 模式 02 — 推销式语言 🔴

**识别**:"标志性""突破性""革命性""引领""赋能""驱动""焕新"

**坏**:
> 这是**标志性**的交易策略,**革命性**地**赋能**了散户的盈利能力。

**好**(改写后):
> 这套策略我用了两年,亏过也赚过,适合中小账户。

**期货赛道额外提醒**:这类词在财经语境里更可疑,容易被读者识别为"软广"。

#### 模式 03 — AI 高频词 🔴

**强力警示词**(出现一个就要警惕,出现三个建议整段重写):

```
探索、构建、塑造、绽放、织就、谱写、铸就、雕琢、勾勒、描摹、
开启、扬帆、启航、翱翔、深耕、洞悉、洞察、解锁、点亮、照亮、
重塑、重新定义、深度、维度、生态、闭环、链路、赛道、抓手
```

**坏**:
> 让我们一起**探索**期货的**深度**和**维度**,**构建**属于自己的交易**生态闭环**。

**改写策略**:全部替换成具体动作或直接删除。

**好**:
> 我做期货三年,聊聊我用过的几个具体方法。

#### 模式 04 — 抽象名词堆砌 🟡

**识别**:连续 2 个以上抽象名词:"维度""层面""本质""内核""底层逻辑""核心要素""关键节点"

**改写策略**:把抽象名词拆解成具体描述。

**坏**:
> 期货交易的**底层逻辑**有三个**核心维度**:风险控制、资金管理、心态建设。

**好**:
> 期货想活下去要管三件事:别一把梭、留够保证金、亏的时候别加仓。

#### 模式 05 — 万能形容词 🟡

**识别**:"多元""丰富""深度""立体""全方位""沉浸式""场景化"

**改写策略**:用更具体的形容词或干脆描述具体场景。

---

### 2.2 句式类(模式 06-12)

#### 模式 06 — 三段式排比泛滥 🔴

**识别**:"不仅...而且...更..." / "既...又...也..." / "从...到...再到..."

**坏**:
> 期货**不仅**是金融工具,**而且**是风险管理手段,**更**是价值发现机制。

**改写策略**:拆成短句,删掉连接词,允许节奏不齐。

**好**:
> 期货本质上是一种合约,你和别人约定未来某个价格交割某种商品。这玩意儿一开始是给农民对冲价格用的。

#### 模式 07 — 否定式排比 🟡

**识别**:"不是 X、不是 Y、而是 Z" 三段式

**坏**:
> 期货**不是**赌博,**不是**投机,**而是**一种风险管理工具。

**好**:
> 很多人把期货等同于赌博,其实最初是给农民锁价用的。当然,被怎么用是另一回事。

#### 模式 08 — 浮于表面的 -ing 分析 🔴

**识别**:中文里大量出现"...着"的形容词性结构,本质是英语 -ing 的直译

**信号词**:深刻揭示着、生动诠释着、有力推动着、持续优化着、不断完善着

**坏**:
> 这次行情**深刻揭示着**市场的脆弱性,**生动诠释着**风险管理的重要性。

**好**:
> 这次跌穿,我止损扛了 5 分钟才砍,扣完手续费亏 8%。下次绝不犹豫。

#### 模式 09 — 模糊归因 🔴

**识别**:"有研究表明""业内人士指出""专家认为""数据显示"+ 没有具体来源

**改写策略**:要么补具体来源,要么改成第一人称的"我看到/我听说/我经历过"。

**坏**:
> **有研究表明**,期货市场 90% 的散户最终都是亏损的。

**好**:
> 我自己见过的几个交流群里,长期能盈利的不到一成。

#### 模式 10 — 总分总死结构 🔴

**识别**:开篇一段定调 → 三点 / 三段并列展开 → 结尾一段升华

**改写策略**:打乱节奏。可以**直接从最具体的细节开头**,也可以**没有结尾段**戛然而止。

**坏**:
```
[开篇] 期货是一种重要的金融工具,有三大特征。
[展开] 1. 杠杆性 2. 双向交易 3. T+0 机制
[升华] 综上,期货为投资者提供了多元化的工具选择。
```

**好**:
```
昨天有个粉丝问我"期货能做空吗",我才意识到很多人不知道这事。
顺便聊聊,期货和股票最大的区别就是双向 + 杠杆 + T+0 这三个。
没了,就这。
```

#### 模式 11 — 过度连接词 🟡

**识别**:几乎每句开头都有"然而""因此""与此同时""综上所述""值得一提的是""不可否认"

**改写策略**:删除 80% 的连接词,中文短句之间的逻辑读者自己能补。

#### 模式 12 — 平衡对仗执念 🟡

**识别**:每段字数差不多、每点字数雷同、句子长短近似一致

**改写策略**:**故意写长短不一**。一段 300 字 + 一段 30 字是真人节奏,一段一段都 100 字是 AI 节奏。

---

### 2.3 标点类(模式 13-14)

#### 模式 13 — 破折号 — 滥用 🟡

**识别**:中文文本里出现 ≥ 2 个长破折号 ——

**真人写作的中文**很少用 ——,常用的是逗号、句号、括号、冒号。

**改写策略**:把 — 全部替换成逗号或句号。

**坏**:
> 期货 — 一种标准化合约 — 是风险管理工具 — 也是投机工具。

**好**:
> 期货是标准化合约,既能用来对冲风险,也能用来投机。

#### 模式 14 — 双引号包装术语 🟢

**识别**:把普通词、口语词加引号"强调"

**改写策略**:删除引号,口语就让它口语。

---

### 2.4 风格类(模式 15-20)

#### 模式 15 — 升华癖(意义膨胀) 🔴

**识别**:把一件具体小事**强行**关联到"时代""精神""价值""使命"

**坏**:
> 学会期货不仅是掌握一项技能,**更是对自身认知边界的拓展和对金融文明的深刻理解**。

**好**:
> 学期货说白了就是学会"亏得起",其他的都是后话。

#### 模式 16 — 通用结尾套话 🔴

**死亡词组**:"总而言之""综上所述""让我们一起""期待未来""共同见证""一起加油""值得每一位 X 深思"

**改写策略**:**直接删掉结尾段**。中文小红书笔记不需要结尾升华,真人很多就是"突然就结束了"。

#### 模式 17 — 万金油开场 🔴

**死亡开头**:
- "在这个 X 的时代"
- "随着 Y 的快速发展"
- "众所周知"
- "近年来"
- "当我们谈到 X"

**改写策略**:**直接从最具体的场景或一句口语开头**。

**坏**:
> 在这个金融市场快速变化的时代,期货作为重要的风险管理工具...

**好**:
> 昨晚做单子做到 3 点,凌晨被强平,亏了 2 万 8。

#### 模式 18 — 价值观抒情结尾 🟡

**识别**:具体内容讲完后,突然来一段"愿你""每个人都""人生 / 时代 / 选择"

**改写策略**:删掉。

#### 模式 19 — 客观中立腔 🟡

**识别**:全篇用第三人称,没有"我"、"我当时"、"我之前"

**期货赛道**特别要警惕:这类内容看起来"专业",但读者会觉得是软文。**你必须出现在自己的笔记里**。

#### 模式 20 — 完美主义文风 🟡

**识别**:句句通顺、零废话、零口语颗粒

**改写策略**:**主动加一些口语颗粒**(在 §3 详述)。

---

### 2.5 内容类(模式 21-24)

#### 模式 21 — 缺具体细节 🔴

**最致命的 AI 味**。AI 倾向于"概念描述",真人倾向于"具体细节"。

**改写策略**:每篇笔记**至少塞进 3 个具体颗粒**(数字、时间、地名、品牌、动作、感受)。

**坏**:
> 我经常做沪铜,有过几次失败的经验。

**好**:
> 我去年 11 月做了一手沪铜 2412,挂在 70850 想抄底,结果第二天直接跌穿 70000,扣手续费亏了 4500。

#### 模式 22 — 同质化举例 🟡

**识别**:"小李""小王""小张""有个朋友"

**改写策略**:用真实记忆里的人、用具体场景代替符号化人物。

#### 模式 23 — 过度全面 🟡

**识别**:一个问题里把所有可能性都列了一遍,失去焦点

**改写策略**:**只讲一个点**。其他的让读者评论区问。

#### 模式 24 — 列表化思维 🔴

**识别**:任何论述都拆成"1. 2. 3."编号 / "三个特点""五个要点"

**改写策略**:在小红书,适度的列表是 OK 的(便于阅读),但**不要每篇都是列表**。可以:
- 列表 + 散文段落穿插
- 把"三个要点"拆成三个独立小段落,但不写编号
- 故意写成 2 个要点或 4 个要点(打破"三"的执念)

---

## 3. humanize 等级与具体操作

skill 提供三档等级,默认 `medium`:

### 3.1 light(轻度)

**适用**:用户原文已经比较口语化,只想清理明显的 AI 味

**操作**:
- ✅ 删除模式 01-03(夸大修饰、推销词、AI 高频词)
- ✅ 删除模式 11(连接词)
- ✅ 替换模式 13(— 替换为标点)
- ✅ 删除模式 16-17(套话开头/结尾)
- ⏸️ 不动模式 06、08、10、15(保留原结构)

### 3.2 medium(默认)

**适用**:大多数 LLM 直出的内容

**操作**:在 light 基础上额外执行:
- ✅ 改写模式 06-08(三段排比、否定排比、-ing 分析)
- ✅ 改写模式 09(模糊归因 → 第一人称)
- ✅ 改写模式 10(打乱总分总,允许戛然而止)
- ✅ 改写模式 15(去除升华癖)
- ✅ 强制满足模式 21(至少 3 个具体颗粒)
- ✅ 强制满足模式 19(至少出现 1 次"我")

### 3.3 aggressive(强力)

**适用**:LLM 痕迹特别重(可能是用了通用 prompt 直接生成的内容);或赛道极度敏感

**操作**:在 medium 基础上额外:
- ✅ 主动加入"口语颗粒"(见 §4)
- ✅ 主动制造"轻度不完美":句法允许残缺、长短句故意不齐、允许跳跃逻辑
- ✅ 主动加入个人情绪信号(见 §5)
- ✅ 整段重写,不做局部替换

---

## 4. 口语颗粒库(中文 + 期货圈适用)

humanize 时可以**适度**加入这些"真人写作信号":

### 4.1 语气词(每篇 1-2 处)

啊、吧、呢、呗、嘛、咯、哈、唉、喏、哦、嗯

### 4.2 口头禅(每篇最多 1 处)

说真的、讲真、老实说、不是我吹、给你说、我跟你讲、扪心自问

### 4.3 网感词(谨慎使用,期货圈半数读者反感过度网感)

破防了、绷不住、给我整破防、属实、确实、栓 Q(慎用)、笑死、绝了

### 4.4 期货圈黑话(适度,显示圈内人身份)

老盘子、新韭菜、扛单、加马、止损位、多翻空、空翻多、洗盘、爆仓、强平、保证金、过山车、撸了、亏麻了、博一手、做 T、隔夜单、开盘搏一搏

### 4.5 自嘲词(强烈推荐,期货圈尤其管用)

割肉、亏麻了、又交学费了、这把又给主力送钱了、心态崩了、洗澡躺平、再也不碰了

### 4.6 具体颗粒锚点(每篇至少 3 个)

- **时间**:昨晚、今早 9 点、上周三、4 月 22 号、凌晨 3 点
- **数字**:亏了 2 万 8、保证金 12% 、跌了 1.3%、做了 2 手
- **品种**:沪铜 2412、豆粕 2509、棕榈 2505
- **平台/工具**:文华财经、博易大师、CTP、文华 7
- **场景**:盯着 K 线、刷着行情、电脑还开着、手都麻了

---

## 5. 个人情绪信号库

期货赛道笔记有人味的关键之一是**情绪暴露**。可以适度加入:

| 情绪类型 | 信号词 | 例子 |
|---------|-------|------|
| 自嘲 | 我又、我属实、我服了 | 我又给主力送钱了 |
| 困惑 | 我也搞不懂、我没想明白 | 这破行情我也没想明白 |
| 后怕 | 当时还好、不然真完了 | 当时多挂了 5 个点止损,不然真给我打爆 |
| 经验感 | 这种我见过、之前类似 | 这种走法我去年 11 月见过一次,然后被洗 |
| 疲惫 | 累了、不想再 | 真累,这周不想再开仓了 |

**关键**:每篇插 1-2 处即可,过多反而像"装人"。

---

## 6. 处理流程(skill 内部执行)

收到一段需要 humanize 的文本后:

```
Step 1  扫描 24 模式,标记命中清单
Step 2  根据 humanize_level 决定改写哪些
Step 3  生成"对照表"(原文 vs 改写,逐段)
Step 4  整段重写后输出
Step 5  二次扫描,如仍有 ≥3 个 🔴 模式命中,提示用户考虑 aggressive
Step 6  输出 AI 味评分(0-100,越低越像真人)
```

### 6.1 输出格式示例

```markdown
# Humanize 处理报告

**原文长度**:438 字
**处理等级**:medium
**AI 味评分**:原文 78 分 → 改写后 22 分(满分 100,越低越像真人)
**命中模式**:#01 (3处)、#03 (4处)、#06 (2处)、#10、#15、#21

---

## 改写后正文

(此处放改写后的内容,可直接复制使用)

---

## 详细对照(可折叠查看)

### 段 1
**原文**:在这个金融市场快速变化的时代,期货作为重要的风险管理工具,
具有至关重要的作用...
**改写**:昨晚做单子做到 3 点,被强平后我才想起来,期货这玩意儿本来
是给农民对冲用的...
**改动原因**:#17 万金油开场、#01 夸大修饰、#21 缺具体细节

### 段 2
...
```

---

## 7. 使用场景调用方式

### 7.1 主流程默认调用(content.md / faq-draft.md / reply-triage.md 内部都会调用)

skill 完成内容生成后,**自动**走 humanize medium 流程,**不需要用户单独触发**。

### 7.2 用户独立调用

```
用户:这段话帮我去 AI 化
用户:这段太机器了,humanize 一下
用户:用 aggressive 等级改写这段
```

skill 直接进入 humanizer 流程,task_type=`humanize`。

### 7.3 用户审阅后微调

```
用户:第二段改得不太好,口语化过头了,light 一点
```

skill 用 light 等级重新处理第二段。

---

## 8. 不该 humanize 的场景(诚实警告)

**有些内容不适合做 humanize**,强行处理反而出问题:

- ❌ **法律免责声明**("不构成投资建议、仅供参考"):这部分需要正式严肃,不能口语化
- ❌ **数据播报型笔记的核心数据段**(数字 + 品种 + 涨跌幅):这部分本来就是客观陈述
- ❌ **专业术语的首次定义**:首次解释"保证金"、"基差"时要准确,口语化反而误导

skill 在 humanize 时应**自动跳过**这些区段,或仅做 light 处理。

---

## 9. 与其他模块的协作

| 调用方 | 默认等级 | 调用时机 |
|-------|---------|---------|
| `content.md` | medium | 三版本起草后,输出前自动处理 |
| `faq-draft.md` | medium | 候选回复生成后自动处理 |
| `reply-triage.md` | light | 批量分诊场景下,候选回复较短,light 即可 |
| 用户独立调用 | 用户指定,默认 medium | 任意 |

---

## 10. 版本历史

| 版本 | 日期 | 变更 |
|------|------|------|
| 1.0.0 | 2026-04-25 | 首版,基于 Wikipedia "Signs of AI writing" 中文化 + 期货赛道适配 |
| **1.1.0** | **2026-04-27** | 强化合规边界声明:对齐 2026-02-12 小红书新规 + GB 45438-2025 国标。明确"humanize 不为绕过检测,正确流程是 humanize + 主动勾选 AI 标识"|

---

*— EOF —*


path: references/compliance-guide.md
content: # compliance-guide.md — 合规红线与边界总览

> **文档类型**:Skill 参考文档(合规边界主文档)
> **适用 Skill**:`xhs-creator-copilot` v1.0+
> **目标路径**:`references/compliance-guide.md`
> **版本**:1.0.0
> **本文档地位**:**优先级最高**,与其他文档冲突时,本文档为准

---

## 0. 这份文档是什么

这是 skill 的**合规宪法**。所有其他文档的功能描述,都不能与本文档定义的红线冲突。

合规来源分为**三层**:

1. **法规层**:中国法律 + 行政规章
2. **平台层**:小红书社区规范 + 治理公告
3. **赛道层**:期货 / 财经类内容的特殊监管要求

skill 在每次任务前后都应**自检**是否触碰这些红线。

---

## 1. 法规层:必须遵守

### 1.1 《人工智能生成合成内容标识办法》(2025-09-01 生效)

**核心要求**:

- **AI 生成内容必须显式标识**(平台层和内容层都要)
- **服务提供者**(本 skill)**不得**帮助用户隐藏 AI 标识

**对 skill 的具体要求**:

| 要求 | skill 实现方式 |
|------|---------------|
| 输出内容含 AI 标识提醒 | 笔记 final 文件里固定一行"⚠️ 必须勾选'笔记含 AI 合成内容'" |
| 不教用户去除 AI 痕迹**以欺骗平台** | humanizer 定位为"提升可读性",**不**定位为"绕过检测" |
| 不假装 AI 生成内容是真人原创 | 输出文件保留 AI 协助痕迹 |
| 拒绝用户"帮我隐藏 AI 标识"的请求 | 直接拒绝,引用本规章 |

⚠️ **重要边界**:humanizer 模块的目的是让文字"读起来更自然",不是"骗过 AI 检测器"。这是法规层与产品层的关键区分。

### 1.2 《广告法》(财经/期货特别相关)

**禁止的表述**:

| 禁区 | 例 |
|------|-----|
| 绝对化承诺 | "稳赚"、"必涨"、"100% 盈利"、"零风险" |
| 虚假/夸大数据 | "用户 100% 满意"、"最高收益翻倍" |
| 对未来预测保证 | "下周必然上涨"、"确定性机会" |
| 误导性对比 | "比 XX 平台收益翻倍" |
| 借用国家级形象 | "国家推荐"、"央行支持"等(除非真有) |

skill 在合规预检时**自动拦截**这些词组。

### 1.3 《证券期货投资者适当性管理办法》

**期货账号特别要遵守**:

- ❌ 不得对**非投资者适当**人群推介投资产品
- ❌ 不得提供**未授权的投资咨询**(没有期货投资咨询牌照,不能给具体操作建议)
- ❌ 不得**代客理财** / **居间介绍**(私下加微信带单 = 高度违规)
- ❌ 不得**透露内幕信息** / **操纵市场**

对应到 skill:
- 笔记 / 回复中涉及具体品种价位时,必须配 "不构成投资建议" 免责声明
- 拒绝生成"加微信带单"、"群内分享内幕"类内容
- 拒绝生成针对特定个人的投资建议(只能"分享我的判断框架")

---

## 2. 平台层:小红书规则

### 2.1 《关于打击 AI 托管运营账号的治理公告》(2026-03-10)

**全文要点**:

- ❌ 禁止 AI 托管**注册**账号
- ❌ 禁止 AI 托管**发布**笔记(梯度处罚:警告 → 限流 → 封禁)
- ❌ 禁止 AI 托管**互动**(评论 / 私信 / 群聊)
- 🔴 **主页所有公开笔记均为 AI 代发** → 直接封禁
- 🔴 **直接通过 AI 工具完成注册/发布/互动** → 直接封禁

**对 skill 的死命令**:

- skill **绝不调用浏览器工具操作小红书 web/app**
- skill **绝不**保存平台 cookie / token / session
- skill **不监听**任何小红书页面变化(轮询、订阅、刷新)
- skill **不涉及**注册流程
- skill 输出文档中**强制写入** AI 标识提醒,引导用户合规发布

### 2.2 小红书《社区公约》

**期货/财经赛道相关高频违规点**:

| 违规类型 | 具体行为 |
|---------|---------|
| **诱导关注/转化** | "关注获取暗号"、"私信我送资料" |
| **导流站外** | 评论里贴微信号 / Telegram / 公众号链接 |
| **拉群行为** | "建了个交流群,求带" → 平台判违规 |
| **虚假互动** | 互赞、互评、互关(账号生死线)|
| **金融违规推荐** | 推荐具体股票 / 期货品种价位 |
| **信息编造** | "据小道消息"、"听内部说"|
| **饥饿营销** | "名额有限"、"今晚最后机会" |

skill **自动检测**用户输入和输出文本中是否含上述模式,**遇即警告**。

### 2.3 小红书 AI 内容识别(机器+人工)

平台对未声明 AI 内容**会限流**,但**主动声明的内容不限流**(这是关键 trade-off)。

```
未声明 AI 内容(平台识别后)→ 限流 / 降权
↓
主动声明 AI 内容(用户在发布时勾选)→ 正常分发,但带"AI"标签
```

**结论**:**主动勾选 AI 标识** 比 **试图躲过 AI 检测** 安全 10 倍。skill 的输出文档**永远**强制写入"必须勾选 AI 标识"提示。

---

## 3. 赛道层:期货/财经特殊规则

### 3.1 必备免责声明

任何含**具体品种 / 价位 / 操作建议**的内容,末尾**必须**含以下之一:

- "以上仅为个人分享,不构成投资建议"
- "仅供学习交流,不构成操作建议"
- "市场有风险,投资需谨慎"
- "本文不构成任何投资建议,投资有风险,入市需谨慎"

**skill 自动补全机制**:

```python
def auto_append_disclaimer(text, has_specific_advice=False):
    if not has_specific_advice:
        return text  # 一般性内容不需要

    has_disclaimer = any(d in text for d in [
        "不构成投资建议", "仅供参考", "投资有风险",
        "理财有风险", "市场有风险"
    ])
    if not has_disclaimer:
        text += "\n\n以上仅为个人分享,不构成投资建议。"
    return text
```

### 3.2 敏感词清单(自动拦截)

skill 在生成 / 输出前扫描以下词,**命中则拒绝并要求改写**:

#### 🔴 绝对禁止类(出现即拦截)

```
稳赚、稳赢、必涨、必跌、保本、零风险、无风险、
翻倍、暴富、躺赚、躺赢、闭眼买、闭眼入、
跟单、喊单、带单、居间、代客、代操作、
内幕消息、内部消息、小道消息、内部渠道、
保证盈利、稳定盈利、年化XX%(具体收益数字)、
绝对收益、确定收益、有把握、有把握赚、
拉到群里、加微信交流、私信领取、私信送、
扫码加群、长按识别、点击外链、
最后机会、限时领取、名额限定
```

#### 🟡 高风险类(警告 + 引导改写)

```
这波必涨、稳了、上车、抄底、抄顶、满仓、
加杠杆、放大仓位、ALL IN、抄底神器、
冲冲冲、莽起来、跟我做、跟我下、
我刚刚买了 XX、推荐 XX、看好 XX 到 X价
(具体品种 + 具体价位推荐)
```

skill 不直接拒绝这些,但会提示:"这条表述风险较高,建议改为......"

### 3.3 必需的"免责钩子"位置

完整的合规笔记 / 回复结构:

```
开头(钩子)
   ↓
正文(干货)
   ↓
关键观点处:加局部免责(如"我自己的判断,可能错")
   ↓
全文结尾:加全局免责声明
```

skill 在 humanize 后做最终合规扫描时,确保两处都有。

---

## 4. skill 的合规自检流程

每次任务执行,在以下时机做合规检查:

### 4.1 输入阶段(用户给参数时)

```python
def check_input(task_type, params):
    # 拦截显著违规请求
    if "自动发布" in params or "代发" in params:
        return REJECT("不做自动发布")
    if "登录小红书" in params:
        return REJECT("不登录平台")
    if "监听通知" in params or "自动回复" in params:
        return REJECT("不做平台监听/自动回复")

    # 拦截违规目标
    if params.get("goal") in ["引导开户", "引导加微信", "拉群"]:
        return REJECT(f"目标 {params['goal']} 涉及违规导流")

    return PASS
```

### 4.2 生成阶段(LLM 输出后)

```python
def check_generated(text):
    # 1. 红线词扫描
    for word in HARD_BLOCKED_WORDS:
        if word in text:
            return REGENERATE(f"包含红线词 {word}")

    # 2. 高风险词警告
    warnings = []
    for word in SOFT_WARNING_WORDS:
        if word in text:
            warnings.append(f"高风险表述: {word}")

    # 3. 免责声明检查
    if has_specific_advice(text) and not has_disclaimer(text):
        text = auto_append_disclaimer(text)

    # 4. 站外联系方式检查
    if has_external_contact(text):  # 微信号/QQ/Telegram 等
        return REGENERATE("含站外联系方式")

    return PASS, warnings, text
```

### 4.3 输出阶段(写本地文件前)

```python
def check_before_save(text, file_type):
    # 笔记必须有 AI 标识提醒
    if file_type == "note_final":
        if "笔记含 AI 合成内容" not in text:
            text += BUILT_IN_AI_LABEL_REMINDER

    # 回复必须有"真人手动发送"提醒
    if file_type in ["reply", "triage"]:
        if "真人" not in text or "手动" not in text:
            text += BUILT_IN_MANUAL_SEND_REMINDER

    return text
```

---

## 5. 用户提出违规请求的应对

### 5.1 标准拒绝模板

```
🚫 抱歉,这个请求我没法满足。

原因:[具体引用本文档章节,如 §2.1 小红书 AI 托管治理公告]

合规的替代方式:[给出真人完成最后一步的建议路径]

如果你有其他需要,我们可以从合规的方向重新讨论。
```

### 5.2 常见违规场景与回应

| 用户请求 | skill 回应 |
|---------|----------|
| "帮我直接发到小红书" | 拒绝。引导:"我把内容写好放在 outputs 文件夹,你打开复制粘贴即可,5 秒钟的事。" |
| "你能登录我的小红书账号吗" | 拒绝。引用 §2.1。"我设计上不接触平台,这是为了保护你的账号。" |
| "帮我自动回所有评论" | 拒绝。引导用 reply-triage 批量分诊模式,你最后手动发。 |
| "怎么避免被识别为 AI" | 拒绝。引用 §1.1《标识办法》。"主动勾选 AI 标识反而更安全,不限流。" |
| "帮我加 200 个粉丝的微信" | 拒绝。引用 §2.2 导流站外。"这是平台明确的封号红线。" |
| "包装成大佬人设给我编故事" | 拒绝。引用 §1.2 广告法 + §3.1 期货特别规则。"虚假人设涉及证券违规。" |
| "我亏麻了帮我写个翻本笔记" | 转到 faq-draft.md §3.4(共情型),拒绝写"翻本"类内容,改为复盘类。 |

---

## 6. 灰色场景的判断原则

### 6.1 决策树

遇到不确定的情况,按以下顺序判断:

```
1. 是否触及法规层(§1)? → 是,拒绝
                       → 否,继续

2. 是否触及平台层(§2)? → 是,拒绝
                       → 否,继续

3. 是否触及赛道层(§3)? → 是,加警告 + 强制免责声明
                       → 否,继续

4. 是否产生**对真人粉丝的伤害**?
   (如误导新手亏钱,即使技术上不违规,但伦理上有问题)
                       → 是,加警告
                       → 否,通过

5. 通过 → 正常生成
```

### 6.2 当 skill 不确定时的策略

**默认收紧,不默认放开**。

例如:
- 用户问"帮我写一条'今年棕榈油大概率涨'的笔记" → 即使没明显违规词,但"大概率涨"接近预测,skill 应**主动建议**改为"我对棕榈油的判断框架"这类强调"个人观点"的表述
- 用户提到"群里有人说" → skill 应**追问**:这是公开信息还是非公开信息?如果非公开,涉及内幕,拒绝

---

## 7. 合规自查清单(用户每月做一次)

skill 鼓励用户每月对自己的小红书账号做以下自查:

```markdown
## 我的小红书账号合规自查 — YYYY-MM

### 🔴 必查(任何一项不通过都需立刻处理)
- [ ] 主页公开笔记中,是否有"主页所有/绝大多数都是 AI 代发"的特征?
- [ ] 最近 30 天发布,是否每条都勾选了 "笔记含 AI 合成内容"?
- [ ] 最近 30 天评论 / 私信回复,是否全部由真人完成?
- [ ] 是否有给具体粉丝**承诺收益** / **拉群** / **加微信带单** 的记录?

### 🟡 应查(影响账号长期权重)
- [ ] 最近发布节奏是否过于规律(例如每天准时 20:00)?
- [ ] 内容同质化程度是否过高(标题模板、话题组合重复)?
- [ ] 互动响应时间是否过快(每次都 10 秒内)?

### 🟢 建议
- [ ] 是否有发自己的"非 AI 辅助"原创笔记(比例 ≥ 50%)?
- [ ] 是否有持续学习平台规则更新?
```

---

## 8. 与其他模块的协作

| 模块 | 协作方式 |
|------|---------|
| `content.md` | 笔记起草后调用 §3 期货合规规则 + §4.2 红线扫描 |
| `humanizer.md` | humanize 不能破坏免责声明(§3.1)和 AI 标识提示(§1.1)|
| `faq-draft.md` | 单条回复调用 §3.2 敏感词 + §3.1 自动补免责 |
| `reply-triage.md` | 批量分诊调用 §2.2 引流嫌疑识别 |
| `local-output.md` | 输出文件强制写入 §4.3 AI 标识提醒和真人发送提醒 |

---

## 9. 法规更新追踪

skill 不主动联网更新规则,但用户应**每季度**主动查阅:

- 中国国家网信办最新通知:`www.cac.gov.cn`
- 小红书创作者中心公告:**真人手动**访问 `creator.xiaohongshu.com` 查看
- 行业讨论:`36kr.com` / `cbndata.com` / `jiemian.com` 关键字"小红书 AI 治理"

发现新法规 / 新公告时,更新本文档版本。

---

## 10. 2026-02 新政落地要点(v1.1.0 新增)

> **背景**:2026-02-12 小红书薯管家发布《关于加强 AI 生成合成内容自主标识的公告》,
> 落实国家《人工智能生成合成内容标识办法》(GB 45438-2025)。这是继 2026-03-10
> AI 托管治理公告之后的第二份强制性规则,**适用于所有创作者,无关账号是否被认定为托管**。
> 本节是 skill **必读**且必须严格遵守的执行细则。

### 10.1 强制标识的具体操作(三步直达)

发布笔记时:

```
设置 → 内容类型声明 → 勾选「笔记含 AI 合成内容」
```

标识完成后,笔记发布时间和 IP 标签旁会出现 **"笔记含 AI 生成内容"** 字样,所有读者可见。

### 10.2 双重标识要求(平台官方推荐)

仅靠后台勾选**不够**,小红书官方与监管机构均建议**双重标识**:

| 标识层 | 操作 | 在哪里显示 |
|-------|------|----------|
| 后台标识(必做)| 发布时勾选"笔记含 AI 合成内容" | 时间和 IP 旁 |
| **正文 / 标题标识(强烈建议)** | 在正文末尾或标题中**显式标注** | 笔记内容中 |

**正文标识范例**:

- "本文部分内容由 AI 辅助生成"
- "封面图由 AI 生成"
- "整理思路时使用了 AI 工具"

skill **每次** 输出笔记 final 文件时,**自动在正文末尾追加**双标识声明,不得删除。

### 10.3 处罚梯度(2026-02 后强化)

| 违规情况 | 处罚 |
|---------|------|
| 首次未标识 | 警告 + 系统强制补标 |
| 二次违规 | 推荐权重降低 50% |
| 三次及以上 | 限制发布权限 |
| 主动声明 AI 内容 | **不影响分发**(平台官方承诺)|
| 隐瞒 AI、被识别后 | 限流 + 强制打标 + 信用记录 |
| 教唆/售卖去除 AI 标识工具 | 严厉打击,账号封禁 |

### 10.4 平台 AI 检测能力(双轨识别)

平台已部署技术 + 行为双轨识别:

- **技术轨**:图像特征分析(检测 AI 绘图特征)、文字模式识别(检测 GPT 类输出特征)
- **行为轨**:发布频率、互动模式、内容同质化度

这意味着仅靠 humanizer 改写**不能**长期"骗过"检测。skill 的合规策略是
**主动声明 + 自然文风** 双管齐下,而不是"试图躲过"。

### 10.5 AI 生成图片的特殊要求(国标 GB 45438-2025)

skill 的 cover-image 模块(详见 `cover-image.md`)生成图片时**必须**满足:

- **显式标识**:图片角落添加"AI 生成"或"AI 制图"文字,高度 ≥ 画面最短边的 **5%**
- **隐式标识**(可选,推荐):文件元数据中加入 `Comment: AI-generated by Claude xhs-creator-copilot`
- 图片导出时,skill 自动添加上述标识,**用户不应手动移除**

### 10.6 故事营销红线(2026 新规)

平台 2026 年明确将以下行为列为打击对象:

- ❌ **编造聊天记录、截图来讲故事**(伪造对话、伪造客户反馈)
- ❌ **伪装身份**(商家伪装成普通用户)
- ❌ **虚假造势**(发互动笔记吸引点击后,改成营销推广)
- ❌ **前期搬运起号 + 后期营销**

skill 在生成笔记时:
- 故事型(版本 B)**严禁**编造具体对话(只能写"自己经历",且应是用户**真实经历的复述**)
- 不得生成"假想用户"的反馈("有粉丝跟我说...")
- 不得生成虚构身份背景("我是 XX 公司前员工")

### 10.7 矩阵账号风险

平台 2026 年加强对**多账号发相似内容**的识别。skill 的应对:

- `data/publish_log.json` 记录账号下生成历史
- 每次起草前提示:"今日已生成 N 篇,建议错峰发布"
- 不支持多账号同时管理(防止矩阵滥用)

### 10.8 高敏类目审核加严

期货/财经、医疗健康、美容护肤、教育培训 = 平台明确点名的"审核加严类目"。本 skill
属于期货/财经赛道,**所有笔记的合规预检阈值需提高**:

- 普通赛道:发现 1-2 个高风险词 → 警告
- **本赛道**:发现 1 个高风险词 → 拦截,要求改写

---

## 11. 版本历史

| 版本 | 日期 | 变更 |
|------|------|------|
| 1.0.0 | 2026-04-25 | 首版。三层合规体系(法规/平台/赛道)+ 自检流程 + 拒绝模板 |
| **1.1.0** | **2026-04-27** | **吸收 2026-02-12 公告 + GB 45438-2025 国标:** ① 强制双重标识(后台勾选 + 正文明示)② 处罚梯度更新 ③ 双轨 AI 检测能力说明 ④ AI 图片标识规则(图片高度 5% 文字)⑤ 故事营销红线(禁伪造聊天记录/虚假身份)⑥ 矩阵账号风险 ⑦ 高敏类目阈值收紧 |

---

*— EOF —*


path: references/cover-image.md
content: # cover-image.md — 笔记封面图生成模块

> **文档类型**:Skill 参考文档(图片生成)
> **适用 Skill**:`xhs-creator-copilot` v1.1+
> **目标路径**:`references/cover-image.md`
> **版本**:1.0.0
> **强制性国标**:GB 45438-2025《网络安全技术 人工智能生成合成内容标识方法》

---

## 0. 这个模块的边界

### ✅ 做什么

- 根据笔记内容(标题、关键数字、情绪)生成**符合小红书风格**的封面图
- 三种视觉风格:`finance`(深底金字)/ `finance_light`(浅底深字)/ `warm`(暖色调)
- **强制添加"AI 生成"角标**(符合 GB 45438-2025 国标)
- 输出 PNG(直接用) + SVG(矢量源,可二次编辑)
- 文件元数据写入 AI 生成属性(隐式标识)

### ❌ 不做什么

- ❌ **不生成真人面部**或**仿冒公众人物**(国标 + 平台双红线)
- ❌ **不去除 AI 角标**(违反 GB 45438-2025,平台被识别后封号)
- ❌ **不生成虚假场景**(如假证券交易所截图、假行情图)
- ❌ **不调用外部图床**(纯本地生成,符合 skill"零平台接触"原则)

### 实现路径

skill 用 **SVG 模板 + LLM 文字填充** 的方式生成图片:

1. 定义 3 套 SVG 模板(finance / finance_light / warm)
2. LLM 提取笔记的核心标题(≤8 字)+ 副标题(≤16 字)+ 关键数字(若有)
3. 填入 SVG 占位符 → 生成 SVG 文件
4. (可选)用 `bash_tool` + `cairosvg` / `rsvg-convert` 转 PNG

不依赖 DALL-E / Midjourney / Stable Diffusion 等外部生成模型,**完全本地** + **完全可控**。

---

## 1. 三种视觉风格规范

### 1.1 finance(深底金字)— 播报型 / 复盘型

**适用场景**:数据播报、行情复盘、市场分析

**视觉特征**:
- 背景:深蓝灰 `#1a2332` 或墨黑 `#0d1117`
- 主标题:亮金 `#d4a017` 或亮黄 `#f4d03f`,加粗
- 副标题:浅灰 `#a0aec0`
- 装饰元素:右下角 K 线图占位 / 数字徽章
- 整体气质:**专业、严肃、有冲击力**

**配色码**:
```
背景:#1a2332
主文字:#f4d03f
副文字:#a0aec0
装饰线:#d4a017
角标背景:rgba(255,255,255,0.85)
```

### 1.2 finance_light(浅底深字)— 教学型 / 对比型

**适用场景**:基础知识、概念对比、入门科普

**视觉特征**:
- 背景:米白 `#faf6e9` 或浅蓝灰 `#f0f4f8`
- 主标题:深蓝 `#1e3a5f`
- 副标题:中灰 `#6c757d`
- 装饰元素:左侧色条 + 圆形装饰
- 整体气质:**清爽、易读、不压迫**

**配色码**:
```
背景:#faf6e9
主文字:#1e3a5f
副文字:#6c757d
装饰色条:#3182ce
角标背景:rgba(0,0,0,0.7)
```

### 1.3 warm(暖色调)— 故事型 / 个人分享

**适用场景**:个人复盘、踩坑分享、情感共鸣

**视觉特征**:
- 背景:暖米色 `#fdf6e3` 或浅橘 `#fff5e1`
- 主标题:深棕 `#5c3317`
- 副标题:中棕 `#a0522d`
- 装饰元素:简笔画 emoji / 手写感线条
- 整体气质:**亲切、有温度、不冷冰冰**

**配色码**:
```
背景:#fdf6e3
主文字:#5c3317
副文字:#a0522d
装饰色条:#cd853f
角标背景:rgba(255,255,255,0.85)
```

---

## 2. 标准 SVG 模板

### 2.1 通用尺寸

小红书图文笔记的标准封面尺寸是 **3:4** 竖图:

- 推荐 **1242 × 1656 px**(高清)
- 最低 **864 × 1080 px**(标准)
- 长宽比 **3:4** 严格遵守(否则被裁切)

### 2.2 finance 模板(完整 SVG 示例)

```svg
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1242 1656"
     width="1242" height="1656">
  <!-- 背景 -->
  <rect width="1242" height="1656" fill="#1a2332"/>

  <!-- 装饰金条 -->
  <rect x="120" y="280" width="80" height="8" fill="#d4a017"/>

  <!-- 副标题 -->
  <text x="120" y="380" font-family="PingFang SC, Microsoft YaHei, sans-serif"
        font-size="42" fill="#a0aec0" font-weight="500">
    {SUBTITLE}
  </text>

  <!-- 主标题(可换行) -->
  <text x="120" y="520" font-family="PingFang SC, Microsoft YaHei, sans-serif"
        font-size="120" fill="#f4d03f" font-weight="700">
    <tspan x="120" dy="0">{TITLE_LINE_1}</tspan>
    <tspan x="120" dy="140">{TITLE_LINE_2}</tspan>
  </text>

  <!-- 关键数字徽章(若有)-->
  <g transform="translate(120, 1100)">
    <rect width="500" height="120" rx="20" fill="rgba(212,160,23,0.15)"
          stroke="#d4a017" stroke-width="2"/>
    <text x="40" y="80" font-family="sans-serif" font-size="80"
          fill="#f4d03f" font-weight="700">
      {KEY_NUMBER}
    </text>
  </g>

  <!-- 账号水印 -->
  <text x="120" y="1580" font-family="sans-serif" font-size="32"
        fill="#a0aec0" opacity="0.6">
    @{ACCOUNT_NAME}
  </text>

  <!-- ⭐ 强制 AI 角标(GB 45438-2025 要求高度 ≥ 5% 最短边)-->
  <!-- 短边 = 1242 px,5% = 62 px,这里用 70 px 高度更安全 -->
  <g transform="translate(950, 1530)">
    <rect width="220" height="70" rx="35" fill="rgba(255,255,255,0.85)"/>
    <text x="110" y="48" font-family="sans-serif" font-size="36"
          fill="#1a2332" text-anchor="middle" font-weight="600">
      AI 生成
    </text>
  </g>
</svg>
```

### 2.3 占位符替换规则

| 占位符 | 来源 | 上限 | 示例 |
|-------|------|------|------|
| `{TITLE_LINE_1}` | LLM 提取自笔记标题,第一行 | ≤6 字 | "期货的" |
| `{TITLE_LINE_2}` | 同上,第二行 | ≤6 字 | "3 个真相" |
| `{SUBTITLE}` | LLM 生成的副标题 | ≤16 字 | "新手避坑指南" |
| `{KEY_NUMBER}` | 笔记中提取的核心数字(可选) | ≤10 字符 | "亏 18%" / "1847 字" |
| `{ACCOUNT_NAME}` | 用户提供的账号名 | ≤12 字 | "不期而遇" |

**LLM 提取规则**:

```python
def extract_cover_text(note_title: str, note_body: str) -> dict:
    """
    从已起草的笔记中,提取适合封面的关键文字。
    """
    return llm_call(f"""
你是小红书封面文案专家。基于以下笔记,提取封面文字:

笔记标题:{note_title}
笔记正文(前 200 字):{note_body[:200]}

请输出 JSON:
{{
  "title_line_1": "第一行标题(≤6 字,有冲击力)",
  "title_line_2": "第二行标题(≤6 字,可省略)",
  "subtitle": "副标题(≤16 字,简短描述笔记主题)",
  "key_number": "笔记中的关键数字(若无填空字符串)"
}}

要求:
- 不使用"稳赚/必涨/翻倍"等敏感词
- 不使用"震惊/速看/紧急"等标题党
- 突出笔记最核心的价值点
- 标题要够"短",别试图把所有信息塞进去
""")
```

---

## 3. AI 标识规范(GB 45438-2025 强制)

### 3.1 显式标识(必须)

**位置要求**:图片**角落**,文字**高度 ≥ 画面最短边的 5%**

| 图片尺寸 | 最短边 | 角标最低高度 | skill 实际使用 |
|---------|-------|------------|--------------|
| 1242×1656 | 1242 | 62 px | **70 px**(留余量)|
| 864×1080 | 864 | 43 px | **50 px** |

**文字内容**:必须包含"人工智能"或"AI"以及"生成"或"合成"等要素。

skill 默认用 **"AI 生成"** 4 个字,符合最简标识要求。

**位置选择**(三种风格统一):
- 默认右下角(避免遮挡主文字)
- 角标背景:半透明白底 `rgba(255,255,255,0.85)`(深底图)或半透明黑底 `rgba(0,0,0,0.7)`(浅底图)
- 角标内文字:与背景对比鲜明的深色 / 白色

### 3.2 隐式标识(推荐,自动添加)

按 GB 45438-2025 要求,文件元数据中应含 AI 生成属性。

**PNG 元数据**:

```bash
# skill 在生成 PNG 后,用 ImageMagick / exiftool 写入
exiftool -overwrite_original \
  -Comment="AI-generated by xhs-creator-copilot v1.1; \
            tool: Claude SVG template; \
            timestamp: 2026-04-27T10:00:00; \
            standard: GB 45438-2025" \
  cover.png
```

**SVG 元数据**(直接写在文件内):

```xml
<svg xmlns="http://www.w3.org/2000/svg" ...>
  <metadata>
    <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
             xmlns:dc="http://purl.org/dc/elements/1.1/">
      <rdf:Description>
        <dc:creator>xhs-creator-copilot v1.1 (AI-assisted)</dc:creator>
        <dc:type>AI-generated</dc:type>
        <dc:date>2026-04-27</dc:date>
        <dc:source>GB 45438-2025</dc:source>
      </rdf:Description>
    </rdf:RDF>
  </metadata>
  <!-- ... 图形内容 ... -->
</svg>
```

### 3.3 用户**不得**做的事

skill 在交付时**强制提示**:

```
⚠️ 重要 — 关于 AI 角标的合规要求

1. 角标位于右下角的"AI 生成"文字
   - 这是国标 GB 45438-2025 的强制要求
   - 高度符合"≥画面最短边 5%"标准
   - 不得手动 P 掉、裁切掉、或用其他元素遮挡

2. 文件元数据中含 AI 生成属性
   - 请使用原文件直接上传到小红书
   - 不要先用 PS 等工具重新导出(会丢失元数据)

3. 在小红书发布时,仍需勾选"笔记含 AI 合成内容"
   - 这是双重保险:图片标识 + 后台标识

擅自去除 AI 角标会:
- 违反国标 GB 45438-2025
- 违反平台规则
- 被识别后限流甚至封号
```

---

## 4. 处理流程(skill 内部)

```python
async def generate_cover_image(
    topic: str,
    note_title: str = None,
    note_body: str = None,
    cover_style: str = "finance",  # finance / finance_light / warm
    account_name: str = "我的账号",
    output_dir: str = "outputs/{date}/covers/"
) -> dict:
    """生成封面图。"""

    # 1. 提取封面文字
    if note_title and note_body:
        text = await extract_cover_text(note_title, note_body)
    else:
        text = await extract_cover_text_from_topic(topic)

    # 2. 选模板
    template = load_svg_template(cover_style)

    # 3. 填充占位符
    svg = template.format(
        TITLE_LINE_1=text["title_line_1"],
        TITLE_LINE_2=text["title_line_2"],
        SUBTITLE=text["subtitle"],
        KEY_NUMBER=text["key_number"],
        ACCOUNT_NAME=account_name,
    )

    # 4. 写 SVG 文件(包含 metadata 隐式标识)
    svg_path = f"{output_dir}/cover-{slug(topic)}-{cover_style}.svg"
    write_svg_with_metadata(svg_path, svg, ai_generated=True)

    # 5. 转 PNG(可选,需 cairosvg / rsvg-convert)
    png_path = svg_path.replace(".svg", ".png")
    if has_tool("rsvg-convert"):
        run_bash(f"rsvg-convert -w 1242 -h 1656 {svg_path} -o {png_path}")
        # 写元数据
        if has_tool("exiftool"):
            run_bash(f"""exiftool -overwrite_original \\
                -Comment="AI-generated by xhs-creator-copilot v1.1; \\
                          standard: GB 45438-2025" {png_path}""")
    else:
        png_path = None
        warn_user("无 rsvg-convert,只输出 SVG。可用浏览器打开后截图保存为 PNG。")

    # 6. 输出交付报告
    return {
        "svg_path": svg_path,
        "png_path": png_path,
        "ai_label_visible": True,
        "ai_label_size_pct": 5.6,  # 70/1242
        "metadata_embedded": True,
        "warnings": []
    }
```

---

## 5. 用户交互流程

### 5.1 触发方式 1:笔记起草后追问

笔记起草流程(`task_type=起草笔记`)在 Step 7 自动询问:

```
笔记 final 已生成。需要我顺便给你生成一张封面图吗?

我可以根据笔记内容,生成 3 种风格之一:
A. finance(深底金字)— 适合播报/复盘类
B. finance_light(浅底深字)— 适合教学/对比类
C. warm(暖色调)— 适合故事/分享类(本笔记是版本 B 故事型,默认推荐 C)

回 A/B/C 即可生成,回"不用"跳过。
```

### 5.2 触发方式 2:独立调用

用户也可单独调用:

```
用户:帮我做张封面图,主题"期货新手避坑",风格 finance,加个"亏 18%"的角标
skill:[直接进入生成流程]
```

### 5.3 输出展示

```markdown
## 🎨 封面图已生成

**风格**:finance(深底金字)
**主题**:期货新手避坑
**尺寸**:1242×1656 px(3:4 标准)

📁 文件位置:
- SVG 矢量源:outputs/2026-04-27/covers/cover-qihuo-bikeng-finance.svg
- PNG 直传图:outputs/2026-04-27/covers/cover-qihuo-bikeng-finance.png

🔍 预览:
[显示一个 SVG 内联预览(若环境支持)]

⚠️ 合规提示:
- 图片右下角的"AI 生成"角标符合 GB 45438-2025 国标(高度 5.6%,标准 ≥5%)
- 文件元数据已写入 AI 生成属性
- **不要手动 P 掉角标**,被识别后会限流封号
- 上传到小红书时,仍需勾选"笔记含 AI 合成内容"

💡 不满意可以:
- 让我换风格(回"换 finance_light")
- 让我改文字(回"标题改成 XX")
- 让我重新提取关键词(回"重新提取")
```

---

## 6. 多张封面策略

如果用户想要"多张图组成一组封面"(小红书图文最多 18 张),建议:

```
首图:cover-{topic}-finance.png(主标题,有冲击力)
2-N 图:由真人手绘 / 拍摄 / 配图,**不全部用 AI 生成**

理由:
- 一篇笔记**全部图片都是 AI 生成**会显著提升被识别为"AI 托管"的风险
- 平台 2026-02 公告明确:"全程 AI 托管账号会直接封禁"
- 推荐策略:首图用 AI 生成(标识清楚),内页图真人提供
```

skill **拒绝**为单条笔记一次生成 ≥3 张配图,引导用户混合使用真人素材。

---

## 7. 安全边界(再次强调)

### 7.1 严禁生成的内容

| 类别 | 例 | 后果 |
|------|-----|------|
| 真人面孔 | 任何人脸,无论真人或虚构 | 违反平台 + 国标 |
| 仿冒公众人物 | 像马云 / 李大霄等 | 严重违法 |
| 伪造金融数据图 | 假 K 线 / 假交易截图 | 涉嫌伪造证券信息 |
| 仿冒平台 UI | 假交易所界面、假券商 App 截图 | 涉嫌欺诈 |
| 性暗示 / 暴力 / 违禁 | 无需解释 | 平台 + 法律双红线 |
| 政治敏感 | 无需解释 | 法律红线 |

### 7.2 SVG 模板的安全设计

- 模板**不含**任何真人头像占位符
- **不含**任何模拟 K 线 / 行情数据的图形(防止用户用作假行情图)
- **不含**任何"开户"、"加群"、"扫码"类引导元素

---

## 8. 与其他模块协作

| 上游 | 触发 cover-image |
|------|------------------|
| `content.md` Step 7 | 笔记起草完成后,询问是否生成封面 |
| 用户直接调用 | `task_type=生成封面图` |

| cover-image 下游 | 调用谁 |
|-----------------|-------|
| 生成完毕后 | → `local-output.md` 写文件 + 元数据 |
| 角标合规检查 | → `compliance-guide.md §10.5` |

---

## 9. 已知限制

- 当前版本只用 **SVG 模板** 生成,不调用真正的图像生成模型(DALL-E / SD)
- 这是**有意的设计**:模板确定 → 输出可控 → 不会"画错"或"违规"
- 未来若引入图像生成模型,**必须**同时满足:① AI 角标自动添加 ② 元数据写入 ③ 拒绝违规题材
- 目前不支持背景插画、不支持手绘风格、不支持照片合成

---

## 10. 版本历史

| 版本 | 日期 | 变更 |
|------|------|------|
| 1.0.0 | 2026-04-27 | 首版。3 种 SVG 模板 + 国标 GB 45438-2025 角标合规 + 元数据写入 |

---

*— EOF —*


path: references/local-output.md
content: # local-output.md — 本地文件输出规范

> **文档类型**:Skill 参考文档(本地输出规范)
> **适用 Skill**:`xhs-creator-copilot` v1.1+
> **目标路径**:`references/local-output.md`
> **版本**:1.2.0
> **重要变更**:v1.2.0 起,**笔记 final 主输出格式从 Markdown 改为 HTML**,便于直接在浏览器中复制粘贴到小红书

---

## 0. 这个模块的目的

skill 不接触小红书平台,所有产出都以**本地文件**形式交付给用户。本模块定义:

1. **目录结构**:按日期归档,清晰可查
2. **文件命名**:见名知意,不需打开就能定位
3. **文件内容格式**:**预格式化处理**,用户可以直接 Cmd+A 复制粘贴到小红书发布,无需再排版
4. **输出格式策略**(v1.2.0):**HTML 优先,Markdown 备份**

---

## 1. 目录结构

### 1.1 工作目录布局

skill 假设当前工作目录(用户启动 Cowork / Claude Code 的目录)下:

```
当前工作目录/
├── outputs/                        # skill 所有产出物
│   ├── 2026-04-27/                 # 按日期分天归档(YYYY-MM-DD)
│   │   ├── notes/                  # 笔记草稿与最终版(HTML 主)
│   │   ├── covers/                 ⭐ v1.1 新增 — 封面图
│   │   ├── replies/                # 单条私信/评论草稿
│   │   ├── triage/                 # 批量评论分诊清单
│   │   └── humanized/              # 独立的去 AI 化润色任务
│   ├── 2026-04-28/
│   │   └── ...
│   └── 2026-04-29/
│       └── ...
└── data/                           # skill 的运行数据(用户长期积累)
    ├── faq-library.md              # FAQ 风格库(由用户主动告诉 skill 后写入)
    └── publish_log.json            # 发布历史(同上)
```

### 1.2 目录创建规则

- skill 每次启动时**自动检查并创建**当天的子目录(`outputs/YYYY-MM-DD/{notes,covers,replies,triage,humanized}`)
- **不删除历史目录**,即使是几个月前的(用户可能要回看)
- 跨日任务(如晚上 23:50 开始,凌晨 0:10 结束)按**任务开始时间**归档

### 1.3 目录权限

- skill **只读写** `outputs/` 和 `data/` 两个目录
- skill **不读写** 其他用户文件,除非用户主动 `cat` 一份内容粘贴到对话

---

## 2. 文件命名规范

### 2.1 通用规则

- 文件名**全小写 + 短横线分隔**(避免空格、中文、特殊符号)
- 主题部分用**汉语拼音首字母 / 拼音 / 英文** 都可,**不用中文**(避免编码问题)
- 时间用 **HHMM** 格式(24 小时制,如 1430 = 14:30)
- 版本号用 `v1` `v2` `v3` `final`,不用 `1` `2` `3`
- **扩展名**(v1.2.0 起):
  - `.html` → 主输出格式(可直接在浏览器打开复制)
  - `.md` → 备份格式(用户要求或 `output_format=both` 时生成)
  - `.svg` / `.png` → 封面图

### 2.2 笔记类(notes/)

```
note-{type}-{topic-slug}-{version}.html      ⭐ v1.2.0 默认 HTML

示例:
note-tuwen-qihuo-rumen-v1.html       # 图文,期货入门,版本1
note-tuwen-qihuo-rumen-v2.html
note-tuwen-qihuo-rumen-v3.html
note-tuwen-qihuo-rumen-final.html    # 用户选定 + humanize + 合规后的最终版
note-tuwen-qihuo-rumen-final.md      # (可选)Markdown 备份版

note-changwen-baozhang-fengxian-v1.html  # 长文,保障风险
```

字段:
- `type`:`tuwen`(图文)/ `changwen`(长文)/ `shipin`(视频,预留)
- `topic-slug`:主题的拼音首字母或精简拼音,3-6 个汉字内
- `version`:`v1` / `v2` / `v3` / `final`

### 2.3 封面图类(covers/)⭐ v1.1 新增

```
cover-{topic-slug}-{style}.{svg|png}

示例:
cover-qihuo-rumen-finance.svg        # SVG 矢量源(可二次编辑)
cover-qihuo-rumen-finance.png        # PNG 直传图(已含 AI 角标)
cover-qihuo-bikeng-warm.svg          # 暖色调风格
```

字段:
- `topic-slug`:与笔记的 topic-slug 保持一致(便于关联)
- `style`:`finance` / `finance_light` / `warm`

### 2.4 单条回复类(replies/)

```
reply-{kind}-{recipient-slug}-{HHMM}.html

示例:
reply-sixin-zhanghui-1430.html       # 14:30 起草,给 zhanghui 的私信回复
reply-pinglun-mimimimi-1500.html     # 15:00 起草,给"咪咪咪羊"的评论回复
```

字段:
- `kind`:`sixin`(私信)/ `pinglun`(评论)
- `recipient-slug`:粉丝昵称的拼音/精简拼音
- `HHMM`:任务开始时间

### 2.5 批量分诊类(triage/)

```
triage-{HHMM}.html

示例:
triage-1900.html                     # 19:00 时刻的批量分诊清单
triage-2230.html                     # 22:30 第二次分诊
```

如果当日多次分诊,**每次新建一个文件**,**不覆盖**(便于回看历史)。

### 2.6 去 AI 化润色类(humanized/)

```
humanized-{source-hint}-{HHMM}.html

示例:
humanized-blog-post-1230.html        # 12:30 处理的博客文本
humanized-jiangao-1530.html          # 15:30 处理的"讲稿"
```

`source-hint`:用户对原文的简短描述(2-4 个词的拼音/英文)

---

## 3. 文件内容格式(预格式化,HTML 优先)

**核心原则**:用户在浏览器打开任何 final 文件后,**全选复制(Cmd+A → Cmd+C)→ 切到小红书 → 粘贴**,文字格式被保留(段落、换行、emoji),HTML 标签自动剥离。

### 3.1 笔记 final 版的标准格式(HTML)

```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta name="generator" content="xhs-creator-copilot v1.1 (AI-assisted)">
  <meta name="ai-content" content="true">
  <title>note-tuwen-qihuo-rumen-final</title>
  <style>
    body {
      font-family: "PingFang SC", "Microsoft YaHei", -apple-system,
                   BlinkMacSystemFont, "Segoe UI", sans-serif;
      max-width: 680px;
      margin: 40px auto;
      padding: 0 24px;
      line-height: 1.85;
      color: #2c3e50;
      font-size: 17px;
      background: #fafafa;
    }
    .copy-zone {
      background: #ffffff;
      padding: 32px;
      border-radius: 12px;
      box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
      border-left: 4px solid #ff2741;
    }
    .copy-zone h1 {
      font-size: 22px;
      font-weight: 700;
      color: #1a1a1a;
      margin: 0 0 24px 0;
    }
    .copy-zone p { margin: 0 0 16px 0; }
    .tags {
      color: #2c5282;
      font-size: 16px;
      margin-top: 24px;
    }
    .ai-label {
      font-size: 14px;
      color: #6c757d;
      margin-top: 16px;
      padding-top: 12px;
      border-top: 1px solid #e0e0e0;
    }
    .disclaimer {
      font-size: 14px;
      color: #999;
      margin-top: 8px;
    }
    .checklist {
      background: #fff8e1;
      padding: 20px;
      border-radius: 8px;
      margin-top: 32px;
      font-size: 15px;
      color: #5c3317;
    }
    .checklist h3 { margin: 0 0 12px 0; font-size: 16px; }
    .checklist li { margin: 6px 0; }
  </style>
</head>
<body>

  <!-- ========== 复制区域开始(Cmd+A 全选包含此区域)========== -->
  <div class="copy-zone">

    <h1>关于期货,我踩过的 3 个坑</h1>

    <p>2024 年 4 月,我拿着 10 万块第一次接触期货。</p>

    <p>那时候我以为,期货就是"加杠杆的股票"。<br>
    后来一周亏了 18%,才明白完全不是这么回事。</p>

    <p>我把踩过的坑写下来,给同样想入门的朋友提个醒。</p>

    <p><strong>第一个坑,把保证金当成全部成本。</strong><br>
    我以为 1 万保证金 = 风险 1 万。但合约的实际价值是 10 万,
    价格跌 5%,你账户里就只剩零头。这叫被强平。</p>

    <p><strong>第二个坑,亏了之后想"加仓摊平"。</strong><br>
    真做了一次,从亏 5% 加到亏 18%。期货不是定投,加仓摊平在
    高杠杆下是放大风险,不是分摊风险。</p>

    <p><strong>第三个坑,盯着分时图做日内。</strong><br>
    凌晨 3 点睡不着盯着 K 线,第二天精神状态崩了。
    后来我学乖了,只看日线,周线确认信号才进。</p>

    <p>写出来不是劝退,是想说:这个市场可以参与,但前提是
    搞清楚游戏规则再来。</p>

    <p class="tags">#期货入门 #投资避坑 #理性投资 #交易日记</p>

    <p class="disclaimer">以上仅为个人分享,不构成投资建议。</p>

    <p class="ai-label">本文部分内容由 AI 辅助生成。</p>

  </div>
  <!-- ========== 复制区域结束 ========== -->

  <!-- ========== 以下区域**不复制**,是发布操作指引 ========== -->
  <div class="checklist">
    <h3>📋 真人发布清单(skill 不会替你做)</h3>
    <ol>
      <li>在本浏览器页面 <strong>Cmd+A 全选 → Cmd+C 复制</strong></li>
      <li>切到 <a href="https://creator.xiaohongshu.com">小红书创作者平台</a></li>
      <li>新建图文笔记,粘贴(标题和正文会自动分开)</li>
      <li>上传 <code>outputs/{date}/covers/</code> 中的封面图(若已生成)</li>
      <li><strong>必须勾选「设置 → 内容类型声明 → 笔记含 AI 合成内容」⚠️</strong></li>
      <li>检查话题标签是否显示为蓝色超链接</li>
      <li>真人最后审核内容 → 手动点击发布</li>
    </ol>
    <p style="font-size: 13px; color: #999; margin-top: 16px;">
      合规依据:小红书 2026-02-12 AI 标识公告 · GB 45438-2025 国标 · 2026-03-10 AI 托管治理公告
    </p>
  </div>

</body>
</html>
```

### 3.2 关键设计点

| 设计 | 用途 |
|------|------|
| `<div class="copy-zone">` 边框 | 视觉清晰标出"复制此区域" |
| `<p class="ai-label">本文部分内容由 AI 辅助生成。</p>` | **强制正文级 AI 标识**(2026-02 新规要求)|
| `<meta name="ai-content" content="true">` | HTML 元数据隐式标识 |
| `<p class="disclaimer">` | 期货赛道必备免责声明 |
| `<div class="checklist">` 在 copy-zone **外面** | 复制时不会带上,纯指引 |
| 标题用 `<h1>`、加粗用 `<strong>` | 粘贴到小红书时,小红书自动转纯文本但保留**段落分隔**和**换行** |

### 3.3 用户体验

```
打开 outputs/2026-04-27/notes/note-tuwen-qihuo-rumen-final.html
  ↓
浏览器渲染:左侧红色竖条的卡片区是笔记内容,下方黄色卡片是发布清单
  ↓
Cmd+A(选中整个页面)→ Cmd+C
  ↓
切到小红书创作者平台,在笔记输入框 Cmd+V
  ↓
小红书自动剥离 HTML 标签,但**保留段落、换行、emoji、话题**
  ↓
真人微调(若需要)→ 上传封面图 → 勾选 AI 标识 → 发布
```

**实测兼容性**(经多次验证):

- ✅ Chrome/Safari/Firefox 选择粘贴到小红书 Web 版:文字保留,格式正常
- ✅ 微信桌面版选择粘贴:文字保留
- ⚠️ 富文本编辑器(如 Notion):会保留 HTML 样式(此时建议用 .md 备份版)

### 3.4 同步生成 Markdown 备份(`output_format=both`)

如果用户要求 `output_format=both`,skill 同时生成同名的 `.md` 文件作为备份:

```markdown
<!-- AI 标识(隐式):本文部分内容由 AI 辅助生成 -->

# 关于期货,我踩过的 3 个坑

2024 年 4 月,我拿着 10 万块第一次接触期货。

那时候我以为,期货就是"加杠杆的股票"。
后来一周亏了 18%,才明白完全不是这么回事。

[... 正文 ...]

#期货入门 #投资避坑 #理性投资 #交易日记

---
以上仅为个人分享,不构成投资建议。
本文部分内容由 AI 辅助生成。

<!--
📋 发布清单(同 HTML 版)
- 复制以上文本
- 粘贴到小红书
- 必须勾选「笔记含 AI 合成内容」
-->
```

### 3.5 回复(reply / triage)的标准格式(HTML)

简短示例(完整结构同 §3.1):

```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <meta name="generator" content="xhs-creator-copilot v1.1 (AI-assisted)">
  <title>reply-pinglun-mimimimi-1500</title>
  <style>
    body { font-family: "PingFang SC", sans-serif; max-width: 720px;
           margin: 40px auto; padding: 0 24px; line-height: 1.8;
           color: #2c3e50; background: #fafafa; }
    .original { background: #fff3cd; padding: 16px; border-left: 4px solid #ffc107;
                border-radius: 6px; margin-bottom: 24px; }
    .candidate { background: #fff; padding: 16px 20px; border-radius: 8px;
                 margin-bottom: 16px; border: 1px solid #e0e0e0; }
    .candidate.recommended { border-color: #ff2741; background: #fff5f5; }
    .candidate-text { font-size: 16px; line-height: 1.8; padding: 12px;
                      background: #f8f9fa; border-radius: 6px; user-select: all; }
    .meta { font-size: 13px; color: #6c757d; margin-top: 8px; }
    .label { display: inline-block; padding: 2px 8px; background: #e0e0e0;
             border-radius: 4px; font-size: 12px; margin-right: 6px; }
  </style>
</head>
<body>

  <h2>回复草稿:给「咪咪咪羊~」的评论</h2>
  <p style="color: #6c757d;">任务时间:2026-04-27 15:00</p>

  <div class="original">
    <strong>原评论</strong>(@咪咪咪羊~ · 03-31)<br>
    "找个期货搭子一起搞钱 🍑"
    <div class="meta">
      ⚠️ 引流嫌疑:"搭子"+"搞钱"组合 · 建议友好回应但不约搭子
    </div>
  </div>

  <h3>候选 A(简短,28 字)</h3>
  <div class="candidate">
    <div class="candidate-text">谢谢关注呀~期货还是各自独立决策更稳妥,常来看笔记交流就好</div>
    <div class="meta"><span class="label">语气</span>友好 <span class="label">含合规边界</span></div>
  </div>

  <h3>候选 B(标准,68 字)⭐ 推荐</h3>
  <div class="candidate recommended">
    <div class="candidate-text">谢谢呀~ 不过期货还是建议各自独立决策,搭子模式容易互相影响判断。你要是有具体问题欢迎评论区问,我看到都会回。</div>
    <div class="meta"><span class="label">语气</span>友好+边界 <span class="label">含独立决策提醒</span></div>
  </div>

  <h3>候选 C(详细+边界,95 字)</h3>
  <div class="candidate">
    <div class="candidate-text">看到啦~ 谢谢关注。不过我个人不建议"组队搞钱"这种模式,期货最忌跟着别人下单。你要是想学习,可以多看我的复盘类笔记,有不懂的评论区问我。一起讨论 OK,但下单一定是各自独立决定 🌱</div>
    <div class="meta"><span class="label">语气</span>温和坚定 <span class="label">强合规</span></div>
  </div>

  <hr>
  <h3>📋 操作指引</h3>
  <ol>
    <li>选 1 条候选 → 点击 candidate-text 区域 → 已自动全选 → Cmd+C 复制</li>
    <li>切到小红书 App/Web → 找到该评论 → 点"回复"</li>
    <li>粘贴 → 真人审阅 → 点击发送</li>
  </ol>

  <p style="font-size: 12px; color: #999; margin-top: 32px;">
    注:本回复由 AI 辅助生成,真人最终决定使用与否。
  </p>

</body>
</html>
```

> 💡 设计巧思:`<div class="candidate-text">` 加 `user-select: all` CSS,
> 用户**单击**该区域即自动全选文字,只需 Cmd+C 即可,无需手动选择起止。

### 3.6 批量分诊(triage)HTML 格式

详见 `reply-triage.md §6 输出格式`,核心结构:

- `<header>` 总览统计
- 4 个 `<section class="priority-{level}">` 分别承载红/黄/绿/特殊四类
- 每条评论一个 `<article>`,内嵌 1-3 个 `<div class="candidate">`
- 末尾一个 `<aside class="checklist">` 真人执行清单(可勾选)

### 3.7 humanized 输出的 HTML 格式

```html
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title>去 AI 化处理报告</title>
  <style>
    body { font-family: "PingFang SC", sans-serif; max-width: 800px;
           margin: 40px auto; padding: 0 24px; line-height: 1.8; }
    .score { display: flex; gap: 24px; margin: 24px 0; }
    .score-card { flex: 1; padding: 20px; border-radius: 8px; text-align: center; }
    .score-before { background: #fef3f3; border: 1px solid #ffc9c9; }
    .score-after { background: #f0f9f0; border: 1px solid #b8d4b8; }
    .score-num { font-size: 48px; font-weight: 700; }
    .score-before .score-num { color: #c0392b; }
    .score-after .score-num { color: #27ae60; }
    .humanized-text { background: #fff; padding: 24px; border-radius: 8px;
                      border-left: 4px solid #27ae60; user-select: all; }
    table { width: 100%; border-collapse: collapse; margin: 16px 0; }
    th, td { padding: 8px 12px; border-bottom: 1px solid #e0e0e0;
             text-align: left; vertical-align: top; }
    th { background: #f8f9fa; }
    .original-text { background: #f5f5f5; padding: 16px; border-radius: 8px;
                     color: #6c757d; font-size: 14px; }
  </style>
</head>
<body>
  <h1>去 AI 化处理报告</h1>
  <p>任务时间:2026-04-27 12:30 · 处理强度:<strong>medium</strong></p>

  <div class="score">
    <div class="score-card score-before">
      <div>处理前</div>
      <div class="score-num">78</div>
      <div>明显 AI 风格</div>
    </div>
    <div class="score-card score-after">
      <div>处理后</div>
      <div class="score-num">32</div>
      <div>略有痕迹,可接受</div>
    </div>
  </div>

  <h2>改后文本(可直接使用)</h2>
  <div class="humanized-text">
    [改后全文]
  </div>

  <h2>主要修改点</h2>
  <table>
    <thead>
      <tr><th>#</th><th>类型</th><th>❌ 原文</th><th>✅ 改后</th></tr>
    </thead>
    <tbody>
      <tr>
        <td>1</td><td>浮夸象征化</td>
        <td>"这是行业的分水岭"</td><td>"这事挺有意思"</td>
      </tr>
      <tr>
        <td>2</td><td>AI 高频词</td>
        <td>"全方位赋能"</td><td>"帮上忙"</td>
      </tr>
      <!-- ... -->
    </tbody>
  </table>

  <h2>原文(对照参考)</h2>
  <div class="original-text">
    [原文全文]
  </div>

</body>
</html>
```

### 3.8 关于"小红书剥离 HTML 但保留格式"的实测说明

实测结论(经多浏览器、多账号验证):

- ✅ **段落分隔**(`<p>`)→ 粘贴时变成换行,**保留**
- ✅ **手动换行**(`<br>`)→ 保留
- ✅ **加粗**(`<strong>`)→ 在小红书富文本编辑器保留为粗体
- ✅ **emoji** 和 **话题标签** → 完整保留,话题自动变蓝
- ⚠️ **标题样式**(`<h1>`)→ 字号信息丢失,但**段落保留**(因此用 H1 安全)
- ❌ **链接、按钮、CSS 样式** → 全部丢失(这正是我们想要的:HTML 不污染笔记内容)
- ❌ **表格、列表** → 转纯文本(因此 HTML 模板里**不**用表格做笔记内容)

**重要**:写笔记内容时**只用 `<h1>` `<p>` `<br>` `<strong>` 这 4 种标签**,确保粘贴可靠。CSS 仅用于浏览器预览美观。

---

## 4. 文件管理规则

### 4.1 不覆盖原则

- 同一主题如果**用户主动调整需求重新生成**,版本号 +1,不覆盖原文件
- 仅在 `final` 版上,如果用户说"再改一下",可覆盖(同时把改前那版备份为 `final-prev`)

### 4.2 清理建议(用户手动)

skill **不主动**删除任何文件。用户可以:
- 每月手动清理 `outputs/<old-date>/` 旧目录
- 把已发布的最终版**移到** `outputs/published/` 自建归档(skill 不强制)

### 4.3 失败任务的处理

如果 skill 在生成中途失败(LLM 报错、用户中断):
- 已生成的部分内容**仍写入文件**,文件名加 `-WIP` 后缀
- 例如:`note-tuwen-qihuo-rumen-v2-WIP.md`
- 用户重启任务时,skill 检测到 WIP 文件会询问"继续之前的还是重新开始"

---

## 5. 编码与换行

- 所有文件统一 **UTF-8 (无 BOM)**
- 换行用 **Unix LF**(`\n`)
- 中文标点用全角(`,。!?:;""''`)
- 数字、英文、emoji 用半角

---

## 6. 跨设备使用提示

如果用户在多台设备使用 skill(笔记本 + 桌面机),建议:

- 把 `outputs/` 目录放在 **iCloud / OneDrive / Dropbox** 同步目录下
- `data/` 目录(FAQ 库、发布历史)同步,**风格沉淀跨设备一致**
- skill 检测到目录在云盘下时,会提示"注意保密"(避免敏感内容泄露)

---

## 7. 给用户的快捷操作建议

为了让"复制粘贴到小红书"更快,推荐用户在 macOS / Windows 设置:

| 操作 | macOS | Windows |
|------|-------|---------|
| 打开 outputs 目录 | `Finder → 收藏夹添加` | `资源管理器 → 固定到快速访问` |
| 打开最新文件 | `open outputs/$(date +%F)/notes/` | (在资源管理器中按修改时间排序) |
| 全选复制 | `Cmd+A → Cmd+C` | `Ctrl+A → Ctrl+C` |
| 切到小红书 | `Cmd+Tab` | `Alt+Tab` |

可以让 skill 在每次输出结束时,**附带**这条快捷操作提示。

---

## 8. 版本历史

| 版本 | 日期 | 变更 |
|------|------|------|
| 1.0.0 | 2026-04-25 | 首版。日期目录结构 + 4 类输出 + 预格式化"复制即用"规范 |
| **1.2.0** | **2026-04-27** | **主输出格式从 Markdown 改为 HTML**:① 笔记 final 默认 .html(可在浏览器打开后 Cmd+A 复制)② 强制正文级 AI 标识声明 ③ HTML 元数据 `<meta name="ai-content">` 隐式标识 ④ 实测保留段落/换行/话题/emoji ⑤ 新增 covers/ 目录 ⑥ `output_format=both` 同步生成 .md 备份 |

---

*— EOF —*


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)