DeepSeek Harness(DSH)是一个带本地 Web 界面的 coding agent。它不只是回答问题,而是能直接操作仓库、终端、浏览器,并把可复用的能力做成插件(Skill)装进来。

下面按「项目本身能做什么」和「插件能补什么」分开说。

项目功能

有手的 Agent。 对话模型通常只给文本。DSH 能读改工作区里的文件、跑命令、抓网页、看你丢进去的截图,再根据结果决定下一步。目标可以是「修这个 bug」,也可以是「把整条发布链路搭起来」。

本地 Web GUI。 交互发生在浏览器里的会话窗口,不是把你丢进纯命令行。会话里能看到它在改哪些文件、跑了什么、交付了哪些产物。

多步任务,而不是单轮补全。 它会把大目标拆成步骤:查现状、改代码、构建、用真实 URL 验收。中途失败会接着查,而不是让你把现场重新描述一遍。

可以拆出去干。 独立的调研、实现、核对可以分给子 agent;大规模、多文件的活可以用工作流并行。适合「同时看十个模块」或「同一目标反复验证」这类事。

看得懂图和页面。 控制台、设计稿、报错弹窗,截图丢进去就能对着画面改,不必你把每个按钮文案口述一遍。

技能按需加载。 默认能力是通用的写代码和运维。遇到浏览器自动化、桌面应用、Slack、专项 QA 时,会先加载对应 Skill,再按那套流程干活。没有装过的能力,可以用 find-skills 去生态里搜。

有边界。 文件沙箱、高风险命令需要确认。这不是限制玩法,是避免 Agent 把密钥提交进 Git、或在生产上执行不可逆操作。

插件是什么

DSH 的插件就是 Agent Skills:一段给 Agent 看的说明(通常是 SKILL.md),告诉它何时启用、按什么步骤做、能调用哪些命令。

和传统 IDE 插件不同——它扩展的不是编辑器 UI,而是 Agent 的行为。装上之后,你说「去打开这个网站填表」,它知道该走浏览器自动化,而不是只给你一段 Puppeteer 示例。

技能来自开放生态,安装很直接:

npx skills find browser
npx skills add <owner/repo@skill> -g -y

目录在 skills.sh,常见分类包括前端、测试、部署、文档、设计、各家 SaaS。自己反复做的流程也可以 npx skills init 做成技能。

这套环境里已经装了哪些

插件做什么
find-skills按你的需求在技能生态里搜索、安装、更新。入口技能。
agent-browser浏览器自动化:打开页面、点按钮、填表、截图、抽数据。工作流是「打开 → snapshot 拿元素引用 → 交互 → 再 snapshot」。支持导入已登录状态、持久 profile、会话级 cookie。
dogfood按产品视角做探索性测试。系统逛站点、找 bug / UX 问题,输出带逐步截图和复现步骤的报告,可以直接交给开发。
electron通过 Chrome DevTools Protocol 控制 Electron 桌面应用(VS Code、Slack、Discord、Figma、Notion 等),交互方式和网页同一套 snapshot / click。
slack在 Slack 里查未读、搜消息、发内容、抽会话。走浏览器自动化,不必先接 Bot Token。
vercel-sandbox在 Vercel Sandbox 微虚拟机里跑 headless Chrome + agent-browser。适合 Next / Nuxt / SvelteKit 等部署在 Vercel 上、又不想把 Chrome 打进应用包的场景。

它们经常叠着用:dogfood 和 slack 底层都依赖 agent-browser;桌面 Slack 则走 electron 连 CDP。

插件解决的是「流程」,不是「多一个 API」

以 agent-browser 为例,核心不是再包一层 HTTP,而是把稳定流程写死:

  1. open 目标 URL
  2. snapshot -i 得到 @e1、@e2 这种引用
  3. click / fill 操作引用
  4. DOM 变了必须重新 snapshot,不能拿过期引用硬点

dogfood 更进一步,规定了初始化、登录、定向探索、取证、汇总的顺序,以及报告模板。没有插件时,模型也可能「试试打开浏览器」;有插件时,它按同一套方法取证,结果才接得住。

适合干什么

  • 改本机仓库:实现、重构、补测试、写发布脚本
  • 对着真实页面验收:本地 dev server、预发域名、控制台配置
  • 重复劳动:填表、回归、从站点里抽结构
  • 桌面端和协作工具:Electron 应用、Slack
  • 把团队里的标准做法收成 Skill,避免每次重讲一遍规范

不适合的也很清楚:需要你亲自点的云控制台确认、证书和备案、不可逆的 DNS 切换,仍然该人来拍板。插件给 Agent 补的是手和流程,不是替代责任。

怎么继续加能力

缺某类能力时直接说「帮我找一个做 X 的 skill」。find-skills 会去生态里搜,并给出:

npx skills add vercel-labs/agent-browser@agent-browser

这类安装命令。装的是用户级技能(-g),对后续会话生效。

DSH 的本体负责「能做事」;插件负责「某类事按专业流程做」。两者分开,才好加、好换、好自己写。