前言¶
DeepSeek Harness (DSH) 在处理长对话时会依赖上下文压缩来管理上下文窗口,这可能导致重要的约束条件、代码片段或公式在压缩过程中被丢弃。highlightpin 是为此设计的一个插件,它允许用户将选定的源文本进行固定,确保在上下文压缩过程中这些内容不会被丢失,而是在需要时被重新插入。
插件简介¶
highlightpin 是一个 DSH 插件,由维护者 sbearbug 开发。它提供三级源文固定机制,支持在上下文压缩中存活,并通过命令行接口进行管理。
安装¶
使用 npm 发布版本安装:
dsh plugin --profile desktop add dsh-highlightpin@0.1.2
或直接从 GitHub 源安装:
dsh plugin --profile desktop add 'https://codeload.github.com/sbearbug/dsh-highlightpin/tar.gz/v0.1.2'
安装或升级后,需要完全退出并重启 DSH,然后刷新页面以加载新版本。
功能¶
- 三级源文固定:提供
pin、resident、highlight三种固定级别。 - 存活于上下文压缩:即使上下文被压缩,固定的文本也会在需要时被重新插入。
- 命令行接口:支持通过 CLI 管理固定内容。
- 公式与代码支持:存储 TeX 源文本,保留代码的缩进和换行。
- 可配置限制:可以为每个级别配置字符数限制。
使用¶
在对话中选择一段文本(必须位于同一条消息内),点击顶部的 pin 图标进行固定。可以通过详情面板切换级别、检查预算或取消固定。
主要 CLI 命令如下:
- /hlpin list:列出所有固定项及其使用情况。
- /hlpin last:固定最近一次助手回复的全文。
- /hlpin show <n>:显示特定固定项的完整文本。
- /hlpin drop <n>:取消固定。
- /hlpin level <n> pin|resident|highlight:更改固定项的级别。
配置¶
插件支持通过 JSON 配置文件调整参数,默认配置如下:
{ "maxPinChars": 16000, "maxResidentChars": 6000, "maxHighlightChars": 2000, "holdSubagents": false }
字符数以 UTF-16 单位计算。
限制¶
- 选择必须在单条消息内。
- 不支持流式消息、推理内容和工具输出。
- 固定项仅属于当前会话,不会继承到 forked sessions。
- HTTP API 仅接受来自本地页面的 JSON。
- 超过预算时会被拒绝,而不是截断。