@deepseek-ai/dsh-skill 0.0.1-rc.2 → 0.0.1-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.i18n.yaml CHANGED
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write packages/skill/skill/README.md
5
- README.md: a728b05fa5f1f2ad10ec7c4ac12f0ac66ed48e7e
6
- README.zh.md: 085dec3e342c2f42a39d28b995dcb4e2cf38f440
5
+ README.md: ae8812aeb3cc6583677d22bd5c35639318d15237
6
+ README.zh.md: 5eae1d5aeb9eb87072d4b33c26f6c9a6e20cffdf
package/README.md CHANGED
@@ -4,11 +4,11 @@ English | [中文](README.zh.md)
4
4
 
5
5
  Pure agent skill provider registry.
6
6
 
7
- This package owns the `ctx.skills` interface. It does not know whether skills come from local files, embedded plugin data, HTTP, or another backend; providers register those sources with `ctx.skills.registerProvider(...)`. The shipped local implementation is [`@deepseek-ai/dsh-skill-local`](../skill-local).
7
+ This package owns the `ctx.skills` interface. It does not know whether skills come from local files, embedded plugin data, HTTP, or another backend; providers register those sources with `ctx.skills.registerProvider(...)`. The shipped local implementation is [`@deepseek-ai/dsh-skill-filesystem`](../skill-filesystem).
8
8
 
9
9
  The registry is host+per-scope layered over [`@deepseek-ai/dsh-scope`](../../core/scope), the shape the tools registry established: a registration files into the layer of its calling context's scope — host rows and repository plugins land in the global layer, a plugin mounted by an agent preset's standing composition lands in that preset's layer — and a read merges the global layer with the viewing scope's chain, the nearest layer winning a duplicate name outright while rank decides duplicates only within one layer.
10
10
 
11
- ## Service: `SkillService` (ctx key: `skills`)
11
+ ## Service: `SkillRegistry` (ctx key: `skills`)
12
12
 
13
13
  ### Public API
14
14
 
package/README.zh.md CHANGED
@@ -4,11 +4,11 @@
4
4
 
5
5
  纯 agent skill(智能体技能)提供方注册表。
6
6
 
7
- 该包负责 `ctx.skills` 接口。它不知道 skill 来自本地文件、嵌入式插件数据、HTTP 还是其他后端;提供方通过 `ctx.skills.registerProvider(...)` 注册这些来源。已发布的本地实现是 [`@deepseek-ai/dsh-skill-local`](../skill-local)。
7
+ 该包负责 `ctx.skills` 接口。它不知道 skill 来自本地文件、嵌入式插件数据、HTTP 还是其他后端;提供方通过 `ctx.skills.registerProvider(...)` 注册这些来源。已发布的本地实现是 [`@deepseek-ai/dsh-skill-filesystem`](../skill-filesystem)。
8
8
 
9
9
  注册表基于 [`@deepseek-ai/dsh-scope`](../../core/scope) 采用宿主 + 按 scope 的分层结构,即工具注册表确立的形态:注册落入调用方上下文 scope 对应的层——宿主行与 repository 插件落入全局层,由 agent preset 常驻组合挂载的插件落入该 preset 的层——读取时将全局层与观察 scope 的链合并,最近层直接赢得重名,rank 只在单层内裁决重名。
10
10
 
11
- ## 服务:`SkillService`(ctx 键:`skills`)
11
+ ## 服务:`SkillRegistry`(ctx 键:`skills`)
12
12
 
13
13
  ### 公开 API
14
14
 
@@ -47,7 +47,7 @@
47
47
 
48
48
  ## 提供方约定
49
49
 
