
2026 年 8 月 13 日DeepSeek 正式发布首款 Agent 产品DeepSeek Harnessdsh以 MIT 协议全面开源直接对标 Claude Code 与 Codex。本文基于官方设计与早期社区实践系统拆解 dsh 的核心概念、环境搭建、图形界面、进阶功能与 CLI 玩法带你从零完成一次真实项目任务。前言为什么 Harness 值得你花一个晚上过去两年大模型从对话框里的助手一路演进到能动手干活的 Agent。但真正把 Agent 落地到开发者日常工作流里的产品并不多。Claude Code 证明了让 AI 在真实代码库里读写执行这条路走得通Codex 证明了规模化后台任务有价值。但两者要么是闭源商业产品要么与特定生态深度绑定社区很难在其上自由扩展。DeepSeek 这次的开源动作信号很明确把 Agent 的驾驶舱交给社区。MIT 协议意味着你可以商用、可以改、可以嵌入自己的产品。内测期间 769 位开发者报名、约 300 个社区插件冒出来——这个数字说明生态的自驱力已经起来了。所以这篇文章的目标很朴素帮你在一个晚上之内从听说过 dsh变成能用 dsh 完成真实任务。我会按照概念 → 安装 → 界面 → 进阶 → CLI → 实战的顺序讲。你不需要是 TypeScript 专家也不需要懂 Agent 框架原理只要会装软件、会敲命令就行。第一部分重新理解 dsh——它不是另一个聊天框1.1 dsh 到底是什么dsh 的全称是DeepSeek Harness由 DeepSeek AI 开源。官方给它的定位是Agent Harness——翻译成人话就是智能体运行框架。官网地址https://www.deepseek.com/harness/如果用一个比喻dsh 是你 AI 助手的操作系统层。它不直接生产智能而是提供让智能体能够读写你电脑上的文件执行命令、跑脚本调用各种工具搜索、子代理、工作流按流程、按权限、按目标持续干活一句话网页版 ChatGPT 是你问它答dsh 是你派它去干。1.2 它和网页版、IDE 插件的区别这是初学者最容易混淆的地方用一张表说清楚维度网页版 ChatGPT / 官方对话IDE 内 AI 插件dsh工作位置封闭对话编辑器内你的真实电脑 / 服务器能读文件需手动粘贴当前项目任意指定工作区能跑命令不能有限完整终端能力权限控制无插件决定细粒度沙箱 审批可扩展性官方功能MarketplaceMIT 开源 插件体系适合场景问答、写作写代码辅助端到端项目任务看出差别了吗dsh 的工作对象是你真实的文件系统而不是一段被粘贴进来的文本。这个区别决定了它能做的事情量级完全不同。1.3 dsh 能帮你干哪些活装好之后你可以让 dsh 承担这些类型的任务代码工程读懂一个陌生仓库、定位 Bug、重构模块、补测试、生成 README自动化脚本批量处理文件、定时跑数据清洗、生成报告调研与汇总并行调研多个信息源、交叉验证、输出结构化结论运维辅助在受控环境里跑命令、排查日志、部署验证工作流编排把拉数据 → 清洗 → 生成 → 发布这种固定套路写成可复用的流水线关键是它工作在你的真实电脑上读的是你的文件跑的是你的命令。也因此——权限和安全是 dsh 的一等公民后面会专门讲。1.4 两条前置认知不多两条就够dsh 本身不生产模型。它负责调度、干活真正想问题、写代码、回话的是背后的大模型服务默认 DeepSeek也可接其他 OpenAI 兼容服务。一切动手都基于工作区。没有工作区agent 就不知道你的文件在哪自然没法干活。这是贯穿全文的核心概念。理解了这两点后面所有设计都会显得顺理成章。第二部分十分钟搭好环境2.1 你需要装什么动手前说清楚你只需要两样东西——Node.jsdsh 的运行底座和dsh 本体一条命令装好。不需要数据库、不需要 Java、不需要懂编程。dsh 用 TypeScript 写成运行在 Node.js 上所以第一步是装 Node.js。2.2 安装 Node.js去 Node.js 官网 下载最新 LTS 版本一路下一步安装即可。⚠️版本要求dsh 处于预览阶段要求Node.js 22 及以上。如果你机器上是老版本请升级再继续。装完后打开终端验证node-vnpm-v看到类似下面的版本号说明装好了v24.11.1 11.6.22.3 启动 dsh不需要单独安装直接运行下面这条命令npm 会自动下载并启动npx deepseek-ai/dsh web第一次运行会花一两分钟下载依赖终端滚动一堆日志这是正常的。看到类似下面的输出就说明启动成功了Harness web UI running at: http://127.0.0.1:3080想先装好再启动也可以全局安装npminstall-gdeepseek/harness dsh web两种方式效果一样。新手推荐直接用npx少一个概念。2.4 打开界面启动成功后打开浏览器访问http://127.0.0.1:3080/看到 dsh 主界面环境准备就算完成了。此刻界面还是空的左边没有工作区中间没有会话底部输入框还不能用。别急这正是我们后面几章要逐个解锁的。2.5 常见问题速查先收藏问题解法npx下载很慢 / 失败检查网络或代理可临时换 npm 国内镜像npm config set registry https://registry.npmmirror.com端口被占用换端口启动dsh web --port 8080然后访问http://127.0.0.1:8080/node -v版本太老去官网下载最新 LTS 覆盖安装浏览器打不开界面以终端打印的地址为准确认端口一致、终端没报错再刷新第三部分认识主界面——每一个角落都有讲究3.1 整体布局打开http://127.0.0.1:3080/界面从上到下、从左到右分四个区域┌──────────────────────────────────────────┐ │ [新会话] 工作区列表 [设置 ⚙️] │ ← 顶部状态栏 ├──────────┬───────────────────────────────┤ │ │ 对话区工具调用树 / 轨迹 │ │ 侧边栏 │ │ │ - 工作区 │ │ │ - 会话 │ │ │ │ ┌─────────────────────────┐ │ │ │ │ 输入框附件 / / / │ │ │ │ └─────────────────────────┘ │ └──────────┴───────────────────────────────┘左上角新会话按钮。每点一次开一个独立对话上下文互不干扰。左侧边栏工作区与会话导航。目前只有一个工作区入口——这是 dsh 最核心的概念。中间对话区。你的指令、agent 的回复、它调用工具的每一步都在这里滚动展示。底部输入框。给 agent 下指令的地方。注意它现在是锁定的——因为还没选工作区。右上角设置按钮。点开有四个 tab后面逐个用到。3.2 第一道必做配置填 API 密钥界面什么都好但还缺一样东西大脑。dsh 自己不生产模型真正想问题、写代码、回话的是背后的模型服务。所以开工前必须先告诉 dsh用哪家的模型、用什么密钥。第一步去 DeepSeek 平台拿密钥注册并登录 DeepSeek 开放平台在API Keys里创建一个新密钥。⚠️密钥只显示一次创建后完整字符串只在页面上出现一次关闭就看不到了。请先复制到安全地方再关页面。第二步在 dsh 里填写回到 dsh 界面点右上角设置 →模型tab。页面上会列出已预置的 DeepSeek 提供方。把密钥填进去保存。保存后模型路由立即生效不需要重启。回到主界面看对话区上方的模型状态如果显示DeepSeek-V4-Flash或你选的模型名就说明配置成功了。此时还可以点开它切换其他模型。第三步安全提醒API 密钥就是你的钱袋子按量计费请把它当密码对待不要截图发群里、不要提交到 git泄露后立刻去平台吊销重建旧密钥立即失效3.3 接入更多模型OpenAI 兼容模型页上有两个入口对应两种场景① 内置提供方dsh 预置了 20 多家主流模型服务填密钥即可用。流程与 DeepSeek 完全一致。② 自定义提供方OpenAI 兼容这是给标准 OpenAI 兼容接口准备的。只要你的服务实现了 OpenAI 的接口协议就能被 dsh 识别。典型场景本地跑的开源模型Ollama、vLLM公司内部的模型网关第三方中转 / 代理服务点添加自定义提供方填几个字段字段说明Base URL服务地址如http://localhost:11434/v1API Key服务密钥本地服务可为空模型列表该服务提供的模型名以最常见的Ollama qwen2.5:7b为例Base URL: http://localhost:11434/v1 API Key: (留空) Models: qwen2.5:7b保存后主界面的模型选择器里就能看到本地 Ollama了。⚠️跨机器访问本机服务用localhost如果 Ollama 跑在另一台机器地址要换成那台机器的局域网 IP并确认服务监听了非本机端口。第四部分工作区——Agent 干活的地盘4.1 为什么必须有工作区想象你雇了一位远程助理他要帮你干活第一件事是什么告诉他你的项目在哪。否则他不知道去哪个文件夹翻文件也不知道改完的东西放哪。工作区就是这个项目在哪的答案。在 dsh 里工作区 一个项目目录的持久化记录它记着三样东西目录路径显示名字属于它的会话清单一句话工作区 目录 名字 会话清单。因为 dsh 所有的动手都建立在工作区上读文件、跑命令、写代码——都得有个根目录。不选工作区agent 就没有地盘输入框就是锁着的。4.2 添加你的第一个工作区界面上有两个添加入口侧边栏顶部 工作区分区殊途同归都会打开系统目录选择器。选哪个目录合适✅项目根目录最合适仓库根、网站源码目录这样 agent 能读到项目里所有文件❌别选 C 盘、用户主目录这种大而全的目录——范围太大会让 agent 找东西很慢误操作风险也高选好目录后dsh 会自动完成两件事记录路径、创建该工作区下的初始会话。回到主界面左侧边栏工作区分区下已经出现了你的项目目录名。同时你会发现底部输入框解锁了。4.3 工作区操作鼠标悬停在工作区行上会出现操作菜单重命名改显示名不改实际目录删除移除工作区记录不删文件、不删会话会话归入未分组切换点工作区名即可对应会话列表会跟着切换如果你有多个项目就再走一遍添加流程每个项目一个工作区。每个工作区互相独立会话不会串。⚠️注意同一目录只能添加一次添加的是文件夹而不是文件。第五部分发出第一条指令看 Agent 怎么干活5.1 新建会话 发指令点左上角新会话按钮创建独立对话。底部输入框已经可用提示语是描述你想要构建的内容。第一次用推荐这种只读、安全、立刻见效的指令列出当前工作区目录下的文件并简要说明这个项目是做什么的指令越具体越好agent 是按指令干活的含糊就只能猜。想要什么、范围在哪、产出什么格式一次性说清楚后面省很多来回。按 Enter 发送你会看到两件事同时发生你的消息出现在对话区下方开始出现工具调用记录先思考再执行第一次跑会花点时间它要先理解你的指令再调用工具去看工作区文件最后汇总成回答。短任务十几秒长任务几分钟都正常。完成后对话区留下完整记录你的问题、它调用工具的每一步、最后的回答。底部还有一行统计信息耗时、工具轮次、token 消耗。5.2 读懂工具调用树普通聊天里AI 给你一段文字就结束了。但 dsh 的 agent 要真正动手所以它每做一步界面就多一行记录——这些记录串起来就是工具调用树。一条典型流程从下往上看[Think] 理解指令需要列出工作区文件并判断项目类型 [ReadDir] 读取工作区根目录 [ReadFile] 打开 package.json [ReadFile] 打开 README.md [Think] 综合信息这是一个 Next.js 博客项目 [Reply] 向用户汇报结论看到规律了吗agent 的干活节奏是想一下 → 动一下 → 看结果 → 再想 → 再动。每一行都可以点开展开看完整内容点开Think看到当时的思考过程点开Pwsh / Bash看到实际执行的命令和输出点开上下文注入看到注入的提示词内容想确认 agent 到底对你的项目做了什么逐行点开看一切透明。常见内置工具有ReadFile读文件、WriteFile写文件、ReadDir列目录、Bash / Pwsh执行命令、Grep搜索内容、WebSearch联网搜索等。工具越多agent 能干的事越多。5.3 读懂统计行任务完成后工具调用树下方会显示一行统计例如1 轮 · 4 步 | LLM 14.9s · 工具调用 45.5s | 缓存命中 71% | 输入 76K tok · 输出 1.6K tok拆解一下部分含义1 轮 · 4 步1 轮对话共 4 次工具调用LLM 14.9s模型思考耗时工具调用 45.5s实际执行读文件、跑命令耗时缓存命中 71%输入缓存命中率越高越省钱越快输入 76K tok · 输出 1.6K tok本次 token 消耗任务变长时这些数字帮你判断时间花在了想还是干上。第六部分会话里的十个进阶功能6.1 切换模型 推理等级配置好模型后dsh 默认用你配置的那个。但不同任务适合不同模型简单问答 → 轻量 Flash 模型快、便宜复杂重构 → 强推理模型慢、准切换不需要重启会话进行到一半也能换。入口有两个对话区上方的模型状态区或输入框左侧的模型选择器。点开后模型列出所有已配置且可用的模型点一下立即生效推理等级控制想多深一般是 High / Medium / Low档位适用场景High复杂架构、难 Bug、多约束任务Medium默认日常开发主力Low简单问答、快速确认建议先用默认档跑觉得回答太浅就调高一档觉得太慢就调低。没有绝对正确按任务手感来。6.2 给 Agent 喂附件有些场景纯文字说不清楚——比如帮我看下这份报错截图“基于这份设计稿改代码”。这时候用附件添加方式和聊天软件一样直接拖拽文件到输入框或点附件按钮选择文件。成功后输入框上方出现缩略图 / 文件条确认后正常发送即可。dsh 支持常见类型实践中用得最多的是截图 / 图片、PDF、Excel/CSV、日志文件、设计稿。⚠️大文件处理文件过大会挤占上下文。如果是一整个项目更推荐把项目目录设为工作区让 agent 自己读而不是压缩上传。能靠工作区读的文件就不用附件传。每个附件都会转成模型能理解的内容占用 token。附件越多越大开销越高。用完的文件可以删掉控制上下文在合理范围。6.3 斜杠命令/与引用dsh 的输入框不只是打字的地方。敲两个符号会弹出两个快捷面板① 斜杠命令/在输入框敲/弹出命令列表内置命令 你安装的技能。选一个它就以让 agent 用这个技能干活的方式加入指令。举例装了视频制作类技能后输入/选它再补一句把这个网址做成一条介绍视频agent 就按该技能的工作流执行。好处把复杂能力变成一句话。② 引用在输入框敲弹出引用面板。作用是**点名某个东西参与对话**。可引用的包括工作区文件、已有会话、已安装的技能、子代理等。引用比斜杠更灵活可以夹在句子里用用 视频制作技能 把这份 设计稿.png 翻译成英文版介绍一句话记住想给 agent 加能力敲/想点名某个东西敲。6.4 权限模式与审批机制agent 在你电脑上干活总要有边界。dsh 用权限模式管这件事。输入框左侧有访问模式按钮点开弹出权限选择器。档位从低到高档位含义Read Only只读不写文件、不执行命令最安全Workspace Write可读写工作区内文件工作区外需审批日常推荐Full Access放行一切操作包括工作区外慎用切换即时生效只影响之后的操作。审批弹窗即使设好了模式agent 遇到超权限操作时dsh 会停下来弹出审批卡片写明了它想改哪个文件、跑什么命令、访问什么地址。看清了再决定。关键点允许是一次性的。agent 每做一步超权限操作都要单独问一次批准只放行当前这一步不会一劳永逸。这正是 dsh 安全性的核心agent 永远不能绕过你自作主张。日常使用保持Workspace Write ask就好。never永不询问主要给自动化 / CI 场景用。6.5 用目标锁定方向agent 干活时常出现这种情况你让它修登录页 Bug它修着修着开始优化布局、整理代码风格——方向跑偏了。目标Goal就是用来治这个的你先把这次会话要完成什么明确告诉 agent它会在每轮决策时对照目标跑偏了就拉回来。不需要特殊按钮直接在对话里说就行# 方式一和任务一起说 本次会话的目标是修复登录页在手机端显示错乱的问题。现在开始排查。 # 方式二任务中途补设 设定目标先把登录页 Bug 修完其他优化都先不做。dsh 会把目标记下来界面显示当前目标状态。agent 每一步都会对照它。目标越收敛越好“把 README 补全” 比 “把这个项目完善一下” 管用得多。目标模糊agent 就没法判断什么算跑偏。6.6 计划模式先审方案再动手大部分任务边想边干没问题。但有些任务不适合破坏性改动删数据、改数据库结构多步骤、高风险的部署需要你先确认思路的大重构计划模式就是干这个的让 agent先交方案你点头再动手。用斜杠命令控制/plan # 进入计划模式 /plan 重构用户模块的鉴权逻辑 # 带任务进入计划模式 /exit-plan # 退出计划模式进入后你发一个任务agent 会先思考整体思路输出分步计划每步干什么、影响哪些文件等待你审阅确认批准后按步骤执行每步严格按计划走全程你知道它要干什么、干到哪了。⚠️计划模式是软约束它引导 agent 先计划后执行但不额外限制工具权限。权限边界还是靠 6.4 的权限模式管。日常小任务没必要开反而多一道审阅。6.7 子代理把任务拆给组员并行干有些任务天然适合分工“调研 3 个方案的优缺点”“同时改前端 后端 文档”“并行跑 5 组测试”子代理就是 agent 委派出去的子 agent主 agent 拆任务 → 分配给子代理并行执行→ 最后汇总给你。相当于项目经理 组员。不需要专门按钮直接在指令里说用两个子代理并行调研一个查这个框架的官方文档一个查社区实践案例最后汇总你会在消息流里看到子代理行展开后是子代理自己的完整对话记录。适用判断子代理适合拆得开、各干各的任务。任务紧密耦合、改一处影响全局的如改公共类型定义反而适合交给一个 agent 从头做避免不一致。6.8 后台任务耗时活丢到后台agent 有些活很慢跑全量测试、批量处理、长时间调研。如果让它一路干完你的对话就一直转圈期间想干别的都不行。后台任务就是解法把耗时任务放后台跑对话立刻恢复可用完成后再回来收结果。把这个批量压缩任务放到后台执行完成后告诉我结果你会看到会话头部出现后台任务列表实时显示每个任务状态。任务跑完后agent 把结果汇报到对话里你也可以随时从列表查看。常见后台任务类型命令行任务、子代理任务——统一由后台任务系统管理。6.9 工作流把流程编排成脚本子代理解决拆分后台任务解决等待但都差一层流程的编排。比如你有个固定套路拉取数据 → 清洗 → 生成报告 → 发布。每次都靠手发指令太累。工作流Workflow就是把这类流程写成编排脚本按顺序定义每步干什么、何时启动子代理、子代理间怎么衔接。写好脚本后一条命令跑完整个流水线。一句话普通任务是干一次工作流是定个流程以后照跑。工作流是偏进阶的能力。初学者先做到认识它、能跑现成流程即可。想深入编排和写脚本等基础功能都熟了再看进阶内容。6.10 轨迹视图从原始记录回看每一步对话区顶部有两个视图 tab对话和轨迹。对话视图整理成清晰消息流日常够用轨迹视图按轮次组织的原始记录USER / CONTEXT / ASSISTANT / TOOL排查细节用点顶部轨迹tab 切换再点对话切回来。切换不影响会话内容只是换一种看法。小提示轨迹视图信息量大是给查细节用的。日常干活看对话视图就好别被原始记录淹没。第七部分侧边栏——会话的总控台dsh 的左侧边栏不只是导航它是会话的总控台。所有会话按工作区分组排列一眼看清每个项目下有哪些对话。7.1 新建与切换新建点侧边栏顶部的[]按钮切换直接点对应会话行对话区加载完整历史从头到尾可翻看、可续聊会话行上会显示状态信息正在运行的会话有运行指示等待你审批的会标出来——方便你一眼找到需要处理的事。7.2 搜索会话多了靠翻很累用搜索框支持按标题和内容搜。标题搜不到就搜内容。7.3 会话操作鼠标悬停在会话行上出现操作按钮操作作用重命名改会话标题方便检索分叉Fork⭐ 从当前位置复制出新会话原会话原样保留——做实验、试不同方案特别好用归档不用的会话收起来列表更清爽删除彻底删除谨慎分叉是神器它不动原会话从你选的位置复制出新分支。想试试另一种思路又不破坏现有进度时先分叉。7.4 视图选项侧边栏的视图选项按钮可调整展示方式按最近更新排序、手动排序、按工作区分组或平铺成一张列表——按你的习惯选就行。第八部分设置——把 dsh 调成你的形状点右上角设置按钮弹出设置面板。四个 tab通用、插件、Agent 预设、模型。8.1 通用设置选项说明Agent 预设新会话的 agent 类型见 8.3权限新会话默认权限模式推荐 Workspace Write语言界面语言支持中文切换立即生效外观浅色 / 深色 / 跟随系统Enter 行为agent 繁忙时按 Enter 怎么办默认排队发送设置面板还有个**“打开配置文件”**入口能看到 dsh 的实际配置文件。新手不建议直接改——界面能设的先用界面改错了反而出问题。8.2 插件设置 →插件tab列出当前部署已安装的插件及其配置项。它们是 dsh 能力的地基例如终端插件给命令执行兜底可配置执行范围、是否启用沙箱——是安全边界的一部分你可能想问插件和 6.3 的技能Skills是一回事吗不完全一样理解为两层插件底层能力模块在设置里管理如终端、文件系统、搜索技能面向任务的可调用工作流在会话里用/调用它们是 dsh 插件体系的两个侧面。8.3 Agent 预设同一个 dshagent 可以有不同的形态。Agent 预设就是这些形态的出厂配置。内置四个预设能力从全到简预设定位标准模式功能完整的编码 Agent大多数人的日常选择默认精简模式去掉部分工具适合轻量任务只读模式只观察不改动适合调研创造模式可自定义、可扩展进阶玩法切换路径设置 → Agent 预设 → 点选。切换后新会话生效已有会话不受影响。创造模式还支持自定义预设——对 agent 行为有特殊要求时比如固定系统提示词、限制可用工具集可以自己创建一个。属于进阶玩法先知道有这条路。8.4 主题通用设置 → 外观浅色 / 深色 / 跟随系统。切换立即生效不用重启。纯看习惯长时间盯代码推荐深色护眼如果拿不准选跟随系统——自动匹配你电脑的明暗风格最省心。主题只影响外观不影响任何功能。第九部分脱离界面的 CLI 玩法前面都在讲 Web UI但 dsh 不只有图形界面。dsh命令本身是个多模式启动器除了dsh web还有几个有意思的模式。9.1 Headless 模式无人值守跑任务最有意思的是headless 模式——不需要界面一条命令把任务干完就退出dsh run分析当前目录的代码结构生成一份架构说明文档跑完后终端直接打印 agent 的回答。适合写进脚本、定时任务、CI 流水线。可以理解为 dsh 的命令行版。9.2 Profile 管理dsh 用profile管理不同运行配置。每个 profile 是一套独立的插件组合和配置dsh--profilework run...dsh--profilepersonal web这样你可以在工作账号和个人项目之间干净地隔离。9.3 环境变量传密钥headless 模式通过环境变量读取密钥不依赖图形界面的设置面板exportDEEPSEEK_API_KEYsk-xxxdsh run...这也是它能嵌入 CI 的原因——密钥从环境变量注入不落盘。9.4 插件管理命令dsh plugin list# 列出已装插件dsh plugininstallname# 安装插件dsh pluginenablename# 启用插件第十部分安全边界——权限机制再深挖一层6.4 讲了权限模式现在把背后机制说透每个权限预设实际上捆绑了两件独立的事文件系统沙箱范围能读写哪些目录审批策略超范围时是询问还是放行界面上的一个档位背后就是这两个开关的组合。10.1 沙箱的三个档位沙箱只管理文件系统效果由松到严档位文件读写范围Read Only只读任何位置都不能写Workspace Write可读写工作区内工作区外只读Full Access全系统可读写⚠️重要沙箱只管文件读写。网络访问、进程可见性不归沙箱管那是另一套机制。所以即便在 Workspace Write 下agent 依然可以访问网络——这是设计如此调研、下载依赖都需要。10.2 权限组合对照界面档位背后的真实组合权限模式沙箱审批策略Read Only只读一律拒绝写操作Workspace Write工作区内可写工作区外操作 →询问Full Access全开放直接放行不询问看出规律了吗档位越高沙箱越松Full Access 连审批都关了。这就是为什么 6.4 强调 Full Access 要慎用。10.3 沙箱的实现“护栏由操作系统机制实现如文件系统权限、隔离目录。不同系统护栏强度有差异某些边界如硬链接可能只能做到部分限制”。日常使用记住一条就够默认 Workspace Write只读 写工作区内是最常见也最稳妥的组合。第十一部分完整实战——为已有项目生成 README理论讲完现在把全文知识串起来走一遍真实小项目任务给一个已有项目生成一份 README。这个任务用到了全文主线能力工作区、会话、工具调用、目标、审阅。11.1 任务目标分析当前工作区的项目生成一份 README.md 包含项目简介、主要功能、使用说明。11.2 开工前确认三件事缺一不可✅ 已配置好模型API 密钥有效✅ 已添加工作区指向目标项目根目录✅ 权限模式为 Workspace Write允许写文件11.3 Step 1新建会话 设目标点新会话先设定目标防止跑偏设定目标为当前工作区的项目生成 README.md只做这一件事。11.4 Step 2发任务指令要具体分析这个项目是做什么的然后生成一份 README.md 包含项目简介、主要功能和使用说明。 先读一下项目的关键文件package.json / pyproject.toml / Cargo.toml 等再动笔。注意指令里的三个要点做什么生成 README产出在哪README.md怎么干先读关键文件再动笔指令越具体结果越可控。11.5 Step 3盯工具调用树发送后盯住消息流的工具调用树5.2 节。你会看到它反复读一下、想一下、再读一下——这是正常的它正在理解你的项目。典型流程[Think] 需要确定项目类型先读清单文件 [ReadFile] package.json [ReadFile] src/index.ts [ReadDir] src/ [Think] 这是一个基于 Hono 的 API 服务含 3 个路由模块 [WriteFile] README.md [Reply] 已完成README.md 已生成11.6 Step 4审阅 调整agent 完成后对话区出现 README 草稿工作区里多了README.md文件。别急着收工做两件事审阅内容打开文件看是否准确项目名、命令、功能描述对不对不满意就改直接在对话里说安装命令应该是 pnpm 不是 npm改一下agent 会就地修订11.7 Step 5收尾满意后这单任务就完成了。你可以继续让它补一份 CONTRIBUTING.md分叉7.3出一条新分支试试不同 README 风格归档这个会话下次回来续聊回顾一下工作区、会话、工具调用、目标、审阅——全文主线能力在这个小任务里全部用上了。第十二部分FAQ 速查表全文出现过的问题汇总遇到坑先来这翻问题解法npx下载慢 / 失败换 npm 国内镜像npm config set registry https://registry.npmmirror.com端口被占用dsh web --port 8080访问http://127.0.0.1:8080/node -v版本太老需 Node.js 22官网下载最新 LTS 覆盖安装浏览器打不开界面以终端打印地址为准确认端口一致、无报错再刷新保存后模型不可用 / 密钥无效密钥可能没复制全sk-开头一整串或刚创建未生效重建一个提示余额不足DeepSeek 按量付费新账号可能需充值去平台费用页查看想用别的模型设置 → 模型 → 添加提供方内置 20或添加 OpenAI 兼容自定义提供方API 密钥泄露平台吊销重建旧密钥立即失效别截图发群、别提交 git添加工作区但侧边栏没有确认选的是文件夹不是文件同一目录只能添加一次删工作区文件会丢吗不会。删除只是移除分组记录文件与会话都保留会话太多找不到用侧边栏搜索框按标题或内容搜不用的归档想回到昨天的对话点侧边栏会话行历史完整加载直接续聊agent 跑偏了先设目标6.5再发任务跑偏了直接说停回到目标上或用计划模式6.6agent 运行太久看工具调用树它卡在哪长任务放后台6.8或指令里限定范围回答不满意换更强模型6.1或调高推理等级再检查指令是否具体老是弹审批说明它想动工作区外的东西。看清操作再决定该放行放行不该放行拒绝6.4对话视图 vs 轨迹视图对话是人话版轨迹是原始轮次记录USER/CONTEXT/ASSISTANT/TOOL排查细节用轨迹6.10界面英文想换中文设置 → 通用 → 语言 → 中文界面太亮/太暗设置 → 通用 → 外观浅色/深色/跟随系统8.4无人值守跑任务用 headlessdsh run ...9.1想限制权限更严切 Read Only或保持 Workspace Write 并在审批时拒绝超范围操作10.1想加新能力装插件或技能。插件在设置 → 插件查看技能在会话里用/调用结语从问它到让它干回顾你走过的路dsh 是什么 → 装环境 → 认界面 → 发第一条指令 → 进阶功能 → CLI → 安全边界 → 完成真实任务你已经完成了从零到一的跨越。dsh 的真正价值不在于它用了多强的模型而在于它把让 AI 在你的真实工作环境里、按你的规则、持续把一件事干完这件事变成了一套可控、可审计、可扩展的流程。MIT 开源 插件生态意味着它不会停留在今天这个样子。社区已经在冒出插件、工作流模板、预设配置——你现在上车正好能参与它的演进。接下来去你自己的项目里让 agent 帮你干第一件真实的活吧。遇到问题回来翻这篇指南。参考资料DeepSeek 官方开源仓库GitHubhttps://github.com/deepseek-ai/deepseek-harnessDeepSeek 开放平台API 密钥管理与计费本文基于公开资料与官方设计整理版本迭代较快具体以官方最新文档为准。如发现偏差欢迎在评论区指正。