dsh-plugin-btw
Manifest validAdds /btw and /side slash commands that answer ephemeral side questions in an isolated forked sub-session without polluting the main conversation context.
dsh-plugin-btw
A DeepSeek Harness (DSH) plugin that adds a /btw slash command — a quick side-question channel you can use mid-session, modelled after the /btw feature in Claude Code, OMP (oh-my-pi / pi-coding-agent), and JCode.
What it does
/btw <question> runs an isolated side-agent to answer your question, then surfaces the answer as a compact command-result card. It never derails the active task and never writes the exchange into the main conversation's model context.
/btw what does the useDebounce hook in src/hooks do?
/btw where is the JWT secret configured?
/side is this failing test related to my last change?
How it stays out of the main thread
- The side question is executed by a subagent (
ctx.subagents.start(...)), not by the main agent's turn loop. - DSH's command registry logs the invocation as direct surface events (
command/run,command/done). These are not model-turn messages, so the side Q&A never becomes part of the main agent's future context window. - The default
forkprovider seeds the child with the parent session's completed-turn history, so the answer is grounded in your current work (files, recent edits, decisions) without copying that history into the main transcript. - The side-agent runs read-only by default:
write,edit, and thecordis_*lifecycle tools are denied, so a "btw" can't silently mutate the working tree while your main task is running.
Variants
The plugin registers two commands that share one handler:
| Command | Alias | Behaviour |
|---|---|---|
/btw <question> | — | Fork the session context, answer read-only |
/side <question> | alias of /btw | Same as /btw (matches pi-btw's /side) |
Requirements (DSH host services)
commands— human slash-command registry (@deepseek-ai/dsh-commands)subagents— subagent provider registry (@deepseek-ai/dsh-subagent)
The fork in-process provider (@deepseek-ai/dsh-subagent-fork-in-process) is preferred; the plugin falls back to spawn if only that is mounted. Both are part of the standard DSH host composition.
Install into a DSH composition
-
Place this package under
node_modules/dsh-plugin-btw(or link it). -
Reference it in your
cordis.patch.yml(or host composition):- insert: - id: plugin-btw name: dsh-plugin-btw -
Restart the host. Type
/btw(or/side) in any session composer.
Dynamic (Cordis) install
The same plugin can be mounted at runtime as a dynamic Cordis package via cordis_define + cordis_run with inject: ['commands', 'subagents'] — no restart required. That is how it was validated in the session that produced this package.
Notes / trade-offs
- The answer appears as a command-result card in the transcript (DSH logs every command execution). The card is compact; the underlying side-agent conversation stays in its own ephemeral session and is not projected into the main agent's context. A true floating overlay (as in Claude Code) would require a Client-half UI rendered into the
shell.overlayslot plus command-node suppression, which needs client-package approval and is out of scope for this host-only build. - If your deployment mounts no subagent provider,
/btwreturns a clear error instead of failing silently.
Comments
Loading…
Similar plugins
`/side` persistent side sessions and `/btw` one-shot side questions, run in a temporary fork without touching main history.
★ 0
dsh plugin --profile web add @dsh-external/dsh-sidechainby MichengAI
Adds /btw for one-off, context-aware side questions without tool execution, with independent answer bubbles that can be copied, collapsed, or closed without adding answers to the main conversation.
★ 19
↓ 4.9k/wk
Apache-2.0
TypeScript
Oct 17, 2026
dsh plugin --profile web add @michengai/dsh-btwby JasonQQ
Codex-style /btw command for DeepSeek Harness: side questions answered in a conversation-seeded subagent context, without polluting the main context
★ 3
JavaScript
Oct 1, 2026
dsh plugin --profile web add @jasonqq/dsh-btw-pluginby 136155330
/btw side-question command for DeepSeek Harness (dsh) — ask a context-aware question, never touch the main conversation
★ 0
MIT
TypeScript
Aug 19, 2026
dsh plugin --profile web add dsh-btwby lzxcs
/btw 旁路问答:不打断当前会话(含流式输出中),基于当前上下文回答一个问题;答案以「旁答」命令结果行显示在主会话里,不进入主模型上下文。
★ 0
MIT
JavaScript
Aug 26, 2026
dsh plugin --profile web add btw-proby omdsh-dev
DSH 侧会话插件:/side 持续性侧会话(Codex 风格)与 /btw 一次性侧问(Claude 风格)——在临时 fork 中运行、不写入主会话历史;Web UI 右侧链面板内嵌对话,主会话保持不变
★ 14
BSD-3-Clause
TypeScript
Oct 15, 2026
dsh plugin --profile web add @dsh-external/dsh-sidechain