ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

DeepSeek Harness安装教程:从零配置到Skill内网部署实战

DeepSeek Harness安装教程:从零配置到Skill内网部署实战 最近同事问我最多的一件事就是DeepSeek Harness 到底怎么装、装完怎么用、怎么把它那一堆 skill 塞到内网服务器里跑通。说实话我从 Codex 迁到 DeepSeek Harness 也就这两周的事中间踩了不少坑包括安装失败、权限报错、skill 部署到内网之后模型不认人这些问题。这篇教程就是把我的完整过程整理出来从零开始讲清楚安装和编程实践适合刚接触 DeepSeek Harness 的开发者也适合那些已经装好但还想把 skill、插件和工作流玩明白的人。1. 先弄清楚 DeepSeek Harness 到底是什么1.1 它和 Codex、Claude Code 是一类东西如果你用过 OpenAI Codex 或者 Claude Code那对 DeepSeek Harness 的上手成本会低很多。它们都是同一种东西跑在终端里的 AI 编程代理。你给它一段自然语言需求它自己读代码、自己改文件、自己跑测试甚至自己提 commit。区别在于底层的模型和外围的扩展机制。DeepSeek Harness 的核心逻辑很简单安装之后你在任意一个 Git 仓库里运行它它会先把仓库的目录结构、关键文件、Git 状态扫描一遍然后根据你的指令拆解任务、逐步执行。我把它理解成一个会自己写代码的执行者而不是一个只会聊天的对话框。它的名字里带个 Harness套件/夹具这个命名挺贴切的。它本身不绑定死某一种模型而是通过 API 对接模型能力同时用 skill 机制把各种工具链挂载进来。也就是说DeepSeek Harness 更像一个外壳模型、工具、工作流都是可以替换和扩展的零件。这一点和 Codex 的闭环策略很不一样也是我迁移过来的主要原因。1.2 所谓Skill机制是什么意思Skill 这个词在热词里反复出现很多人问deepseek harness 附带 skill 怎么部署到内网服务器skill 读取文件报权限问题。要理解这些先得知道 skill 是什么。Skill 本质上是一个预置的技能包。每个 skill 包含三部分内容一段针对该技能的提示词模板告诉模型遇到什么场景该怎么做。一个或多个工具函数脚本让模型能真正执行某些操作比如查文件、跑命令、调接口。一份配置文件声明这个 skill 的触发条件、参数、依赖环境。你可以把 skill 理解成给 AI 的岗位说明书 工具箱。比如你装了一个数据库巡检 skill当你在指令里提到检查数据库Harness 就会加载这个 skill 里的提示词调用它封装的数据库连接脚本去执行查询而不是靠模型凭空瞎猜。我第一次看到这个概念时想到了 VS Code 的插件体系但其实比插件更贴近业务。插件决定了一个 IDE 有哪些按钮而 skill 决定了一个 AI 代理面对某个任务时用什么样的方法论。同一个仓库里挂载不同 skillHarness 处理问题的姿势完全不同。1.3 我为什么从 Codex 换到 Harness说实话Codex 用起来很顺但有几个点在我这边越来越难受一是它的扩展能力相对封闭我想接入自己团队内部的脚本、工具链门槛比较高二是多步骤任务的编排不够灵活复杂一点的先改 A 再跑测试然后再改 B流程经常需要反复纠正。DeepSeek Harness 的开放度明显更高。skill 就是普通的目录和脚本文件想加就加想改就改。而且它对本地环境的侵入感更低很多东西可以用环境变量控制适合我们这种需要把工具部署到客户内网服务器上的场景。再加上 DeepSeek 的 API 成本在我日常的量级下很可控因此我最终决定把主力切过来。2. 安装前的环境准备Python、Git 和 Node.js很多人在安装 DeepSeek Harness 时失败仔细一问大部分不是工具本身的问题而是前置环境没准备好。我建议先花十几分钟把环境理顺不然装到一半报错还得回头排查更浪费时间。2.1 Python 版本与虚拟环境DeepSeek Harness 本质上是 Python 包所以 Python 环境是第一道门槛。官方推荐 Python 3.10 或 3.11我实测 3.12 也能用但 3.13 在个别依赖上会有兼容问题后面会单独说。如果你机器上已经装了 Python先看版本python --version建议不要直接往系统 Python 里装而是用虚拟环境隔离。我用的还是最稳妥的 venv 方案mkdir -p ~/harness-env cd ~/harness-env python -m venv harness source harness/bin/activate # Windows 下执行 harness\Scripts\activate这里有一个新手容易忽略的细节虚拟环境一旦建好后续所有 pip 安装、命令执行都要在激活状态下进行。否则就会出现明明装了却提示找不到命令的诡异情况。激活之后命令行提示符前面会出现(harness)前缀看到它再继续。2.2 Git 配置与仓库权限Harness 最大的价值体现在 Git 仓库里干活所以 Git 必须要装好、配好。热词榜里git 安装及配置教程占了好几位说明很多人卡在这。DeepSeek Harness 运行时需要读取 Git 状态负责提交代码所以身份配置必须提前做好git config --global user.name 你的名字 git config --global user.email 你的邮箱如果公司内网用的是 SSH 方式拉代码还需要把 SSH key 配置好。我在实操中遇到过一个问题Harness 能正常跑但一执行git push就提示权限不足排查到最后是 SSH key 的保存路径没写对。建议在装 Harness 之前先用一条最简单的命令验证 Git 环境git status如果这条命令在目标仓库里能正常输出再走下一步。2.3 Node.js 与 npm 的关系很多人不理解为什么装一个 Python 工具还需要 Node.js。原因在于 DeepSeek Harness 的生态里有一部分 skill 和插件是用 JavaScript/TypeScript 写的安装时需要通过 npm 拉取依赖。尤其你在装那些社区发布的工作流插件时npm 基本是刚需。我建议安装 Node.js 18 以上的 LTS 版本装完验证一下node --version npm --version如果公司网络访问 npm 官方源比较慢可以先切换成国内镜像源npm config set registry https://registry.npmmirror.com这些准备做完大概十分钟。接下来才是真正的安装环节。3. 安装全程实录Windows 与 Linux 两条路DeepSeek Harness 的安装方式取决于操作系统。我手头 Windows 和 Linux 都有实际部署经验分开讲。两条路的本质都是把 Python 包下载到本地、注册可执行命令但 Windows 上多了一些路径和权限的讲究。3.1 Windows 下安装并改装到 D 盘Windows 用户最常问的问题之一是怎么把 deepseek harness 装到 D 盘毕竟不少人的 C 盘常年飘红。这里有个底层知识要讲清楚Python 包默认装到用户目录下的AppData\Roaming\Python或虚拟环境目录里但 DeepSeek Harness 的程序本体、配置目录、日志目录可以通过环境变量指定。官方在 Windows 上提供两种安装载体一种是 pip 包一种是 msi 安装包。如果你希望安装过程更省心我推荐用 msi 文件。下载好之后双击运行安装界面会让你选择安装路径直接改成D:\tools\deepseek-harness就行。安装程序会自动把可执行文件路径写进系统 PATH省去手动配置环境变量的麻烦。如果你用的是 pip 方式也更简单但要手动做一步符号链接或 PATH 设置。完整流程如下# 1. 创建目标目录 mkdir D:\tools\deepseek-harness # 2. 设置安装相关环境变量让 pip 把包装到 D 盘 set PIP_TARGETD:\tools\deepseek-harness set PYTHONPATHD:\tools\deepseek-harness # 3. 安装 pip install deepseek-harness # 4. 把 D 盘目录加入 PATH当前会话 set PATHD:\tools\deepseek-harness;%PATH%注意上面的 PATH 设置只对当前终端窗口生效。想让以后每次打开终端都生效需要到系统设置 - 环境变量里把D:\tools\deepseek-harness追加到用户 PATH否则重启终端后dsh命令会提示找不到。装完后配置文件默认还是往 C 盘用户目录写所以还需要把配置目录也指过去。在系统环境变量里新增一个变量HARNESS_HOME值为D:\tools\deepseek-harness\home。这样 skill、日志、会话记录都会落到 D 盘C 盘压力小很多。3.2 Linux含 Kali下的安装Linux 下的安装路径清爽很多主要是通过 pip。Ubuntu/Debian 系、CentOS、以及 Kali本质都一样python -m venv ~/harness source ~/harness/bin/activate pip install --upgrade pip pip install deepseek-harness有两点需要提醒。第一Kali 这类系统默认用户是 root或者你常用sudo执行命令这会带来权限问题。我建议老老实实创建一个普通用户来跑 Harness而不是以 root 身份安装和使用。因为很多 skill 在执行时会调用 git、docker 之类的外部命令root 权限可能会让 git 操作时的文件属主判断混乱而且一旦 skill 里的脚本有安全缺陷root 身份的破坏面会大得多。第二Linux 下安装完成后可执行文件名大概率是harness而不是dsh也可能两个都有。别死记一个名字安装完先用下面的命令确认which harness || which dsh如果输出路径存在说明安装成功。3.3 验证安装version 与 doctor 命令无论哪个平台装完之后不要急着开箱即用先做两步验证。第一步看版本dsh --version如果能看到类似DeepSeek Harness x.y.z的输出说明主程序没问题。第二步跑一个叫doctor的命令这是我自己比较依赖的体检工具dsh doctor它会逐项检查 Python 版本、pip 版本、Git 配置、Node.js 环境、API Key 是否设置、skill 目录是否可写。哪一项有问题会直接标红或给 warning。我在排查无法安装装完闪退这类问题时第一步永远是让用户跑dsh doctor比猜原因高效得多。4. 安装失败排查那些常见的无法安装热词榜里deepseek harness 无法安装能上榜说明这个问题不是少数人的个例。我把自己遇到和帮别人远程排查过的几类高频故障整理出来按链路讲。4.1 SetNamedSecurityInfoW failed 权限错误一次完整排查有一个报错非常典型完整错误大概长这样setnamedsecurityinfow failed (win32 error 5)出现时机通常是在 Windows 上安装某个 skill 或者运行某个会写文件的操作时。我第一次遇到时第一反应是是不是没管理员权限于是用管理员终端重跑结果还是报错。完整排查链路是这样的第一步确认是不是目录 ACL访问控制列表问题。Windows 对某些目录有特殊保护尤其是用户目录下带特殊命名规则的文件夹。我发现 Harness 在尝试修改某个 skill 目录的权限时调用了 Windows 的 SetNamedSecurityInfoW 接口这个接口在普通文件目录上很少失败但目录被第三方安全软件接管 ACL 时就会返回 error 5。第二步检查是否被杀毒软件或终端安全管理软件拦截。我排查过的那台机器上公司的终端安全软件把 Harness 的进程当作未知程序拦截了它的权限修改操作。你可以临时把 Harness 的安装目录加到安全软件的白名单里再试。第三步也是最常见的解法不要用管理员权限去跑 Harness改回普通用户。为什么因为管理员身份下Windows 的安全策略对 ACL 修改的处理更复杂反而更容易触发 SetNamedSecurityInfoW 失败。而普通用户跑 Harness 时它只会操作自己用户目录下的文件权限足够路径清晰。我改用普通用户跑之后问题直接消失。如果普通用户下依然报错可以手动重置目录权限再装对应的 skillicacls D:\tools\deepseek-harness\home\skills /reset /t /q这条命令会把 skills 目录的权限重新设置为默认值清掉第三方软件留下的异常 ACE 条目。这是我踩过几次坑之后形成的标准处理流程。4.2 下载慢、超时与镜像源另一个高频问题是安装到一半网络超时。DeepSeek Harness 本身从 PyPI 安装安装过程中会拉取不少依赖包如果你所在网络的 PyPI 访问不稳定就会反复超时。这种情况下不要反复重试直接把 pip 源切到国内镜像一劳永逸pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simplepip config set会把配置写进用户级配置文件以后所有 pip 操作都走镜像不用每次手动加参数。此外如果你要安装依赖某个 Git 仓库的社区插件git clone也可能超时。这种场景可以自己先 Fork 一份到内网 Git 服务器然后把插件里的远程地址改成内网地址。毕竟这本来就是要往内网部署的提前改地址也省得后面再改。4.3 与 Python 3.13 的兼容性问题Python 3.13 发布之后很多第三方库还在补兼容。DeepSeek Harness 的部分依赖包在某些版本组合下会编译报错比如error: command gcc failed: No such file or directory。这个问题在 Windows 上比较少见但在 Linux 上用源码编译依赖时就容易出现。我的建议是如果你不需要 Python 3.13 的特性装一个 Python 3.11 专门用来跑 Harness。如果要保留 3.13那就用虚拟环境隔离在 3.11 的解释器上创建 venv。比如python3.11 -m venv ~/harness装好之后如果还遇到编译报错大概率是缺了系统级的编译工具。Ubuntu 系执行sudo apt install build-essentialCentOS 系执行sudo yum groupinstall Development Tools装完重新跑安装命令即可。5. Skill 插件体系编程开发该装什么安装排障弄完之后重头戏就来了怎么用 skill 把 DeepSeek Harness 变成真正能干活的生产力工具。这一节讲清楚 skill 的目录结构、编程场景下最值得装的插件组合以及手写一个自定义 skill 的完整过程。5.1 Skill 的目录结构与附带 skillDeepSeek Harness 安装后会自带一组附带 skill覆盖基础的代码检索、Git 操作、日志阅读等场景。这些 skill 存在$HARNESS_HOME/skills目录下每个 skill 一个子文件夹。一个标准 skill 目录长这样skills/ └── code-review/ ├── skill.yaml # 技能声明名称、触发条件、参数 ├── prompt.md # 提示词模板教模型怎么执行 └── scripts/ └── review.py # 实际执行代码审查的脚本skill.yaml是最关键的文件。它的字段我挑几个重要的讲name技能名Harness 通过它来匹配。description一句话描述模型在判断当前任务要不要用这个 skill时主要看它。triggers触发关键词比如[review, code review]用户指令里出现这些词时自动激活。requires依赖的外部命令或环境变量没有满足时 Harness 会提示。社区发布的 skill 也按这个结构打包。你在 GitHub 上找到的 skill 仓库本质就是一堆目录和脚本下载后放进 skills 目录就能识别。这让我想起 Docker 镜像的机制本地放好、注册好、标记好就能直接用。5.2 coding 开发最实用的一套插件组合热词里反复出现deepseek harness 插件推荐用于 coding 开发最应该按照哪些插件我在实际做开发任务时常用的组合就是下面这几类。注意我按价值密度排序先装最有用的。Skill/插件用途安装要点repo-map生成仓库地图快速定位代码内置开箱即用run-tests定位并执行相关测试用例需要项目测试命令可跑通docker-ops构建/启动/清理容器环境需要本机 Docker 权限commit-helper生成规范 commit message需要 Git 身份已配置lint-fix自动修复代码风格问题需要项目里配置好 linterworkflow-orchestrator多阶段开发流程编排需要 Node.js 环境其中workflow-orchestrator就是热词里提到的轩辕编程的 deepseek harness 工作流插件那一类东西。社区里比较有名的工作流插件核心价值是把理解需求 - 拆任务 - 写代码 - 跑测试 - 提交五个阶段编排成一个完整流程而不是让模型想到哪改到哪。我实际使用后发现装上 workflow 类插件前后Harness 处理复杂需求的完成度提升非常明显。原因不复杂没有流程约束时模型容易在某个细节上钻牛角尖有流程插件后它会先出计划再逐阶段执行每阶段结束自己校验结果出错能定位到具体环节。写代码这件事本身虽然没变但组织方式变了最终质量自然不一样。安装这些插件的方式通常是一条命令。以某个插件为例harness skill install repo-map run-tests docker-ops也可以从本地目录安装harness skill install /path/to/skill-dir安装完用harness skill list查看已经生效的 skill 列表。5.3 写一个自定义 skill 的完整例子只会装别人写的 skill 不算会玩我建议你亲手写一个试试。下面我演示一个最简单的代码格式化并跑测试 skill逻辑不复杂但五脏俱全。第一步创建目录mkdir -p ~/.harness/skills/format-test/scripts第二步写skill.yamlname: format-test description: 格式化当前项目的代码并运行测试 triggers: - format - 格式化 - 跑测试 requires: - python - git第三步写prompt.md给模型一段指导语当用户要求格式化代码并跑测试时 1. 先探测项目使用的语言和格式化工具 2. 运行格式化命令如 black、prettier 等 3. 运行项目测试命令 4. 如果测试失败收集错误信息并尝试修复第四步在scripts下写一个辅助脚本run_all.py#!/usr/bin/env python3 import subprocess import sys def run(cmd): print(f$ {cmd}) return subprocess.run(cmd, shellTrue).returncode if __name__ __main__: fmt sys.argv[1] if len(sys.argv) 1 else black test sys.argv[2] if len(sys.argv) 2 else pytest code run(f{fmt} .) or run(test) sys.exit(code)第五步注册并验证harness skill install ~/.harness/skills/format-test harness skill list之后你在仓库里对 Harness 说格式化并跑一下测试它就会根据 skill 的引导执行。这就是 skill 最朴素的形态。等你摸熟了可以在脚本里加更复杂的逻辑比如并发跑测试、自动重试失败用例、把结果摘要写回 commit。6. 把 Harness 和 Skill 部署到内网服务器热词里有一个非常具体的需求deepseek harness 附带 skill 怎么部署到内网服务器。我在帮客户做私有化落地时专门研究过这个场景这里展开讲。6.1 内网部署的两种模式首先要明确一个概念内网部署不等于离线部署。两者之间隔着模型从哪来这个问题。模式一内网机器通过网络访问 DeepSeek 的公共 API。Harness 本体和 skill 全部安装在隔离网络里的服务器上只有模型推理请求走公网接口。这种方式部署最简单适合内网服务器有出网权限、但对数据敏感度要求没那么高的场景。配置上只需要在服务器上设置好 API Key。模式二完全离线模型也部署在内网。这种模式下你需要用 vLLM 之类的推理框架在内网 GPU 服务器上部署 DeepSeek 的开源模型服务然后把 Harness 的 API 地址指向内网地址。合规上要特别注意私有化部署必须遵守对应开源模型的许可证条款商用前一定要核对清楚。技术实现上也不复杂核心就是改环境变量。我个人建议你先判断自己的需求边界是要让开发后台内网化还是连模型推理都要留在内网前者一天能搞定后者需要考虑 GPU 资源和模型选型。6.2 环境变量与模型服务配置Harness 对运行环境的配置基本都走环境变量这在内网部署时非常方便不用改代码。关键的几个变量DEEPSEEK_API_KEYAPI 密钥。内网部署时建议由配置管理工具统一下发不要写进 skill 脚本里。DEEPSEEK_API_BASEAPI 网关地址。如果用内网模型服务就改成http://内网IP:8000/v1。HARNESS_HOME指定配置和 skill 目录方便集中管理。HARNESS_SKILLS_DIR如果想把 skill 目录放到共享存储比如 NFS 或 Git 仓库统一管理用这个变量覆盖默认路径。我部署时习惯把所有 skill 放到一个独立的 Git 仓库里管理然后用HARNESS_SKILLS_DIR指向克隆目录。这样多台服务器拉取同一份配置改动可追溯也不会出现服务器 A 和服务器 B 的 skill 版本不一致的问题。6.3 一次实际的部署演练下面给一套我验证过的完整流程假设你已经有一台内网服务器和一台可以访问外网的跳板机。第一步在跳板机上把依赖包下载好pip download deepseek-harness -d /tmp/harness-packages然后把/tmp/harness-packages整个目录传到内网服务器。第二步在内网服务器上创建虚拟环境并离线安装python -m venv /opt/harness source /opt/harness/bin/activate pip install --no-index --find-links/tmp/harness-packages deepseek-harness第三步同步 skill 目录。把你在外网整理好的 skills 仓库克隆一份到/opt/harness-skills然后在服务器的环境变量里设置export HARNESS_SKILLS_DIR/opt/harness-skills第四步配置模型服务地址。如果是模式一只设 API Key如果是模式二export DEEPSEEK_API_BASEhttp://10.0.0.8:8000/v1 export DEEPSEEK_API_KEYinternal-no-auth-key第五步验证harness doctor harness skill list这里有个容易忽略的点内网服务器的系统时间必须准确。API 请求签名、鉴权逻辑都依赖时间戳如果时间偏差太大会报奇怪的鉴权错误。我就在一台没有配置 NTP 的服务器上栽过排查了半天最后发现是时间慢了五分钟。7. 实际编程工作流从需求到代码提交部署完成后终于可以进入正题用 DeepSeek Harness 做实际的编程工作。这一节我以一个真实需求为例完整走一遍。7.1 用 Harness 跑一个真实需求假设我要给一个 Python 项目增加导出 CSV 报表的接口。进入仓库目录直接运行harness run 给项目增加一个导出 CSV 报表的接口输出路径由调用方指定并补上对应的测试Harness 收到任务后会先出一份简短计划类似计划 1. 扫描项目路由和现有接口风格 2. 在 app/routes/report.py 新增导出接口 3. 编写 CSV 生成逻辑 4. 补充测试用例 test_export_csv.py 5. 运行 pytest 验证然后逐条执行。它执行过程中的每一条命令都会实时显示在终端里你可以看到它打开了哪些文件、执行了什么指令、测试结果如何。如果中途测试挂了它会自己读取失败信息尝试修复再跑一轮。这比一次性生成大段代码然后你自己去接的模式更接近真实协作。7.2 与编辑器/IDE 的配合热词里提到deepseek harness 桌面版/桌面端说明很多人喜欢可视化操作。但我自己的经验是命令行跑 Harness 和编辑器配合用才是最高效的。你可以把 VS Code 当作看代码的地方把终端当作Harness 干活的地方。具体配合方式是这样在 VS Code 里打开项目然后开一个集成终端把 Harness 跑起来。Harness 改文件后VS Code 会自动刷新编辑器的文件状态你可以实时看到代码被改成了什么样随时 CtrlZ 撤销不满意的改动。这种模式下编辑器只是展示层真正的操作逻辑在 Harness 的命令行里。如果你确实需要桌面端的可视化体验官方桌面版也能用它把项目列表、会话历史、skill 管理做成了图形界面。但桌面版本质也是调用同一套底层我只有在给非技术同事演示时才用桌面版。7.3 权限与安全边界用 Harness 时间越长越要关注它到底能做什么、不能做什么。我给自己定了几条安全边界不要让 Harness 自动推送到生产分支。我会在.harness/config.yaml里配置禁止访问的分支和目录。skill 里凡是要执行外部命令的脚本一律经过 review 再启用。社区下载的 skill 可能包含不安全的操作比如把环境变量打印到日志里、向不明地址上传文件。涉及密钥、Token 的内容不要出现在任务指令里。Harness 的会话记录会存在本地但保不齐哪次调试时你把指令误发给了共享环境。配置文件里有一项叫allow_commands可以限制 Harness 能执行哪些外部命令。比如我只允许它跑git、python、npm这类常规命令禁止rm -rf或curl | bash这类高危操作。这不是对工具不信任而是工作习惯问题任何自动化工具都应该被限制在它该干活的范围内。8. 卸载、升级与清理残留最后讲讲卸载和升级。热词榜里有卸载 deepseek harness说明有人装完想回退或者想清理干净重装。如果只是升级先确认当前版本再装新版本harness version pip install --upgrade deepseek-harness升级后建议跑一次harness doctor因为大版本升级可能改变 skill 目录结构或配置文件格式旧配置需要迁移。我升级 0.9 到 1.0 时就遇到 skill 清单需要重新导入的情况当时花了点时间。如果确定要卸载手动清理三块内容第一块Python 包本体pip uninstall deepseek-harness第二块配置和 skill 目录。默认在$HARNESS_HOME下如果你改过环境变量就按实际路径删rm -rf $HARNESS_HOMEWindows 下如果还残留了环境变量指向 D 盘目录记得去系统设置里把HARNESS_HOME、PATH里相关的条目删掉避免下次安装时被旧配置干扰。msi 方式安装的可以在控制面板 - 程序和功能里卸载卸载后建议检查一下C:\Users\你的用户名\.harness是否还留有残余。第三块全局命令链接。Linux 下如果是用虚拟环境安装的直接删掉虚拟环境目录即可系统层面没有残留。Windows 下则要注意是否有dsh.exe之类的快捷方式残留在 PATH 指向的目录里一并清理。我个人的建议是如果你只是对某个 skill 不满意完全没必要卸载整个 Harness直接删掉对应的 skill 目录再harness skill list确认一下它消失即可。只有当你确定要回到旧工作流才值得走卸载流程。最后再分享一个我在实际使用中的小技巧无论装在哪台机器先把$HARNESS_HOME下的 skill 目录用 Git 管理起来每次增删 skill 都提交一次。这样即使某台机器的环境完全崩了重新装好 Harness 后一条git pull就能把所有技能恢复到同样的状态。这个习惯帮我省了很多重复配置的时间也让我在从公网环境迁移到内网服务器时基本实现了一次配置到处运行。如果你也准备把 DeepSeek Harness 作为日常编程工具我建议从第一天起就按这个习惯来。
返回列表