@ai-matrx/desktop-protocol 0.21.25 → 0.21.27
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/CHANGELOG.md +12 -0
- package/dist/client.cjs +100 -1
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +2 -2
- package/dist/client.d.ts +2 -2
- package/dist/client.js +100 -1
- package/dist/client.js.map +1 -1
- package/dist/index.cjs +183 -12
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +145 -8
- package/dist/index.d.ts +145 -8
- package/dist/index.js +183 -12
- package/dist/index.js.map +1 -1
- package/dist/{models-CXjW101n.d.cts → models-BJsUM5sC.d.cts} +841 -14
- package/dist/{models-CXjW101n.d.ts → models-BJsUM5sC.d.ts} +841 -14
- package/dist/react.d.cts +239 -2
- package/dist/react.d.ts +239 -2
- package/generated/desktop-protocol.schema.json +576 -1
- package/package.json +2 -2
package/dist/index.cjs
CHANGED
|
@@ -253,10 +253,14 @@ __export(src_exports, {
|
|
|
253
253
|
FrameHeader: () => FrameHeader,
|
|
254
254
|
FsChange: () => FsChange,
|
|
255
255
|
FsChangedEvent: () => FsChangedEvent,
|
|
256
|
+
FsCopyParams: () => FsCopyParams,
|
|
257
|
+
FsCopyResult: () => FsCopyResult,
|
|
256
258
|
FsDeleteParams: () => FsDeleteParams,
|
|
257
259
|
FsDeleteResult: () => FsDeleteResult,
|
|
258
260
|
FsEncoding: () => FsEncoding,
|
|
259
261
|
FsEntry: () => FsEntry,
|
|
262
|
+
FsInfoParams: () => FsInfoParams,
|
|
263
|
+
FsInfoResult: () => FsInfoResult,
|
|
260
264
|
FsKind: () => FsKind,
|
|
261
265
|
FsListParams: () => FsListParams,
|
|
262
266
|
FsListResult: () => FsListResult,
|
|
@@ -274,6 +278,8 @@ __export(src_exports, {
|
|
|
274
278
|
FsReadStreamResult: () => FsReadStreamResult,
|
|
275
279
|
FsSearchContentParams: () => FsSearchContentParams,
|
|
276
280
|
FsSearchContentResult: () => FsSearchContentResult,
|
|
281
|
+
FsSearchIndexParams: () => FsSearchIndexParams,
|
|
282
|
+
FsSearchIndexResult: () => FsSearchIndexResult,
|
|
277
283
|
FsSearchPathsParams: () => FsSearchPathsParams,
|
|
278
284
|
FsSearchPathsResult: () => FsSearchPathsResult,
|
|
279
285
|
FsStatParams: () => FsStatParams,
|
|
@@ -325,6 +331,8 @@ __export(src_exports, {
|
|
|
325
331
|
LEGACY_ACTIONS: () => LEGACY_ACTIONS,
|
|
326
332
|
LEGACY_DISPATCHERS: () => LEGACY_DISPATCHERS,
|
|
327
333
|
Limits: () => Limits,
|
|
334
|
+
LlmRunning: () => LlmRunning,
|
|
335
|
+
LlmServerState: () => LlmServerState,
|
|
328
336
|
MATRX_EXTENSION_IDS: () => MATRX_EXTENSION_IDS,
|
|
329
337
|
MlInstallPhase: () => MlInstallPhase,
|
|
330
338
|
MlInstallProgress: () => MlInstallProgress,
|
|
@@ -336,6 +344,14 @@ __export(src_exports, {
|
|
|
336
344
|
MlStatusResult: () => MlStatusResult,
|
|
337
345
|
ModelsInstallParams: () => ModelsInstallParams,
|
|
338
346
|
ModelsInstallResult: () => ModelsInstallResult,
|
|
347
|
+
ModelsLlmInstallParams: () => ModelsLlmInstallParams,
|
|
348
|
+
ModelsLlmInstallResult: () => ModelsLlmInstallResult,
|
|
349
|
+
ModelsLlmStartParams: () => ModelsLlmStartParams,
|
|
350
|
+
ModelsLlmStartResult: () => ModelsLlmStartResult,
|
|
351
|
+
ModelsLlmStatusParams: () => ModelsLlmStatusParams,
|
|
352
|
+
ModelsLlmStatusResult: () => ModelsLlmStatusResult,
|
|
353
|
+
ModelsLlmStopParams: () => ModelsLlmStopParams,
|
|
354
|
+
ModelsLlmStopResult: () => ModelsLlmStopResult,
|
|
339
355
|
ModelsProgressEvent: () => ModelsProgressEvent,
|
|
340
356
|
ModelsStatusParams: () => ModelsStatusParams,
|
|
341
357
|
ModelsStatusResult: () => ModelsStatusResult,
|
|
@@ -370,6 +386,7 @@ __export(src_exports, {
|
|
|
370
386
|
ProcSort: () => ProcSort,
|
|
371
387
|
ProjectMoveChat: () => ProjectMoveChat,
|
|
372
388
|
ProjectMoveGroup: () => ProjectMoveGroup,
|
|
389
|
+
ProjectMovePin: () => ProjectMovePin,
|
|
373
390
|
ProjectMoveSkip: () => ProjectMoveSkip,
|
|
374
391
|
ProtocolErrorBody: () => ProtocolErrorBody,
|
|
375
392
|
ProtocolVersion: () => ProtocolVersion,
|
|
@@ -487,6 +504,8 @@ __export(src_exports, {
|
|
|
487
504
|
TOOL_GROUPS: () => TOOL_GROUPS,
|
|
488
505
|
TOOL_LEVELS: () => TOOL_LEVELS,
|
|
489
506
|
TOOL_PLATFORMS: () => TOOL_PLATFORMS,
|
|
507
|
+
TextModelId: () => TextModelId,
|
|
508
|
+
TextModelInfo: () => TextModelInfo,
|
|
490
509
|
TitleCopies: () => TitleCopies,
|
|
491
510
|
TitleMismatch: () => TitleMismatch,
|
|
492
511
|
ToolLevel: () => ToolLevel,
|
|
@@ -547,9 +566,12 @@ __export(src_exports, {
|
|
|
547
566
|
negotiate: () => negotiate,
|
|
548
567
|
nonNegInt: () => nonNegInt,
|
|
549
568
|
readCid: () => readCid,
|
|
569
|
+
refusedOps: () => refusedOps,
|
|
550
570
|
renderToolStatusMarkdown: () => renderToolStatusMarkdown,
|
|
571
|
+
sharedOpsBlocking: () => sharedOpsBlocking,
|
|
551
572
|
stampCid: () => stampCid,
|
|
552
573
|
statusForPeer: () => statusForPeer,
|
|
574
|
+
toolsSending: () => toolsSending,
|
|
553
575
|
u32: () => u32,
|
|
554
576
|
versionSubprotocol: () => versionSubprotocol
|
|
555
577
|
});
|
|
@@ -559,7 +581,7 @@ module.exports = __toCommonJS(src_exports);
|
|
|
559
581
|
var import_zod = require("zod");
|
|
560
582
|
var import_uuid = require("@ai-matrx/kit/uuid");
|
|
561
583
|
var PROTOCOL_MAJOR = 1;
|
|
562
|
-
var PROTOCOL_MINOR =
|
|
584
|
+
var PROTOCOL_MINOR = 32;
|
|
563
585
|
var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
|
|
564
586
|
var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
|
|
565
587
|
var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
|
|
@@ -1078,6 +1100,8 @@ var FsMkdirParams = import_zod6.z.strictObject({ path: AbsPath, parents: import_
|
|
|
1078
1100
|
var FsMkdirResult = import_zod6.z.strictObject({ path: AbsPath, created: import_zod6.z.boolean() });
|
|
1079
1101
|
var FsMoveParams = import_zod6.z.strictObject({ from_path: AbsPath, to_path: AbsPath, overwrite: import_zod6.z.boolean().default(false) });
|
|
1080
1102
|
var FsMoveResult = import_zod6.z.strictObject({ from_path: AbsPath, to_path: AbsPath });
|
|
1103
|
+
var FsCopyParams = import_zod6.z.strictObject({ from_path: AbsPath, to_path: AbsPath, overwrite: import_zod6.z.boolean().default(false) });
|
|
1104
|
+
var FsCopyResult = import_zod6.z.strictObject({ from_path: AbsPath, to_path: AbsPath });
|
|
1081
1105
|
var FsDeleteParams = import_zod6.z.strictObject({
|
|
1082
1106
|
path: AbsPath,
|
|
1083
1107
|
recursive: import_zod6.z.boolean().default(false),
|
|
@@ -1146,6 +1170,36 @@ var FsSearchContentResult = import_zod6.z.strictObject({
|
|
|
1146
1170
|
})
|
|
1147
1171
|
)
|
|
1148
1172
|
});
|
|
1173
|
+
var FsSearchIndexParams = import_zod6.z.strictObject({
|
|
1174
|
+
query: import_zod6.z.string().min(1).max(256),
|
|
1175
|
+
/** Only under this folder; absent: the whole computer (the walk: the home folder). */
|
|
1176
|
+
scope: AbsPath.optional(),
|
|
1177
|
+
max_results: import_zod6.z.int().min(1).max(1e3).default(200)
|
|
1178
|
+
});
|
|
1179
|
+
var FsSearchIndexResult = import_zod6.z.strictObject({
|
|
1180
|
+
entries: import_zod6.z.array(FsEntry).max(1e3),
|
|
1181
|
+
truncated: import_zod6.z.boolean(),
|
|
1182
|
+
source: import_zod6.z.enum(["index", "walk"])
|
|
1183
|
+
});
|
|
1184
|
+
var FsInfoParams = import_zod6.z.strictObject({ path: AbsPath });
|
|
1185
|
+
var FsInfoResult = import_zod6.z.strictObject({
|
|
1186
|
+
entry: FsEntry,
|
|
1187
|
+
created: import_zod6.z.number().min(0).nullable(),
|
|
1188
|
+
// seconds, float
|
|
1189
|
+
owner: import_zod6.z.string().max(256).nullable(),
|
|
1190
|
+
group: import_zod6.z.string().max(256).nullable(),
|
|
1191
|
+
/** A file's logical size, or a folder's whole tree (null when the walk was cut short). */
|
|
1192
|
+
total_size: nonNegInt.nullable(),
|
|
1193
|
+
/** Bytes the OS uses for it on disk (blocks), same bound as total_size. */
|
|
1194
|
+
size_on_disk: nonNegInt.nullable(),
|
|
1195
|
+
/** A folder's own children (not its tree); null for a file. */
|
|
1196
|
+
items: nonNegInt.nullable(),
|
|
1197
|
+
hidden: import_zod6.z.boolean(),
|
|
1198
|
+
/** Finder's Locked (macOS uchg); null where the OS has no such flag. */
|
|
1199
|
+
locked: import_zod6.z.boolean().nullable(),
|
|
1200
|
+
/** The volume holding it refuses writes (a disk image, a read-only share). */
|
|
1201
|
+
read_only: import_zod6.z.boolean()
|
|
1202
|
+
});
|
|
1149
1203
|
var FsChange = import_zod6.z.strictObject({
|
|
1150
1204
|
type: import_zod6.z.enum(["created", "modified", "deleted", "moved"]),
|
|
1151
1205
|
path: AbsPath,
|
|
@@ -1366,6 +1420,49 @@ var MlProgress = import_zod10.z.strictObject({
|
|
|
1366
1420
|
/** The segment just transcribed (transcribe only): text appears as it is recognised. */
|
|
1367
1421
|
segment: TranscriptSegment.nullable()
|
|
1368
1422
|
});
|
|
1423
|
+
var TextModelId = import_zod10.z.enum([
|
|
1424
|
+
"smollm2-135m",
|
|
1425
|
+
"llama-3.2-3b",
|
|
1426
|
+
"phi-4-mini",
|
|
1427
|
+
"gemma-3-4b",
|
|
1428
|
+
"llama-3.1-8b",
|
|
1429
|
+
"qwen-2.5-7b",
|
|
1430
|
+
"mistral-small-3.1",
|
|
1431
|
+
"gpt-oss-20b",
|
|
1432
|
+
"qwen-2.5-coder-7b",
|
|
1433
|
+
"qwen-2.5-coder-14b"
|
|
1434
|
+
]);
|
|
1435
|
+
var TextModelInfo = import_zod10.z.strictObject({
|
|
1436
|
+
id: TextModelId,
|
|
1437
|
+
/** Download size of the weights. */
|
|
1438
|
+
size_bytes: nonNegInt,
|
|
1439
|
+
installed: import_zod10.z.boolean()
|
|
1440
|
+
});
|
|
1441
|
+
var LlmServerState = import_zod10.z.enum(["stopped", "starting", "running", "failed"]);
|
|
1442
|
+
var LlmRunning = import_zod10.z.strictObject({ id: TextModelId, port: import_zod10.z.int().min(1024).max(65535) });
|
|
1443
|
+
var ModelsLlmStatusParams = import_zod10.z.strictObject({});
|
|
1444
|
+
var ModelsLlmStatusResult = import_zod10.z.strictObject({
|
|
1445
|
+
state: LlmServerState,
|
|
1446
|
+
/** Every model in the catalog, with whether its weights are on this computer. */
|
|
1447
|
+
models: import_zod10.z.array(TextModelInfo).max(64),
|
|
1448
|
+
running: LlmRunning.nullable(),
|
|
1449
|
+
/** The model being loaded while `state` is "starting". */
|
|
1450
|
+
starting: TextModelId.nullable(),
|
|
1451
|
+
/** Non-null while the server program or a model's weights are being downloaded. */
|
|
1452
|
+
install: MlInstallProgress.nullable(),
|
|
1453
|
+
/** Why the last start or download failed, one human line; null otherwise. */
|
|
1454
|
+
error: import_zod10.z.string().max(300).nullable()
|
|
1455
|
+
});
|
|
1456
|
+
var ModelsLlmInstallParams = import_zod10.z.strictObject({ model: TextModelId });
|
|
1457
|
+
var ModelsLlmInstallResult = import_zod10.z.strictObject({ model: TextModelId, elapsed_ms: nonNegInt });
|
|
1458
|
+
var ModelsLlmStartParams = import_zod10.z.strictObject({
|
|
1459
|
+
model: TextModelId,
|
|
1460
|
+
/** Tokens of context; the service picks a size that fits this computer when omitted. */
|
|
1461
|
+
context_length: import_zod10.z.int().min(512).max(131072).optional()
|
|
1462
|
+
});
|
|
1463
|
+
var ModelsLlmStartResult = import_zod10.z.strictObject({ running: LlmRunning, elapsed_ms: nonNegInt });
|
|
1464
|
+
var ModelsLlmStopParams = import_zod10.z.strictObject({});
|
|
1465
|
+
var ModelsLlmStopResult = import_zod10.z.strictObject({ stopped: import_zod10.z.boolean() });
|
|
1369
1466
|
var MlServiceState = import_zod10.z.enum(["starting", "ready", "restarting", "failed", "stopped"]);
|
|
1370
1467
|
var MlServiceStatus = import_zod10.z.strictObject({
|
|
1371
1468
|
state: MlServiceState,
|
|
@@ -1847,6 +1944,19 @@ var ProjectMoveGroup = import_zod14.z.strictObject({
|
|
|
1847
1944
|
/** A group of that name was already there (reused, never doubled). */
|
|
1848
1945
|
group_exists: import_zod14.z.boolean().optional()
|
|
1849
1946
|
});
|
|
1947
|
+
var ProjectMovePin = import_zod14.z.strictObject({
|
|
1948
|
+
ok: import_zod14.z.boolean(),
|
|
1949
|
+
/** "now" = written into the closed window; "next_close" = queued until that window closes. */
|
|
1950
|
+
when: import_zod14.z.enum(["now", "next_close"]),
|
|
1951
|
+
/** Pinned by this call (dry run: would be). */
|
|
1952
|
+
pinned: nonNegInt,
|
|
1953
|
+
/** Already pinned there. */
|
|
1954
|
+
already: nonNegInt,
|
|
1955
|
+
/** Waiting for the window to close (dry run: would wait). */
|
|
1956
|
+
queued: nonNegInt,
|
|
1957
|
+
/** Why not pinned (ok false), or why queued. */
|
|
1958
|
+
reason: import_zod14.z.string().max(400).optional()
|
|
1959
|
+
});
|
|
1850
1960
|
var AppsProjectsToWindowParams = import_zod14.z.strictObject({
|
|
1851
1961
|
app_key: AppKey,
|
|
1852
1962
|
project_id: ChatProjectId,
|
|
@@ -1855,6 +1965,8 @@ var AppsProjectsToWindowParams = import_zod14.z.strictObject({
|
|
|
1855
1965
|
take_off: import_zod14.z.boolean().default(false),
|
|
1856
1966
|
/** Also group them under the project's name in that window's sidebar (closed windows only). */
|
|
1857
1967
|
group: import_zod14.z.boolean().default(false),
|
|
1968
|
+
/** 1.32: also pin them in that window (now if closed, else when it next closes). */
|
|
1969
|
+
pin: import_zod14.z.boolean().optional(),
|
|
1858
1970
|
dry_run: import_zod14.z.boolean().default(false)
|
|
1859
1971
|
});
|
|
1860
1972
|
var AppsProjectsToWindowResult = import_zod14.z.strictObject({
|
|
@@ -1868,6 +1980,8 @@ var AppsProjectsToWindowResult = import_zod14.z.strictObject({
|
|
|
1868
1980
|
/** Chats of the project from other apps (no windows to place into), left as they are. */
|
|
1869
1981
|
other_apps: nonNegInt,
|
|
1870
1982
|
group: ProjectMoveGroup.nullable(),
|
|
1983
|
+
/** 1.32: the pin in the target window (absent: not asked). */
|
|
1984
|
+
pin: ProjectMovePin.optional(),
|
|
1871
1985
|
message: import_zod14.z.string().max(400)
|
|
1872
1986
|
});
|
|
1873
1987
|
var ColdChat = import_zod14.z.strictObject({
|
|
@@ -3248,6 +3362,9 @@ var OPS = {
|
|
|
3248
3362
|
"fs.write": { params: FsWriteParams, result: FsWriteResult, kind: "unary", since: "1.0", errors: [...FS_ERR, "CONFLICT", "PAYLOAD_TOO_LARGE"] },
|
|
3249
3363
|
"fs.mkdir": { params: FsMkdirParams, result: FsMkdirResult, kind: "unary", since: "1.0", errors: [...FS_ERR, "CONFLICT"] },
|
|
3250
3364
|
"fs.move": { params: FsMoveParams, result: FsMoveResult, kind: "unary", since: "1.0", errors: [...FS_ERR, "CONFLICT"] },
|
|
3365
|
+
"fs.copy": { params: FsCopyParams, result: FsCopyResult, kind: "unary", since: "1.30", errors: [...FS_ERR, "CONFLICT"] },
|
|
3366
|
+
"fs.info": { params: FsInfoParams, result: FsInfoResult, kind: "unary", since: "1.30", errors: FS_ERR },
|
|
3367
|
+
"fs.search_index": { params: FsSearchIndexParams, result: FsSearchIndexResult, kind: "unary", since: "1.30", errors: [...FS_ERR, "TIMEOUT"] },
|
|
3251
3368
|
"fs.delete": { params: FsDeleteParams, result: FsDeleteResult, kind: "unary", since: "1.0", errors: FS_ERR },
|
|
3252
3369
|
"fs.watch": { params: FsWatchParams, result: FsWatchResult, kind: "resource", since: "1.0", errors: [...FS_ERR, "RATE_LIMITED"] },
|
|
3253
3370
|
"fs.patch": { params: FsPatchParams, result: FsPatchResult, kind: "unary", since: "1.0", errors: [...FS_ERR, "CONFLICT"] },
|
|
@@ -3268,6 +3385,10 @@ var OPS = {
|
|
|
3268
3385
|
"models.status": { params: ModelsStatusParams, result: ModelsStatusResult, kind: "unary", since: "1.2", errors: ["INTERNAL"] },
|
|
3269
3386
|
"models.install": { params: ModelsInstallParams, result: ModelsInstallResult, kind: "unary", since: "1.2", errors: ["RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "INTERNAL"] },
|
|
3270
3387
|
"models.transcribe": { params: ModelsTranscribeParams, result: ModelsTranscribeResult, kind: "unary", since: "1.2", errors: ["NOT_FOUND", "INVALID_PARAMS", "PERMISSION_DENIED_OS", "RESOURCE_BUSY", "RESOURCE_GONE", "CANCELLED", "PAYLOAD_TOO_LARGE", "INTERNAL"] },
|
|
3388
|
+
"models.llm.status": { params: ModelsLlmStatusParams, result: ModelsLlmStatusResult, kind: "unary", since: "1.31", errors: ["INTERNAL"] },
|
|
3389
|
+
"models.llm.install": { params: ModelsLlmInstallParams, result: ModelsLlmInstallResult, kind: "unary", since: "1.31", errors: ["RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
3390
|
+
"models.llm.start": { params: ModelsLlmStartParams, result: ModelsLlmStartResult, kind: "unary", since: "1.31", errors: ["NOT_FOUND", "RESOURCE_BUSY", "RESOURCE_GONE", "TIMEOUT", "CANCELLED", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
3391
|
+
"models.llm.stop": { params: ModelsLlmStopParams, result: ModelsLlmStopResult, kind: "unary", since: "1.31", errors: ["INTERNAL"] },
|
|
3271
3392
|
// Desktop apps and their profiles (SPEC §6 apps); profiles are rows in users.desktop_app_profile.
|
|
3272
3393
|
"apps.list": { params: AppsListParams, result: AppsListResult, kind: "unary", since: "1.2", errors: ["INTERNAL"] },
|
|
3273
3394
|
"apps.profiles.list": { params: AppsProfilesListParams, result: AppsProfilesListResult, kind: "unary", since: "1.2", errors: ["NOT_FOUND", "INVALID_PARAMS", "INTERNAL"] },
|
|
@@ -3418,7 +3539,11 @@ var SERVICES = {
|
|
|
3418
3539
|
ops: {
|
|
3419
3540
|
"ml.status": { params: MlStatusParams, result: MlStatusResult },
|
|
3420
3541
|
"ml.install": { params: ModelsInstallParams, result: ModelsInstallResult },
|
|
3421
|
-
"ml.transcribe": { params: ModelsTranscribeParams, result: ModelsTranscribeResult }
|
|
3542
|
+
"ml.transcribe": { params: ModelsTranscribeParams, result: ModelsTranscribeResult },
|
|
3543
|
+
"ml.llm_status": { params: ModelsLlmStatusParams, result: ModelsLlmStatusResult },
|
|
3544
|
+
"ml.llm_install": { params: ModelsLlmInstallParams, result: ModelsLlmInstallResult },
|
|
3545
|
+
"ml.llm_start": { params: ModelsLlmStartParams, result: ModelsLlmStartResult },
|
|
3546
|
+
"ml.llm_stop": { params: ModelsLlmStopParams, result: ModelsLlmStopResult }
|
|
3422
3547
|
}
|
|
3423
3548
|
},
|
|
3424
3549
|
coding: {
|
|
@@ -3488,6 +3613,12 @@ var NAMED_SCHEMAS = {
|
|
|
3488
3613
|
FsMkdirResult,
|
|
3489
3614
|
FsMoveParams,
|
|
3490
3615
|
FsMoveResult,
|
|
3616
|
+
FsCopyParams,
|
|
3617
|
+
FsCopyResult,
|
|
3618
|
+
FsInfoParams,
|
|
3619
|
+
FsInfoResult,
|
|
3620
|
+
FsSearchIndexParams,
|
|
3621
|
+
FsSearchIndexResult,
|
|
3491
3622
|
FsDeleteParams,
|
|
3492
3623
|
FsDeleteResult,
|
|
3493
3624
|
FsWatchParams,
|
|
@@ -3546,6 +3677,18 @@ var NAMED_SCHEMAS = {
|
|
|
3546
3677
|
ModelsStatusParams,
|
|
3547
3678
|
ModelsStatusResult,
|
|
3548
3679
|
ModelsProgressEvent,
|
|
3680
|
+
TextModelId,
|
|
3681
|
+
TextModelInfo,
|
|
3682
|
+
LlmServerState,
|
|
3683
|
+
LlmRunning,
|
|
3684
|
+
ModelsLlmStatusParams,
|
|
3685
|
+
ModelsLlmStatusResult,
|
|
3686
|
+
ModelsLlmInstallParams,
|
|
3687
|
+
ModelsLlmInstallResult,
|
|
3688
|
+
ModelsLlmStartParams,
|
|
3689
|
+
ModelsLlmStartResult,
|
|
3690
|
+
ModelsLlmStopParams,
|
|
3691
|
+
ModelsLlmStopResult,
|
|
3549
3692
|
CodingServiceCredentials,
|
|
3550
3693
|
CodingHistoryBlocked,
|
|
3551
3694
|
CodingHistoryFailure,
|
|
@@ -3785,6 +3928,7 @@ var NAMED_SCHEMAS = {
|
|
|
3785
3928
|
ProjectMoveChat,
|
|
3786
3929
|
ProjectMoveSkip,
|
|
3787
3930
|
ProjectMoveGroup,
|
|
3931
|
+
ProjectMovePin,
|
|
3788
3932
|
AppsProjectsToWindowParams,
|
|
3789
3933
|
AppsProjectsToWindowResult,
|
|
3790
3934
|
ShownSection,
|
|
@@ -3919,7 +4063,9 @@ var FIELDS_SINCE = {
|
|
|
3919
4063
|
ScreenDisplay: { rotation: "1.24", refresh_hz: "1.24", builtin: "1.24" },
|
|
3920
4064
|
PowerStatusResult: { energy: "1.24" },
|
|
3921
4065
|
AppsSpendResult: { days: "1.24" },
|
|
3922
|
-
AppsWindowsUpdateStateResult: { closed_by_update: "1.27" }
|
|
4066
|
+
AppsWindowsUpdateStateResult: { closed_by_update: "1.27" },
|
|
4067
|
+
AppsProjectsToWindowParams: { pin: "1.32" },
|
|
4068
|
+
AppsProjectsToWindowResult: { pin: "1.32" }
|
|
3923
4069
|
};
|
|
3924
4070
|
var NULL_SINCE = {
|
|
3925
4071
|
"RelayDeviceStatusEvent.since_ms": { since: "1.1", olderPeersGet: 0 }
|
|
@@ -4055,7 +4201,7 @@ function forPeer(op, part, value, version) {
|
|
|
4055
4201
|
var VERSIONED_RESULT_OPS = [.../* @__PURE__ */ new Set([...RESULT_PATH.keys(), ...WINDOW_RESULTS.keys(), ...NESTED_RESULTS.keys()])];
|
|
4056
4202
|
|
|
4057
4203
|
// src/contract.ts
|
|
4058
|
-
var CONTRACT_SHA256 = "
|
|
4204
|
+
var CONTRACT_SHA256 = "ee8e6c98c76f3557f832157e3b2b21bb23ebb74b67b79151f3b9ff788f5273ee";
|
|
4059
4205
|
|
|
4060
4206
|
// src/close-policy.ts
|
|
4061
4207
|
var CLOSE_RULES = {
|
|
@@ -4112,6 +4258,7 @@ var TOOL_CATALOG = [
|
|
|
4112
4258
|
{ name: "desktop_system", group: "os_control", state: "built", path: "device_op", ops: ["sysinfo.get", "sysinfo.hardware", "system.open_url", "system.open_path", "system.open_settings", "system.notify"], platforms: ALL, summary: "System facts, open, notify" },
|
|
4113
4259
|
{ name: "desktop_clipboard", group: "os_control", state: "built", path: "device_op", ops: ["clipboard.read", "clipboard.write"], platforms: ALL, summary: "Read and write the clipboard's text" },
|
|
4114
4260
|
{ name: "desktop_screen", group: "os_control", state: "built", path: "device_op", ops: ["screen.list", "screen.capture"], platforms: ALL, summary: "Displays and screenshots" },
|
|
4261
|
+
{ name: "desktop_browser", group: "os_control", state: "built", path: "device_op", ops: ["browser.sessions", "browser.call"], platforms: ALL, summary: "The person's own browser through the AI Matrx extension: tabs, read, screenshot, navigate, click, type" },
|
|
4115
4262
|
{ name: "desktop_window", group: "os_control", state: "built", path: "device_op", ops: ["window.list", "window.focus", "window.move", "window.minimize"], platforms: ALL, summary: "Find, focus and arrange windows" },
|
|
4116
4263
|
{ name: "desktop_input", group: "os_control", state: "built", path: "device_op", ops: ["input.type_text", "input.hotkey", "input.mouse_click", "input.mouse_move", "input.keyboard_settings", "input.set_keyboard_settings"], platforms: ALL, summary: "Keyboard and mouse" },
|
|
4117
4264
|
{ name: "desktop_audio", group: "os_control", state: "built", path: "device_op", ops: ["audio.devices", "audio.levels", "audio.set_levels", "audio.record", "audio.play"], platforms: ALL, summary: "Audio devices, record, play" },
|
|
@@ -4194,14 +4341,15 @@ var LEGACY_ACTIONS = {
|
|
|
4194
4341
|
"local_system.open_url": tool("desktop_system"),
|
|
4195
4342
|
"local_system.open_path": tool("desktop_system"),
|
|
4196
4343
|
"local_system.notify": tool("desktop_system"),
|
|
4197
|
-
|
|
4198
|
-
"local_browser.
|
|
4199
|
-
"local_browser.
|
|
4200
|
-
"local_browser.
|
|
4201
|
-
"local_browser.
|
|
4202
|
-
"local_browser.
|
|
4203
|
-
"local_browser.
|
|
4204
|
-
"local_browser.
|
|
4344
|
+
// The person's own browser is the AI Matrx extension paired with Matrx 2 (cap browser).
|
|
4345
|
+
"local_browser.navigate": tool("desktop_browser"),
|
|
4346
|
+
"local_browser.click": tool("desktop_browser"),
|
|
4347
|
+
"local_browser.type_text": tool("desktop_browser"),
|
|
4348
|
+
"local_browser.extract": tool("desktop_browser"),
|
|
4349
|
+
"local_browser.screenshot": tool("desktop_browser"),
|
|
4350
|
+
"local_browser.eval": dropped("The extension runs no page script for Matrx 2: its script and cdp tools are privileged and refused over the desktop path; read, click and type cover what eval was used for"),
|
|
4351
|
+
"local_browser.tabs": tool("desktop_browser"),
|
|
4352
|
+
"local_browser.close": tool("desktop_browser"),
|
|
4205
4353
|
"local_web.fetch": tool("desktop_web"),
|
|
4206
4354
|
"local_web.fetch_with_browser": tool("desktop_web"),
|
|
4207
4355
|
"local_web.scrape": tool("desktop_web"),
|
|
@@ -4397,4 +4545,27 @@ function renderToolStatusMarkdown(status) {
|
|
|
4397
4545
|
}
|
|
4398
4546
|
return lines.join("\n");
|
|
4399
4547
|
}
|
|
4548
|
+
|
|
4549
|
+
// src/tools/policy.ts
|
|
4550
|
+
function refusedOps(disabledTools) {
|
|
4551
|
+
const off = new Set(disabledTools);
|
|
4552
|
+
const senders = /* @__PURE__ */ new Map();
|
|
4553
|
+
for (const tool2 of TOOL_CATALOG) for (const op of tool2.ops) senders.set(op, [...senders.get(op) ?? [], tool2.name]);
|
|
4554
|
+
const refused = /* @__PURE__ */ new Set();
|
|
4555
|
+
for (const [op, tools] of senders) if (tools.every((t) => off.has(t))) refused.add(op);
|
|
4556
|
+
return refused;
|
|
4557
|
+
}
|
|
4558
|
+
function toolsSending(op) {
|
|
4559
|
+
return TOOL_CATALOG.filter((t) => t.ops.includes(op)).map((t) => t.name);
|
|
4560
|
+
}
|
|
4561
|
+
function sharedOpsBlocking(tool2, disabledTools) {
|
|
4562
|
+
const entry = TOOL_CATALOG.find((t) => t.name === tool2);
|
|
4563
|
+
if (!entry || entry.ops.length === 0) return [];
|
|
4564
|
+
const off = /* @__PURE__ */ new Set([...disabledTools, tool2]);
|
|
4565
|
+
const refused = refusedOps([...off]);
|
|
4566
|
+
if (entry.ops.some((op) => refused.has(op))) return [];
|
|
4567
|
+
const keepers = /* @__PURE__ */ new Set();
|
|
4568
|
+
for (const op of entry.ops) for (const other of TOOL_CATALOG) if (other.name !== tool2 && !off.has(other.name) && other.ops.includes(op)) keepers.add(other.name);
|
|
4569
|
+
return [...keepers].sort();
|
|
4570
|
+
}
|
|
4400
4571
|
//# sourceMappingURL=index.cjs.map
|