50
- 提供方工厂同步运行,并接收一项注册作用域内的控制能力。注册失败或释放时,`control.signal` 会中止;仅当该精确注册仍处于活动状态时,`control.invalidate()` 才会清除已完成目录,因此延迟回调无法影响同名替代项。不可变提供方可以忽略该控制能力。远程设置、身份验证和发现由提供方可等待的 `list(options)` 调用执行。返回数组是完整发现的简写形式;若提供方已收集到可用候选项,却无法建立权威观测,则返回 `{ candidates, complete: false }`。提供方对象、查找选项、候选项和定义都以只读方式借用,而不是克隆或重新绑定。提供方应遵守 `options.signal`;取消后,注册表也会停止等待不协作的发现或加载。
50
+ 提供方工厂同步运行,并接收一项注册作用域内的控制能力。注册失败或释放时,`control.signal` 会中止;仅当该精确注册仍处于活动状态时,`control.invalidate()` 才会清除已完成目录,因此延迟回调无法影响同名替代项。不可变提供方可以忽略该控制能力。远程设置、身份验证和发现应在提供方的 `list(options)` 调用中完成,该调用会被等待。返回数组是完整发现的简写形式;若提供方已收集到可用候选项,却无法建立权威观测,则返回 `{ candidates, complete: false }`。提供方对象、查找选项、候选项和定义都以只读方式借用,而不是克隆或重新绑定。提供方应遵守 `options.signal`;取消后,注册表也会停止等待不协作的发现或加载。
51
51
 
52
52
  注册表在缓存前验证候选项,在返回前验证定义。胜出提供方会收到同一候选项和不透明 `locator`,两者都是它从 `list()` 返回的内容,从而支持后端专用文件、URL、id 或版本句柄。调用方和提供方必须保持只读约定。
53
53
 
@@ -57,7 +57,7 @@
57
57
 
58
58
  ## 运行时 skill
59
59
 
60
- `ctx.skills.register(...)` 是嵌入式运行时 skill 的便利接口。运行时 skill 使用 rank `250`:项目提供方可覆盖它们,它们则覆盖已发布本地提供方的自定义根目录和用户根目录。运行时定义和嵌套资源元数据均以只读方式借用;服务只物化补入默认调用策略和 `provider` 所需的顶层定义。运行时贡献内的注册使用先到先得,因此重复贡献无法通过其 disposer 移除当前生效的贡献。
60
+ `ctx.skills.register(...)` 是嵌入式运行时 skill 的便利接口。运行时 skill 使用 rank `250`:项目提供方可覆盖它们,它们则覆盖已发布本地提供方的自定义根目录和用户根目录。运行时定义和嵌套资源元数据均以只读方式借用;服务只物化一个顶层定义,以补入省略的调用策略和 `provider` 默认值。运行时贡献内的注册使用先到先得,因此重复贡献无法通过其 disposer 移除当前生效的贡献。
61
61
 
62
62
  ## 消费方边界
63
63
 
@@ -76,4 +76,4 @@
76
76
  - **失效由提供方驱动**:注册表没有 TTL,无法推断任意远程来源是否已发生变化;每个可变提供方都必须保留其注册作用域内的 `invalidate()` 能力,并由自身的观测机制调用它。
77
77
  - **提供方依次查询**:一个响应取消但速度缓慢的提供方会延迟之后注册的所有提供方;取消会停止调用方等待,但无法终止不响应取消的提供方持续运行的工作。
78
78
  - **不保留不完整观测**:被拒绝的提供方会被省略,显式提供的候选项也仅在当前查找中可用;注册表既不负责上一份可用目录,也不负责逐提供方诊断。
79
- - **重复解析使用先到先得**:系统会记录并隐藏层内较晚出现的低优先级候选项,较近的层会静默遮蔽较远的层;不提供检查全部被遮蔽定义的 API。
79
+ - **重名项的裁决采用先到先得**:系统会记录并隐藏层内较晚出现的低优先级候选项,较近的层会静默遮蔽较远的层;不提供检查全部被遮蔽定义的 API。
package/lib/index.js CHANGED
@@ -8,7 +8,7 @@ import z from "@deepseek-ai/schemastery";
8
8
  *
9
9
  * This package owns the Service Definition role of the skill capability seam.
10
10
  * Concrete
11
- * providers such as `@deepseek-ai/dsh-skill-local` decide where skills come
11
+ * providers such as `@deepseek-ai/dsh-skill-filesystem` decide where skills come
12
12
  * from; this service only merges provider catalogs, resolves the winning skill
13
13
  * for a name, and exposes the winning summaries and definitions to consumers.
14
14
  *
