DeepSeek Harness 部署指南:从 npx 一键启动到 Python SDK 完整接入
发布日期:2026-08-14 | 数据来源:deepseek-ai/deepseek-harness 官方 GitHub 文档、53AI 首批实测 | 话题:DeepSeek Harness · dsh · Agent 部署 · Python SDK
DeepSeek Harness(命令行名 dsh)是 DeepSeek AI 于 2026 年 8 月 13 日与 V4 Pro 同日开源的 AI Agent 框架,MIT 协议,开源不足 24 小时 GitHub Stars 突破 5 万;其架构核心是"一切皆插件"——模型、工具、沙箱策略、多 Agent 协调、会话存储均以插件形式挂载,由 Cordis 微内核驱动组合;提供四种启动方式(Web UI / TUI / Headless / Python SDK),最快部署路径是安装 Node.js 后执行 npx @deepseek-ai/dsh web,浏览器访问 http://127.0.0.1:3080 即可开始使用;自定义模型接入通过 Web UI 图形化配置或 $DSH_HOME/settings.yaml 写入 OpenAI 兼容端点实现;Python SDK(pip install deepseek-harness-sdk)提供程序化接入,内置运行时无需单独安装 Node.js;当前处于开发者预览阶段,官方明确警告将有破坏性变更。

快速部署:三分钟跑起来 Web UI
DeepSeek Harness 的最快部署路径不需要克隆代码,只需要安装 Node.js:
# 前置:确认 Node.js 已安装(v18+ 推荐)
node --version
# 一行命令启动 Web UI
npx @deepseek-ai/dsh web启动后访问 http://127.0.0.1:3080,Web UI 自动初始化。
如果需要固定版本或离线使用,全局安装更稳定:
npm install -g @deepseek-ai/dsh
dsh web从源码运行(开发者 / 需要最新功能):
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web源码版本需要 pnpm,通过 npm install -g pnpm 安装。
Web UI 初始配置:三步连通 DeepSeek
Web UI 首次打开后,按以下顺序操作:
第一步:配置模型
打开 Settings → Models,在 DeepSeek 卡片中填入 API Key(格式 sk-...),点击保存。Key 存储在 $DSH_HOME/.credentials.yaml,界面不会再显示明文,仅显示脱敏描述符。
第二步:选择工作区
点击 选择工作区,添加你希望 Agent 操作的项目目录(dsh 会将启动命令时所在目录作为默认位置)。选中工作区前,会话输入框处于不可用状态。
第三步:发送第一个任务
Summarize this repository and identify its main packages.Agent 会读取工作区文件、运行命令、维护执行计划,涉及写操作时 Web UI 会根据权限策略提示审批。
配置自定义模型:OpenAI 兼容端点接入
Harness 支持接入任意 OpenAI 兼容端点,适合需要同时使用多家模型的场景。
方式一:Web UI 图形化配置(推荐)
打开 Settings → Models → 添加自定义提供方,填写:
注意:Provider ID 是永久的,不可重命名。需要修改时,删除旧提供方、新建新提供方。
方式二:直接编辑 settings.yaml
$DSH_HOME/settings.yaml 支持完整的文本配置,适合 CI/CD 或自动化部署场景:
llm-pi-ai:
providers:
my-gateway:
apiKeyEnv: GATEWAY_API_KEY # 从环境变量读取 Key
api: openai-completions
baseURL: https://api.example.com/v1
models:
- id: model-name-here通过环境变量接入示例(适合多模型聚合平台):
export GATEWAY_API_KEY="your-key-here"
dsh web模型变更无需重启 dsh,下一次请求自动生效。
四种启动模式选择
dsh 提供四个运行入口,按使用场景选择:
Headless 模式适合脚本调用:
# 单次任务:运行并打印结果,自动退出
dsh --profile headless "运行测试套件并报告失败的测试"Python SDK:嵌入工作流
Python SDK 适合需要将 Harness 嵌入已有系统的场景,如 CI/CD 流水线、自动化测试、批量代码审查。
系统要求:Python 3.10+,Linux x64/arm64 或 macOS 14+ arm64(不支持 Windows 原生)
安装:
pip install deepseek-harness-sdk
# SDK 内置运行时,不需要单独安装 Node.js基础用法:
from pathlib import Path
from deepseek_harness import DeepSeekHarness
workspace = Path("/path/to/your/project").resolve()
sessions = Path("/path/to/sessions").resolve()
config = Path("examples/jsonrpc-agent/minimal.cordis.yml").resolve()
with DeepSeekHarness(
provider="deepseek-official",
model="deepseek-v4-flash", # 或 deepseek-v4-pro
max_tokens=49_152,
cwd=str(workspace),
session_root=str(sessions),
cordis=str(config),
) as harness:
result = harness.run(
"检查代码库,定位并修复所有失败的测试",
session_id="fix-tests-001",
)
print(result.final_response)环境变量配置:
export DEEPSEEK_API_KEY="sk-your-key-here"
# 接入 OpenAI 兼容代理(如多模型聚合平台)时设置
export DEEPSEEK_BASE_URL="https://api.your-platform.com/v1"
# 指定模型
export DSH_MODEL="deepseek-v4-pro"
# 自定义系统提示词
export DSH_SYSTEM_PROMPT="你是一位专业的 Python 代码审查工程师。"Session ID 复用规则:
独立任务 → 使用新 session ID(如 fix-tests-001、fix-tests-002)
需要延续上下文 → 复用相同 session ID,Bash 进程、工作目录、Shell 变量均被保留

