🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

旁路问答 loster12520/dsh-btw

DeepSeek Harnessv0.0.3
loster1252025 天前有提交已提供中文文档扫描:未发现敏感能力

deepseek harness版btw插件

34/100
综合分
6
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/12 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查有告警:npm 同名包「dsh-btw」归属 iluluyu/dsh-btw,装到的可能不是本插件。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add loster12520/dsh-btw
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · other
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 25 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意

npm 同名包「dsh-btw」归属 iluluyu/dsh-btw,装到的可能不是本插件

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-btw @ 0.0.3
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/28 08:38:10

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

发起外部网络请求
查看扫描证据(共 1 处,展示前 1 条)
  • 发起网络请求
    dist/client.js:20
    const res = await fetch("/api/dsh-btw" + '/' + method, {
扫描于 2026/11/2(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

README

由 DeepSeek 最新模型翻译生成
dsh-btw 更好的推荐:ChenRuoT/dsh-sidebar-qa 本项目不再维护,上述项目已经能完全实现本项目的功能,用起来也更方便 ⚠️ 仍在开发中(WIP) 本项目处于活跃开发阶段,尚未发布稳定版本(v0.1.0 以下)。API、命令行为、RPC 契约与面板 UI 均可能随时变化;可能存在未修复的缺陷或未验证的边界情况。请勿用于生产环境,升级前请阅读提交记录与 README 变更。欢迎提交 Issue 与 Pull Request 参与共建。 DSH 旁路问答插件:/btw <问题> 命令 + 居中弹窗面板。在独立会话分支中回答你的问题——分支可以查看主对话历史(创建时 seed + 每次提问注入增量),但只有只读 + web 搜索权限(write/edit/bash/pwsh/ssh_* 等写类工具全部下掉),问答内容不进入主对话上下文。对齐 Claude Code /btw 的旁路问答语义,并扩展了多轮对话、主对话增量同步、一键清空与每会话独立的居中弹窗面板。 功能 - /btw <问题> 命令:输入框直接旁路提问,命令系统消化(log-only 记录),不触发主模型;自动打开居中 BTW 面板并展示回答。 - /btw 无参命令:仅打开面板并聚焦输入框,不做其他事、不输出提示。
展开完整文档(README 剩余 1 节)
dsh-btw

更好的推荐:ChenRuoT/dsh-sidebar-qa 本项目不再维护,上述项目已经能完全实现本项目的功能,用起来也更方便

⚠️ 仍在开发中(WIP)

本项目处于活跃开发阶段,尚未发布稳定版本(v0.1.0 以下)。API、命令行为、RPC 契约与面板 UI 均可能随时变化;可能存在未修复的缺陷或未验证的边界情况。请勿用于生产环境,升级前请阅读提交记录与 README 变更。欢迎提交 Issue 与 Pull Request 参与共建。

DSH 旁路问答插件:/btw <问题> 命令 + 居中弹窗面板。在独立会话分支中回答你的问题——分支可以查看主对话历史(创建时 seed + 每次提问注入增量),但只有只读 + web 搜索权限(write/edit/bash/pwsh/ssh_* 等写类工具全部下掉),问答内容不进入主对话上下文。对齐 Claude Code /btw 的旁路问答语义,并扩展了多轮对话、主对话增量同步、一键清空与每会话独立的居中弹窗面板。

功能

- /btw <问题> 命令:输入框直接旁路提问,命令系统消化(log-only 记录),不触发主模型;自动打开居中 BTW 面板并展示回答。
- /btw 无参命令:仅打开面板并聚焦输入框,不做其他事、不输出提示。
- 居中弹窗面板:类似 antd Modal,半透明遮罩覆盖右侧内容区(排除左侧侧边栏);点击遮罩或 ✕ 关闭;多轮对话、问题/答案气泡、Ctrl+Shift+K 或「清空」按钮一键重置当前会话分支。
- 无常驻入口:不再有会话标题栏 BTW 按钮,面板只能通过 /btw 命令打开。
- 只读分支:分支通过 agents.create 创建为「裸 agent」,不注册进 subagent registry(GUI 不显示为子代理,不出现在子代理目录);工具白名单 read / glob / grep / read_image / web_search,其余全局工具(写文件、执行命令、SSH 等)全部不可见。
- 查看主对话历史:分支创建时以主对话已完成 turn 为 seed;每次提问注入主对话增量(自上次同步水位之后的新消息),所以主对话的进展会持续同步到分支。
- 每会话独立分支:每个主会话各自维护独立的 btw 分支、历史、同步水位与串行队列;不同对话的 btw 问答完全隔离、互不污染。
- 统一问答历史:Host 维护 {id, role, text} 历史,面板轮询 btw/state 增量同步——命令路径的问答也会出现在面板,主对话命令卡片只显示一行提示。
- 不污染主上下文:分支是独立 Session,主对话的 LLM 上下文不含任何 btw 问答。

安装与使用

方式一:dsh plugin 一键安装(推荐)

前置:本机已安装 dsh CLI(dsh plugin 是 pnpm 的薄转发器,需 pnpm 在 PATH 上)。

在任意目录执行(路径用你的本仓库路径,绝对/相对均可):

dsh plugin --profile web add <本仓库路径>

或从 GitHub 安装
dsh plugin --profile web add git+https://github.com/loster12520/dsh-btw.git

然后重启 dsh web(Host 半区改动需要重启;之后仅 Client 改动浏览器硬刷新即可)。

打包原理(对本仓库的配置说明):

- dsh plugin --profile web add <路径> 等价于在 ~/.dsh/profiles/web 里执行 pnpm add <路径>,随后按「已安装依赖的 package.json 是否声明 dsh.bundle.patch」自动把包加入 profile 的 bundle 层(dsh.profile.bundles),无需手动改任何配置。
- 本仓库 package.json 的声明:
- dsh.bundle.patch: "./cordis.patch.yml" —— bundle 层,挂载插件行 {id: dsh-btw, name: dsh-btw}(等价于在 profile 的 cordis.patch.yml 手写该行);
- dsh.client: { platform: "web" } + exports["./client"](dist/client.js)—— Client 半区由 client-modules 扫描并注入浏览器;
- main: src/host.js —— Host 半区,注册 /btw 命令与 /api/dsh-btw/ HTTP 路由(带浏览器信任围栏)。
- 手动静态挂载(agent preset 插件行)同理可用:- id: dsh-btw / name: dsh-btw,详见 cordis.yml。

使用:

- 主输入框输入 /btw <问题>:问答并自动打开居中面板;
- 主输入框输入 /btw:打开面板并聚焦输入框;
- Ctrl+Shift+K / 面板「清空」按钮重置当前会话分支。

方式二:动态插件(开发/调试用,无需安装)

1. 生成装配产物:

node scripts/to-dynamic.mjs

2. 在 DSH 会话中用 cordis_define 定义插件:
- code.host ← dist/dynamic-host.js 的内容
- code.client ← dist/dynamic-client.js 的内容
- 插件名 btw(idPrefix 语义),然后 cordis_run 激活(Client 半区需在 UI 批准)。

3. 使用同方式一。

两种方式共用同一份 src/client.js:动态路径由宿主沙箱以闭包参数注入 React / host / styles;静态路径由 scripts/build-static.mjs 生成的 dist/client.js 在 factory 闭包内提供等价符号(require("react") + fetch 到 /api/dsh-btw/)。改动 src/client.js 后需 npm run build 重新生成 dist/client.js 并提交(dist/ 已 gitignore,仅 dist/client.js 例外保留跟踪)。

目录结构

dsh-btw/
├── package.json # 包声明:dsh.bundle.patch + dsh.client + exports["./client"] ├── cordis.patch.yml # bundle 层:挂载插件行 {id: dsh-btw, name: dsh-btw} ├── src/ │ ├── host.js # Host 半区:每会话状态、命令、分支创建/复用、历史、/api/dsh-btw 路由 │ └── client.js # Client 半区:隐形会话同步 + 居中弹窗面板 + 轮询同步 ├── scripts/ │ ├── to-dynamic.mjs # 动态插件装配:ESM 源码 → code.host/code.client │ ├── build-static.mjs # 静态 Client bundle 装配:src/client.js → dist/client.js │ └── verify.mjs # 校验动态产物与静态 bundle ├── dist/ # 装配产物(dist/client.js 提交跟踪;dynamic-.js 本地生成) ├── cordis.yml # 静态挂载说明(与 cordis.patch.yml 的对应关系) ├── README.md └── LICENSE

权限模型

分支的工具集在创建窗口内通过 childCtx.tools.restrict({ allow: [...] }) 白名单限定,只保留:

| 工具 | 用途 |
| read | 读文件(只读) |
| glob / grep | 搜索文件(只读) |
| read_image | 读图片(只读) |
| web_search | 网络搜索 |

其余全局工具(write、edit、pwsh/bash、ssh_、子代理、工作流等)对分支不可见且拒绝执行(scoped tools.restrict 对 inherited 工具生效)。

与 Claude Code /btw 的对齐

| Claude Code /btw | dsh-btw |
| 斜杠命令,不进入主对话上下文 | /btw 命令由命令系统消化,log-only 记录,不触发主模型 |
| 全新临时上下文回答 | 独立 Session 分支(创建时 seed 主对话历史 + 增量注入) |
| 答案以紧凑形式展示 | 居中弹窗气泡展示,可关闭 |
| 主对话零 token 消耗 | 分支问答完全独立于主会话 LLM 上下文 |
| —(扩展)多轮对话 | followup 复用同一会话分支 |
| —(扩展)主对话更新同步 | 每次提问注入主对话增量 |
| —(扩展)多会话隔离 | 每个主会话独立分支与历史,互不干扰 |
| —(扩展)清空记录 | Ctrl+Shift+K / 清空按钮重建当前会话分支 |

开发

npm run check # to-dynamic + build + verify 全部执行(改源码后建议跑一遍)
node --check src/host.js
node --check src/client.js
node scripts/to-dynamic.mjs # 重新生成动态装配产物
node scripts/build-static.mjs # 重新生成静态 Client bundle(dist/client.js,需提交)

License

MIT
预览分享卡片长什么样 ↓loster12520/dsh-btw
分享 · DeepSeek Harness Hub
loster12520/dsh-btw

deepseek harness版btw插件

这是你的仓库?认领条目

回到顶部