ACP bridge between BitFun and DSH.
Install
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:bobleer/dsh-acp-for-bitfun
GitHub-sourced plugins run build scripts on your machine at install time. Only install sources you trust, and pin a commit (github:owner/repo#sha).
README
BitFun 支持 ACP deepseek-harness。
一个 DeepSeek Harness (dsh) 插件 bundle:
通过 Agent Client Protocol (ACP) v1 over stdio 把 BitFun
接入 dsh,作为 dsh 会话的 subagent。dsh 里任意会话都可以用 subagent_bitfun
工具把任务委托给 BitFun 执行。
工作原理
dsh 会话 ──subagent_bitfun 工具──▶ dsh-subagent-acp (ACP 客户端)
│ 每个任务 spawn 一个独立进程
▼
bitfun acp (ACP server, stdio JSON-RPC)
│
▼
BitFun Agent Runtime
- 本 bundle 复用 dsh 官方的
@deepseek-ai/dsh-subagent-acp作为 ACP 客户端:每次委托启动一个全新的bitfun acp子进程,完成initialize → session/new → session/prompt并流式收集agent_message_chunk。 - 工具通过
@deepseek-ai/dsh-tool-subagent挂载,模型见到的工具名默认为subagent_bitfun。 - 任务结束时关闭子进程 stdin(EOF 宽限 6s → SIGTERM → SIGKILL),BitFun 子进程 在 SIGTERM 下立即退出,会话数据由 BitFun 自身持久化。
前置条件
- BitFun CLI:安装后确认
bitfun acp doctor通过(BitFun 的 ACP server 内置于 CLI)。 - dsh:
npx @deepseek-ai/dsh --version, 需要>= 0.1.0-rc.6(与依赖的 subagent 包版本匹配)。 - pnpm:
dsh plugin通过 pnpm 安装 bundle。
安装
# 把 bundle 加进你的 dsh profile(从 npm 或本地目录)
dsh plugin --profile web add dsh-acp-for-bitfun
# 或者从本地 checkout 安装
dsh plugin --profile web add ./dsh-acp-for-bitfun
# 启动
dsh web
加载时插件会用 bitfun --version 探测 BitFun CLI:不在 PATH 上时启动直接失败
(fail loud),错误信息会提示安装 BitFun 或配置绝对路径。
配置
在 profile 的 cordis.patch.yml($DSH_HOME/profiles/<name>/cordis.patch.yml)里
按 id 覆盖:
- id: bitfun-acp
name: dsh-acp-for-bitfun
config:
command: /absolute/path/to/bitfun # 默认 'bitfun'(PATH 解析)
providerName: bitfun # 默认 'bitfun'
toolName: subagent_bitfun # 默认 'subagent_bitfun'
permission: reject # 'reject' | 'allow'
acpArgs: ['acp'] # 默认 ['acp']
env: {} # 传给 BitFun 子进程的额外环境变量
checkOnStart: true # 加载时探测 bitfun,缺失则启动失败
| 配置项 | 默认值 | 说明 |
|---|---|---|
command |
bitfun |
BitFun CLI 可执行文件:PATH 上的名字或绝对路径 |
providerName |
bitfun |
ctx.subagents 上的 provider 名 |
toolName |
subagent_bitfun |
模型可见的工具名 |
permission |
reject |
BitFun 权限请求的自动应答策略(reject / allow) |
acpArgs |
['acp'] |
追加在 command 后的参数 |
env |
{} |
BitFun 子进程的额外环境变量 |
checkOnStart |
true |
加载时探测 command --version,缺失则 fail loud |
验证
BitFun 侧自检:
bitfun acp doctordsh 配置树里确认插件行:
dsh --profile web --dump-config | grep -A 2 bitfun在 dsh 会话里让模型调用
subagent_bitfun工具,委托一个简单任务 (例如 "用 subagent_bitfun 回复 hello"),确认返回 BitFun 的输出。
兼容性
- BitFun
>= 0.2.17(ACP v1 server,bitfun acp)。 - dsh
>= 0.1.0-rc.6。 - deepseek-harness 目前处于 developer preview,插件依赖其
rc版本, 升级 dsh 时请同步升级本 bundle。
License
Links
More in this category
omdsh-dev/dsh-open-in-vscode★ 39
Open DSH workspace directories in VS Code directly from the web GUI.
omdsh-dev/dsh-notification★ 37
Desktop notifications for turn completions, with per-outcome controls and keyword rules.
whyihaveyou/dsh-suite#plugin-notify★ 14
IM webhook and local notifications on turn completion, errors, or approval (Feishu/WeCom/DingTalk/Slack/Discord/custom).
bill9109/dsh-web-ui-notify★ 9
Desktop notification reminders.
openma-ai/deepseek-harness-acp★ 6
ACP profile plugin and standalone stdio server for using the full DSH agent from Zed and other ACP clients while sharing DSH credentials and sessions.
LoserFox/telegram★ 6
Bridge to the Telegram Bot API: long polling, per-chat sessions, HTML formatting.