常见问题与已知限制
Q:npx @deepseek-ai/dsh web 执行后报 Node.js 版本过低?
Harness 要求 Node.js v18+。运行 node --version 检查版本,通过 nvm install 20(推荐 LTS)或直接从 nodejs.org 下载安装更新版本。
Q:Web UI 打开后"会话输入框"一直不可用?
需要先完成两步:①在 Settings → Models 配置并保存 API Key;②点击"选择工作区"添加并选中目录。两步均完成后输入框解锁。
Q:自定义 Provider ID 填错了,能修改吗?
不能修改。Provider ID 一旦保存即永久,请求、会话日志和凭据引用均依赖它。需要更改时,在 Web UI 删除旧提供方,新建一个正确 ID 的提供方。
Q:Headless 模式能批量跑多个任务吗?
单次 dsh --profile headless 执行一个任务后退出。批量任务有两种方案:① Shell 脚本循环调用多次 Headless 命令;② 用 Python SDK 在同一进程内多次调用 harness.run(),内置运行时复用,效率更高。
Q:Python SDK 的 danger-full-access 沙箱是什么意思?
示例组合使用了 danger-full-access 权限策略,意味着 Bash 和编辑器可以修改运行时进程可见的任何文件路径。官方建议只在可丢弃的 checkout 或容器内运行这个配置,生产环境应换用更严格的权限策略(如 workspace-write 默认模式)。
Q:测试中遇到 Bash noop 循环卡死,如何处理?
这是当前开发者预览版的已知 bug:Agent 在某些情况下会反复执行空 Bash 命令而不推进任务。遇到时直接手动中断(Web UI 停止按钮 / SDK 层中断会话),重新发起任务。官方正在修复,可关注 GitHub Issues 进展。
Q:能接入 DeepSeek 以外的模型吗?
可以。通过 Web UI 的"添加自定义提供方"或 settings.yaml 配置 OpenAI 兼容端点,即可接入任意兼容 OpenAI 格式的模型服务。需要统一管理 DeepSeek 和其他多款国产模型(Kimi、GLM 等)的开发者,可以通过多模型聚合 MaaS 平台(如七牛云 Token Plan,qiniu.com/ai/plan)配置单一端点,在 Harness 的自定义提供方中只填一个 baseURL,通过 model 字段切换不同厂商的模型。
Q:$DSH_HOME 默认在哪里?
官方文档未明确指出默认路径,通常为 ~/.dsh 或 ~/.config/dsh(取决于操作系统约定)。可以通过 DSH_HOME 环境变量显式指定路径,便于在容器环境中控制配置存储位置。
开发者预览阶段注意事项
官方 README 明确标注:
"DeepSeek Harness 目前处于开发者预览阶段,正在快速迭代。未来将出现破坏兼容性的变更。"
当前阶段适合:
评估 Harness 架构和能力
在测试/沙箱环境中集成实验
基于插件系统开发自定义功能
不建议:
直接用于生产关键路径(breaking changes 风险)
将 danger-full-access 模式部署在生产服务器上
Bug 反馈通过 GitHub Discussions 提交;自定义插件仓库加 dsh-plugin 话题标签可被官方生态收录。
小结
DeepSeek Harness 的部署门槛在主流 Agent 框架中较低:Web UI 路径只需要 Node.js + 一行 npx 命令;Python SDK 路径只需要 pip install deepseek-harness-sdk,内置运行时。架构上"一切皆插件"意味着模型、工具、权限策略均可替换,OpenAI 兼容端点的支持让它不绑定在 DeepSeek 自身 API 上。当前版本处于开发者预览,建议在隔离环境中评估,待 API 稳定后再接入生产工作流。
本文基于 deepseek-ai/deepseek-harness 2026 年 8 月 13 日开源版本,以官方 GitHub 文档为准。
延伸阅读
DeepSeek Harness 官方仓库:https://github.com/deepseek-ai/deepseek-harness
Web UI 用户指南:https://github.com/deepseek-ai/deepseek-harness/blob/main/docs/user/guide/index.zh.md
模型配置指南(含自定义端点):https://github.com/deepseek-ai/deepseek-harness/blob/main/docs/user/guide/providers.zh.md
七牛云 Token Plan(多模型统一接入,可配置为 Harness 自定义端点):https://qiniu.com/ai/plan