@sqnb/dsh-gpt-remote-compaction
中文 | English
给 DSH 的 GPT 路由接入远程压缩。插件复用 DSH 的 BasicCompactionEngine,只替换摘要生成步骤,因此自动压力压缩、/compact、工具调用配对检查和持久化回放仍由 DSH 原生实现负责。
安装
dsh plugin --profile web add https://codeload.github.com/UABULAJIQL/dsh-gpt-remote-compaction/tar.gz/refs/heads/main安装后完整停止并重新启动 dsh web。浏览器刷新不会加载新的 profile bundle。
如果从本地 checkout 安装,请使用 file: 协议:
dsh plugin --profile web add file:C:/path/to/dsh_plugin/gpt-remote-compaction不要直接传本地目录路径。pnpm 会把这种写法解析为 link:,只链接源码而不安装插件的运行时依赖,导致 dsh web 在加载 profile 时找不到 @deepseek-ai/dsh-compaction-basic。
行为
- 仅对包含
gpt-或chatgpt-标识的模型路由启用远程摘要,例如gpt-5和openai/gpt-4o;其他路由保留 DSH 原生摘要逻辑。 - 默认在上下文压力达到 DSH
BasicCompactionEngine的阈值时自动运行,也会在上下文溢出恢复和手动/compact中运行。 - 未设置
DSH_GPT_COMPACTION_MODEL时,远程摘要使用当前会话实际路由的 GPT 模型。 - 远程请求不会继承当前会话的
reasoning_effort;思考强度由远程端点和模型的默认策略决定。 - DSH 负责选择历史、保留最近上下文、工具调用配对、持久化 checkpoint 与回放;插件只替换远程摘要请求。
远程端点
默认请求地址是 https://api.openai.com/v1/responses,凭据引用是 OPENAI_API_KEY,模型使用当前会话的 GPT 模型,摘要输出上限为 8192。
可以通过环境变量覆盖:
- DSH_GPT_COMPACTION_ENDPOINT:OpenAI-compatible Responses 或 Chat Completions 地址
- DSH_GPT_COMPACTION_API_KEY_ENV:DSH credential reference,默认 OPENAI_API_KEY
- DSH_GPT_COMPACTION_MODEL:专门用于压缩的远程模型
- DSH_GPT_COMPACTION_MAX_OUTPUT_TOKENS:正整数输出上限
凭据先从 DSH ctx.credentials 按 reference 解析,解析不到时回退到同名进程环境变量。Chat Completions 地址应包含 /chat/completions,插件会自动使用对应请求格式。
限制
插件只对包含 gpt- 或 chatgpt- 模型标识的路由启用远程摘要,例如 gpt-5 和 openai/gpt-4o。其他路由调用基类的 DSH LLM 摘要实现。OpenAI 原生 /responses/compact 返回的加密 compaction item 不能直接作为 DSH 的通用文本摘要,因此不把它误当成可恢复的摘要;如果端点只返回 encrypted compaction item,插件会明确失败。
许可证
MIT
Copyright (c) 2026 sqnb