
iyllyt/dsh-btw
60最近提交 2026年8月14日
dsh-btw DSH 插件
dsh-btw 将 Claude Code 中的 `/btw` 指令复刻到 DeepSeek Harness。你可以在主 Agent 执行长任务时发送一个临时问题,该问题独立于主会话,不污染对话历史。回答以 Markdown 格式显示在输入框上方的临时面板中,支持键盘操作和取消请求。
如何安装 dsh-btw DSH 插件
dsh plugin --profile web add github:iyllyt/dsh-btw复制不会执行命令。安装 dsh-btw DSH 插件前请核对仓库和版本。
dsh-btw DSH 插件数据来源
dsh-btw DSH 插件快照日期:2026年8月16日
discovered
dsh-btw DSH 插件能做什么
- 主 Agent 忙碌时仍可提交 `/btw` 问题,不会暂停主任务
- 复用父会话的模型配置、系统提示词、工具 schema 和消息前缀,无需重新交代背景
- 一次性生成:不执行工具,不进行后续轮次,严格隔离于主会话历史
- 临时面板展示 Markdown 回答,支持方向键滚动 / Enter 或 Space 关闭 / Esc 取消
- 三种侧链存储模式:私有 JSONL(默认)、仅内存、不保存,可配置保留天数与最大数量
- 对 Anthropic pi-ai 路由进行缓存边界保护,避免为一次性尾部写入缓存
dsh-btw DSH 插件适合哪些场景
- 快速确认刚才提到的配置文件名称或参数值
- 询问为什么采用某个方案,而不打断正在进行的任务
- 检查一个报错是否与最近的修改有关,而不增加主会话上下文
- 在 Agent 长时间运行时确认缓存的策略决策
- 从已有上下文中提取一个已知但需要确认的结论
dsh-btw DSH 插件适合谁
- 使用 DeepSeek Harness 进行长时间 AI 辅助开发的开发者
- 需要频繁询问上下文相关问题但又不希望打断主任务或污染会话历史的用户
dsh-btw DSH 插件的限制
- 没有工具权限:无法读取未读文件、执行命令或联网搜索
- 只有一次回答,不支持追问或多轮讨论
- 依赖 DeepSeek Harness 0.1.0-rc.6 和 Node.js 22.19+,且需要已启动的 `web` profile
- 缓存优化仅对 pi-ai 的 Anthropic 路由生效,其他 provider 由 provider 管理缓存
- 侧链审计记录存储在 $DSH_HOME/btw-sidechains/v1,共享机器用户需根据隐私要求选择合适模式
dsh-btw DSH 插件的仓库 README 摘录
以下文字摘自 dsh-btw DSH 插件的上游仓库 iyllyt/dsh-btw 的 README,版权归原作者,仅作引用。
为 [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) 复刻的 `/btw` 旁路提问插件。 > 个人很喜欢 Claude Code 里的 `/btw` 指令,于是为 DeepSeek Harness(DSH)做了一个复刻插件。 `/btw` 用来在不打断主 Agent 的情况下快速问一个与当前上下文有关的问题。问题由独立的一次性模型请求回答,结果显示在输入框上方的临时面板中;它不会成为主对话消息,也不会写入 DSH 的普通会话目录。 本项目是非官方社区插件,与 Anthropic、Claude Code 或 DeepSeek AI 没有关联。 ## `/btw` 是做什么的? `/btw` 可以理解成在主会话旁边“顺手问一句”。当 Agent 正在执行一个较长任务时,你经常会临时想确认一个细节:刚才提到的配置文件叫什么、某段已经读过的代码为什么这样写、之前决定采用哪个方案。直接发送普通消息会改变主会话的走向并增加后续上下文,而另开会话又会失去当前任务已经积累的信息。 BTW 解决的正是这个夹缝问题:它读取截至提交时父会话可安全复用的上下文,独立生成一次回答,然后把结果放进可关闭的临时面板。主 Agent 继续原来的任务,问题和回答也不会进入普通会话历史。 它的核心价值是: - **不打断主任务**:主 Agent 正在思考或调用工具时仍可提问,BTW 在旁路独立运行。 - **不污染主上下文**:临时问题不会改变主任务方向,也不会占用后续对话历史。 - **不用重新交代背景**:它知道父会话已经讨论过的代码、结论和决策。 - **快速确认细节**:适合答案已经存在于当前上下文中的短问题。 典型用法: ```text /btw 刚才说的配置文件叫什么? /btw 为什么这里选择队列而不是直接执行? /btw 我们最终决定使用哪种缓存策略? /btw 这个报错和刚才修改的代码有关吗? ``` ### 什么时候不该用 `/btw`? | 需求 | 应该选择 | | --- | --- | | 询问当前会话已经知道的内容,只需要一次快速回答 | `/btw` | | 需要读取尚未看过的文件、执行命令或联网搜索 | 普通消息或 subagent | | 需要连续追问、共同讨论或改变实现方案 | 普通消息 | | 需要真正修改文件或执行操作 | 普通消息或带工具的 subagent | BTW 没有工具权限,也没有后续轮次。它不是免费的本地查询,而是额外的一次模型请求;插件会尽可能复用父请求的共享 prompt/cache 前缀,以降低重复上下文的成本。 这一交互定位参考了 [Claude Code 官方 `/btw` 文档](https://code.cl
阅读完整 README仓库许可: MIT
dsh-btw DSH 插件常见问题
如何安装 dsh-btw?
可以直接从 GitHub 安装:`dsh plugin --profile web add github:iyllyt/dsh-btw`。如果没有全局 `dsh` 命令,可以用 `npx @deepseek-ai/dsh` 替代。仓库已包含预编译文件,无需本地构建。生产环境建议锁定特定 commit,例如 `#<commit-sha>`。
/btw 会使用主会话的上下文吗?
是的,它会复用父会话当前的模型配置、系统提示词、工具 schema 和平衡后的消息前缀,所以你不需要重新交代背景。但问题和回答完全与主会话历史隔离,不会出现在会话日志或侧栏中。
主 Agent 正在执行工具或思考时,可以使用 /btw 吗?
可以。插件设计为与主 Agent 并行工作。你可以在 Agent 忙碌时直接输入 `/btw` 并回车,主任务不会暂停。BTW 的回答会显示在输入框上方的临时面板中。
BTW 的侧链记录保存在哪里?
默认保存在 `$DSH_HOME/btw-sidechains/v1` 目录下,目录权限 0700,文件权限 0600。你可以通过配置将模式改为 `memory`(仅内存)或 `none`(不保存)。保留天数(默认 7 天)和最大侧链数(默认 500)均可配置。
如果 BTW 模型返回的是工具调用而不是文本怎么办?
插件没有注册工具执行器,因此如果模型只返回工具调用,界面会显示一条可读的降级说明,告知无法生成文本回答。这是为了防止在侧通道中意外执行工具。