dsh-premise-guard-cn:中文小说创作的上下文前提防丢插件

前言

在 DeepSeek Harness(DSH)的长会话流程中,上下文压缩(compaction/summary)是维持对话连贯的必要手段,但压缩后的摘要往往丢失了关键的前提设定。当模型在后续推理中不知道”师门已灭门”或”第九重天不可踏足”时,故事逻辑会崩塌。上游插件 ICCuse/dsh-premise-guard 主要针对 ASCII 锚点(如路径、键值),对中文内容支持不足。dsh-premise-guard-cn 在此基础上做了中文优先适配,增加了手动锚点清单与工具支持,用于在压缩后自动检测并注入前提告警。

核心功能

该插件主要包含以下能力:

中文优先的自动锚点提取

插件内置了一套针对中文的锚点提取规则,优先识别以下内容作为前提锚点:
- 中文引号(双引号、书名号、直角引号)内的短语;
- 顿号分隔的术语链或箭头术语链(如”炼体→炼气”);
- 编号锚点(如 W12、A07);
- 仓内中文相对路径(如”设定/人物卡/林晚.md”);
- 数字与数量(如”12章”、”300—500里”);
- 长中文串(长度 ≥12 字);
- 保留原版对 ASCII 模式的兜底支持(路径、键值、错误码)。

判定规则为汉字数量 ≥4,并会过滤停用词。

手动锚点清单

插件允许通过文件维护一份手动锚点清单。清单文件默认位于 <工作区>/.dsh-meow/anchors.md。如果被压缩区间中出现过清单中的锚点,但未出现在摘要中,插件会将其标记为【标注】优先报警。

工具与命令

  • premise_anchor 工具:模型可直接调用的工具,支持 list、add、remove 操作,用于维护当前工作区的锚点清单。
  • /anchor 命令:用户命令,用于操作默认清单($DSH_HOME/anchors.md)。若需操作工作区清单,请使用 premise_anchor 工具或直接编辑文件。

自动告警注入

插件仅在 compaction/summary 事件后触发检查。它会比对被压缩区间与摘要文本,发现关键锚点丢失时,会在下一步自动注入一条中文告警,提示模型核对日志。

安装与启用

在终端执行以下命令安装插件:

dsh plugin --profile web add "github:111111AAA111111/dsh-premise-guard-cn"

安装后需要重启 DSH 进程,插件才会随 bundle 在启动时加载。

典型用法

维护锚点清单

在工作区根目录创建或编辑 .dsh-meow/anchors.md 文件,按行添加前提锚点:

# 关键前提锚点清单
- “主角的师门在灭门之夜全军覆没”
- 炼体→炼气→炼神
道基一成,方向不可改

增删行后,下一次上下文压缩立即生效。

使用命令或工具

  • 使用 /anchor 命令管理默认清单。
  • 在对话中让模型调用 premise_anchor 工具进行增删查。

查看告警

当压缩摘要丢失锚点时,系统会输出如下告警:

⚠️ 前提告警【前提守卫 premise-guard-cn】:刚才的上下文压缩(seqs 12-40)生成的摘要丢失了以下关键锚点:
- 【标注】“主角的师门在灭门之夜全军覆没”
- 修炼共分九重天,第九重从未有人真正踏足
若这些前提仍然重要,用 session 事件工具从日志读回被压缩区间核对;若摘要已用等价表述保留,或前提已不再影响当前工作,忽略本提醒。

适用场景与注意

  • 适用场景:主要面向中文小说、长篇创作或设定复杂的项目。
  • 触发时机:只在 compaction/summary 事件后检查。
  • 匹配机制:命中片段为字面匹配(子串),非语义判断。如果摘要用等价表述保留了前提,插件仍可能误报,告警文案已提示模型自行判断。
  • 边界说明:清单与告警均为工具线索,不替代项目的正式笔记与来源裁定。
  • 许可:MIT。基于 ICCuse/dsh-premise-guard 修改,保留原作者署名。

总结

dsh-premise-guard-cn 为中文长文创作场景提供了针对性的前提防丢机制。通过自动锚点提取与手动清单维护,它能在上下文压缩后主动提示模型可能丢失的关键设定,降低长对话中的逻辑崩塌风险。

GitHub 仓库

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