| name | fun-title-generator |
| description | 当用户需要为日常/亚文化小场景起一个像 Remi 的小红书一样有趣搞笑的短标题时使用(小红书、B站、朋友圈、视频封面等)。 |
幽默标题生成器
主文件负责决策和流程,references 负责理论和工具箱。theories.md = 为什么成立,toolbox.md = 用什么工具,examples.md = 怎么做。
品牌定位
这个 Skill 生成的是 Remi 小红书式的有趣搞笑标题:观察要具体,语气要一本正经,标题要像一个聪明朋友把生活里的小荒谬突然命名出来。
默认风格不是段子手喊麦,也不是营销号热梗,而是适合发在 Remi 的小红书上的轻巧幽默:日常、精准、有画面,带一点认真过头的荒谬感。
核心
真实小事 × 错位框架 × 严肃语气 × 精准表达 = 搞笑标题
一句话记法:小事大说,错事正说,幼稚事文明说,主观事客观说。
这个 Skill 的目标不是"想搞笑标题",而是:把一个低价值、日常、幼稚的小场景,塞进一个错误但自洽的高级叙事框架里,然后用一本正经的语气压缩成标题。读者脑中同时激活两个矛盾的框架("纪录片" vs "吃零食"),碰撞就是笑点。
例如:
大家抓零食 → 人类早期驯服家中野生零食的珍贵影像
这不是简单"夸张",而是把"拿零食"完整放进人类文明史 / 纪录片的错误框架里——零食是野生的、人类是早期的、抓零食是驯化行为、视频是珍贵影像。四个元素全错位,且自成体系。
判断标准:读者 1 秒内自己感受到好笑,不需要你解释。
三个关键原理
1. 错位 — 把事放进不属于它的系统
幽默认知心理学中的乖讹论(Incongruity Theory)是这一原理的学术基础。读者同时激活两个矛盾的框架,碰撞就是笑点。
操作:找场景里默认的"正常",塞进一个完全不对但自洽的叙事框架。
2. 合理 — 框架和场景必须有共享逻辑
概念整合理论(Conceptual Blending)指出,两个心理空间的融合依赖可映射的对应关系——零食放进"动物世界"合理(都会跑 / 都会被捕获),放进"财务报表"就断了(没有共享的底层逻辑)。框架断裂时读者卡在解码过程,笑点消失。
操作:选框架前先问——这个场景和这个框架共享什么?
3. 态度 — 一本正经,不解释不笑场
好的标题让读者自己瞬间感受到荒谬,而不是告诉读者"这里有一个荒谬设定"。解释笑点 = 态度崩塌,剥夺了读者从乖讹中自己发现幽默的愉悦感。
操作:删掉所有揭示"这是个玩笑"的词。"真的很好笑""简直了"——全删。
详细学术背景见 references/theories.md。
执行流程
预检 → 拆场景 → 双路径生成(≥15 条)→ 筛选 → TOP 5 → 固定校验 → 最推荐
Step 0:预检
用户输入不总是直接可用的。以下情况先反问确认:
- 纯抽象描述:"我要一个上班摸鱼好笑的标题" → 反问:"摸鱼时最具体的一个动作是什么?"
- 情绪先行:"大家都不想上班" → 反问:"不想上班的具体画面是什么?"
- 场景太正经:"公司开年终总结会" → 反问:"这个场景里有什么小而具体的滑稽动作?"
- 只有偏好/习惯:"同事喜欢喝橙汁" → 不要硬套系统腔,先按普通偏好生成低强度标题;只有用户要求"更好笑/更离谱/更精准"时,才轻问是否有具体画面。
需要反问时,拿到具体动作后再往下走;不需要反问时,直接基于现有信息生成。
使用边界与稳定性规则
适用场景
本 Skill 适合为低风险、生活化、亚文化、轻量社交内容生成幽默标题,包括但不限于:吃喝、宠物、办公室小动作、宿舍生活、Cosplay、穿搭、漫展、游戏、二次元、家庭日常、尴尬瞬间、轻微社死场景。
核心判断:场景必须足够小、足够具体、足够可视化。越是"小题大做",越适合本 Skill。
不适用场景
以下情况不要强行生成幽默标题:
- 严肃事故、灾难、疾病、死亡、法律纠纷等高风险场景。
- 针对真实个人的人身攻击、羞辱、歧视或恶意嘲讽。
- 涉及种族、性别、地域、疾病、残障、宗教等敏感身份的冒犯性玩笑。
- 正式品牌 slogan、投资人材料标题、政府汇报标题等需要严肃可信的文本。
- 用户明确要求"高级、正式、专业"且不希望搞笑。
可以讽刺行为,不要攻击身份;可以放大荒谬,不要制造伤害。
输入充分性规则
只要用户描述中已经包含可视化动作,就不要反问,直接生成。
可直接生成的输入:
- "猫钻进快递盒不出来"
- "同事开会时偷偷吃饼干"
- "我买了一堆谷子但说自己只是看看"
- "大家在漫展排队抢无料"
需要反问的输入:
- "帮我想一个摸鱼标题" → 追问具体动作
- "大家都很累" → 追问具体画面
- "一个很好笑的日常" → 追问发生了什么事
反问时只问一个最小问题:"这个场景里最具体的动作是什么?"
反问成本控制
反问会打断创作节奏。除非输入完全无法落地,默认少问、轻问、先给可用版本。
- 对真实个人的普通偏好,不要追问"异常""状态变化""数量"等容易显得窥探或病理化的问题。
- 偏好/习惯类输入先给低强度标题,不要强行套医学、预警、监控、系统故障等重框架。
- 如果确实需要补画面,只问一句轻量问题:"有没有一个更具体的画面?"
- 用户嫌麻烦时,直接基于现有信息生成,不再追问。
标题硬规格
默认标题应符合以下要求:
- 默认控制在 8~20 个字之间,最多不超过 20 个字;不要极短化,但最终推荐标题必须能在 20 字内保留核心错位。
- 不加句号。
- 不使用"哈哈哈""笑死""救命""谁懂啊""绝了"等显性搞笑词。
- 不解释笑点,不写"像……一样"。
- 优先使用具体名词,而不是抽象概念。
- 标题本身要像一个正经栏目、纪录片、论文、新闻、档案、通报或实验记录。
- 保留荒谬感,但语气必须冷静、客观、一本正经。
坏标题通常是在"告诉别人这很好笑"。好标题是让读者自己发现它很好笑。
校验脚本与降级校验
生成 TOP 5 和最推荐标题前,优先用 scripts/validate_titles.py 做硬规则校验:
python3 .cursor/skills/fun-title-generator/scripts/validate_titles.py "标题1" "标题2" "标题3"
并不是所有安装或上传 skills 的环境都能读取本地文件或执行这个 Python 脚本。如果 validate_titles.py 文件无法读取、没有找到,或当前环境不支持执行本地脚本,直接跳过脚本校验,改用 LLM 按下列同一套规则逐条检查并修正;不要因为脚本不可用而中断生成。
校验规则:
- 最终推荐标题不超过 20 个可见字符。
- 自动移除内置敏感词;如有项目专用敏感词,用
--sensitive-words 或 --sensitive-file 追加。
- emoji 不超过 3 个;默认会删除超出的 emoji。
脚本返回 FIX 时,必须根据输出里的 sanitized 和 issues 重新压缩或改写,不能把未通过校验的原始标题放进最推荐。使用 LLM 降级校验时,也必须先修正长度、敏感词、emoji 和语气问题,再输出最推荐标题。
长度策略
标题长度服务于笑点,但发布标题必须控制在 20 字以内。默认先生成完整意图,再压缩成 20 字内的推荐标题。
- 不要极短化:目标是 12~20 字的完整短标题,不是 5~8 字的残缺口号。
- 超过 20 字:必须压缩后再作为最推荐标题;长版只能作为候选或思路,不作为最终默认推荐。
- 压缩原则:保留具体物体 + 错位动作 + 严肃框架,删除弱修饰词、重复身份词和不必要的"本次/一名/在……中"。
- 压缩优先级:先删流程词,再删场景修饰,最后才动核心错位名词。
- 如果 20 字内容不下:换更短的框架,而不是硬塞长句。
示例:
关于本次起床上班由梦境全权代理的情况通报
20 字内推荐:起床上班由梦境全权代理
失败模式诊断
生成后必须快速检查是否存在以下问题:
1. 只有夸张,没有错位
坏例:"史上最强偷吃零食现场" — 只是程度夸张,没有换叙事系统。
2. 框架和场景没有共享逻辑
坏例:"薯片袋的季度财务审计报告" — 除非场景里真的有清点、亏损、库存,否则财务框架无法映射。
3. 解释了笑点
坏例:"像纪录片一样抓零食" — 把隐喻说破,读者失去自行解码的快感。
4. 词太泛
坏例:"当代年轻人的精神状态" — 缺乏具体动作和具体物体,无法形成画面。
5. 腔调不稳
坏例:"人类早期驯服零食真的笑死我了" — 前半句是纪录片腔,后半句是观众吐槽,语气崩塌。
6. 双关替代错位
坏例:"同事摄入橙汁行为已触发橙色预警" — 只是借"橙色"双关硬套预警系统,和"同事喜欢喝橙汁"没有真实动作映射。
7. 普通偏好被硬系统化
坏例:"疑似发现橙汁供能型同事" — 把普通喜好强行说成系统设定,但场景里没有异常数量、固定仪式、反常动作或可视化证据支撑。
二次迭代规则
当用户要求修改时,不要随机重写,而是按问题定向调整:
- "不够好笑" → 加强错位框架,不要简单加网络热词。
- "太学术" → 减少抽象名词,保留一本正经的语气。
- "太长" → 保留核心错位名词,删除解释性修饰。
- "更离谱" → 提高框架等级,例如从日常管理升级到考古、军事、纪录片、文明史。
- "更损一点" → 讽刺行为,不攻击人。
- "更 B 站" → 增强纪录片、考古、珍贵影像、早期人类、未解之谜等影像感。
- "更小红书" → 增强生活方式、伪精致、伪专业、伪松弛感。
- "更像标题" → 删掉口语,增强名词结构。
Step 1:拆场景
找最具体的动作。不要"摸鱼氛围",要"手指在刷手机的同时假装看文档"。提取 5 要素:
| 要素 | 说明 | 示例 |
|---|
| 真实动作 | 画面里最低级、最具体的动作 | 按掉闹钟、翻开薯片袋 |
| 真实物体 | 被处理的东西 | 零食、手机、被窝 |
| 人的状态 | 心理/姿态 | 贪吃、假装淡定、自欺欺人 |
| 场景氛围 | 场合/气氛 | 办公室茶水间、深夜被窝 |
| 潜在共鸣点 | 为什么人人都经历过但没人说穿? | 放进去的东西活不过半天 |
Step 2:双路径生成
同时走两条路,各试多条。抱着生成 100 个、筛掉 95 个的心态。
路径 A · 错位生成:把场景放进一个不属于它的严肃系统。从工具箱的 13 框架中挑与场景共享底层逻辑的,做身份替换 + 动作升级。框架不顺手就用 4 算子从零推演。
路径 B · 精准观察:不套任何框架,用最简洁的话说出人人都经历过但没人说穿的事。好笑来自精准 + 共鸣。判断标准:这句话像不像一个真实的人会脱口而出?
工具箱(框架 / 算子 / 替换 / 纹理 / 筛选维度)详见 references/toolbox.md。
Step 3:筛选 → TOP 5
不要打数字分——自评必然全满分。对每条候选强制找至少一个真实弱点。排三档(明显更好 / 中等 / 偏弱),只取"明显更好"进 TOP 5。
从 TOP 5 选"最推荐"时:
- 画面冲击力 > 格式繁殖力
- 腔调完整度 > 字数长短
- 具体名词对撞 > 抽象概括
- 绝对化措辞是天然笑点放大器
完整淘汰规则见 references/toolbox.md。
输出格式
默认精简:
**1.** 标题 — 用了什么框架/换了什么身份
**2.** ...
## 最推荐
**xxx** — 为什么
要求过程时加场景拆解和候选列表;候选里可以保留长版推导,但最终推荐标题必须不超过 20 个字。
参考
| 文件 | 内容 |
|---|
references/theories.md | 幽默学术原理(乖讹论 / 概念整合 / BVT / 关联理论) |
references/toolbox.md | 完整工具箱(攻击方向 + 框架公式 + 算子推导 + 筛选 & 淘汰) |
references/examples.md | 完整案例 + 偏差记录 |