DSH Plugins
返回列表
🧩

dsh-text-guard

admin-security 更新于 2026.10.05

在终端中运行以下命令:

dsh plugin install 7771sd/dsh-text-guard

将以下提示词粘贴到 DeepSeek Harness 对话框中:

在 DeepSeek Harness 中执行 `dsh plugin install 7771sd/dsh-text-guard`,或在插件管理器的安装栏填写同一 spec(亦对应仓库 https://github.com/7771sd/dsh-text-guard)。

插件介绍

DeepSeek 官方 API 会在请求携带某些文本时整单返回 400 INVALID_REQUEST(Content Exists Risk)。实践中常见的是一对连续的区域指示符(例如 U+1F1F9 与 U+1F1FC 组成的旗帜 emoji):单独出现或调换顺序往往能通过,但这一对会让请求被拒。更麻烦的是,Harness 每轮都会重发已写入会话的历史;一旦这类序列进了 session log,后续每一轮都会失败,重试或重启应用也救不回来,只能开新会话。序列多半不是用户手打,而是网页抓取、读文件或命令输出经工具结果带进对话。

dsh-text-guard 在内容进入日志的入口做改写:钩住 tools/post-execute(已接受的工具结果)、tools/ptc-dispatch-log(run_code 子调度的持久日志副本)以及 agent/pre-step(进入本步的消息,含用户粘贴)。未命中配置序列的内容原样透传,且保持原对象引用,未受影响的调度仅多一次正则探测。改写发生在 append 之前,因此 Session 回放、fork 与后续请求与模型所见一致;替换结果为纯 ASCII,不会把敏感序列再写回日志。

默认以 regional-pairs 模式匹配任意两个连续区域指示符,也可改为 exact 并按码点列表精确匹配;可分别开关工具结果与用户消息,并可选记录受影响次数摘要不泄露原文。适合长期跑自动化、频繁读外部内容与执行命令的 Harness 用户,以及曾因工具输出导致整段会话「卡死」需要规避 API 内容风险的场景。需注意:经 system prompt / skill 文件进入请求的路径不经过这些钩子;用户消息被改写后日志与客户端展示可能不一致;改写有损,若任务必须保留原文逐字则不宜挂载。

使用场景

  • 工具输出或网页抓取带入旗帜等区域指示符,导致后续每轮请求均被 API 以内容风险拒绝
  • 需要在写入 session log 之前净化文本,保证回放、fork 与后续请求可重建
  • 长期自动化任务频繁读文件、跑命令,希望降低偶发敏感序列毁掉整段会话的风险

适合人员

  • 日常依赖 Harness 工具链拉取外部内容与执行命令的开发者
  • 曾因 API Content Exists Risk 导致整段会话不可恢复的用户
  • 需要在不影响未命中内容的前提下,对日志入口做可控中性化配置的管理员