DeepSeek Harness 快速上手指南3 条命令装好环境再跑通你的第一个插件【免费下载链接】deepseek-harnessDeepSeek Harness: Everything is a Plugin.项目地址: https://gitcode.com/gh_mirrors/de/deepseek-harnessDeepSeek Harnessdsh是一个一切皆插件的智能体框架模型接入、工具、调度、UI 能力都以插件形式组合你想扩展什么就写一个插件挂进去。从零克隆到浏览器里看到界面、再到终端打出自己插件的加载日志整个过程大约 5 分钟前提是你手头有 Node.js 22.19 或更高版本和 pnpm。本文走一遍完整链路装环境、启动 Web UI、配模型密钥、写并加载第一个插件。动手之前Node 22 与一份仓库代码这一节跑完后你的电脑上会有一个可用的 deepseek-harness 源码目录。git clone https://gitcode.com/gh_mirrors/de/deepseek-harness cd deepseek-harness第一条命令把仓库拉到本地第二条进入目录后面所有操作都从这里出发。装依赖前先确认 pnpm 可用corepack enable这行激活 Node 自带的 corepack让pnpm命令直接可用不用单独装包管理器。一句话提醒项目目前处于开发者预览阶段迭代很快可能随时出现破坏兼容性的变更上手前建议扫一眼仓库里的 SAFETY.zh.md。一次装好、构建并启动 Web 服务这一节跑完后浏览器会打开 DeepSeek Harness 的主界面。pnpm install把整个 monorepo 的依赖装到node_modules第一次跑会花几分钟。pnpm run build源码方式运行需要先构建产物包和前端 bundledsh启动时直接消费这些产物不会现场再编译。pnpm dsh web这条命令启动 Web 服务并监听http://127.0.0.1:3080本地启动时会自动拉起默认浏览器只想跑服务不弹浏览器的话加--no-open。配置模型30 秒填入 API 密钥这一节跑完后界面里就能发起真实的对话请求。打开设置 → 模型在 DeepSeek 卡片的 API 密钥字段里粘贴你的密钥点保存。密钥是只写的——保存后页面只会拿到脱敏描述符明文落在本地凭据文件里settings 只存引用。两个常见后续动作页面下方的添加模型提供商支持选 dsh 内置的第三方提供商anthropic、openai、moonshotai等填密钥即用如果用的是中转站或自建网关切换到自定义模型 API页签填 Provider ID、API 地址、协议和密钥即可。Provider ID 是永久标识定好别改模型列表还能点获取可用模型让端点自己报出来。模型和密钥的修改在下一次请求时生效不需要重启服务器。详细字段和排错比如网关拒收请求的 compat 开关在 配置模型 里有完整说明。写第一个插件3 个文件换 1 条启动命令这一节跑完后你的终端会打印出自定义插件的加载日志——这是整个万物皆插件架构的最小闭环。在仓库根目录建一个临时项目mkdir -p scratch-plugin/src创建scratch-plugin/src/my-plugin.ts一个插件本质上就是一个导出apply函数的 TypeScript 模块框架加载时调用它并传入上下文ctximport type { Context } from deepseek-ai/cordis export const name hello-plugin export function apply(ctx: Context) { console.log([hello-plugin] plugin loaded!) }再创建scratch-plugin/cordis.yml作为覆盖层告诉 loader 挂载这个文件pwd查看当前仓库绝对路径后替换进去必须是绝对路径- insert: - id: hello name: /你的绝对路径/deepseek-harness/scratch-plugin/src/my-plugin.ts最后带参数启动pnpm dsh web --patch ./scratch-plugin/cordis.yml--patch把这个 yml 叠到默认配置之上只贡献配置、不改变 loader 的 profile 目录。启动过程中终端出现[hello-plugin] plugin loaded!就成功了。顺手记两个行为细节能省掉不少困惑ctx注册的监听器、工具、定时器在插件卸载时自动清理不需要手动 removeListener自己管的资源如网络连接用ctx.effect(() { ...; return cleanup })注册返回的函数会在卸载时执行。跑起来之后插件形态与继续深入的路径这一节帮你判断我的插件该用哪种写法并指好下一站的门。插件有三种导出形态按需取用形态导出方式什么时候用函数export function apply(ctx)最常用注册工具、监听事件即可对象export default { name, inject, apply }想声明依赖时写法更紧凑类export default class MyService extends Service需要向其他插件提供服务时需要依赖别的插件比如工具注册表tools、LLM 路由llm时在模块里声明export const inject [tools]框架保证依赖就绪后才执行你的apply——这是插件之间解耦的核心机制。接下来按目的走给智能体加一个新工具开发一个工具让插件接受用户配置插件配置想搞懂底层 Cordis 框架事件、服务、生命周期Cordis 框架教程面向用户的功能全景Web UI 使用指南架构与设计背景architecture、development跑通到这里你已经站在了框架的入口处界面里能聊天终端里能验证插件加载。剩下的事情就是决定第一个要挂进去的能力长什么样。【免费下载链接】deepseek-harnessDeepSeek Harness: Everything is a Plugin.项目地址: https://gitcode.com/gh_mirrors/de/deepseek-harness创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考