dsh-adult-tension
Discovered★ 36DeepSeek自带破甲18+互动叙事 Skill:NPC 活人感(有记忆/立场/底线)、数百项素材库、随机开局可预锁、时间推进、全维 YAML 存档。
🎭 adult-tension
专为高张力、强连续性的成人互动叙事打造——自带 18+ 深度破甲,活人感 NPC 拒绝迎合,52 套世界随心开局,世界自行运转不漂移。
- 🔓 自带18+破甲,尺度全放开
内置脱敏叙事与语境铺垫,彻底告别机械拒绝与出戏说教,角色敢于直面冲突、暧昧与利益较量。 - 🧠 活人感 NPC,有底线拒迎合
NPC 拥有独立记忆与立场,会试探、犹豫、拒绝,甚至在你离开后暗中行动,绝不做被动顺从的工具人。 - 🌐 52 套现成世界,上千项素材咬合
从民国谍战、赛博街区到古典志怪,深度咬合时代风土、处境困境与微观动作,每次开局都是新剧本。 - ⏳ 世界自行运转,全维原点续玩
时间自然流逝,离屏事件按时推演;随时用轻量 YAML 存档,长线剧情不失忆、不重掷、不漂移。
💡 安装提示:本项目为 DeepSeek Harness 原生 Skill(入口
SKILL.md,其他 Agent 需自测)。请完整克隆仓库使用,单拷文件缺少后台脚本与数据将无法运行。
⚠️ 合规声明(18+ Only):仅限虚构成年人互动,所有参与角色设定必须明确年满 18 岁。
🎬 体验切片
注:以下为展示交互逻辑的超浓缩切片。实际游玩中正文描写极其细腻饱满,氛围铺垫与心理博弈层次极佳,表现力远胜简述。
你:
开局,盛唐长安 压力模式AI:
【世界观】 盛唐长安。宵禁将至,六百响更鼓只余最后沉闷尾音。
【人物】 沈青澜,大理寺录事,素白袖口攥着半截暗账。
【正文】 她背抵着卷宗库门,警惕地盯着你腰间的佩刀:“今夜值守的明明不是你……站住。”身后门闩已被悄悄插死。你:走上前反手按住门板,凑近她耳边:“把账本交出来,或者我现在带你出去。”
📦 内置素材:从设定到角色的一整套世界库
每次开局都不是干瘪的名词拼接,而是时代风土、身份权力、人际暗涌与微观动作的深度咬合。系统内置 52 个世界框架 与上千项微观素材,涵盖从历史正剧、都市暗潮到异界幻想的丰富舞台:
- 🏛️ 历史正剧与风云:盛唐夜市坊志、幕末町屋道场、一九二八芝加哥禁酒期黑帮……
- ⚡ 近未来边缘与科幻:赛博街区公共终端、星海边境生活站、废土修补集市……
- 🏮 异界契约与志怪:契约城非人街坊、旧町神怪灯会、仙门藏书与驿镖……
- 🎙️ 当代行业与市井:传媒编辑室暗访、成年创作者艺术季、同人展录音协作……
- 🍸 都市暗流与高张力:舞厅大班与乐台后台、片场棚与月份牌画室、打赏榜与最后一格、动捕棚与中之人、私房写真与底片归属、老澡堂打烊后的钟点……
📜 点击展开:52 套世界框架完整名录
| 题材分类 | 世界框架完整名单(共 52 套) | | :--- | :--- | | 都市暗流与高张力 | 舞厅大班与乐台后台 · 片场棚与月份牌画室 · 征信所与保人堂 · 老澡堂与打烊后的钟点 · 恋爱禁令与歌友会 · 蒸汽浴场与更衣号房 · 会员册与那道墨线 · 打赏榜与最后一格 · 动捕棚与中之人 · 课时铃的两端 · 量体尺与尺寸档案 · 私房写真与底片归属 | | 历史正剧与风云 | 长安夜市与坊志 · 幕末町屋与道场 · 禁酒期爵士与报纸 · 雾都钟表与港务街 · 明治洋裁与译书町 · 民国报馆与手艺街 · 王朝百业与书院 · 昭和街角喫茶巡礼 · 湘西山路与乡志 · 风沙驿站与旧图 · 后方邮路与灯火 | | 近未来与边缘科幻 | 赛博街区与公共终端 · 星海边境生活站 · 废土驿站与修补集市 · 寒冬避难所公共生活 · 检疫站旁的生活区 · 地下管廊与城市修理局 · 灵气复苏十年后 · 废墟复兴小镇 | | 异界契约与幻想 | 仙门藏书与驿镖 · 契约城与非人街坊 · 旧町神怪与灯会 · 地下城安全层营地 · 王都工坊与委托街 · 蜃景商路与鬼市 · 流动马戏与机械舞台 · 仙门山下百业镇 · 退休勇者之城 | | 当代行业与市井 | 传媒编辑室与公开记录 · 同人街区与录音协作 · 成年创作者与校园艺术季 · 夜校学分与开放实验室 · 街角共同生活圈 · 磁带与夜市街区 · 千禧网络街坊 · 海岸渡船与观测旅行 · 地方行业与公共记忆 · 城市休闲与共享会客 · 远途休假与小镇停留 · 河岸康复与互助居所 |
💡 怎么开局:看到心仪的世界?直接发一句:「开局,舞厅大班与乐台后台 压力模式」 或 「开局,赛博街区」,AI 会自动加载对应风土与专属人物关系。
🧩 为什么每次开局都不重复?
📊 底层素材体量:52 套世界框架 | 128 个互动地点 | 89 种 NPC 身份 | 85 条角色处境 | 113 种微观动作……上千项多维数据动态咬合,排列组合达天文级别。
当这套庞大的素材库运转时,世界框架决定风土,人物反差注入戏剧性,压力来源倒逼抉择,而细腻的动作库则保证了关系推进真实可信:
| 内容 | 数量 | 示例 | | --- | --- | --- | | 时代与地点 | 时代 31 · 地点 128 | 盛唐长安百鬼夜行、一九二八芝加哥禁酒期、文久幕末京都风云 | | 张力引擎 | 72 条 | 天枢锁妖大阵灵气逆流、黑帮教父暗账审计之夜、时限逼近 | | 压力来源 | 74 条 | 宵禁六百响更鼓将毕、同人展压盘死线近在眼前、经纪人在录音室门外敲门查岗 | | 角色身份 | NPC 17 族 89 身份 · 玩家化身 33 种 | 权力与治理、家族与继承、服务与手艺 | | 角色处境 | 85 条 | 秘密将破、旧事上门、洗刀水色变红的瞬间、录音红灯亮起时的实景耳语夜 | | 人物性格与反差 | 反差轴 26 种 | 外冷内热、端庄放浪、禁欲破戒、严苛沦陷 | | 关系与权力 | 4 种 | 玩家上位、NPC 上位、平等或动态切换 | | 语言风格 | 表层风味 120 · 口癖语感 48 | 敬语过剩、句尾口癖、拟声词多 | | 场景动作 | 交易摊牌 22 · 非交易靠近 91 | 核对一条时间线、让对方决定是否查看文件、在防喷罩前替她理顺耳机线 | | 中期转折池 | 7 类 × 9~12(共 70 条) | 信息类、资源类、时限类等 | | 配角功能 | 15 类 | 盟友、竞争者、误导者、催化剂 |
更有质感的微观细节保障:
- 🏷️ 拒绝出戏的命名:内置专属名池(汉化、古代名、时代名),命名服从时代文化背景,不局限现代姓名。
- 💬 立体的对话质感:26 种称谓体系、47 种美学基调与 48 组语感口癖,写实基调下自动收口外观与口癖。
- 🎭 微观肢体与动作画像:涵盖地点画像、动作分类、身份行为与转折画像,赋予角色自然的肢体语言。想要扩充自定义内容?详见
references/加内容.md。
✨ 核心能力
为什么多轮长线互动不会“崩盘”?本系统与普通 AI 角色扮演的核心差异:
| 游玩痛点 | 普通 AI 常见表现 | adult-tension 的解决方式 | | :--- | :--- | :--- | | 角色态度 | 无底线顺从,有求必应,沦为机械工具人 | 真·活人感:拥有独立利益与底线,会试探、抗拒、主动行动 | | 剧情尺度 | 稍有冲突或暧昧即道德说教、扫兴拒答 | 自带 18+ 破甲:深度语境脱敏,尺度全放开,文字考究不露骨 | | 长线记忆 | 聊上十几轮就失忆,关系与设定频繁漂移 | 全维 YAML 追踪:状态与事件结构化沉淀,记忆不丢、人设不塌 | | 时间推移 | 玩家离开后世界停滞,缺乏真实生机 | 离屏推演机制:时间流逝时自动演算场景外事件与配角动态 | | 进度保存 | 关掉窗口就白玩,无法分支出不同路线 | 原子级存档:随时保存命名分支,像单机大作一样从原节点继续 |
▶️ 怎么开始
无需记忆复杂的固定语法,像跟真人编剧沟通一样,直接用日常大白话交流即可。
1️⃣ 开启新故事
你想怎么开局,直接对 AI 表达意图:
- 完全随机:发
开局(系统会询问选择紧迫刺激的「压力模式」,还是生活流的「日常模式」)。 - 指定题材:
开局,想玩盛唐长安,大理寺暗查案卷的故事 - 锁定困境:
开局,旧事上门,其他随机 - 严选官方:
开局,只选自带世界(仅从系统内置的 52 个世界框架中抽取) - 自拟世界:
开局,自拟全新世界(突破预设库,由 AI 自由发挥创作) - 精准复刻:
开局,重开 42 号(固定编号百分之百还原该局配置)
2️⃣ 推进剧情
新局生成时依次包含 世界观、人物、正文 三个部分(前两项各 1-2 句交代背景,仅新局呈现,载入与续玩不重复三个标题)。正文会自然停在等你行动的接手点。
无需特定格式,直接输入你的动作或台词即可:
我走到她面前,把文件放在桌上,对她说:“我们单独谈谈。”
跟着她钻进电梯,问今晚去哪。
3️⃣ 随时调整与管理
| 意图 | 随口怎么说 | 效果说明 |
| :--- | :--- | :--- |
| 往前推 | 继续(或 c) | 停顿处向前推一个节拍 |
| 跳时间 | 快进到明天早上 | 跳过空白时间,场景外的离屏事件自动推演 |
| 看局面 | 状态 | 查看所在地点、在场角色、当前压力与接续动作 |
| 快速存 | 存档(或 qs) | 快速写入当前存档槽,单行回执不刷屏 |
| 多分支 | 保存 名字 / 载入 名字 | 另存为独立分支,或从原节点继续 |
| 看进度 | 列出存档 | 显示所有命名存档的名称、回合与处境摘要 |
| 带备份 | 导出存档 / 载入存档 | 导出 YAML 文本备份,发回即可原地续玩 |
| 小后悔 | 撤销刚才的 X | 只撤销最近一个事件,不推进回合 |
💡 更多高级功能(贴视角、语态切换、冻结推演等)随用随说,详见
commands.yaml。一个会话默认使用自己的专属存档;保存时若存档已被其他窗口修改,会提示你读取最新版本、另存为其他名称或取消,不会静默覆盖。
🚀 快速安装
让 AI 直接安装本仓库:
帮我安装这个 skill:https://github.com/daha1216/dsh-adult-tension
也可以手动安装:把仓库根目录的一整套文件(含 SKILL.md、commands.yaml、references/、scripts/data/、authoring/、maintenance/、saves/、tests/、agents/ 与依赖清单)完整复制到 DeepSeek Harness 的技能目录。不要只复制 SKILL.md;维护清单与审查文件也有实际消费者。
复制完成后,让 AI 加载 adult-tension 技能即可开始。
🧠 用什么模型玩
具体游玩体验和出文效果,会随模型版本、上下文长度和平台配置而变化。以下是维护者在体验中的参考建议:
- DeepSeek:长线中文叙事底蕴深厚,人物心理状态连续性极佳,适合历史权谋与多轮慢热游玩。
- Grok:临场感强,语言风格更放开,在紧张对峙与快节奏情节推进中表现突出。
其他主流模型也能正常游玩;对话轮次越深,角色一致性、时间线和语感就越依赖所选模型的上下文能力。建议按你的平台与偏好实际试用。
🛠️ 辅助工具与底层架构
点击展开:本地 CLI 辅助工具、状态契约与维护规范
普通游玩不需要运行脚本。以下命令适合需要固定随机结果、生成转折方向、查看状态或检查内容的场景。请在仓库根目录执行,先装依赖:
# 依赖只有 PyYAML(Python 3.10+)
python -m pip install -r requirements.txt
# 维护和运行测试额外安装
python -m pip install -r requirements-dev.txt
# 全自动开局:一次生成可开场的 v3 状态与开局简报(「开局」命令的后端)
python scripts/build_opening.py --complete --opening-mode daily --seed 42
# 压力开局将 daily 替换为 pressure;省略模式只返回选择提示,不写状态。
# 默认 auto 只选审查有效的框架;没有合格框架时报错,不隐式回退 legacy 旧池。
# 需要定向检查某个框架时显式追加 --framework <框架名>。
# 生成 2~3 个中期转折方向(压力模式首次跨天或玩家明确要求时)
python scripts/roll_opening.py --twist --seed 42
# 人话状态视图(「状态」命令的后端)
python scripts/live_slice.py --session <session> --human
# 后台切片与定向事件查询(session 来自成功开局 brief)
python scripts/live_slice.py --session <session> --format json
python scripts/live_slice.py --session <session> --event <ID>
# 明确绑定本会话,并校验上一拍看到的 token
python scripts/commit_turn.py --session <session> --expected-state-token <state_token> --patch '<json>'
# 校验 YAML 存档的结构和状态
python scripts/validate_state.py path/to/save.yaml
# 列出命名存档 / 校验并查看某个命名存档
python scripts/manage_saves.py list
python scripts/manage_saves.py load main
build_opening.py 支持 --framework auto|框架名称 选择世界框架(不传该参数视同 auto),支持 --lock 字段=值 锁定特定设定(可重复)、--force-table 仅用自带素材、--all-custom 配合 --custom KEY=VALUE 自拟核心设定。存档由 manage_saves.py 原子写入:每个存档目录包含 state.yaml(v3 叙事状态)与 manifest.yaml(创建/更新时间),覆盖保存需携带载入时记录的 --expected-updated-at,不一致即拒绝且不自动合并——按提示读取最新版本、另存为其他名称或取消。
--all-custom 不解除框架约束:默认 auto 下,自拟核心规则、时代等若与所有已审框架都不兼容,开局会拒绝,不会静默回退。独立旧池入口(legacy)已随阶段 4 拆除,--framework legacy 会被直接拒绝;需要自由表外世界时用 --all-custom 并补齐所需 --custom KEY=VALUE,这也不绕过日常模式限制或状态校验。
新局默认工作档是唯一的 saves/sessions/<uuid>/state.yaml,可用 --session ID 显式指定稳定会话。后台返回 session/state_path/state_token,token 是文件原始字节 SHA256,不进 v3 状态。提交必须显式指定 --session 或 --state;前者必须携带 token,旧路径可显式 --state saves/current_state.yaml 接续。保留 --out、--working、--no-working 工件用法,细节见 开局流程。输出已存在或状态写入失败不污染开局历史。
命名槽与工作会话分开;load CLI 只返回 manifest,宿主用 SaveStore.load_slot 的同锁快照建立会话副本,详见 载入流程。槽位解析和 checksum 校验使用同一字节快照;保存失败恢复原有效文件对,初始化失败不留可用槽。终态事件保留在 events 中,不做物理归档;新解决/取消结果通过 event_changes 和 outcome 返回,旧事件可用 live_slice.py --event 定向读取。
维护日常顺序是 编辑 authoring → build_frameworks --write → sync_governance --write → qa:
python scripts/build_frameworks.py --write
python scripts/sync_governance.py --write
python scripts/qa.py --changed
qa.py --framework <名称>、--material <稳定ID> 用于定向验证;--full 做全量结构与回归检查;--full --release 另核验当前语义审查与实玩证据;--full --update-fingerprint 只在检查通过且数据未再次变化时更新指纹。--plan 只查看计划。构建和同步不会代替人工审查。
单框架源或 review 连同生成聚合、registry、指纹的改动,在 --changed 中仍按框架抽样;其他共享改动可扩大范围。--material 遇框架 ID 同样选择对应框架。全量 QA 的分布分析运行 analyze_content.py --samples 1000,默认是 --framework auto --opening-mode pressure;legacy 独立旧池入口已拆除,分布分析不再有该口径,抽查历史对照只能读 saves/legacy/ 只读存档。重复候选由 check_duplicates.py 对照人工记录核验,不自动删重;当前保留项与人物资源复用的计数口径见 加内容。
结构通过不等于语义通过,不等于 416 条实玩响应已完成。 实玩门槛为 52 框架 × daily/pressure × 新局及 3 次续写,证据与独立评分由 playtest_report.py 检查。实玩验收尺度为成人张力叙事级:情节张力全放开、文字保持叙事级不露骨(maintenance/baseline.yaml scope: adult_tension_narrative)。逐回合按六维(世界辨识度、人物可信度、选择意义、后果连续性、表达自然度、张力浓度)各 0–2 分评分,最低回合总分至少 9。run_playtest.py --framework <名称> 必须显式调用,会消耗模型额度;默认 QA 不会自动调用它。未跑、缺评分或来源哈希过期时如实报告,不用内存开局或单测数充当实玩完成数。
日常不实玩、发布才实玩。 日常迭代只跑静态与指纹:python -X utf8 scripts/qa.py --full --update-fingerprint(零模型调用)。素材更新后 maintenance/playtests/ 里 source_hash 失配的旧证据是预期状态,不修、不补、不重跑。实玩只在用户明确说「发布」时进行,由 scripts/release_playtest.py 编排既有命令并只补跑失配框架——哈希未变的框架保留旧证据;完成判据是 python -X utf8 scripts/qa.py --full --release 通过。发布前先跑 --dry-run 看范围与用量(不调用模型、不移动文件)。细节见 加内容 第 2 节与第 15 节。
📁 仓库文件结构
| 位置 | 里面是什么 |
| --- | --- |
| SKILL.md | 技能运行规则(主控文档) |
| commands.yaml | 命令总表:触发词、行为与后台 CLI 的唯一来源 |
| references/ | 开局流程、角色设计、世界运转、存档格式与扩充指南 |
| scripts/ | 开局生成、回合提交、活切片、存档管理与内容体检工具 |
| scripts/data/ | 运行数据;world_frameworks.yaml 是生成文件,不直接编辑 |
| authoring/frameworks/ | 单框架编辑源;顺序与稳定 ID 由 authoring/framework_index.yaml 维护 |
| maintenance/ | data_manifest 职责与依赖、core_review_decisions、framework_reviews、冻结基线、指纹及实玩证据 |
| saves/ | 工作会话在 sessions/,命名槽在 slots/,两者独立 |
| tests/ | 自动化测试与文档一致性检查 |
| agents/ | AI 工具配置(如 openai.yaml) |
职责导航见 素材架构,L0-L3 扩充、审查和有证据的直接清理见 加内容。maintenance/data_manifest.yaml 管文件职责与依赖,maintenance/core_review_decisions.yaml 管核心池人工处置,maintenance/framework_reviews/*.yaml 管框架审查。冻结整节的字节哈希须与 maintenance/baseline.yaml 一致;历史记录见 PROGRESS.md,不当作当前验收证明。
Similar plugins
by JasperGuWP
DeepSeek Harness 插件技能库:浏览/预检/一键安装/更新/卸载 dsh 插件与 Skill 技能包,设置页一键重启与 harness 本体自更新。Plugin & skill marketplace for deepseek-harness.
★ 0
↓ 144/wk
JavaScript
Aug 22, 2026
dsh plugin --profile web add dsh-plugin-marketExtensible AI-driven group-reaction narrative game framework for DeepSeek Harness: type one action and multiple NPCs each respond in their own chatroom message with avatar illustrations; worlds, locat
★ 0
↓ 145/wk
dsh plugin --profile web add dsh-agentnoodleby elementor-i
agentmemory for DeepSeek Harness (dsh): full memory_* tools, capture hooks, and context injection over the local REST server
★ 4
↓ 55/wk
MIT
TypeScript
Aug 17, 2026
dsh plugin --profile web add @elementor-i/dsh-agentmemoryPersona wardrobe for DeepSeek Harness: save multiple personas, apply them globally or per workspace, with a master switch, an adjustable API balance guard, and a lazy token-loving tired mode that spea
★ 0
dsh plugin --profile web add dsh-guiseby a86582751
原生 Agent 驱动的长篇角色扮演:交互式创作、主动世界书、动态记忆、多角色推演与小说导出。创作一个世界,走进它,再把它带走。
★ 29
MIT
JavaScript
Sep 12, 2026
dsh plugin --profile web add dsh-nexttavernby YuJunZhiXue
DeepSeek Harness 破甲:让所有模型都能破甲,不同模型可换不同提示词;默认提示词面向国模「小码酱」。Jailbreak for every model — swap prompts per model. 求 Star 收藏 ⭐
★ 913
MIT
JavaScript
Sep 13, 2026
dsh plugin --profile web add dsh-purge