@@ -116,7 +116,7 @@ var SkillLayer = class {
116
116
  * It exposes sorted invocation-neutral summaries and loads full skill bodies
117
117
  * on demand.
118
118
  */
119
- var SkillService = class extends Service {
119
+ var SkillRegistry = class extends Service {
120
120
  static Config = z.object({ collectCacheMaxEntries: z.number().default(DEFAULT_COLLECT_CACHE_ENTRIES) });
121
121
  collectCacheMaxEntries;
122
122
  layers = new ScopedLayers((scope) => new SkillLayer(scope), () => {
@@ -562,4 +562,4 @@ function errorMessage(error) {
562
562
  }
563
563
  }
564
564
  //#endregion
565
- export { BUNDLED_SKILL_RANK, SkillService, SkillService as default, escapeText, isModelInvocable, isSkillName, isUserInvocable, renderSkillContent };
565
+ export { BUNDLED_SKILL_RANK, SkillRegistry, SkillRegistry as default, escapeText, isModelInvocable, isSkillName, isUserInvocable, renderSkillContent };
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * This package owns the Service Definition role of the skill capability seam.
5
5
  * Concrete
6
- * providers such as `@deepseek-ai/dsh-skill-local` decide where skills come
6
+ * providers such as `@deepseek-ai/dsh-skill-filesystem` decide where skills come
7
7
  * from; this service only merges provider catalogs, resolves the winning skill
8
8
  * for a name, and exposes the winning summaries and definitions to consumers.
9
9
  *
@@ -200,7 +200,7 @@ export interface Config {
200
200
  }
201
201
  declare module '@deepseek-ai/cordis' {
202
202
  interface Context {
203
- skills: SkillService;
203
+ skills: SkillRegistry;
204
204
  }
205
205
  interface Events {
206
206
  /**
@@ -224,7 +224,7 @@ declare module '@deepseek-ai/cordis' {
224
224
  * It exposes sorted invocation-neutral summaries and loads full skill bodies
225
225
  * on demand.
226
226
  */
227
- export declare class SkillService extends Service {
227
+ export declare class SkillRegistry extends Service {
228
228
  static Config: Schema<Config>;
229
229
  private readonly collectCacheMaxEntries;
230
230
  private readonly layers;
@@ -296,5 +296,5 @@ export declare class SkillService extends Service {
296
296
  /** Notify catalog observers without making their refresh work load-bearing. */
297
297
  private notifyChange;
298
298
  }
299
- export default SkillService;
299
+ export default SkillRegistry;
300
300
  //# sourceMappingURL=index.d.ts.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-skill",
3
3
  "description": "Agent skill provider registry for the DeepSeek Harness",
4
- "version": "0.0.1-rc.2",
4
+ "version": "0.0.1-rc.3",
5
5
  "publishConfig": {
6
6
  "access": "restricted"
7
7
  },
@@ -32,18 +32,18 @@
32
32
  ],
33
33
  "license": "BSD-3-Clause",
34
34
  "peerDependencies": {
35
- "@deepseek-ai/dsh-llm": "^0.0.1-rc.2",
36
- "@deepseek-ai/dsh-scope": "^0.0.1-rc.2",
37
- "@deepseek-ai/cordis": "^4.0.1-rc.1",
38
- "@deepseek-ai/dsh-invariants": "^0.0.1-rc.2"
35
+ "@deepseek-ai/dsh-invariants": "^0.0.1-rc.3",
36
+ "@deepseek-ai/dsh-llm": "^0.0.1-rc.3",
37
+ "@deepseek-ai/dsh-scope": "^0.0.1-rc.3",
38
+ "@deepseek-ai/cordis": "^4.0.1-rc.1"
39
39
  },
40
40
  "dependencies": {
41
41
  "@deepseek-ai/schemastery": "^3.18.1-rc.1"
42
42
  },
43
43
  "devDependencies": {
44
- "@deepseek-ai/dsh-invariants": "^0.0.1-rc.2",
45
- "@deepseek-ai/dsh-llm": "^0.0.1-rc.2",
46
- "@deepseek-ai/dsh-scope": "^0.0.1-rc.2",
44
+ "@deepseek-ai/dsh-invariants": "^0.0.1-rc.3",
45
+ "@deepseek-ai/dsh-llm": "^0.0.1-rc.3",
46
+ "@deepseek-ai/dsh-scope": "^0.0.1-rc.3",
47
47
  "@deepseek-ai/cordis": "^4.0.1-rc.1"
48
48
  }
49
49
  }