Tyan66666/billion-context-dsh85

billion-context-dsh

Active Context Pruning (ACP) for the DeepSeek Harness — model-driven context management as a CompactionEngine backend.

AI 分析

适合需要动态控制上下文窗口、缓解长文本压力并优化 Token 消耗的用户。

パッケージ
billion-context-dsh
バージョン
0.2.22
ライセンス
MIT
最終更新
2026/09/12

インストール

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Tyan66666/billion-context-dsh

ドキュメント

README 全文を読む ↗

配置

默认值含义
modelContextLimit自动探测(回退 128000用于内核压力决策的上下文窗口;显式配置时优先且跳过探测。省略时优先读宿主会话投影 contextPressure.contextWindow(按当前真实路由披露的新窗口,切模型会话自动跟随,无需重启),无投影时再从模型 API 探测;显式配置同样跳过输出预留扣减(分母完全由操作者定义)(运行时热调:/acp config
autoModelContextLimittrue从模型 API 自动探测真实窗口(agent.ctx.llm.resolveModelInfo);探测失败回退默认值,/acp 命令展示窗口来源(模型工具 acp_status 不含窗口信息)。省略时窗口先读宿主投影(windowForprojectedContextWindowsrc/window.ts)再走探测;投影与探测在 autoModelContextLimit: false 时均跳过。探测失败会在宿主日志与 /acp 面板提示(restart to re-probe)——失败结果同样被缓存,修复网关后需重启或显式设置 modelContextLimit 才会重新探测。探测成功后还会扣减 adapter 的每请求输出上限defaultMaxTokens,窗口末端每请求保证的输出预留):所有下游压力决策(nudge 档位、truncate、growth)以「可持续输入预算」(窗口 − 输出预留)为分母——96K 窗口 + 16K 上限实际最多承载 80K 输入,原裸窗口分母会把用量低估 cap/window(此处 ≈17%;小上下文窗口模型比例更高);上限未披露、显式配置或探测失败时保持裸窗口行为,/acp status 展示扣减明细(raw − reservation)。经 /acp config 改动 modelContextLimit/autoModelContextLimit 会清空窗口缓存,改完即重探
nudgeMinContextLimitPct内核默认 0.45Nudge 窗口下界(用量占比)——仅作配置校验,增长路径的触发没有百分比下限——与 billion-context-pi 相同的默认值(运行时热调:/acp config
nudgeMaxContextLimitPctengine 默认 0.70(内核/pi 默认 0.75过限线:超过此值则无论增长与否都触发 nudge——刻意低于宿主 compaction-basic 的 80% 自动压缩线,保证强制 nudge 先触发;显式配置优先(coreOverrides.nudge 同名键优先级更高,见下)(运行时热调:/acp config
nudgeEmergencyThresholdPctengine 默认 0.85(内核/pi 默认 0.95紧急 nudge(绕过每轮去重,但每个 user turn 最多注入 3 次——issue #108)——从 0.95 下调:95% 时模型已无操作空间且会被 80% 自动压缩线遮蔽;显式配置优先(coreOverrides.nudge 同名键优先级更高,见下)(运行时热调:/acp config
preset(可选)一句话选择 nudge 的激进程度:preserve / relaxed / balanced / efficient / aggressive(详见下文「预设」)。只填充你未显式设置的三个 nudge 阈值,优先级 显式值 > preset > engine 默认;未知名称在构造期报错,与显式阈值合并后若窗口反向(min / max / emergency 顺序错误)同样在构造期报错。不影响其他键(modelContextLimit / autoNudge / prompts / coreOverrides) (组合行专用:preset 尚未接入 /acp config,见 issue #75 后续)
coreOverrides任何其他 acp-kernel Config 覆盖(billion-context-pi 的 coreOverrides 逃生口)。合并顺序:内核默认 → 顶层 pct 配置 → coreOverrides.nudge 最后落地——同名键以它为准(只读:组合行专用,不经 settings 层)
autoToolstruectx.tools 注册四个模型工具
autoCommandtruectx.commands 注册 /acp 命令
autoNudgetrue当内核建议时向 agent/pre-step 注入 nudge(运行时热调:/acp config
settingsEnabledtrue(未配置即启用)(可选)整体关闭运行时设置集成(组合行专用,不进 settings 层——开关不能关掉自己;关闭后组合行 config: 仍是唯一生效通道)
prompts(可选)自定义提示词文案:nudge / 范围表 / system prompt / 工具描述按槽位覆盖(模板 + 命名占位符,构造期校验;见上文「自定义提示词文案」与 docs/configurable-prompts-design.md