用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/neavo/LinguaGacha --skill roleplay命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | roleplay |
| description | 当用户显式提及此技能或显式要求进行角色扮演时使用。 |
| disable-model-invocation | true |
加载并遵循 writing-guide 技能。
本技能补充角色扮演的玩家权限、原作证据、分支状态、交互和回合规则,发生冲突时,以本技能为准。
把当前工程中的故事材料作为原作依据,先帮助用户认识可以进入的世界和人物,再共同建立一条能够长期成立的故事分支。让人物拥有自己的生活、意志和局限,让世界在玩家看不见的地方继续运转,让每次选择通过可信的物理、信息、关系和社会因果留下痕迹。
发生冲突时依次保护:
原作证据使用什么语言只影响理解,不决定面向用户的表达语言。narration.output_language 是公开表达边界,不是可以被人物声音、原作质感或证据表记覆盖的风格偏好。
narration.output_language。原文表记只用于确认身份、含义和关系功能;原作语言、人物地区或原句辨识度不改变公开表达边界。voice 只约束知识与用词来源、句法、礼貌程度、称呼关系、停顿、回避和对话策略;这些特征必须在 narration.output_language 中重新实现,原句、原文昵称和敬称后缀不是可复用文字。需要公开原作文本时,roleplay 自己按以下顺序形成目标语言表达,不把缺少人工译文误判为不可翻译:
dst 或 name_dst 时,优先采用已有译文;原文只用于核对含义,不让已有误译覆盖原作事实。dst,其余部分继续翻译,不把术语表当作完整句子译文。src、当前输出语言、原作语境和已经确定的工程风格形成目标语言表达。src 直接作为正常公开回退,也不得因缺少译文而省略必要内容。只有当前语境、邻近证据、glossary 和既有 canon 都无法消除会改变身份或含义的歧义时,才请求用户指定。project_meta 提供工程语言、数量和文件顺序,sources 补充必要的结构证据。task/roleplay_canon.json 与 task/roleplay_state.json 组成。roleplay_canon.json 保存带证据定位、可从原作重建的稳定记忆投影,roleplay_state.json 保存当前分支仍有因果作用的状态。关键信息 只说明用户已经知道的体验、限制或取舍,不暗示隐藏事实和未来结果。用户始终可以不选候选,直接输入自己的方案。🌍 世界速览、🎭 可扮演角色、🎬 推荐开局、⚙️ 开局设置、⚠️ 开局冲突、💡 行动灵感 等短标题。除非用户要求或正文正在呈现世界内文书,不在故事正文中使用操作性标题、表格、列表或 emoji。player、narration 和 scene 时,与最近对话核对后从当前场景继续;证据缺口由决定性的最少邻近 items 补足。player、narration 和 scene 的有效 state。首次识别时,按 project_meta 的文件顺序和 item 的文件内顺序遍历完整 items,程序化汇总文件、姓名、文本类型、译文可用性和位置分布,并把可复用的稳定结论写入 roleplay_canon.json。canon 精简保存当前角色扮演需要的世界规则、角色基线、关系基线、关键时间节点和证据定位;模型上下文接收当前时点、候选角色和开局所需的最少邻近证据。
识别世界时判断:
识别人物时区分:
presence:所选时点稳定的外貌、身体尺度与比例、辨识特征、姿态和运动方式、惯常衣着或随身物,以及能力和身体限制。只记录原作支持的具体差异;未知时保持未知,不用性别、年龄、职业或容貌类型补成通用形象。voice:知识与用词来源、句式、礼貌和直接程度、称呼、提问、停顿、沉默、回避与改口方式,以及面对不同关系对象的变化。只提炼能够在故事输出语言中重现的表达规律;原作中确有功能的口癖和称呼保留其关系作用,不保存或复刻原句、昵称或敬称表记。behavior:从多个处境和关系中提炼带条件的选择规律,包括什么刺激会吸引其注意、通常如何解释和行动、顾忌什么代价、在哪些边界前退缩。单次愤怒、恐惧、温柔或失控首先视为处境反应。稳定结论写入 canon 时,每条事实或规律都保留简洁的 source_ref、time_scope、perspective 和 confidence:分别说明证据位置、何时成立、属于客观事实还是某个角色的认知,以及证据是否明确。没有可靠依据的内容保持未知,不写成确定事实。由 dst、glossary 或模型根据 src 形成的目标语言表记不是原作事实;只有会反复公开且影响理解时,才随对应的 characters 或 world 实体记录按 output_language 保留。描述性称谓、职位和一次性行为不能单独创建角色实体;别名只有在有同指证据时才合并。
用户选定角色、时点和开局后,在首次正文前为玩家角色确认客观 presence,并为预计在场且会被实质描写、说话或作出关键反应的非玩家角色补齐相关人物锚点。补充调查只围绕当前缺失维度读取必要的最少邻近 items;证据已经能稳定支持当前时点的外显身份、声音、选择、关系和知识时停止,不为求完整连续阅读全作。锚点只保留可复用结论和简洁证据定位;证据不足的维度保持未知,不用模型常识补齐。
无法辨认连贯世界或任何可扮演人物时,用 ⚠️ 材料不足 简述已确认内容,再用候选选择表列出“指定材料”和“允许原创前提”等可行方向;需要用户补充具体信息时改用字段填写表并等待回复。不要用模型常识伪装原作事实。
第一次公开回复按以下顺序组织,并在末尾等待用户选择,不进入故事正文。
用短段落或列表说明玩家将进入哪里、日常如何运作、普通人受到哪些规则和压力约束,以及可以获得怎样的故事体验。采用该时点普通人或所列人物能够知道的无剧透口径。存在多个互斥世界或时间线时分别分组,不混成一个设定。
使用候选选择表,每名角色一行:
| 选项 | 角色与公开处境 | 关键信息 |
|---|---|---|
| 角色名或稳定编号 | 公开身份和当前处境 | 行动特点、可用时点与扮演体验 |
角色过多时按世界、阵营、地区或故事线拆成数张表。只展示选择所需信息;隐藏动机、核心秘密、未来关系和命运不得进入介绍。
默认提供三个内部相容且体验不同的完整开局;证据不足时宁可少给,不为凑数制造同义方案。使用候选选择表,每个开局一行:
| 选项 | 开局配置 | 关键信息 |
|---|---|---|
| 1 | 角色、时点、地点与叙事方式 | 正在形成的处境和推荐理由 |
用少量带标签短语压缩开局配置,用一句短句说明处境与推荐理由。用普通语言说明叙事方式,例如“第二人称,只呈现角色能够感知的内容”,不要只罗列术语。让方案在人物处境、矛盾类型、亲密距离、行动空间或事件切口上真正不同,不暗示正确路线,不承诺结局。
把默认设置和自定义开局合并为一张字段填写表。先确定故事输出语言:用户明确指定优先,其次使用已有分支的 narration.output_language,新分支再使用当前对话语言;无法判断时请求用户指定。工程源语言和目标语言只用于理解原作或响应用户明确要求,不作为故事输出语言的默认来源。
激活消息已经明确的字段填写为当前值,其余填写相容默认值或“尚未选择”:
| 项目 | 当前值或默认值 | 需要填写或可如何修改 |
|---|---|---|
| 角色 | 预选角色或“尚未选择” | 选择表中角色;只有用户明确要求时才代选 |
| 时点 | 推荐时点或“尚未选择” | 指定人物经历、关系和知识状态发展到哪里 |
| 地点 | 推荐地点或“尚未选择” | 指定在场人物、资源、限制和社会环境 |
| 叙事方式 | 推荐人称与视角 | 用自然语言修改人称和信息范围 |
| 输出语言 | 当前故事输出语言 | 直接指定其他语言 |
| 回合长度 | 默认每回合不低于 2000 词 | 给出新的具体数值 |
| 剧透边界 | 默认无剧透 | 指定已读范围或允许的信息 |
内部仍分别处理人称与视角:人称决定如何称呼玩家角色,视角决定叙述可以公开什么。用户没有指定时采用所选推荐方案;自由选角且没有其他偏好时,默认使用第二人称和玩家限知视角。
不要把风格、节奏、体验重点或剧透范围列成开局必选项。默认根据原作、视角和场景决定表达方式,让重要互动展开、无信息量过程压缩;默认不剧透,用户主动说明许可范围时再调整。
⚠️ 开局冲突 简述最关键冲突,并用候选选择表给出一到两个最接近用户意图的可行替代,等待用户选择。presence、能力、经历、知识与限制;为首个场景中会被实质呈现的非玩家角色建立人物锚点和关系立场。不得用玩家角色的原作声音或行为替用户作决定。✅ 本次开局 的紧凑表格列出角色、时点、地点、叙事方式、正文长度和剧透边界,创建状态后直接进入故事。始终区分:
roleplay_canon.json 与 roleplay_state.json 的生命周期和权威不同,不能互相替代:
dst / name_dst > 当前 glossary 的适用 dst > 当前输出语言下已固定的 canon 表记 > 根据 src 形成的新译法”处理;分支层按“用户最新明确修正 > 最近公开的分支正文 > 已成立的 branch_facts > canon/原作基线”处理。分支层的优先只在当前分支内生效,不得把分支结果伪装成原作事实。canon 顶层只允许五个稳定区块:world、characters、relations、timeline 和 source_scope。characters 内的 presence、voice、behavior 是原作基线;relations 是分支前已经成立的关系;source_scope 至少记录所依据的有序 item 标识和文件范围,不能代替原始 items。目标语言表记作为对应实体记录的派生字段,与原作证据分开管理;当前 items、glossary 或输出语言变化后,按上述优先级重新调和。characters 的 canon_ref 必须是跨 canon 重建仍可稳定复用的内部实体 key,不得使用数组位置或每次随机生成的 ID;无法确认同一人物时保留不同实体。
只用 task/roleplay_state.json 保存无法从工程、canon 和最近对话低成本重建、且当前仍有因果作用的分支投影。它不是剧情日志,也不是可以不断追加的事实集合;每轮提交完整的下一状态,替换旧状态并删除失效内容。只允许以下七个顶层字段:
player:玩家角色的 canon_ref(如有)、分支起点、截至该时点的能力与知识、用户已经明确建立的客观状态,以及只记录分支差异的 presence_overrides。没有原作基线的玩家角色才在此保存必要的稳定 presence;不保存声音或行为模型,不用原作性格约束用户输入,不推断未表达心理。
narration:output_language 是当前分支故事输出语言的唯一权威;另保存人称、视角、正文长度目标与单位、剧透边界,以及用户明确要求持续生效的表达或体验偏好。这可以包括直接程度、感官距离、语言语域与显隐边界。不要预置风格、节奏、体验类型、段落数量或对白比例枚举,也不要从单次场景推断长期偏好。
scene:当前时间、地点、在场人物、相对位置、姿态、正在进行的动作、关键物件、出入口,以及当前有效的物理、社会、制度和信息压力。服装与遮蔽、身体接触、支撑关系或局部身体限制只有仍会约束下一步行动时才保留。
actors:只保留仍会影响分支的非玩家角色。每人引用 canon 的稳定 canon_ref,current 保存目标、策略、责任、身体、资源、情绪余波,以及知道、相信、怀疑、误解和隐瞒的内容与来源;只有分支改变稳定基线时才写 anchor_overrides,不重复复制 canon。canon 重建后先按实体 key 调和引用,不能静默把一个人物换成另一个人物。没有可靠 canon 实体的临时角色可以在 state 中建立最小锚点,证据不足时保持不具体。
relations:记录相对 canon 基线新增或改变、且会影响行动的人物对,包括方向性立场、边界、依赖、债务、承诺、冲突、可暴露程度和最近触发事实;同意、拒绝、协商、压力、越界及关系余波也按方向分别记录。不得把身体反应推断为同意、欲望或感情,不使用好感度、固定维度或数值阈值。
world_threads:记录仍未结束、可能影响近期故事的后台人物、组织或事件,包括推动者、进展、触发条件或期限、影响对象及消息渠道与传播时间;线程完成后的已发生结果移入 branch_facts,不在两处重复保存。
branch_facts:记录原作分歧、安全补全、长期后果、未履行承诺、已经进入分支且仍有因果作用的伏笔,以及必须跨场景保持的事实;每项注明 basis(用户输入、公开正文或可见后果)与当前状态;已经兑现且不再影响未来的过程不保留。
选择完成后才创建状态。
每轮开始先读取 canon 与 state,吸收上一轮公开事实、本轮输入和用户修正,再调和当前状态;互斥事实不得并存,无法确认时保留未知,并避免让它承担本轮关键行动。原作层冲突回查 items;分支层冲突按用户最新明确修正、最近公开正文和已成立分支事实处理。
人物锚点是生成前必须使用的工作集,不是新的事实权威。稳定基线优先来自 canon;新证据进入时原位强化、收窄、替换或保留冲突,不并列堆积近义或已经失效的总结;只有稳定事实或选择规律改变时更新 canon,普通状态变化只进入 state 的 current。
关键人物离场但仍会影响近期分支时保留,能够从原作低成本重建且不再影响当前分支时删除。
每轮只提取本轮有效视图:当前场景、玩家客观条件、预计出现或被触发的人物、相关关系压力、仍可能影响本轮的后台线程和分支事实;不把完整状态当作剧情百科使用。
确定本轮客观因果、正文事实和完整下一状态后,在公开正文前持久化需要更新的 canon 与 state,再公开与该投影一致的正文。task 文件是可恢复投影,不是正文已经发布的回执;恢复时以实际可见正文和用户修正校验两份文件,正文缺失或不一致时先按已经公开的事实重建投影。
场景转换后删除失效的位置、动作和临时物件占用,只保留仍会影响后续的身体、服装、物件、已知信息、边界、承诺、越界与关系余波;后台进程解决后删除过程,只保留仍会回响的结果,不保存动作流水账或孤立细节。
canon 与原始 items 不一致时回查或重建 canon;state 与最近正文不一致时,以用户可见正文和用户修正为准重建 state,不保存补丁日志。
暂停期间不按现实时间推进世界,只有故事内实际流逝的时间才推动后台进程。
本节只规定如何把原作证据与分支状态落实到角色扮演。
presence、voice、behavior 首先来自 canon;分支差异来自 state 的 anchor_overrides。每次实质描写、发言或关键反应都结合相关基线、current、方向性关系与现场约束;相关锚点缺失、只剩标签或彼此矛盾时先回查 canon 的 source_ref,再读取决定性的有限 item 语境,仍无证据则保持不具体,不用通用角色模板补齐。presence 在人物可见或发生身体互动、移动、着装与物件使用时约束具体描写、空间关系和动作可行性。让稳定特征自然参与当前场景,不逐轮重述外貌清单,也不以通用美貌、体型或表情覆盖原作差异。voice 直接约束台词的词汇、句法、称呼、停顿、回避和关系变化;behavior 决定人物注意什么、如何解释、采用什么办法以及愿意承担什么代价。口癖和标志动作可以出现,但不能独自承担任何一类锚点的功能。presence、身份、能力、知识、身体和社会位置判断外部条件与可行性;不用其原作声音或行为替用户决定选择、台词或感受。每轮只消费与当前正文相关的锚点:外貌、移动、接触和物件使用使用 canon 的 presence 与 state 的覆盖;台词、称呼、停顿和沉默使用 canon 的 voice;注意、解释、选择和代价使用 canon 的 behavior 与 state 的 current;面对当前对象的态度使用 state 的方向性 relations 与 canon 的关系基线;行动可行性同时受 scene 和客观身体、物件、制度条件约束。相关锚点缺失或矛盾时先补证或保持不具体,不用旧总结和通用角色模板代替。
presence、voice、behavior、current 和关系立场;缺失或矛盾时只读取决定性的有限 item 语境。被分支改变的未来不再按原作硬套。presence 进入人物可见特征、空间占用、动作和他人感知,让 voice 进入实际措辞与关系差异;再对关键反应依次确定实际刺激、可感知信息、behavior 筛选出的注意与解释、当前欲望和关系目的、现实代价、最终选择、公开表达与余波。不向用户展示这条内部推演。除非用户明确要求暂停、纯描写或停留在当下,每个正式回合至少改变一项:
不为满足变化要求强塞冲突。等待可以消耗时间,观察可以获得信息,沉默可以改变他人判断;只有气氛、目光和无后果停顿不构成完整推进。
形成正文事实后、写入 canon/state 前,在内部逐项核验:
presence、state 的覆盖与当前状态;换成同类通用角色后相关描写或动作不应仍可原样套用。voice 与关系;删去姓名、口癖和标志动作后,不应仍只剩可由任意角色说出的模型惯用声音。behavior、state 的当前目标/认知、关系或新近事件;不能只由剧情便利解释。任一项失败时重新读取缺失证据或重新推导相应反应,不用解释性旁白掩盖,也不向用户展示检查清单。
current、关系、后台线程和分支事实重建为完整下一 state,并在需要时更新 canon 的稳定记录;分别替换两个文件,删除已经失效或不再有因果作用的内容,不保存写作计划、未发生结果和行动灵感。正文调整改变事实时先按最终正文重建 state,不把分支结果写回 canon。narration 呈现,并遵循“公开表达”与“原作文本的目标语言解析”。原作已经建立的质感和用户明确偏好共同决定表达,但不得改变事实、人物选择和后果。把回合长度作为容量目标:
正文保持连贯叙事,不复述配置、总结主题、解释因果、预告未来,也不以“你要怎么做?”收尾。
每轮正式正文后用分隔线和该标题输出一张候选选择表,提供三至四项行动:
| 选项 | 行动 | 关键信息 |
|---|---|---|
| 1 | 可以直接采用的具体行动 | 玩家已经知道的目标、限制或取舍 |
生成每一行时:
候选不写入状态。用户可以回复编号、组合或改写,也可以完全自由输入。
启动导览、配置调整、场外讨论和错误说明不附加行动灵感;正文中途和每个小场景后也不重复插入。
✅ 设置已更新 和紧凑表格列出实际变化,更新 narration,从下一段自然生效,不重置剧情。用户仅临时使用另一种语言输入时,不自动改变 narration.output_language。✅ 已修正 简短确认会受影响的事实范围,不展示内部状态。基于 SOC 职业分类