QP内容库 Logo
首页
文章
文档
默认分类
关于
登录 →
QP内容库 Logo
首页 文章
文档
默认分类 关于
登录
  1. 首页
  2. 文档
  3. DeepSeek Harness
  4. Vendored 包改名

Vendored 包改名

  • DeepSeek Harness
  • 发布于 2026-09-30
  • 0 次阅读
目录
当前文章没有目录

English | 中文

Cordis 框架及其基础库以源码形式 vendored 在 vendor/ 下,并以 @deepseek-ai scope 发布:每个 harness 包都把框架声明为 peer dependency,发布 harness 就会连带发布这一层,用上游名发布等于在 registry 上占用别人的名字。本页是名字映射表;决策与影响见 改名 Agent Note,上游 commit 见 vendor/README.md。

名字映射

目录 上游名 发布名 上游版本 角色
vendor/cordis/ cordis @deepseek-ai/cordis 4.0.0-rc.7 框架核心:Context、Service、Fiber、事件
vendor/cosmokit/ cosmokit @deepseek-ai/cosmokit 1.8.1 框架与 Schemastery 共用的基础工具
vendor/schemastery/ schemastery @deepseek-ai/schemastery 3.18.0 配置 schema(Schema),每个插件的 Config 都基于它
vendor/loader/ @cordisjs/plugin-loader @deepseek-ai/cordis-plugin-loader 1.0.0-rc.5 cordis.yml 装载、插件解析、repository 缓存
vendor/include/ @cordisjs/plugin-include @deepseek-ai/cordis-plugin-include 1.0.4 配置包含与 patch 叠加
vendor/group/ @cordisjs/plugin-group @deepseek-ai/cordis-plugin-group 1.0.0 嵌套插件分组
vendor/timer/ @cordisjs/plugin-timer @deepseek-ai/cordis-plugin-timer 1.1.2 ctx 上随 disposal 回收的定时器
vendor/hmr/ @cordisjs/plugin-hmr @deepseek-ai/cordis-plugin-hmr 1.0.15 插件与配置的热替换
vendor/logger-console/ @cordisjs/plugin-logger-console @deepseek-ai/cordis-plugin-logger-console 1.0.0 控制台日志导出

子路径导出保持原路径:@cordisjs/plugin-loader/repository 变成 @deepseek-ai/cordis-plugin-loader/repository。

改名不碰什么

  • 目录名与上游源码版本。 vendor/hmr/ 仍是 vendor/hmr/,清单表记录的是所钉住源码快照的上游版本,因此清单读作一份上游快照;而每个 vendored 包 package.json 自身的 version 字段是 harness 发布的清单版本,pnpm run release:vendor 会提升它,重新 sync 时会恢复成上游版本。
  • 依赖 range。 改名只修改依赖键,不改变范围。Workspace 清单使用 workspace: 协议;仓库规则区分精确的 DSH 引用与 vendor/native tilde 范围。
  • Loader 的 cordis: 内建前缀。 cordis:include、cordis:group 是协议前缀,不是包名。
  • cordis.yml 配置文件家族,包括 *.cordis.yml、*.cordis.snapshot.yml、cordis.patch.yml。
  • 名字里带这个词的 harness 包,例如 @deepseek-ai/dsh-tool-cordis。
  • 上游运行时标识符,例如 Schemastery 的 Symbol.for('schemastery') 及其 vendor: 元数据字段。
  • docs/ 之外的散文。 vendor/*/README.md、各包 README 与 Agent Note 保留写作当时的名字;那里的裸 cordis 也可能是 Python SDK 的选项名或某个 agent-preset 的 id。docs/ 之内,散文与所有 Markdown 围栏都跟着改。

你的代码要改什么

位置 改前 改后
模块 import import { Context } from 'cordis' import { Context } from '@deepseek-ai/cordis'
类型事件声明合并 declare module 'cordis' declare module '@deepseek-ai/cordis'
package.json 依赖键 "@cordisjs/plugin-hmr": "^1.0.15" "@deepseek-ai/cordis-plugin-hmr": "^1.0.15"
cordis.yml 插件条目 name: '@cordisjs/plugin-include' name: '@deepseek-ai/cordis-plugin-include'

施加、核验与回退

上面这份映射由 scripts/rescope-vendor.ts 承载并执行改名,任何引用都不靠手改:

pnpm run rescope-vendor            # report what would change
pnpm run rescope-vendor --apply    # rewrite every reference
pnpm run rescope-vendor:check      # assert the post-state; runs in the hygiene gate
pnpm run rescope-vendor --apply --reverse   # return to the upstream names

上游 sync 之后重跑它(流程),并接上它打印的重生成:pnpm install 重生成 lockfile、pnpm run gen-third-party-notices、以及对它触及的双语对跑 pnpm run verify-translation-pairing --write。

相关文章

工作区

English | 中文 工作区(workspace)是用户工作目录的持久记录:一个建立在规范路径之上的稳定 id、一个显示标题,以及归属于它的会话的有序账本。该子系统是单个包(package)(dsh-workspace,ctx.workspaceRegistry)——一项宿主侧可选能力,不属于

工作流

English | 中文 工作流 seam 允许 agent(智能体)运行由模型编写、会启动 subagent 的编排脚本。与 subagent 一样,它是一项可选能力,不属于 agent loop,因此其类型和操作记录在此处,而非 core.md。与 bash 一样,每个上下文只允许一个引擎实现提

Webhook runtime

English | 中文 Webhook 子系统会把已通过身份验证的外部交付转换为可选的普通根 Session。提供方适配器拥有身份验证与通用 JSON 接收;受信任的程序化规则拥有条件与外部调用;ctx.webhookRuntime 拥有回调生命周期以及基于 Workspace 的 Session

Web 访问

English | 中文 Web 访问 seam 是一个能力 seam,在同一个 ctx.web 服务上横跨两项操作(search 与 fetch),并拆分到多个包:Service Definition(dsh-web,ctx.web + 提供方注册表)、Service Provider(dsh-w

HTTP 服务器

English | 中文 dsh-host-webserver 是 GUI Host 的浏览器 HTTP 载体:它是一个提供 ctx.webServer 的 node:http 插件,包含具名路由注册表、可选的 gzip 响应压缩、index.html 转换回调,以及一个可由插件认领的回退处理器。它

Web Client 架构

English | 中文 Web Client 是由独立加载插件组装而成的浏览器侧 Cordis 应用。它有四个可复用底座:Client Modules 加载插件图,API Gateway 提供类型化 Host 通信,Slots 组合 React UI,Conversation 把 Session

目录
当前文章没有目录

星沉月落夜闻香,素手出锋芒。

Copyright © 2026 quping.com All Rights Reserved. Powered by Halo.
鲁ICP备09092435号