DeepSeek Harness 采用插件化架构,旨在提供灵活的模型接入能力。在本地开发或特定环境下,直接调用已安装的 Claude Code CLI 而非通过远程 API,是常见的需求。dsh-claude-code-local 插件解决了这一痛点,它将本地 Claude Code 注册为 DSH 的 LLM 提供商,无需在 Harness 中配置 API 密钥。
插件概况¶
- 名称:
dsh-claude-code-local - 所有者:NGdust
- 许可证:MIT
- 核心功能:注册
claude-code路由,在流式 JSON 模式下生成本地claudeCLI 进程,并将输出实时转换为 Harness 聊天界面。
安装与前置条件¶
安装前需确认环境满足以下条件:
- DeepSeek Harness 版本:需安装
0.1.0-rc.7或更新版本(支持 web、headless 或 DSH Desktop)。 - 本地 Claude Code CLI:已安装并完成认证。
执行安装命令:
dsh plugin --profile web add dsh-claude-code-local
安装完成后,重启服务器或应用以加载插件。
核心功能¶
- 本地运行:直接调用本地
claudeCLI,利用其内置的 Agent 循环、工具调用和权限管理。 - 流式输出:通过
--output-format stream-json模式获取实时响应,支持文本增量、思考过程 和工具调用。 - 凭据管理:不使用 DSH 的 API Key,完全依赖本地 CLI 的凭据(如
~/.claude、ANTHROPIC_API_KEY、OAuth 等)。 - 兼容性:支持现有的 Claude Code 设置,包括 Skills、Commands 和 MCP Servers。
配置与使用¶
1. 选择模型¶
在 Harness 的 Composer 模型选择器中,找到 Claude Code (local) 组。该组会根据本地 CLI 的解析结果显示可用模型列表(如 claude-opus-5、claude-sonnet-5 等)。
2. 基础配置¶
配置文件位于 $DSH_HOME/settings.yaml(默认为 ~/.dsh/settings.yaml)。插件提供 llm-claude-code 配置节,支持热重载。
llm-claude-code:
# 可选:设置 Claude Code CLI 的可执行文件路径
# 如果 CLI 不在 PATH 中,需填写绝对路径
executable: claude
# 权限模式:auto | acceptEdits | bypassPermissions | manual | dontAsk | plan
permissionMode: auto
# 限制每个请求的内部 Agent 轮次
maxTurns: 10
# 流式空闲超时(毫秒),若 CLI 长时间无输出则终止请求
streamIdleTimeoutMs: 300000
3. 验证¶
选择任意模型并发送消息。如果配置正确,响应将直接从本地 CLI 流式传输到界面中。
限制与注意事项¶
- 平台限制:仅支持 macOS 和 Linux。Windows 用户需使用 WSL。
- 无状态请求:每个请求都是一次全新的 CLI 调用,不共享跨请求的上下文或 Prompt 缓存。
- 工具与采样控制:
- Harness 的工具不通过此提供商运行,Claude Code 拥有独立的权限和沙箱控制。
- Harness 请求中的
maxTokens、temperature和stop参数将被忽略,采样参数完全由本地 CLI 控制。
- 版本依赖:必须使用 DSH
0.1.0-rc.7或更高版本。
总结¶
该插件为需要在本地环境中使用 Claude Code 能力的开发者提供了一种低延迟、无密钥依赖的接入方式。通过配置文件,可以灵活控制权限模式、最大轮次和超时时间,适合需要深度集成 Claude Code 工作流或处于受限网络环境的场景。