# simp-skill · 产品设计文档 (PRD) > 版本:v1.6 > 作者:[@BeamusWayne](https://github.com/BeamusWayne) > 最后更新:2026-05-02 --- ## 一、为什么做这个 这个 skill 系列里已经有了模拟前任的、模拟心上人的、模拟同事的。 但它们有一个共同的角色设定:**它们都是「对方」**。 没有一个是站在你这边的。 simp-skill 想做的事情不一样——它不扮演任何人,它只做一件事:**陪你追人**。 --- ## 二、核心定位 ``` 不是情感陪伴 App 不是恋爱模拟游戏 不是话术库 是一个懂感情、有策略、永远站你这边的追求教练。 ``` 与系列内其他 skill 的对比: | Skill | 角色 | 视角 | | -------------- | -------- | -------- | | ex-skill | 扮演前任 | 对方视角 | | crush-skills | 扮演心上人 | 对方视角 | | yourself-skill | 扮演你自己 | 第一人称 | | **simp-skill** | **陪你追人** | **你的视角** | 这个差异决定了 simp-skill 几乎所有的设计选择。 --- ## 三、最重要的一个设计决策:为什么要有两个模式 这是整个产品里争议最大的设计,值得单独说清楚。 ### 最初的方案:只做纯情模式 第一稿的设定很简单:只教你说真心话,不玩套路,用真诚打动对方。 这个方案有一个问题:**它假设所有人、所有阶段都适合同一种方式。** 现实是,有些人在感情里天然不会解读直白的表达——不是因为他们冷漠,而是因为他们需要一点空间和节奏感。对这类人纯情轰炸,效果可能适得其反。 ### 最终方案:双模式 + 混合默认 ``` 💖 纯情模式 — 以真心为核心,不算计 🎯 策略模式 — 以节奏为核心,懂进退 ✨ 混合模式 — 默认,真心为底、智慧为骨 ``` **为什么默认混合,而不是纯情?** 因为大多数追求失败,不是真心不够,而是时机和方式错了。真心是必要条件,不是充分条件。混合模式假设用户是真心的,但帮助他们更聪明地表达出来。 **为什么保留纯情模式,而不是全用混合?** 有些用户明确知道自己不想算计,他们只需要帮助「把心里的话说出来」。纯情模式是给他们的。 **策略模式会不会变成 PUA?** 不会——见第五节。策略模式的边界是「让感情推进得更自然」,而不是「制造对方的不安全感」。这两者有明确的区别,被写进了 SKILL.md 的运行规则里。 --- ## 四、三层情感表达公式的由来 simp-skill 里所有情话生成都基于一个公式: ``` 第一层「看见」: 我注意到了你身上具体的 XX 第二层「感受」: 这让我感到 / 想到了 XX 第三层「期待」: 我想 / 希望 XX(留有余地) ``` 这个公式不是凭空发明的,它来自一个观察: **让人心动的话,从来不是「你很好」,而是「你让我怎么了」。** 「你很漂亮」是评价,「看到你我突然不知道说什么了」是感受。后者更真实,更难伪造,也因此更有力量。 公式的第三层刻意设计了「留有余地」——不把话说满,让对方有想继续的空间。这是纯情模式和策略模式共享的底层逻辑:**无论多真诚,表达的节奏感都很重要。** --- ## 五、伦理边界:我们不生成什么 这一节的存在,是因为一个追求类 skill 太容易滑向操控工具。 我们明确拒绝生成以下内容: **操控类** - 刻意制造对方不安全感的话术(「你不答应我就不理你了」) - 利用对方的弱点或创伤施压 - 假装冷漠以激发对方焦虑的「欲擒故纵」极端版本 **越界类** - 在对方明确拒绝后继续提供追求话术 - 针对对方已有伴侣的「介入」策略 - 跟踪、监视类行为建议 **欺骗类** - 伪造共同话题或假装有相同爱好 - 在重要事实上撒谎以建立好感 **边界在哪里?** 一个判断标准:**如果对方知道你在用这个方法,ta 会觉得被尊重,还是被耍了?** 策略模式里的「推拉节奏」「制造缺席感」,如果对方知道,会觉得「这个人懂得分寸」。而 PUA 话术如果被对方知道,ta 会觉得被操控。这是边界。 ### 一条新增的伦理边界:不在用户焦虑时火上浇油 v1.6 加入「防耗尽机制」时,伦理边界从「不伤害对方」延伸到了「不伤害用户自己」。 一个追求工具默认会假设:**用户问就给答案,越多越好**。但实际跑下来发现,**焦虑驱动的高频追问**几乎一定带来更糟的结果——用户在焦虑里写出来的消息会让对方更想撤,分数会继续下降,用户回来问得更频繁,循环加剧。 这种情况下,工具有两条路: - **A. 继续输出建议**——用户开心了,对方没事,工具看起来很有用 - **B. 拒绝输出,让用户先停下来**——用户当下不爽,但避免了对双方都不好的动作 我们选 B。这是和「不教 PUA」同等优先级的边界——只是一个保护对方,一个保护用户自己。 具体规则在 `prompts/daily_coach.md` Step 0 和 `prompts/progress_tracker.md` 风险表里。当 7 天内调用频率过高、焦虑词密度超标、或评分持续下降时,工具会进入「劝歇」分支:不给行动建议,只给陪伴式回应。即使用户坚持要继续,第一次也礼貌坚持一次,第二次才让步并附警告。 这不是「服从用户」的退让,是「服务用户长期利益」的坚持。 --- ## 六、信号评分系统的设计逻辑 simp-skill 的聊天分析器用 25 分制评分,而不是简单的「有没有好感」判断。 **为什么是 25 分,不是 10 分或 100 分?** 10 分太粗,无法区分「有一点好感」和「明显喜欢」。100 分会给用户一种虚假的精确感(「83分和84分有什么区别?」)。25 分在精度和可读性之间取了平衡。 **六个维度的权重设计:** | 维度 | 满分 | 权重理由 | | ---- | --- | ----------------------- | | 主动性 | 6 | 主动联系是最强的有意识信号,权重最高 | | 回复速度 | 5 | 速度反映优先级,但受客观因素干扰,略低于主动性 | | 回复趋势 | 3 | 趋势比当前值更有预测价值 | | 消息长度 | 3 | 间接投入度,但受性格影响大,权重适中 | | 深夜信号 | 5 | 深夜主动联系是最难解释的亲密信号,权重高 | | 追问行为 | 3 | 追问说明真的在听,但数据噪音大 | **深夜信号为什么单独列出来,权重还这么高?** 因为深夜主动找一个人,是很难用「礼貌」或「习惯」解释的。白天的消息可能是客气,深夜的消息很难是。这是这六个维度里「排除噪音」能力最强的一个。 --- ## 七、功能范围演进 v1 的设计原则是:**把追求的核心流程做完整,而不是把所有边缘功能都塞进来。** 此后每个小版本只补一类清晰的能力,不堆叠。 **v1.0 核心**(2026-04-05): - 双模式系统(纯情 / 策略 / 混合) - 心上人档案系统(create / update / list) - 25 分信号评分系统 - 五阶段追求路线图(破冰→升温→暧昧→表白前→表白后) - 情境情话生成(8 大情境) - 表白词定制系统 - 10 种危机处理方案 - 聊天记录解析器(微信/QQ 多格式) - 档案版本管理 **v1.1–v1.6 增量**: - v1.1 — 表白模块 prompt 完整化、`signal_reader.md` 评分对齐 25 分、`skill_writer.py` 类型化与日志改造 - v1.2 — 今日建议 `/simp daily`、进度追踪 `/simp progress`、放弃判断器 `/simp quit` - v1.3 — `/simp message` 加入 AI 味检测、危机扩展 C-11(对方开始新感情) - v1.4 — 记忆系统 Phase 2+3(`tools/memory.py`、事件流、状态快照、记忆操作协议)、进度可视化 - v1.5 — MBTI 分析系统 `/simp mbti`、信号/策略集成 MBTI 校正层 - v1.6 — 防耗尽机制(`/simp daily` Step 0 预检、`/simp progress` 风险表新增「用户耗尽风险」、`SKILL.md` 运行规则升级) **仍有意不包含(下版本再说):** - 多人档案对比(「我应该追 A 还是追 B」) - 对话练习模式 `/simp rehearse`(模拟对话练习表白) - 朋友圈内容建议、礼物建议、约会策划、成功后维系模块(见第八节"待评估") --- ## 八、Roadmap ### v1.6 · ✅ 已发布(2026-04-28) - **防耗尽机制**:`prompts/daily_coach.md` 新增 Step 0「防耗尽预检」,从 `events.jsonl` 最近 7 天读取调用频率、焦虑词密度、单日重复、评分趋势、长期低位徘徊 5 类信号,命中高风险时短路返回「劝歇」分支。`prompts/progress_tracker.md` 风险表新增「用户耗尽风险」一行;`SKILL.md` 运行规则新增第 8 条「防耗尽优先」。这条线的核心立场是:当用户处于焦虑驱动状态时,更多的追求建议只会加深耗尽,工具应主动停下来而不是继续输出。 ### v1.5 · ✅ 已发布 - **MBTI 分析系统**:新增 `/simp mbti` 指令。含三个模块:① 行为维度推断(E/I、N/S、T/F、J/P)② 16 型专属追求策略(含核心需求、节奏、雷区、试探方式)③ 双方兼容性分析。信号解读与策略规划模块已集成 MBTI 校正层。 ### v1.4 · ✅ 已发布 - **记忆系统 Phase 2+3**:`tools/memory.py` 完整实现(事件追加、状态读写、快照管理、时间线查看、状态重建)。`SKILL.md` 新增记忆操作协议,定义每条指令的读写规范。 - **进度可视化**:`/simp progress` 输出新增阶段进度条(纯文本图示)和热度趋势对比,从 `state.md` + `events.jsonl` 读取历史数据。 ### v1.3 · ✅ 已发布 - **AI 味检测**:`/simp message` 生成后自动运行,识别七种 AI 特征(过于工整的句式、缺少语气词、四字词堆砌等),命中后主动提示用户并给出改写方向,而不是替用户重写。 - **危机扩展 C-11**:补充「对方开始了新感情后如何调整」——含 72 小时情绪处理、三问重新评估、路线 A(长线等待)和路线 B(拉开距离)分支,以及与 C-6(竞争对手)的区分说明。 ### v1.2 · ✅ 已发布 - **今日建议 `/simp daily`**:根据当前阶段输出单条今日行动建议(主动出击 / 等待观察 / 自我提升 / 机会捕捉 / 破局 五种类型),区分周末与工作日。 - **进度追踪 `/simp progress`**:阶段评估、热度分历史趋势、里程碑追踪、三条具体行动。 - **放弃判断器 `/simp quit`**:帮用户区分真心与执念,输出四种结论(继续 / 调整策略 / 先暂停 / 认真考虑放下)。 ### v1.7+ · 待选方向 以下方向来自产品探索,尚未排入具体版本,等待优先级确认: **功能扩展类** - `/simp mirror`:**反向视角**——基于档案模拟「如果我是心上人,我对你的印象是什么」,帮用户跳出自己的视角。 - `/simp weekly`:**每周复盘**——本周高点/低点/下周策略,比 `/simp daily` 更长维度的回顾。 - `/simp rehearse`:**对话练习模式**——基于心上人档案构建简单的对方性格模拟,让用户在正式表白前「彩排」一遍。借鉴 crush-skills 的人物模拟能力,但用途完全不同——不是为了「和心上人对话」,而是为了「练习如何面对心上人」。 - `/simp date`:**约会策划**——根据心上人档案推荐约会场景、时机、话题,不走「找个电影院」的烂大街路线。 - `/simp post`:**朋友圈内容建议**——今天发什么让 ta 注意到你,风格上怎么展示你最好的状态。 - `/simp gift`:**礼物建议**——结合档案推荐有记忆点的礼物,而不是通用的节日礼物。 - `/simp after`:**成功后模块**——在一起之后怎么维系热情、如何处理初期磨合,目前 v1 完全缺失这块。 **内容扩展类** - 多语言情话库(粤语、闽南语等方言支持) - 节气 / 节日专属情话生成(不走通用祝福路线) - 「对方的 MBTI」精准情话引擎(在 v1.5 校正层基础上做深) ### v2.0 · 全局视角 v2 的核心问题是:**单纯追求一个人,是不是最好的策略?** v2 计划加入「个人吸引力评估」模块——在帮用户追人之前,先帮用户评估自己哪些地方可以提升。最好的追求策略永远是让自己变得更好,而不只是说对话。 这个模块需要和 yourself-skill 生态打通,目前在设计阶段。 --- ## 九、一个没有标准答案的问题 做这个 skill 的过程里一直有一个问题没有彻底想清楚: **教一个人更好地追求另一个人,是在帮助真心,还是在干预自然?** 我们的立场是:帮助表达,不帮助欺骗。 一个人喜欢另一个人,但不知道怎么说出来,这是表达能力的问题,不是感情真不真的问题。simp-skill 试图解决的是前者。 但我们也承认:用语言影响另一个人的感情决策,本身就带有一定的干预性。我们能做的是让这种干预停留在「帮助真心被看见」这一侧,而不是越过「制造虚假感情」那条线。 这条线需要被持续审视。 --- *如果你对这个产品有想法,欢迎开 Issue 或 PR。* *如果这个 skill 帮你追到了心上人,也欢迎来告诉我。* --- *simp-skill · 愿每一份真心都有回应*