@motrix/mdxp 0.4.0 → 0.6.0

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
@@ -154,8 +154,14 @@ const hello = await conn.sendRequest('motrix/initialize', {
154
154
 
155
155
  console.log(hello.server.name, hello.server.version)
156
156
  console.log(hello.capabilities.selectionKinds) // e.g. ['direct', 'hls', 'mux']
157
+ const canRevealTask = hello.capabilities.taskReveal ?? false
157
158
  ```
158
159
 
160
+ `capabilities.taskReveal` is optional on the wire so existing protocol 1.0
161
+ servers remain valid. `InitializeResultSchema` normalizes an absent value to
162
+ `false`; clients that do not parse the result should use `?? false` and hide or
163
+ disable reveal actions.
164
+
159
165
  ### Add a download (client → server)
160
166
 
161
167
  `download/add` is the public, agent-facing entry point. It accepts a direct
@@ -195,8 +201,19 @@ const { tasks, total } = await conn.sendRequest('task/list', {
195
201
  await conn.sendRequest('task/pause', { taskId: task.id })
196
202
  await conn.sendRequest('task/resume', { taskId: task.id })
197
203
  await conn.sendRequest('task/remove', { taskId: task.id, deleteFiles: false })
204
+
205
+ // Invoke only from an explicit user gesture after capability negotiation.
206
+ if (hello.capabilities.taskReveal ?? false) {
207
+ await conn.sendRequest('task/reveal', { taskId: task.id })
208
+ }
198
209
  ```
199
210
 
211
+ `task/reveal` asks the desktop host to reveal the task's output in the platform
212
+ file manager. Its strict payload accepts only `taskId`, never an arbitrary local
213
+ path. It is registered in `Tools` for schema discovery but intentionally omitted
214
+ from `toAgentToolCatalog()` because opening a file-manager window is a UI side
215
+ effect and must be initiated by the user.
216
+
200
217
  ### Resolve a page (server → client)
201
218
 
202
219
  The desktop app asks a client whether it can handle a page (`url/probe`), then
@@ -351,6 +368,7 @@ const tools = toAgentToolCatalog()
351
368
  | `task/get` | client → server | ✓ | Get one task by id. |
352
369
  | `task/pause` · `task/resume` | client → server | ✓ | Pause / resume a task. |
353
370
  | `task/remove` | client → server | ✓ | Remove a task, optionally deleting files. |
371
+ | `task/reveal` | client → server | | Reveal a task's output in the platform file manager; user gesture only. |
354
372
  | `stats/get` | client → server | ✓ | Aggregate global stats (speeds + counts). |
355
373
  | `engine/status` | client → server | ✓ | Engine lifecycle state + feature report. |
356
374
  | `url/probe` | **server → client** | | Can this client's adapters handle a page? |
package/README.zh-CN.md CHANGED
@@ -140,8 +140,13 @@ const hello = await conn.sendRequest('motrix/initialize', {
140
140
 
141
141
  console.log(hello.server.name, hello.server.version)
142
142
  console.log(hello.capabilities.selectionKinds) // 例如 ['direct', 'hls', 'mux']
143
+ const canRevealTask = hello.capabilities.taskReveal ?? false
143
144
  ```
144
145
 
146
+ `capabilities.taskReveal` 在 wire 上是可选字段,以便既有的 protocol 1.0 server 继续有效。
147
+ `InitializeResultSchema` 会把缺失值归一为 `false`;未解析 result 的 client 应使用
148
+ `?? false`,并隐藏或禁用“在文件管理器中显示”操作。
149
+
145
150
  ### 添加下载(client → server)
146
151
 
147
152
  `download/add` 是面向 agent 的公开入口,接受直连 URL 列表、magnet 链接或 base64
@@ -180,8 +185,17 @@ const { tasks, total } = await conn.sendRequest('task/list', {
180
185
  await conn.sendRequest('task/pause', { taskId: task.id })
181
186
  await conn.sendRequest('task/resume', { taskId: task.id })
182
187
  await conn.sendRequest('task/remove', { taskId: task.id, deleteFiles: false })
188
+
189
+ // 仅在能力协商通过后,由明确的用户手势触发。
190
+ if (hello.capabilities.taskReveal ?? false) {
191
+ await conn.sendRequest('task/reveal', { taskId: task.id })
192
+ }
183
193
  ```
184
194
 
195
+ `task/reveal` 请求桌面端在系统文件管理器中显示该 task 的输出。其严格载荷只接受
196
+ `taskId`,绝不接受任意本地路径。它会注册在 `Tools` 中以便发现 schema,但不会进入
197
+ `toAgentToolCatalog()`;打开文件管理器属于 UI 副作用,必须由用户发起。
198
+
185
199
  ### 解析页面(server → client)
186
200
 
187
201
  桌面端会先问某个 client 能否处理这个页面(`url/probe`),再请它抽取出可下载的资源
@@ -333,6 +347,7 @@ const tools = toAgentToolCatalog()
333
347
  | `task/get` | client → server | ✓ | 按 id 取单个 task。 |
334
348
  | `task/pause` · `task/resume` | client → server | ✓ | 暂停 / 恢复 task。 |
335
349
  | `task/remove` | client → server | ✓ | 移除 task,可选一并删除文件。 |
350
+ | `task/reveal` | client → server | | 在系统文件管理器中显示 task 输出;仅限用户手势。 |
336
351
  | `stats/get` | client → server | ✓ | 取聚合的全局统计(速度 + 计数)。 |
337
352
  | `engine/status` | client → server | ✓ | 取下载引擎的生命周期状态与 feature report。 |
338
353
  | `url/probe` | **server → client** | | 该 client 的 adapter 能否处理某页面? |
@@ -1,5 +1,5 @@
1
1
  import type { CancellationToken, MessageConnection, MessageReader, MessageWriter } from 'vscode-jsonrpc';
2
- import type { CancelRequestParams, DownloadAddParams, DownloadAddResult, DownloadCancelParams, DownloadCancelResult, DownloadSubmitParams, DownloadSubmitResult, EngineStatusParams, EngineStatusResult, InitializeParams, InitializeResult, PairRevokedParams, StatsGetParams, StatsResult, StatsUpdateParams, SystemPingParams, SystemPingResult, TaskCompletedParams, TaskErrorParams, TaskGetParams, TaskGetResult, TaskListParams, TaskListResult, TaskPauseParams, TaskPauseResult, TaskProgressParams, TaskRemoveParams, TaskRemoveResult, TaskResumeParams, TaskResumeResult, UrlProbeParams, UrlProbeResult, UrlResolveParams, UrlResolveResult } from './types.js';
2
+ import type { CancelRequestParams, DownloadAddParams, DownloadAddResult, DownloadCancelParams, DownloadCancelResult, DownloadSubmitParams, DownloadSubmitResult, EngineStatusParams, EngineStatusResult, InitializeParams, InitializeResult, PairRevokedParams, StatsGetParams, StatsResult, StatsUpdateParams, SystemPingParams, SystemPingResult, TaskCompletedParams, TaskErrorParams, TaskGetParams, TaskGetResult, TaskListParams, TaskListResult, TaskPauseParams, TaskPauseResult, TaskProgressParams, TaskRemoveParams, TaskRemoveResult, TaskResumeParams, TaskResumeResult, TaskRevealParams, TaskRevealResult, UrlProbeParams, UrlProbeResult, UrlResolveParams, UrlResolveResult } from './types.js';
3
3
  export interface MdxpRequestMap {
4
4
  'motrix/initialize': [InitializeParams, InitializeResult];
5
5
  'download/submit': [DownloadSubmitParams, DownloadSubmitResult];
@@ -13,6 +13,7 @@ export interface MdxpRequestMap {
13
13
  'task/pause': [TaskPauseParams, TaskPauseResult];
14
14
  'task/resume': [TaskResumeParams, TaskResumeResult];
15
15
  'task/remove': [TaskRemoveParams, TaskRemoveResult];
16
+ 'task/reveal': [TaskRevealParams, TaskRevealResult];
16
17
  'stats/get': [StatsGetParams, StatsResult];
17
18
  'engine/status': [EngineStatusParams, EngineStatusResult];
18
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAgHxD,MAAM,UAAU,oBAAoB,CAClC,MAAqB,EACrB,MAAqB;IAErB,MAAM,GAAG,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEnD,OAAO;QACL,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE;QAC1B,yEAAyE;QACzE,kEAAkE;QAClE,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;QACrC,8DAA8D;QAC9D,CAAC,KAAK,KAAK,SAAS;YAClB,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,MAAgB,EAAE,MAAM,CAAC;YAC3C,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,MAAgB,EAAE,MAAM,EAAE,KAAK,CAAC,CAAmB;QACzE,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YAC7B,wEAAwE;YACxE,0EAA0E;YAC1E,sEAAsE;YACtE,wEAAwE;YACxE,GAAG,CAAC,SAAS,CACX,MAAgB,EAChB,CAAC,CAAC,MAAe,EAAE,KAAwB,EAAE,EAAE,CAC7C,OAAO,CAAC,MAAe,EAAE,KAAK,CAAC,CAAU,CAC5C,CAAA;QACH,CAAC;QACD,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACjC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,GAAG,CAAC,gBAAgB,CAAC,IAAc,CAAC,CAAA;YACtC,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,gBAAgB,CAAC,IAAc,EAAE,MAAM,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;QACD,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,GAAG,CAAC,cAAc,CAAC,IAAc,EAAE,CAAC,MAAe,EAAE,EAAE;YACrD,qEAAqE;YACrE,yDAAyD;YACzD,OAAO,CAAC,MAAe,CAAC,CACzB,CAAA;QACH,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE;QAC5B,GAAG;KACJ,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAA;AAmHxD,MAAM,UAAU,oBAAoB,CAClC,MAAqB,EACrB,MAAqB;IAErB,MAAM,GAAG,GAAG,uBAAuB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAEnD,OAAO;QACL,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE;QAC1B,yEAAyE;QACzE,kEAAkE;QAClE,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE;QACrC,8DAA8D;QAC9D,CAAC,KAAK,KAAK,SAAS;YAClB,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,MAAgB,EAAE,MAAM,CAAC;YAC3C,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,MAAgB,EAAE,MAAM,EAAE,KAAK,CAAC,CAAmB;QACzE,SAAS,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;YAC7B,wEAAwE;YACxE,0EAA0E;YAC1E,sEAAsE;YACtE,wEAAwE;YACxE,GAAG,CAAC,SAAS,CACX,MAAgB,EAChB,CAAC,CAAC,MAAe,EAAE,KAAwB,EAAE,EAAE,CAC7C,OAAO,CAAC,MAAe,EAAE,KAAK,CAAC,CAAU,CAC5C,CAAA;QACH,CAAC;QACD,gBAAgB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACjC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,GAAG,CAAC,gBAAgB,CAAC,IAAc,CAAC,CAAA;YACtC,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,gBAAgB,CAAC,IAAc,EAAE,MAAM,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;QACD,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;YAChC,GAAG,CAAC,cAAc,CAAC,IAAc,EAAE,CAAC,MAAe,EAAE,EAAE;YACrD,qEAAqE;YACrE,yDAAyD;YACzD,OAAO,CAAC,MAAe,CAAC,CACzB,CAAA;QACH,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE;QAC5B,GAAG;KACJ,CAAA;AACH,CAAC"}
package/dist/methods.d.ts CHANGED
@@ -11,6 +11,7 @@ export declare const Methods: Readonly<{
11
11
  readonly TaskPause: "task/pause";
12
12
  readonly TaskResume: "task/resume";
13
13
  readonly TaskRemove: "task/remove";
14
+ readonly TaskReveal: "task/reveal";
14
15
  readonly StatsGet: "stats/get";
15
16
  readonly EngineStatus: "engine/status";
16
17
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"methods.d.ts","sourceRoot":"","sources":["../src/methods.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;EAgBT,CAAA;AAEX,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAA;AAK3D,eAAO,MAAM,aAAa;;;;;;;;EASf,CAAA;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAA"}
1
+ {"version":3,"file":"methods.d.ts","sourceRoot":"","sources":["../src/methods.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;EAiBT,CAAA;AAEX,MAAM,MAAM,MAAM,GAAG,CAAC,OAAO,OAAO,CAAC,CAAC,MAAM,OAAO,OAAO,CAAC,CAAA;AAK3D,eAAO,MAAM,aAAa;;;;;;;;EASf,CAAA;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAA"}
package/dist/methods.js CHANGED
@@ -13,6 +13,7 @@ export const Methods = Object.freeze({
13
13
  TaskPause: 'task/pause',
14
14
  TaskResume: 'task/resume',
15
15
  TaskRemove: 'task/remove',
16
+ TaskReveal: 'task/reveal',
16
17
  StatsGet: 'stats/get',
17
18
  EngineStatus: 'engine/status',
18
19
  });
@@ -1 +1 @@
1
- {"version":3,"file":"methods.js","sourceRoot":"","sources":["../src/methods.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;IACnC,gBAAgB,EAAE,mBAAmB;IACrC,cAAc,EAAE,iBAAiB;IACjC,cAAc,EAAE,iBAAiB;IACjC,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE,aAAa;IACzB,4BAA4B;IAC5B,WAAW,EAAE,cAAc;IAC3B,QAAQ,EAAE,WAAW;IACrB,OAAO,EAAE,UAAU;IACnB,SAAS,EAAE,YAAY;IACvB,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE,aAAa;IACzB,QAAQ,EAAE,WAAW;IACrB,YAAY,EAAE,eAAe;CACrB,CAAC,CAAA;AAIX,6DAA6D;AAC7D,yEAAyE;AACzE,mDAAmD;AACnD,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,iBAAiB,EAAE,oBAAoB;IACvC,YAAY,EAAE,iBAAiB;IAC/B,aAAa,EAAE,kBAAkB;IACjC,SAAS,EAAE,cAAc;IACzB,WAAW,EAAE,gBAAgB;IAC7B,aAAa,EAAE,iBAAiB;IAChC,4DAA4D;IAC5D,WAAW,EAAE,SAAS;CACd,CAAC,CAAA"}
1
+ {"version":3,"file":"methods.js","sourceRoot":"","sources":["../src/methods.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,CAAC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;IACnC,gBAAgB,EAAE,mBAAmB;IACrC,cAAc,EAAE,iBAAiB;IACjC,cAAc,EAAE,iBAAiB;IACjC,QAAQ,EAAE,WAAW;IACrB,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE,aAAa;IACzB,4BAA4B;IAC5B,WAAW,EAAE,cAAc;IAC3B,QAAQ,EAAE,WAAW;IACrB,OAAO,EAAE,UAAU;IACnB,SAAS,EAAE,YAAY;IACvB,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE,aAAa;IACzB,UAAU,EAAE,aAAa;IACzB,QAAQ,EAAE,WAAW;IACrB,YAAY,EAAE,eAAe;CACrB,CAAC,CAAA;AAIX,6DAA6D;AAC7D,yEAAyE;AACzE,mDAAmD;AACnD,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC;IACzC,iBAAiB,EAAE,oBAAoB;IACvC,YAAY,EAAE,iBAAiB;IAC/B,aAAa,EAAE,kBAAkB;IACjC,SAAS,EAAE,cAAc;IACzB,WAAW,EAAE,gBAAgB;IAC7B,aAAa,EAAE,iBAAiB;IAChC,4DAA4D;IAC5D,WAAW,EAAE,SAAS;CACd,CAAC,CAAA"}
@@ -4,6 +4,8 @@ import { z } from 'zod';
4
4
  * `download/submit`. Discriminated on `kind`; strict variants so an agent's
5
5
  * typo is loudly rejected rather than silently dropped. The host maps this onto
6
6
  * its native taskCreateRequest in Spec 4.
7
+ * `idempotencyKey` (8-128 chars) marks one logical add for host-side dedup so
8
+ * a client may safely retry a lost response — same contract as download/submit.
7
9
  */
8
10
  export declare const DownloadAddParamsSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
9
11
  kind: z.ZodLiteral<"url">;
@@ -16,17 +18,20 @@ export declare const DownloadAddParamsSchema: z.ZodDiscriminatedUnion<[z.ZodObje
16
18
  }, z.core.$strip>>>;
17
19
  connections: z.ZodOptional<z.ZodNumber>;
18
20
  proxy: z.ZodOptional<z.ZodString>;
21
+ idempotencyKey: z.ZodOptional<z.ZodString>;
19
22
  }, z.core.$strict>, z.ZodObject<{
20
23
  kind: z.ZodLiteral<"magnet">;
21
24
  saveDir: z.ZodString;
22
25
  uri: z.ZodString;
23
26
  selectedFiles: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
27
+ idempotencyKey: z.ZodOptional<z.ZodString>;
24
28
  }, z.core.$strict>, z.ZodObject<{
25
29
  kind: z.ZodLiteral<"torrent">;
26
30
  saveDir: z.ZodString;
27
31
  base64: z.ZodString;
28
32
  selectedFiles: z.ZodOptional<z.ZodArray<z.ZodNumber>>;
29
33
  displayName: z.ZodOptional<z.ZodString>;
34
+ idempotencyKey: z.ZodOptional<z.ZodString>;
30
35
  }, z.core.$strict>], "kind">;
31
36
  /** Result is the created task snapshot so callers render without polling. */
32
37
  export declare const DownloadAddResultSchema: z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"download-add.d.ts","sourceRoot":"","sources":["../../src/schemas/download-add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAmBvB;;;;;GAKG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;4BAuBlC,CAAA;AAEF,6EAA6E;AAC7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAiB,CAAA;AAErD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
1
+ {"version":3,"file":"download-add.d.ts","sourceRoot":"","sources":["../../src/schemas/download-add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAmBvB;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;4BA0BlC,CAAA;AAEF,6EAA6E;AAC7E,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAiB,CAAA;AAErD,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA;AACvE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
@@ -19,6 +19,8 @@ const safeDownloadUrl = z
19
19
  * `download/submit`. Discriminated on `kind`; strict variants so an agent's
20
20
  * typo is loudly rejected rather than silently dropped. The host maps this onto
21
21
  * its native taskCreateRequest in Spec 4.
22
+ * `idempotencyKey` (8-128 chars) marks one logical add for host-side dedup so
23
+ * a client may safely retry a lost response — same contract as download/submit.
22
24
  */
23
25
  export const DownloadAddParamsSchema = z.discriminatedUnion('kind', [
24
26
  z.strictObject({
@@ -29,12 +31,14 @@ export const DownloadAddParamsSchema = z.discriminatedUnion('kind', [
29
31
  headers: z.array(HttpHeaderSchema).optional(),
30
32
  connections: z.number().int().min(1).max(128).optional(),
31
33
  proxy: z.string().optional(),
34
+ idempotencyKey: z.string().min(8).max(128).optional(),
32
35
  }),
33
36
  z.strictObject({
34
37
  kind: z.literal('magnet'),
35
38
  saveDir: z.string().min(1),
36
39
  uri: z.string().startsWith('magnet:?'),
37
40
  selectedFiles: z.array(z.number().int().nonnegative()).optional(),
41
+ idempotencyKey: z.string().min(8).max(128).optional(),
38
42
  }),
39
43
  z.strictObject({
40
44
  kind: z.literal('torrent'),
@@ -42,6 +46,7 @@ export const DownloadAddParamsSchema = z.discriminatedUnion('kind', [
42
46
  base64: z.string().min(1),
43
47
  selectedFiles: z.array(z.number().int().nonnegative()).optional(),
44
48
  displayName: z.string().optional(),
49
+ idempotencyKey: z.string().min(8).max(128).optional(),
45
50
  }),
46
51
  ]);
47
52
  /** Result is the created task snapshot so callers render without polling. */
@@ -1 +1 @@
1
- {"version":3,"file":"download-add.js","sourceRoot":"","sources":["../../src/schemas/download-add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAE1C,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;AAE1E;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,4BAA4B,CAAA;AACtD,MAAM,eAAe,GAAG,CAAC;KACtB,MAAM,EAAE;KACR,GAAG,EAAE;KACL,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;IACxC,OAAO,EAAE,gEAAgE;CAC1E,CAAC,CAAA;AAEJ;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAClE,CAAC,CAAC,YAAY,CAAC;QACb,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QACtB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACrC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;QAC/B,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;QAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE;QACxD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KAC7B,CAAC;IACF,CAAC,CAAC,YAAY,CAAC;QACb,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC;QACzB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QACtC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE;KAClE,CAAC;IACF,CAAC,CAAC,YAAY,CAAC;QACb,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;QAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACzB,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,QAAQ,EAAE;QACjE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACnC,CAAC;CACH,CAAC,CAAA;AAEF,6EAA6E;AAC7E,MAAM,CAAC,MAAM,uBAAuB,GAAG,cAAc,CAAA"}
1
+ {"version":3,"file":"download-add.js","sourceRoot":"","sources":["../../src/schemas/download-add.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,7 @@ export declare const InitializeResultSchema: z.ZodObject<{
58
58
  }>>;
59
59
  progress: z.ZodBoolean;
60
60
  cancellation: z.ZodBoolean;
61
+ taskReveal: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
61
62
  }, z.core.$strip>;
62
63
  serverAdapters: z.ZodArray<z.ZodObject<{
63
64
  id: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../src/schemas/initialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAuDvB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKjC,CAAA;AAcF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;iBAUjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
1
+ {"version":3,"file":"initialize.d.ts","sourceRoot":"","sources":["../../src/schemas/initialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAuDvB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAKjC,CAAA;AAgBF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAUjC,CAAA;AAEF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
@@ -57,6 +57,8 @@ const ServerCapabilitiesSchema = z.object({
57
57
  selectionKinds: z.array(z.enum(['direct', 'hls', 'dash', 'mux'])),
58
58
  progress: z.boolean(),
59
59
  cancellation: z.boolean(),
60
+ /** Optional on the wire for protocol 1.0 compatibility; absent is false. */
61
+ taskReveal: z.boolean().optional().default(false),
60
62
  });
61
63
  export const InitializeResultSchema = z.object({
62
64
  protocolVersion: z.literal(PROTOCOL_VERSION),
@@ -1 +1 @@
1
- {"version":3,"file":"initialize.js","sourceRoot":"","sources":["../../src/schemas/initialize.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"initialize.js","sourceRoot":"","sources":["../../src/schemas/initialize.ts"],"names":[],"mappings":"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"}
@@ -188,6 +188,10 @@ export declare const TaskRemoveParamsSchema: z.ZodObject<{
188
188
  taskId: z.ZodString;
189
189
  deleteFiles: z.ZodOptional<z.ZodBoolean>;
190
190
  }, z.core.$strict>;
191
+ /** Ask the host to reveal a task's output in the platform file manager. */
192
+ export declare const TaskRevealParamsSchema: z.ZodObject<{
193
+ taskId: z.ZodString;
194
+ }, z.core.$strict>;
191
195
  export type MdxpTaskStatus = z.infer<typeof MdxpTaskStatusSchema>;
192
196
  export type MdxpTaskType = z.infer<typeof MdxpTaskTypeSchema>;
193
197
  export type MdxpTask = z.infer<typeof MdxpTaskSchema>;
@@ -202,4 +206,6 @@ export type TaskResumeParams = z.infer<typeof TaskResumeParamsSchema>;
202
206
  export type TaskResumeResult = OkResult;
203
207
  export type TaskRemoveParams = z.infer<typeof TaskRemoveParamsSchema>;
204
208
  export type TaskRemoveResult = OkResult;
209
+ export type TaskRevealParams = z.infer<typeof TaskRevealParamsSchema>;
210
+ export type TaskRevealResult = OkResult;
205
211
  //# sourceMappingURL=task.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/schemas/task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;EAS/B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;EAM7B,CAAA;AAEF,4EAA4E;AAC5E,eAAO,MAAM,YAAY;;;;;iBAKvB,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBzB,CAAA;AAEF,6DAA6D;AAC7D,eAAO,MAAM,cAAc;;iBAAoC,CAAA;AAG/D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;kBAI/B,CAAA;AACF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG/B,CAAA;AAGF,eAAO,MAAM,mBAAmB;;kBAE9B,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAE9B,CAAA;AAGF,eAAO,MAAM,qBAAqB;;kBAEhC,CAAA;AACF,eAAO,MAAM,sBAAsB;;kBAEjC,CAAA;AAGF,eAAO,MAAM,sBAAsB;;;kBAGjC,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAC7D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AACrD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AACrD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAA;AACtC,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAA;AACvC,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAA"}
1
+ {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../src/schemas/task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;EAS/B,CAAA;AAEF,eAAO,MAAM,kBAAkB;;;;;;EAM7B,CAAA;AAEF,4EAA4E;AAC5E,eAAO,MAAM,YAAY;;;;;iBAKvB,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAwBzB,CAAA;AAEF,6DAA6D;AAC7D,eAAO,MAAM,cAAc;;iBAAoC,CAAA;AAG/D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;kBAI/B,CAAA;AACF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG/B,CAAA;AAGF,eAAO,MAAM,mBAAmB;;kBAE9B,CAAA;AACF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAE9B,CAAA;AAGF,eAAO,MAAM,qBAAqB;;kBAEhC,CAAA;AACF,eAAO,MAAM,sBAAsB;;kBAEjC,CAAA;AAGF,eAAO,MAAM,sBAAsB;;;kBAGjC,CAAA;AAGF,2EAA2E;AAC3E,eAAO,MAAM,sBAAsB;;kBAEjC,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAC7D,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AACrD,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AACrD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA;AACjE,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAC/D,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACnE,MAAM,MAAM,eAAe,GAAG,QAAQ,CAAA;AACtC,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAA;AACvC,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAA;AACvC,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAA"}
@@ -91,4 +91,9 @@ export const TaskRemoveParamsSchema = z.strictObject({
91
91
  taskId: z.string().min(1),
92
92
  deleteFiles: z.boolean().optional(),
93
93
  });
94
+ // ─── task/reveal ──────────────────────────────────────────────
95
+ /** Ask the host to reveal a task's output in the platform file manager. */
96
+ export const TaskRevealParamsSchema = z.strictObject({
97
+ taskId: z.string().min(1),
98
+ });
94
99
  //# sourceMappingURL=task.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/schemas/task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/schemas/task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC;IACzC,QAAQ;IACR,mBAAmB;IACnB,aAAa;IACb,QAAQ;IACR,SAAS;IACT,YAAY;IACZ,WAAW;IACX,OAAO;CACR,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC;IACvC,MAAM;IACN,KAAK;IACL,IAAI;IACJ,QAAQ;IACR,UAAU;CACX,CAAC,CAAA;AAEF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;CAC9B,CAAC,CAAA;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,kBAAkB;IACxB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,oBAAoB;IAC5B;;uEAEmE;IACnE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,EAAE,EAAE,YAAY,CAAC,QAAQ,EAAE;IAC3B;;gFAE4E;IAC5E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE;CAChC,CAAC,CAAA;AAEF,6DAA6D;AAC7D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AAE/D,iEAAiE;AACjE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,YAAY,CAAC;IACjD,MAAM,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IACvC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC7C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE;CAClD,CAAC,CAAA;AACF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC;IAC9B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAA;AAEF,iEAAiE;AACjE,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,YAAY,CAAC;IAChD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAA;AACF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,IAAI,EAAE,cAAc,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAA;AAEF,iEAAiE;AACjE,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,YAAY,CAAC;IAClD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAA;AACF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,YAAY,CAAC;IACnD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAA;AAEF,iEAAiE;AACjE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,YAAY,CAAC;IACnD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAA;AAEF,iEAAiE;AACjE,2EAA2E;AAC3E,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,YAAY,CAAC;IACnD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,cAAc,CAAA;AAmCnD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAA;IAChC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAA;IAChC,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;CAC9B;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAGrD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAwFvD,CAAA;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACtC;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,IAAI,SAAS,EAAE,CAYhD"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,KAAK,MAAM,EAAW,MAAM,cAAc,CAAA;AAoCnD,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAA;IAChC,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC,OAAO,CAAA;IAChC,4EAA4E;IAC5E,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAA;CAC9B;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAGrD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CA+FvD,CAAA;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,+DAA+D;IAC/D,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACpC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACtC;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,IAAI,SAAS,EAAE,CAYhD"}
package/dist/tools.js CHANGED
@@ -6,7 +6,7 @@ import { EngineStatusParamsSchema, EngineStatusResultSchema, } from './schemas/e
6
6
  import { InitializeParamsSchema, InitializeResultSchema, } from './schemas/initialize.js';
7
7
  import { StatsGetParamsSchema, StatsResultSchema } from './schemas/stats.js';
8
8
  import { SystemPingParamsSchema, SystemPingResultSchema, } from './schemas/system.js';
9
- import { OkResultSchema, TaskGetParamsSchema, TaskGetResultSchema, TaskListParamsSchema, TaskListResultSchema, TaskPauseParamsSchema, TaskRemoveParamsSchema, TaskResumeParamsSchema, } from './schemas/task.js';
9
+ import { OkResultSchema, TaskGetParamsSchema, TaskGetResultSchema, TaskListParamsSchema, TaskListResultSchema, TaskPauseParamsSchema, TaskRemoveParamsSchema, TaskResumeParamsSchema, TaskRevealParamsSchema, } from './schemas/task.js';
10
10
  /**
11
11
  * Methods the SERVER initiates against the client — not agent-callable, so they
12
12
  * are absent from {@link Tools}. Colocated here so the registry's
@@ -95,6 +95,13 @@ export const Tools = {
95
95
  resultSchema: OkResultSchema,
96
96
  agentFacing: true,
97
97
  },
98
+ [Methods.TaskReveal]: {
99
+ method: Methods.TaskReveal,
100
+ description: "Reveal a task's output in the platform file manager.",
101
+ paramsSchema: TaskRevealParamsSchema,
102
+ resultSchema: OkResultSchema,
103
+ agentFacing: false,
104
+ },
98
105
  [Methods.StatsGet]: {
99
106
  method: Methods.StatsGet,
100
107
  description: 'Get aggregate global stats (speeds + task counts).',
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -7,6 +7,6 @@ export type { Cookie, Resource, } from './schemas/resource.js';
7
7
  export type { Selection } from './schemas/selection.js';
8
8
  export type { StatsGetParams, StatsResult, StatsUpdateParams, } from './schemas/stats.js';
9
9
  export type { SystemPingParams, SystemPingResult, } from './schemas/system.js';
10
- export type { MdxpTask, MdxpTaskStatus, MdxpTaskType, OkResult, TaskGetParams, TaskGetResult, TaskListParams, TaskListResult, TaskPauseParams, TaskPauseResult, TaskRemoveParams, TaskRemoveResult, TaskResumeParams, TaskResumeResult, } from './schemas/task.js';
10
+ export type { MdxpTask, MdxpTaskStatus, MdxpTaskType, OkResult, TaskGetParams, TaskGetResult, TaskListParams, TaskListResult, TaskPauseParams, TaskPauseResult, TaskRemoveParams, TaskRemoveResult, TaskResumeParams, TaskResumeResult, TaskRevealParams, TaskRevealResult, } from './schemas/task.js';
11
11
  export type { UrlProbeParams, UrlProbeResult, UrlResolveParams, UrlResolveResult, } from './schemas/url.js';
12
12
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EACV,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,2BAA2B,CAAA;AAClC,YAAY,EACV,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,yBAAyB,CAAA;AAChC,YAAY,EACV,MAAM,EACN,QAAQ,GACT,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,YAAY,EACV,cAAc,EACd,WAAW,EACX,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EACV,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,2BAA2B,CAAA;AAClC,YAAY,EACV,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,kBAAkB,GACnB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,yBAAyB,CAAA;AAChC,YAAY,EACV,MAAM,EACN,QAAQ,GACT,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AACvD,YAAY,EACV,cAAc,EACd,WAAW,EACX,iBAAiB,GAClB,MAAM,oBAAoB,CAAA;AAC3B,YAAY,EACV,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EACV,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,aAAa,EACb,cAAc,EACd,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,mBAAmB,CAAA;AAC1B,YAAY,EACV,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,kBAAkB,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@motrix/mdxp",
3
- "version": "0.4.0",
3
+ "version": "0.6.0",
4
4
  "description": "Motrix Download eXchange Protocol — JSON-RPC 2.0 wire types and connection helpers",
5
5
  "license": "MIT",
6
6
  "author": "Motrix",
@@ -49,7 +49,7 @@
49
49
  "README.md",
50
50
  "README.zh-CN.md"
51
51
  ],
52
- "packageManager": "pnpm@11.13.0",
52
+ "packageManager": "pnpm@11.22.0",
53
53
  "publishConfig": {
54
54
  "access": "public"
55
55
  },
package/src/connection.ts CHANGED
@@ -36,6 +36,8 @@ import type {
36
36
  TaskRemoveResult,
37
37
  TaskResumeParams,
38
38
  TaskResumeResult,
39
+ TaskRevealParams,
40
+ TaskRevealResult,
39
41
  UrlProbeParams,
40
42
  UrlProbeResult,
41
43
  UrlResolveParams,
@@ -57,6 +59,7 @@ export interface MdxpRequestMap {
57
59
  'task/pause': [TaskPauseParams, TaskPauseResult]
58
60
  'task/resume': [TaskResumeParams, TaskResumeResult]
59
61
  'task/remove': [TaskRemoveParams, TaskRemoveResult]
62
+ 'task/reveal': [TaskRevealParams, TaskRevealResult]
60
63
  'stats/get': [StatsGetParams, StatsResult]
61
64
  'engine/status': [EngineStatusParams, EngineStatusResult]
62
65
  }
package/src/methods.ts CHANGED
@@ -13,6 +13,7 @@ export const Methods = Object.freeze({
13
13
  TaskPause: 'task/pause',
14
14
  TaskResume: 'task/resume',
15
15
  TaskRemove: 'task/remove',
16
+ TaskReveal: 'task/reveal',
16
17
  StatsGet: 'stats/get',
17
18
  EngineStatus: 'engine/status',
18
19
  } as const)
@@ -22,6 +22,8 @@ const safeDownloadUrl = z
22
22
  * `download/submit`. Discriminated on `kind`; strict variants so an agent's
23
23
  * typo is loudly rejected rather than silently dropped. The host maps this onto
24
24
  * its native taskCreateRequest in Spec 4.
25
+ * `idempotencyKey` (8-128 chars) marks one logical add for host-side dedup so
26
+ * a client may safely retry a lost response — same contract as download/submit.
25
27
  */
26
28
  export const DownloadAddParamsSchema = z.discriminatedUnion('kind', [
27
29
  z.strictObject({
@@ -32,12 +34,14 @@ export const DownloadAddParamsSchema = z.discriminatedUnion('kind', [
32
34
  headers: z.array(HttpHeaderSchema).optional(),
33
35
  connections: z.number().int().min(1).max(128).optional(),
34
36
  proxy: z.string().optional(),
37
+ idempotencyKey: z.string().min(8).max(128).optional(),
35
38
  }),
36
39
  z.strictObject({
37
40
  kind: z.literal('magnet'),
38
41
  saveDir: z.string().min(1),
39
42
  uri: z.string().startsWith('magnet:?'),
40
43
  selectedFiles: z.array(z.number().int().nonnegative()).optional(),
44
+ idempotencyKey: z.string().min(8).max(128).optional(),
41
45
  }),
42
46
  z.strictObject({
43
47
  kind: z.literal('torrent'),
@@ -45,6 +49,7 @@ export const DownloadAddParamsSchema = z.discriminatedUnion('kind', [
45
49
  base64: z.string().min(1),
46
50
  selectedFiles: z.array(z.number().int().nonnegative()).optional(),
47
51
  displayName: z.string().optional(),
52
+ idempotencyKey: z.string().min(8).max(128).optional(),
48
53
  }),
49
54
  ])
50
55
 
@@ -70,6 +70,8 @@ const ServerCapabilitiesSchema = z.object({
70
70
  selectionKinds: z.array(z.enum(['direct', 'hls', 'dash', 'mux'])),
71
71
  progress: z.boolean(),
72
72
  cancellation: z.boolean(),
73
+ /** Optional on the wire for protocol 1.0 compatibility; absent is false. */
74
+ taskReveal: z.boolean().optional().default(false),
73
75
  })
74
76
 
75
77
  export const InitializeResultSchema = z.object({
@@ -101,6 +101,12 @@ export const TaskRemoveParamsSchema = z.strictObject({
101
101
  deleteFiles: z.boolean().optional(),
102
102
  })
103
103
 
104
+ // ─── task/reveal ──────────────────────────────────────────────
105
+ /** Ask the host to reveal a task's output in the platform file manager. */
106
+ export const TaskRevealParamsSchema = z.strictObject({
107
+ taskId: z.string().min(1),
108
+ })
109
+
104
110
  export type MdxpTaskStatus = z.infer<typeof MdxpTaskStatusSchema>
105
111
  export type MdxpTaskType = z.infer<typeof MdxpTaskTypeSchema>
106
112
  export type MdxpTask = z.infer<typeof MdxpTaskSchema>
@@ -115,3 +121,5 @@ export type TaskResumeParams = z.infer<typeof TaskResumeParamsSchema>
115
121
  export type TaskResumeResult = OkResult
116
122
  export type TaskRemoveParams = z.infer<typeof TaskRemoveParamsSchema>
117
123
  export type TaskRemoveResult = OkResult
124
+ export type TaskRevealParams = z.infer<typeof TaskRevealParamsSchema>
125
+ export type TaskRevealResult = OkResult
package/src/tools.ts CHANGED
@@ -32,6 +32,7 @@ import {
32
32
  TaskPauseParamsSchema,
33
33
  TaskRemoveParamsSchema,
34
34
  TaskResumeParamsSchema,
35
+ TaskRevealParamsSchema,
35
36
  } from './schemas/task.js'
36
37
 
37
38
  export interface MdxpToolDef {
@@ -135,6 +136,13 @@ export const Tools: Readonly<Record<string, MdxpToolDef>> = {
135
136
  resultSchema: OkResultSchema,
136
137
  agentFacing: true,
137
138
  },
139
+ [Methods.TaskReveal]: {
140
+ method: Methods.TaskReveal,
141
+ description: "Reveal a task's output in the platform file manager.",
142
+ paramsSchema: TaskRevealParamsSchema,
143
+ resultSchema: OkResultSchema,
144
+ agentFacing: false,
145
+ },
138
146
  [Methods.StatsGet]: {
139
147
  method: Methods.StatsGet,
140
148
  description: 'Get aggregate global stats (speeds + task counts).',
package/src/types.ts CHANGED
@@ -54,6 +54,8 @@ export type {
54
54
  TaskRemoveResult,
55
55
  TaskResumeParams,
56
56
  TaskResumeResult,
57
+ TaskRevealParams,
58
+ TaskRevealResult,
57
59
  } from './schemas/task.js'
58
60
  export type {
59
61
  UrlProbeParams,