DeepSeek Harness 安装详解:目录结构、升级与卸载
1.3 安装与首次启动 只回答"怎么跑起来",这一篇回答"它到底在我机器上放了什么"。搞清楚目录职责,之后配置、排错、备份才有着落。
两种安装方式,两种形态
# 方式一:npx 临时安装
npx @deepseek-ai/dsh web
# 方式二:从源码构建
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web
区别在于程序本体在哪:npx 把包放进 npm 缓存(升级靠 npx 拉新版本);源码方式程序就在 clone 出来的目录里(升级靠 git pull + 重建)。但无论哪种方式,你的个人数据都不在程序目录里——它们在统一的 home 目录。

$DSH_HOME:你的一切数据都在这里
$DSH_HOME 默认是 ~/.dsh。这是 DSH 唯一会"写你东西"的地方:
~/.dsh/
├── profiles/ # 各 profile 的配置组合(本教程第 2.2、2.3 节的主角)
├── sessions/ # 会话日志:每次对话的持久化记录
├── storages/ # 插件存放的持久数据
├── settings.yaml # 你的设置(默认预设、默认模型等)
└── .credentials.yaml # 凭据:明文 API 密钥只在这里
几个实用的推论:
-
备份 = 备份这个目录。会话记录、配置、凭据全在这,程序本体随时可重装
-
出问题时的第一检查点:先看
settings.yaml和 profiles 下的配置对不对,而不是删程序-
换机器迁移:带上这个目录,配置和会话历史就跟着走(凭据文件别进 git)
-
打开 settings.yaml 大致长这样(不同版本字段略有差异):
ui-onboarding: # 界面引导状态
welcomeNoticeVersion: ...
agent-presets: # 默认 Agent 预设(见 2.5)
default: standard
agent-default-model: # 默认模型路由(见 2.4)
provider: deepseek-official
model: deepseek-v4-flash
reasoningEffort: high
npx 安装的升级与卸载
-
升级:npx 每次运行会检查版本,重新执行
npx @deepseek-ai/dsh web即可拉取新版;想固定版本可显式指定 -
卸载:没有系统级安装,无需卸载程序。要彻底清干净:
-
删除
~/.dsh(个人数据,删前先备份!) -
清 npm 缓存中的
@deepseek-ai/dsh包(npm cache clean或按需清理)
-
源码安装的升级与卸载
-
升级:
git pull拉新代码 →pnpm install→pnpm run build,注意官方提示开发者预览阶段可能有破坏兼容性变更,升级前看 Release 说明 -
卸载:删掉 clone 目录 + 删
~/.dsh(同样先备份)
一个容易被忽略的点:程序目录 ≠ 工作区
新手常把两件事搞混:
-
安装目录/缓存:程序本体,只读心态对待,别往里放自己的东西
-
工作区:你启动 dsh 时所在的目录(或 Web UI 里选中的目录),agent 干活的地盘
两者完全独立。升级程序不会碰你的工作区,反之亦然。
下一步
-
目录里的主角 profiles → 2.2 Profile 是什么?
-
settings.yaml 里的模型配置 → 2.4 模型与凭据



