kylin_xhs · 小红书科普笔记生成器
把一个骨科健康科普话题做成一套可直接发布小红书的「标题 + 正文 + 8 张竖版图集 + 一份评论区运营文档」。
方法论继承自「科室宣传文章」「kylin_pyq」两个技能(标题公式、总分总结构、医疗广告合规红线),并针对小红书平台特性做重构:
| 维度 | 朋友圈版(kylin_pyq) | 小红书版(kylin_xhs) |
|---|---|---|
| 图文比例 | 3:4(1080×1440) | 3:4 竖版(1242×1660),信息流占位更高 |
| 图集张数 | 固定 6 张 | 8 张(小红书支持 18 图,8 张是"信息量够 + 不啰嗦"的甜点) |
| 文案形态 | 题目即文案,3–5 行 | 标题 ≤20 字 + 正文 ≤1000 字(emoji 分段)+ 10 个标签 |
| 引导动作 | 评论区留言 | 收藏 + 关注 + 评论区留言 + 私信话术 |
| 评论区文档 | 评论带节奏 | 评论区运营(首评置顶、钩子、活跃、私信自动回复、合规) |
| 选题池 | 基层门诊 100 问 | 骨科全科 200+ 问(11 大亚专业,见 references/topic_pool.md) |
一、触发与参数
| 用户输入 | 行为 |
|---|---|
写 |
从题库(references/topic_pool.md,共 200 题)随机抽取 1 个主题创作 |
写 <主题>(如"写 腱鞘炎") |
按指定主题创作,题库仅作参考 |
写 + 附加要求(风格、张数、语气) |
按附加要求调整 |
随机抽取要用 shell 真实执行(如 $RANDOM 对题库总数取模)并向用户展示抽取过程与结果——过程可见即是信任感。
# 示例:从 200 题中随机抽 1 题并展示过程
N=$(( RANDOM % 200 + 1 )); echo "抽中第 $N 题"; sed -n "${N}p" /path/to/topic_pool_plain.txt
二、工作流程(八步)
- 选题:指定主题→直接用;否则随机抽取并在回复中展示抽取过程
- 标题:出 3 版供选(痛点型 / 数字型 / 反常识型),每版 ≤20 字,核心关键词前置
- 正文:≤1000 字,按小红书排版写——emoji 分段、短句、干货分点;首行即钩子
- 标签:10 个 = 1–2 个大词 + 3–5 个垂直细分词 + 1 个自建 IP 标签
#老杨说骨科+ 地区/人群词 - 评论区运营文档(⚠️ 必产出,与正文同步生成):见第九节
- 制图:按下方"八卡结构"为每张卡写内容 → 生成 8 个 HTML 文件(内嵌设计系统 CSS + 原创内联 SVG 插画)→ Chromium headless 截图导出 PNG(1242×1660)
- 导出:⚠️ 必须做视口高度补偿(见
references/engineering.md),否则页脚被裁掉 - 合规自检:红线一票否决(清单见第八节);交付:8 张 PNG +
文案.md+评论区运营.md,用 present_files 一起呈现
产物统一输出到 /workspace/kylin_xhs-<主题>/,固定文件:card1.png … card8.png、文案.md、评论区运营.md。
三、八卡结构(小红书图文叙事)
| 卡 | 内容 | 小红书要点 |
|---|---|---|
| 01 封面 | 顶部胶囊导语「骨科医生一次讲清」+ 超大标题(≤12 字,3 秒可读)+ 反差副题(警示条)+ 场景插画 + 底部标签「8 张图 / 3 分钟 / 干货」 | 封面决定点击率:大字号、强对比、单主体,文字不贴边(四周留 6–8% 安全区) |
| 02 是什么 | 一句话通俗定义(术语转译 + 类比)+ 3–4 个典型表现胶囊标签 + 医生小贴士 | 结论先行,不讲教科书式机制 |
| 03 为什么 | 4 个常见原因(2×2 网格,图标 + 标题 + 一句话) | 让读者"对上号",产生代入感 |
| 04 误区卡 | 3–4 个"别做"(✗ 图标 + 一句真相) | 反常识 = 收藏与转发主力 |
| 05 正确做法 | 3–4 步时间轴(动作 / 频率 / 时间点,可操作) | 收藏核心页,越具体越易被存 |
| 06 就医信号 | 3–5 个红旗(⚑ 图标 + 加粗关键词) | 不夸大不恐吓,强调"别硬扛" |
| 07 预防 + 日常 | 3 招预防/锻炼 + 1 条"日常自查清单" | 提供可复用的长期价值 |
| 08 收尾 + 关注 | 「收藏 + 关注」CTA 横幅 + 3 条高频追问快答 + 署名 + 免责声明 | 给收藏和关注一个理由;署名区只留固定话术 |
硬性规定(继承 kylin_pyq,一票否决):所有卡片一律不出现就诊信息——科室位置、门诊时间、预约方式、二维码、咨询电话、微信号均不放。第 08 卡署名区仅保留:
> 「骨科医生-老杨 关注我,骨科问题少走弯路」 与免责声明
不放头像占位、不放其他联系方式。
四、题库(骨科全科 200 问,随机抽取)
题库已独立成文件:references/topic_pool.md(含完整 200 题 + 逐题"反差点/关键词"提示)。
覆盖 11 大亚专业,抽取时用 shell 真实执行并向用户展示过程(过程可见即是信任感):
| 分类 | 题量 | 范围 |
|---|---|---|
| 一、颈椎与颈肩 | 18 | 颈椎病、落枕、富贵包、曲度变直、颈性眩晕、后纵韧带骨化 |
| 二、腰椎与腰腿痛 | 22 | 腰突、椎管狭窄、腰椎滑脱、腰肌劳损、坐骨神经痛、马尾综合征 |
| 三、髋与骨盆 | 14 | 股骨头坏死、髋关节发育不良、髋部骨折、弹响髋、梨状肌综合征 |
| 四、膝关节 | 22 | 骨性关节炎、半月板、交叉韧带、髌骨软化、关节置换、滑膜炎、腘窝囊肿 |
| 五、肩肘腕手 | 22 | 肩袖损伤、肩周炎、网球肘、高尔夫球肘、腕管、腱鞘炎、TFCC、锤状指 |
| 六、足踝 | 18 | 崴脚、跟痛症、拇外翻、扁平足、跖骨痛、跟腱断裂、甲沟炎、糖尿病足 |
| 七、骨质疏松与代谢性骨病 | 16 | 骨密度、钙与维D、脆性骨折、唑来膦酸、骨软化、甲状旁腺、肾性骨病 |
| 八、运动损伤与软组织 | 16 | 肌肉拉伤、抽筋、肌腱炎、髌腱炎、运动后酸痛、护具与冰敷热敷 |
| 九、骨折与创伤 | 20 | 各部位骨折、石膏支具、愈合延迟、骨不连、开放伤、指端离断、颈椎外伤 |
| 十、儿童骨科与畸形 | 16 | 生长痛、O/X 型腿、内八外八、脊柱侧弯、斜颈、多指并指、髋脱位筛查 |
| 十一、骨肿瘤·骨感染·风湿免疫 | 16 | 骨肿瘤良恶性、夜间痛、骨髓炎、化脓性关节炎、痛风、类风湿、强直性脊柱炎 |
| 合计 | 200 | 整个骨科范围(含康复、慢病管理、就医决策) |
选题原则(受众导向):
- 优先"门诊被反复问到 + 与读者有关 + 有认知反差可辟谣"的三重交集题
- 禁选医院内部事务、学术会议、职称晋升类"自嗨"选题
- 拒绝标题党与制造焦虑;涉肿瘤题一律"不恐吓、讲清就医边界"
五、设计系统(小红书版)
- 画布:1242×1660(3:4 竖版,小红书推荐尺寸,信息流占位高);备选 1080×1440
- 安全区:四周留 ≥6% 空白(约 76px / 100px),标题、关键结论、标签不贴边,避免平台裁切
- 色板:主蓝
#0B3B5C / #156A9C、强调青#0FA3A8、警示橙#F0712B、危险红#E0484E、底色#F6FAFD、正文#23425A、次要#5B7286 - 字体:Noto Sans CJK SC;封面大标题 92–108px/900(比朋友圈版更大,保证缩略图可读),卡内标题 34–36px/900,正文 27–30px,每段 ≤3 行
- 页眉:左品牌徽标图标(上传徽章 PNG,去背景透明底、base64 内嵌、宽 70px)+ 栏目名「老杨说 · 门诊高频问题」(两要素;页码不放页眉)
- 页脚:免责语「健康科普 · 具体诊疗请遵医嘱」+ 右侧页码
01 / 08(v0.0.2 起页码替代原进度圆点) - 组件:圆角卡(radius 26–32px、白底、浅蓝描边、微投影)、胶囊标签、序号圆点、时间轴、CTA 横幅
- 插画:全部内联 SVG 手绘(简单几何 + 圆角 + 品牌色 + 虚线圈重点),禁用网络图片 → 零版权风险
六、工程要点(踩坑经验,必读)
> 完整细节见 references/engineering.md。以下为速查:
- 视口高度补偿:本环境 Chromium headless 的
--window-size实际视口比设定值矮约 90px(1242×1660 时底部约 90px 被裁,页脚会消失)→ 必须用--window-size=1242,1750截图,再用 PILcrop((0,0,1242,1660))裁剪。换环境先跑标尺校准 - 截图命令:
chromium --headless=new --disable-gpu --no-sandbox --hide-scrollbars --force-device-scale-factor=1 --window-size=1242,1750 --screenshot=/tmp/raw.png file:///path/card.html - 页脚定位:用
position:absolute; bottom:34px(挂在position:relative的画布容器上),不要用 flex 底部布局——内容多时会被推出视口 - 中文字体:先
fc-list :lang=zh | grep -i sans确认 Noto Sans CJK SC 存在 - 防溢出:每卡内容先估算高度再写,主区用
flex:1; min-height:0; overflow:hidden,底部锚定元素用margin-top:auto - 参考实现:
scripts/gen_xhs_example.py是「落枕」主题完整可运行示例——换主题时保留 shell()/CSS/页眉页脚/组件函数,替换各卡 main 内容与插画即可
七、小红书文案规范
7.1 标题(≤20 字,核心关键词前置)
三种公式任选,每次出 3 版:
| 公式 | 结构 | 示例 |
|---|---|---|
| 痛点型 | 症状 + 后果 + 解决暗示 | 「脖子一转就疼?先别急着按」 |
| 数字型 | 数字 + 干货承诺 | 「骨科医生:落枕护理 4 步走」 |
| 反常识型 | 常识 + 反转 | 「落枕别再热敷了,前两天要冷敷」 |
要点:emoji 开头可选(📌/⚠️/🩺),不含"最/第一/根治"等绝对化词。
7.2 正文(≤1000 字,小红书排版)
黄金结构(约 600–900 字):
① 场景钩子(80–120字):一个具体门诊场景或读者痛点,让人"这就是我"
② 结论先行(40–60字):一句话给答案,不绕圈
③ 干货分点(300–500字):3–5 个要点,每点前加 emoji,短句、断行
④ 行动指南(100–150字):照着做的具体步骤 / 就医信号清单
⑤ 互动引导(50–80字):提问 + 「收藏起来」「关注追更」
排版要求:多用 emoji 分段、每段 ≤3 行、关键句单独成行、不用书面语长句;正文自然融入 2–5 次核心关键词(SEO,密度 2%–5%,不堆砌)。
7.3 标签(10 个)
| 层级 | 数量 | 说明 |
|---|---|---|
| 核心大标签 | 1–2 | 高流量品类词,如 #骨科 #健康科普 |
| 垂直细分标签 | 3–5 | 精准触达,如 #颈椎病 #落枕怎么办 #脖子疼 |
| 人群/场景标签 | 2–3 | 如 #上班族必看 #久坐党 #宝妈育儿 |
| 自建 IP 标签 | 1 | 固定 #老杨说骨科,沉淀账号内容资产 |
7.4 文案文件须附
配图清单表(8 张,每张一句说明)、发布建议(工作日晚 18:00–20:00 或周末早 8:00–10:00 流量峰值;发布后立刻自评置顶)、合规自检结果、以及配套的 评论区运营.md。
八、合规红线(继承 ksxc/kylin_pyq,一票否决)
医疗广告与平台双红线,任一触发即须改写:
- 禁功效断言/保证:「根治」「药到病除」「安全无副作用」「最先进」「百分百有效」
- 禁治愈率/有效率数字;禁绝对化用语(「最好」「国内领先」「唯一」无依据时)
- 禁贬低同行:只纠正具体错误行为(如"急性期不要大力揉"),不否定行业与机构、不点名竞品
- 禁患者隐私:不出镜、不编病例数据、不贴检查报告原件;插画全部原创
- 禁诱导与导流:不出现科室位置、门诊时间、预约方式、二维码、电话、微信号、外链;不写「加我」「私信发你」「代购药」等转化话术
- 禁夸大恐吓:涉肿瘤、瘫痪、截肢等敏感话题,用客观病程措辞,不制造恐慌
- 自然病程可用客观措辞(如"多数几天到一周左右明显缓解"),不作疗效承诺
- 每张卡页脚带免责语;涉手术适应证、用药剂量等内容须提示读者遵医嘱
九、评论区运营文档(必产出)
发布后本人先发首评"定调 + 引导 + 控场",把一条笔记变成"小门诊"。输出为 评论区运营.md,放在产物目录、与 文案.md 一并交付。
> 通用骨架见 references/comment_xhs_template.md;完整示例见 references/comment_example_xhs.md。
结构(1 条置顶首评 + 6 条预备评论 + 3 条私信/回复话术 + 1 个节奏小抄)
| # | 类型 | 作用 | 合规要点 |
|---|---|---|---|
| ⓪ 置顶首评(发布后 2 分钟内自己发) | 补充"图里没说完的一句" + 开放式提问 | 提升互动权重,把看客变参与者 | 不诊断、不承诺疗效 |
| ① 补刀科普 | 纠正一个流行误区(如"落枕≠颈椎病") | 制造"原来如此"获得感 → 收藏 | 仅纠正具体错误,不贬低同行 |
| ② 抛钩子 | 埋下期主题("下期讲XX") | 攒关注与回访 | 不预告就诊信息 |
| ③ 选择题互动 | A/B/C/D 扣字母小调查 | 低门槛冲互动权重 | 纯科普,不含诱导 |
| ④⑤ 接话模板 | 预演高频追问("我该冷敷还是热敷""多久能好") | 防冷场、体现专业 | 具体判断一律落到"带片子来评估/遵医嘱" |
| ⑥ 收尾暖场 | 情绪价值、强化"老杨好说话"人设 | 促关注复访 | 不暴露联系方式 |
| 🔒 私信话术 ×3 | 「我这是什么病」「能挂你号吗」「药怎么吃」的标准回复 | 防违规私聊、统一出口径 | 一律不诊断、不发号源、不改医嘱 |
| ⏱ 节奏小抄 | 发布后 0–2min 首评 / 30min 互动 / 当晚 21:00 钩子 / 次日回评 | 拉长笔记生命周期 | — |
写作要点
- 评论内不得出现就诊信息(科室/门诊/预约/二维码/电话/微信),不接"你这病该怎么治"的具体诊断。
- 沿用本号红线:不功效承诺、不绝对化;文中若出现"根治"等词,须作为"被纠正的误区"语境(如"——错,它不能根治")。
- 复用本主题的术语与卡面结论,保持图文一致。
- 提供可直接复制的纯文本块,并给每条标注"作用"与"发布时机"。
- 私信话术要明确拒绝诊断并给出"面诊评估"的通用出口——这是医生账号最容易踩的合规坑。
十、目录结构
kylin_xhs/
├── SKILL.md # 本文件
├── _meta.json
├── 安装说明.md
├── references/
│ ├── topic_pool.md # 骨科全科 200 题库(含反差点/关键词)
│ ├── engineering.md # 渲染管线 + 1242×1660 视口补偿校准
│ ├── comment_xhs_template.md # 评论区运营通用骨架
│ └── comment_example_xhs.md # 评论区运营完整示例(落枕主题)
└── scripts/
└── gen_xhs_example.py # 「落枕」完整可运行示例(8 张 1242×1660;页眉徽标 base64 内嵌于源码)
> ⚠️ 包内仅含 .md/.py/.json 纯文本文件(SkillHub 等平台仅允许此类扩展名)。页眉品牌徽标以 base64 字符串常量内嵌在示例脚本中,无需独立图标文件。