想搭 AI Agent 又不想从零造轮子?看看这个开源项目
很多人想给自己搞个 AI Agent 干点活,结果卡在第一步:模型接上了,工具调用怎么写?上下文怎么管?界面从哪来?
一个个轮子自己造,两周过去还没跑通。
DeepSeek 前几天开源了一个项目,可能正好省掉你这段折腾——DeepSeek Harness,简称 dsh。
它是什么,一句话说清
先说容易搞混的地方:它不是一个新模型。
它是一个 agent harness,你可以理解成套在模型外面的那层骨架。模型负责"想",而这层骨架负责把想法落地——工具怎么调、上下文怎么管、插件怎么接、界面怎么显示。
以前这层你得自己写,或者被某个框架绑死。dsh 的做法是开源出来,而且喊着口号:Everything is a Plugin。
GitHub 上星标已经二十多万了,热度不用我多说。技术栈是 TypeScript,Node.js 环境。
"一切皆插件"这句话,对你有什么用
对普通用户来说这句话很虚,但对真要动手的人,它意味着两件事。
第一,不是一坨糊在一起的代码。它的底层是 Cordis 这个插件框架,设计思路甚至专门配了篇论文(arXiv 上能查到)。功能模块之间是解耦的,你不需要的部分可以直接不装。
第二,扩展的姿势是统一。想接新工具、换新能力,走的是插件那一套,而不是去改核心代码。这对后面维护来说差别很大——升级的时候不用每次大改。
论文可以不看,结论记住就行:能拼,能拆,能换。
跑起来,一行命令
如果你只是想先看看它长什么样,别急着 clone 源码。
装好 Node.js,然后:
npx @deepseek-ai/dsh web
就这一行。
它会在本地起一个 Web UI,默认地址是 http://127.0.0.1:3080,本地启动的话会自动帮你把浏览器打开。
两个小细节先记着:
- 如果你是 SSH 连到服务器上跑,浏览器不会自动开,终端只会把地址打印出来。因为转发地址归你的 SSH 客户端或编辑器管,别以为是没启动成功。
- 不想要它自动开浏览器,加个
--no-open就行。
想改源码,走这条路
如果你打算往深了用,或者想改点东西,就从仓库拉下来:
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web
这里有个容易忽略的点:pnpm run build 是准备构建产物的,而 pnpm dsh web 是直接跑已经构建好的产物,不会重新构建。
所以如果你改完代码发现没生效,八成是忘了重新 build。
上手前,三个坑先告诉你
这部分比上面的命令更重要。
第一,它还是 developer preview。
README 里用了加粗大写强调:会有破坏性变更。这不是客套话,是让你别拿它直接上生产环境。想尝鲜、想研究、想做原型,可以。想当稳定服务跑,再等等。
第二,跑之前先看一眼 SAFETY.md。
仓库里专门有这么一个安全说明文件。名字看着不起眼,但既然作者单独拎出来,说明有些默认行为需要你自己心里有数。别跳过。
第三,文档在单独一个站上。
完整文档在 https://deepseek-harness.github.io/deepseek-harness/,不在 README 里。想认真用,直接去那边翻,比在仓库里找快。
它适合谁,不适合谁
适合的:
- 想研究 agent 架构到底怎么搭的人,这套"一切皆插件"的思路本身值得看
- 想做个自己的 AI 工具,但不想从零写工具调用和上下文管理的人
- 手里有一堆零散脚本,想找个统一骨架把它们串起来的人
不太适合的:
- 只想找个开箱即用的聊天工具——这不是它的定位,你会觉得绕
- 对稳定性要求极高的生产场景——developer preview 阶段,现在还不是时候
最后
这类项目我最看重的不是功能多少,而是它有没有帮你省掉那段重复劳动。
dsh 目前还在快速迭代,功能会变、接口会变,这既是风险也是机会——现在上手,你踩的坑大概率还没人写过。等你踩完了,那就是你的经验。
仓库地址放这儿:https://github.com/deepseek-ai/deepseek-harness
建议先做两件事:
- 收藏这篇,等你哪天想动手的时候,
npx那行命令直接拿来用 - 关注「日常轻工具」,后面我会拿它实际做个小东西,把踩到的坑一条条写出来
评论区聊聊:你更想用它来干啥?是接自己的工具链,还是单纯想研究架构?我按大家的方向来试。
本期项目


评论区