Cordis、MCP 与 Skills
三个概念的定位对比,以及 DeepSeek Harness 对 MCP、Skills 与 Plugins 的支持矩阵
经常有人把 Cordis、MCP 与 Skills 放在一起比较。它们其实是三个不同层次的概念,在 DeepSeek Harness 中各有明确的角色。本页先对比概念,再给出 DSH 的支持矩阵。
一句话定位
| 概念 | 是什么 | 解决什么问题 |
|---|---|---|
| Cordis | 插件框架(元框架) | 如何把软件拆成可组合、可替换的插件,并管理生命周期 |
| MCP | 开放协议标准(Model Context Protocol) | 模型应用如何以统一协议对接外部工具/数据源 |
| Skills | 可复用的指令与能力包 | 如何把领域最佳实践封装成按需加载的「技能」 |
打个比方
Cordis 是「插座与电路标准」——决定每个部件怎么装上、怎么拆下;MCP 是「USB 协议」——规定外设用什么接口通信;Skills 是「工具包」——把一套做法打包好,需要时取用。三者不互斥:Skills 与 MCP 桥接都以插件(Cordis)的形式装进 DSH。
Cordis 与 cordis.run:框架和市场不是同一件事
名称相近,但它们解决的是不同问题:
| 名称 | 它是什么 | 何时会用到 |
|---|---|---|
| Cordis | DSH 内置的插件组合框架与运行时 | 编写、组合或理解插件、服务、事件和生命周期时 |
| cordis.run | 独立社区维护的 DSH 插件市场与目录 | 想发现声明 dsh.bundle 的第三方插件、阅读配置说明或复制安装命令时 |
cordis.run 不替代 Cordis,也不会直接替你改动本地 profile。市场页负责发现与说明;安装仍通过 dsh plugin --profile <name> add <package> 完成,插件随后作为 Cordis 组合层参与 DSH。用户侧的选择、安装和信任检查见第三方插件。
社区市场与代码信任
cordis.run 是独立社区项目,而不是 DeepSeek 官方服务。市场收录、扫描信号或安装指引都不是安全背书;第三方插件会在 profile 中执行代码,开发和使用前都应审查源码、依赖与权限。
详细对比
| 维度 | Cordis | MCP | Skills |
|---|---|---|---|
| 本质 | 组合模型 + 运行时 | 通信协议规范 | 指令/能力包 |
| 粒度 | 插件、服务、事件 | 服务器、工具、资源 | 单个技能(SKILL.md + 资源) |
| 谁实现 | DSH 内置(vendored) | 各厂商的 server/client | 社区与官方维护 |
| 语言相关 | TypeScript 生态 | 语言无关(JSON-RPC) | 与 agent 运行时相关 |
| 在 DSH 中的角色 | 承载一切能力的底座 | 通过桥接插件接入外部工具 | 内置注册表 + 按需加载 |
DSH 支持矩阵
Cordis:原生内置
DSH 以 vendored 形式内置 Cordis,模型适配器、工具注册表、会话日志、agent loop(智能体循环)都是插件。见 Cordis 入门。
MCP:支持(客户端桥接)
DSH 通过 @deepseek-ai/dsh-mcp-client 桥接插件接入外部 MCP 服务器:连接服务器并把其工具注册到 ctx.tools,模型以 mcp__<serverName>__<rawName> 形式调用——与 Claude Code、Codex 相同的服务器限定命名。
支持范围
- 传输:
stdio(本地子进程)与streamable-http(远程 URL)两种; - 每个 MCP 服务器对应一个插件实例,在
cordis.yml中配置; - 支持 HMR 热切换、断线自动重连(指数退避);
- 当前文档化的桥接是 MCP client 角色(把外部服务器的工具接进来);把 DSH 自身作为 MCP server 暴露的能力未在上游文档中出现。
配置示例:
- id: mcp-github
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: github
transport: stdio
command: npx
args: ['-y', '@modelcontextprotocol/server-github']
env:
GITHUB_TOKEN: !!js process.env.GITHUB_TOKENSkills:原生支持
DSH 内置 skill(技能)注册表与加载器,agent 可按需加载专项技能(如 code-review、astro),技能以 SKILL.md + 资源目录的形式组织。见技能与目标。
Plugins:原生支持
三者关系图
怎么选
- 想扩展 agent 的能力:优先写 Skills(封装做法)或插件(封装能力);
- 想接入已有的 MCP 生态工具:用
dsh-mcp-client桥接,不必重写; - 想理解/改造 DSH 本身:从 Cordis 组合模型入手。