dsh-skill-mcp 0.4.3 → 0.4.5

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.md CHANGED
@@ -153,7 +153,7 @@ MCP tab 工具栏提供 **添加 / 导入 / 重新加载**:
153
153
 
154
154
  ## 技术说明
155
155
 
156
- - 宿主半边与客户端半边走 **dsh v0.1.5 的 `/api` 传输模型**:宿主用 `connection.fetch.register` 注册 15 个精确 POST 路由 `/api/skill-mcp/<endpoint>`(fetchRoutes 优先于网关 interceptor,注册过程只需 inject `connection`),浏览器侧固定 POST 调用;信封为 client-request `{rpcId, method, payload}` → server-response `{rpcId, result:{ok, value | error}}`,端点覆盖 `skills/*` 与 `mcp/*`;
156
+ - 宿主半边与客户端半边走 **dsh v0.1.5 的 `/api` 传输模型**:宿主用 `connection.fetch.register` 注册 15 个精确 POST 路由 `/api/skill-mcp/<endpoint>`(fetchRoutes 优先于网关 interceptor;register 内部经 `owner.webServer.register` 落路由,因此调用方 fiber 链上必须同时有 `connection` 与 `webServer`——本插件静态 inject 已含二者),浏览器侧固定 POST 调用;信封为 client-request `{rpcId, method, payload}` → server-response `{rpcId, result:{ok, value | error}}`,端点覆盖 `skills/*` 与 `mcp/*`;
157
157
  - 按项目 MCP 通过 `ctx.loader` 把条目热加载为 `@deepseek-ai/dsh-mcp-client`(id 前缀 `pmcp-`),运行状态由 loader fiber 阶段 + 工具目录派生;
158
158
  - 客户端半边通过 `settings.section` 扩展点注册设置页(单一面板,不再注册侧栏入口);
159
159
  - package.json 的 `exports` 必须包含 `"./package.json"`——宿主用 `require.resolve('<pkg>/package.json')` 定位客户端 bundle,缺了这一项客户端半边会被静默丢弃。
package/lib/client.js CHANGED
@@ -20,7 +20,9 @@ window.__ModuleLoader__.load({
20
20
  // 不可靠(jsx 为 undefined → "jsx is not a function"),createElement 最稳。
21
21
  const jsx = (type, props) => React.createElement(type, props);
22
22
 
23
- const INJECT = ["slots", "locale", "workspaces", "connection"];
23
+ // dsh 0.1.5:原生目录选择器在 uiWorkspace 服务上(ctx.workspaces 是纯
24
+ // Workspace Controller,没有 pickDirectory)。
25
+ const INJECT = ["slots", "locale", "uiWorkspace", "connection"];
24
26
 
25
27
  /** dsh v0.1.5:浏览器侧统一走 /api 通道,endpoint 带插件前缀。 */
26
28
  const RPC_PREFIX = "skill-mcp";
@@ -1214,7 +1216,7 @@ window.__ModuleLoader__.load({
1214
1216
  ...props,
1215
1217
  fillHeight: true,
1216
1218
  // 注意要包一层箭头函数:方法内部依赖 this,摘下来传会丢绑定。
1217
- pickDirectory: ctx.workspaces ? () => ctx.workspaces.pickDirectory() : undefined,
1219
+ pickDirectory: ctx.uiWorkspace ? () => ctx.uiWorkspace.pickDirectory() : undefined,
1218
1220
  })));
1219
1221
  };
1220
1222
 
package/lib/index.js CHANGED
@@ -1229,8 +1229,10 @@ export function apply(ctx) {
1229
1229
 
1230
1230
  // ---- RPC(dsh v0.1.5 新传输模型)----
1231
1231
  // 浏览器侧固定 POST /api/<endpoint>;/api 前缀路由由 core 挂载。插件用
1232
- // connection.fetch.register 注册精确 POST 路由(优先于网关 interceptor,
1233
- // 注册过程不碰 webServer,只需 inject connection)。信封:client-request
1232
+ // connection.fetch.register 注册精确 POST 路由(优先于网关 interceptor)。
1233
+ // 注意 register 内部为 owner.effect(() => owner.webServer.register(route)),
1234
+ // 解析回调 fiber 链上的 webServer——本插件静态 inject 已含 webServer,子 fiber
1235
+ // 天然继承。信封:client-request
1234
1236
  // {rpcId,method,payload} → server-response {rpcId,result:{ok,value|error}}。
1235
1237
  const okResponse = (rpcId, result) => new Response(
1236
1238
  JSON.stringify({ type: 'server-response', rpcId, result }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-skill-mcp",
3
- "version": "0.4.3",
3
+ "version": "0.4.5",
4
4
  "description": "Management center: link skill directories into the user skills root (enable/disable/unlink/delete) and manage MCP servers — add/edit/delete, import from other agents (Claude Code/Codex/Cursor/Gemini CLI), auto-load each project's own MCP servers via the loader",
5
5
  "license": "BSD-3-Clause",
6
6
  "homepage": "https://github.com/LvanLa/deepseek-harness-ex/tree/master/plugins/dsh-skill-mcp",
@@ -43,7 +43,8 @@
43
43
  "@deepseek-ai/dsh-client-runtime",
44
44
  "@deepseek-ai/dsh-client-connection",
45
45
  "@deepseek-ai/dsh-client-locale",
46
- "@deepseek-ai/dsh-client-ui-slots"
46
+ "@deepseek-ai/dsh-client-ui-slots",
47
+ "@deepseek-ai/dsh-client-ui-workspace"
47
48
  ]
48
49
  }
49
50
  },
@@ -52,6 +53,7 @@
52
53
  "@deepseek-ai/dsh-client-runtime": "^0.1.1-rc.2",
53
54
  "@deepseek-ai/dsh-client-connection": "^0.1.1-rc.2",
54
55
  "@deepseek-ai/dsh-client-locale": "^0.1.1-rc.2",
55
- "@deepseek-ai/dsh-client-ui-slots": "^0.1.1-rc.2"
56
+ "@deepseek-ai/dsh-client-ui-slots": "^0.1.1-rc.2",
57
+ "@deepseek-ai/dsh-client-ui-workspace": "^0.1.1-rc.2"
56
58
  }
57
59
  }