dsh-claude-bridge:通过 Agent SDK 驱动 Claude Code CLI

前言

DeepSeek Harness (DSH) 支持接入多种模型提供者。若要使用 Claude Pro 或 Max 订阅,常规做法是通过 OAuth 流程(如 dsh-provider-login)接入,但这会将使用量计入第三方,而非 Claude 计划额度。dsh-claude-bridge 通过 Agent SDK 驱动 Claude Code CLI,利用现有登录凭证,将模型调用计入 Claude 计划。

插件定位

dsh-claude-bridge 是一个由 shaneconner 维护的 DSH 插件。它允许将 Claude Pro 或 Max 订阅作为 DeepSeek Harness 的模型提供者,通过运行 Claude Code CLI 来处理推理请求。

核心功能

该插件实现了以下功能:
* 流式文本和推理:支持流式输出和推理过程。
* 工具调用:支持多轮对话中的工具调用。
* Token 使用情况:包含缓存读取和写入的 Token 统计。
* 完成原因:返回模型的完成原因。
* 模型列表和解析:支持模型列表查询与解析。
* 推理努力:支持控制推理努力程度。
* 一百万 token 窗口:支持 1M token 上下文窗口(需配置开启)。

安装与启用

安装时需要指定 --profile web,安装后需重启 dsh。

dsh plugin --profile web add dsh-claude-bridge

安装完成后,它会注册一个名为 claude-bridge 的提供者路由。它不会禁用其他模型提供者,而是并列存在,由 Agent 按配置选择。

配置说明

插件运行需要你已登录到 Claude Code。它不进行额外的认证,而是读取 Claude Code CLI 写入的凭据文件(位于 ~/.claude/.credentials.json 或 $CLAUDE_CONFIG_DIR/.credentials.json)。

在配置文件中添加如下内容:

- id: claude-bridge
  name: 'dsh-claude-bridge'
  config:
    # 开启 1M token 窗口。默认为 false,开启后若不在 Max 计划下会消耗额外用量
    longContext: false
    # 指定运行不同的 claude 二进制文件。若不设置,将使用 Agent SDK 捆绑的 CLI
    pathToClaudeCodeExecutable: /home/you/.local/bin/claude
    # CLI 子进程的工作目录,默认为 Harness 进程的工作目录
    cwd: /home/you/project

插件接管了部分环境变量和配置,以避免干扰:
* 环境变量:强制设置 ENABLE_CLAUDEAI_MCP_SERVERS=0 和 DISABLE_AUTO_COMPACT=1。
* 配置加载:CLI 子进程不加载用户、项目或本地的 settings.json,因此不会受到钩子、插件或技能的干扰。
* 清理环境:从环境变量中移除了 ANTHROPIC_API_KEY、ANTHROPIC_AUTH_TOKEN、ANTHROPIC_BASE_URL、CLAUDE_CODE_USE_BEDROCK 和 CLAUDE_CODE_USE_VERTEX,防止子进程误用这些变量导致计费问题。

注意事项

  • 凭证读取:必须确保已通过终端的 claude 命令完成登录。
  • CLI 来源:插件使用 Agent SDK 中捆绑的 CLI,而非系统 PATH 中的 claude 命令。
  • 取消机制:中断信号如果 5 秒内未确认,操作会停止等待;否则取消的轮次会继续运行至完成。
  • 并发与历史:会话按 Harness 会话 ID 保持;工具调用通过进程内 MCP 服务器进行,结果按 ID 配对;历史记录以内联方式写入提示词而非恢复 CLI 会话文件。
  • 许可证:基于 MIT 许可证开源。

生态背景

DeepSeek Harness 的插件生态独立于 DeepSeek 官方。该插件仓库地址为 https://github.com/shaneconner/dsh-claude-bridge。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