@ai-matrx/desktop-protocol 0.14.0 → 0.15.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/CHANGELOG.md +16 -0
- package/dist/client.cjs +396 -38
- 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 +396 -38
- package/dist/client.js.map +1 -1
- package/dist/index.cjs +479 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +668 -6
- package/dist/index.d.ts +668 -6
- package/dist/index.js +479 -13
- package/dist/index.js.map +1 -1
- package/dist/{models-DqFPqtNS.d.cts → models-iOvmEOHd.d.cts} +1105 -1
- package/dist/{models-DqFPqtNS.d.ts → models-iOvmEOHd.d.ts} +1105 -1
- package/dist/react.d.cts +549 -0
- package/dist/react.d.ts +549 -0
- package/generated/desktop-protocol.schema.json +1560 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -71,6 +71,16 @@ __export(src_exports, {
|
|
|
71
71
|
EventMsg: () => EventMsg,
|
|
72
72
|
ExecCwdEvent: () => ExecCwdEvent,
|
|
73
73
|
ExecExitedEvent: () => ExecExitedEvent,
|
|
74
|
+
ExecJobId: () => ExecJobId,
|
|
75
|
+
ExecJobInfo: () => ExecJobInfo,
|
|
76
|
+
ExecJobListParams: () => ExecJobListParams,
|
|
77
|
+
ExecJobListResult: () => ExecJobListResult,
|
|
78
|
+
ExecJobOutputParams: () => ExecJobOutputParams,
|
|
79
|
+
ExecJobOutputResult: () => ExecJobOutputResult,
|
|
80
|
+
ExecJobStartParams: () => ExecJobStartParams,
|
|
81
|
+
ExecJobStartResult: () => ExecJobStartResult,
|
|
82
|
+
ExecJobStopParams: () => ExecJobStopParams,
|
|
83
|
+
ExecJobStopResult: () => ExecJobStopResult,
|
|
74
84
|
ExecListParams: () => ExecListParams,
|
|
75
85
|
ExecListResult: () => ExecListResult,
|
|
76
86
|
ExecPtyKillParams: () => ExecPtyKillParams,
|
|
@@ -120,11 +130,28 @@ __export(src_exports, {
|
|
|
120
130
|
FsSearchPathsResult: () => FsSearchPathsResult,
|
|
121
131
|
FsStatParams: () => FsStatParams,
|
|
122
132
|
FsStatResult: () => FsStatResult,
|
|
133
|
+
FsWatchEventsParams: () => FsWatchEventsParams,
|
|
134
|
+
FsWatchEventsResult: () => FsWatchEventsResult,
|
|
135
|
+
FsWatchId: () => FsWatchId,
|
|
123
136
|
FsWatchParams: () => FsWatchParams,
|
|
124
137
|
FsWatchResult: () => FsWatchResult,
|
|
138
|
+
FsWatchStartParams: () => FsWatchStartParams,
|
|
139
|
+
FsWatchStartResult: () => FsWatchStartResult,
|
|
140
|
+
FsWatchStopParams: () => FsWatchStopParams,
|
|
141
|
+
FsWatchStopResult: () => FsWatchStopResult,
|
|
125
142
|
FsWriteParams: () => FsWriteParams,
|
|
126
143
|
FsWriteResult: () => FsWriteResult,
|
|
127
144
|
HelloMsg: () => HelloMsg,
|
|
145
|
+
InputHotkeyParams: () => InputHotkeyParams,
|
|
146
|
+
InputHotkeyResult: () => InputHotkeyResult,
|
|
147
|
+
InputKey: () => InputKey,
|
|
148
|
+
InputMouseClickParams: () => InputMouseClickParams,
|
|
149
|
+
InputMouseClickResult: () => InputMouseClickResult,
|
|
150
|
+
InputMouseMoveParams: () => InputMouseMoveParams,
|
|
151
|
+
InputMouseMoveResult: () => InputMouseMoveResult,
|
|
152
|
+
InputPoint: () => InputPoint,
|
|
153
|
+
InputTypeTextParams: () => InputTypeTextParams,
|
|
154
|
+
InputTypeTextResult: () => InputTypeTextResult,
|
|
128
155
|
LEGACY_ACTIONS: () => LEGACY_ACTIONS,
|
|
129
156
|
LEGACY_DISPATCHERS: () => LEGACY_DISPATCHERS,
|
|
130
157
|
Limits: () => Limits,
|
|
@@ -153,6 +180,10 @@ __export(src_exports, {
|
|
|
153
180
|
PROTOCOL_MAJOR: () => PROTOCOL_MAJOR,
|
|
154
181
|
PROTOCOL_MINOR: () => PROTOCOL_MINOR,
|
|
155
182
|
PROTOCOL_VERSION: () => PROTOCOL_VERSION,
|
|
183
|
+
PowerPreventSleepParams: () => PowerPreventSleepParams,
|
|
184
|
+
PowerPreventSleepResult: () => PowerPreventSleepResult,
|
|
185
|
+
PowerStatusParams: () => PowerStatusParams,
|
|
186
|
+
PowerStatusResult: () => PowerStatusResult,
|
|
156
187
|
ProcInfo: () => ProcInfo,
|
|
157
188
|
ProcKillParams: () => ProcKillParams,
|
|
158
189
|
ProcKillResult: () => ProcKillResult,
|
|
@@ -183,10 +214,18 @@ __export(src_exports, {
|
|
|
183
214
|
RequestMsg: () => RequestMsg,
|
|
184
215
|
ResourceId: () => ResourceId,
|
|
185
216
|
ResourceInfo: () => ResourceInfo,
|
|
217
|
+
ResourcesDisk: () => ResourcesDisk,
|
|
218
|
+
ResourcesSnapshotParams: () => ResourcesSnapshotParams,
|
|
219
|
+
ResourcesSnapshotResult: () => ResourcesSnapshotResult,
|
|
186
220
|
ResponseMsg: () => ResponseMsg,
|
|
187
221
|
SERVICES: () => SERVICES,
|
|
188
222
|
SERVICE_MAX_FRAME_BYTES: () => SERVICE_MAX_FRAME_BYTES,
|
|
189
223
|
SUBPROTOCOL: () => SUBPROTOCOL,
|
|
224
|
+
ScreenCaptureParams: () => ScreenCaptureParams,
|
|
225
|
+
ScreenCaptureResult: () => ScreenCaptureResult,
|
|
226
|
+
ScreenDisplay: () => ScreenDisplay,
|
|
227
|
+
ScreenListParams: () => ScreenListParams,
|
|
228
|
+
ScreenListResult: () => ScreenListResult,
|
|
190
229
|
ServiceCancel: () => ServiceCancel,
|
|
191
230
|
ServiceErrorMsg: () => ServiceErrorMsg,
|
|
192
231
|
ServiceHello: () => ServiceHello,
|
|
@@ -214,6 +253,12 @@ __export(src_exports, {
|
|
|
214
253
|
StreamMsg: () => StreamMsg,
|
|
215
254
|
SysinfoGetParams: () => SysinfoGetParams,
|
|
216
255
|
SysinfoGetResult: () => SysinfoGetResult,
|
|
256
|
+
SystemNotifyParams: () => SystemNotifyParams,
|
|
257
|
+
SystemNotifyResult: () => SystemNotifyResult,
|
|
258
|
+
SystemOpenPathParams: () => SystemOpenPathParams,
|
|
259
|
+
SystemOpenPathResult: () => SystemOpenPathResult,
|
|
260
|
+
SystemOpenUrlParams: () => SystemOpenUrlParams,
|
|
261
|
+
SystemOpenUrlResult: () => SystemOpenUrlResult,
|
|
217
262
|
TOOL_CATALOG: () => TOOL_CATALOG,
|
|
218
263
|
TOOL_GROUPS: () => TOOL_GROUPS,
|
|
219
264
|
TOOL_LEVELS: () => TOOL_LEVELS,
|
|
@@ -230,6 +275,15 @@ __export(src_exports, {
|
|
|
230
275
|
TranscriptionModelInfo: () => TranscriptionModelInfo,
|
|
231
276
|
VERSIONED_RESULT_OPS: () => VERSIONED_RESULT_OPS,
|
|
232
277
|
Welcome: () => Welcome,
|
|
278
|
+
WindowFocusParams: () => WindowFocusParams,
|
|
279
|
+
WindowFocusResult: () => WindowFocusResult,
|
|
280
|
+
WindowInfo: () => WindowInfo,
|
|
281
|
+
WindowListParams: () => WindowListParams,
|
|
282
|
+
WindowListResult: () => WindowListResult,
|
|
283
|
+
WindowMinimizeParams: () => WindowMinimizeParams,
|
|
284
|
+
WindowMinimizeResult: () => WindowMinimizeResult,
|
|
285
|
+
WindowMoveParams: () => WindowMoveParams,
|
|
286
|
+
WindowMoveResult: () => WindowMoveResult,
|
|
233
287
|
announcedVersion: () => announcedVersion,
|
|
234
288
|
assertFrameHeader: () => assertFrameHeader,
|
|
235
289
|
buildToolStatus: () => buildToolStatus,
|
|
@@ -260,7 +314,7 @@ module.exports = __toCommonJS(src_exports);
|
|
|
260
314
|
// src/schema/primitives.ts
|
|
261
315
|
var import_zod = require("zod");
|
|
262
316
|
var PROTOCOL_MAJOR = 1;
|
|
263
|
-
var PROTOCOL_MINOR =
|
|
317
|
+
var PROTOCOL_MINOR = 4;
|
|
264
318
|
var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
|
|
265
319
|
var ProtocolVersion = import_zod.z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
|
|
266
320
|
var RequestId = import_zod.z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
|
|
@@ -1271,6 +1325,341 @@ var ClipboardReadResult = import_zod15.z.strictObject({
|
|
|
1271
1325
|
var ClipboardWriteParams = import_zod15.z.strictObject({ text: import_zod15.z.string().max(1048576) });
|
|
1272
1326
|
var ClipboardWriteResult = import_zod15.z.strictObject({ bytes: nonNegInt });
|
|
1273
1327
|
|
|
1328
|
+
// src/schema/system.ts
|
|
1329
|
+
var import_zod16 = require("zod");
|
|
1330
|
+
var SystemOpenUrlParams = import_zod16.z.strictObject({
|
|
1331
|
+
/** http, https or mailto; opened in the person's default app for it. */
|
|
1332
|
+
url: import_zod16.z.string().min(1).max(4096)
|
|
1333
|
+
});
|
|
1334
|
+
var SystemOpenUrlResult = import_zod16.z.strictObject({ url: import_zod16.z.string().max(4096) });
|
|
1335
|
+
var SystemOpenPathParams = import_zod16.z.strictObject({
|
|
1336
|
+
path: AbsPath,
|
|
1337
|
+
/** Show it in the file manager (Finder, Explorer) instead of opening it. */
|
|
1338
|
+
reveal: import_zod16.z.boolean().default(false)
|
|
1339
|
+
});
|
|
1340
|
+
var SystemOpenPathResult = import_zod16.z.strictObject({ path: AbsPath, revealed: import_zod16.z.boolean() });
|
|
1341
|
+
var SystemNotifyParams = import_zod16.z.strictObject({
|
|
1342
|
+
title: import_zod16.z.string().min(1).max(128),
|
|
1343
|
+
body: import_zod16.z.string().max(1024).default("")
|
|
1344
|
+
});
|
|
1345
|
+
var SystemNotifyResult = import_zod16.z.strictObject({
|
|
1346
|
+
/** False when this computer has no notification service to show it (a bare Linux box). */
|
|
1347
|
+
shown: import_zod16.z.boolean()
|
|
1348
|
+
});
|
|
1349
|
+
|
|
1350
|
+
// src/schema/screen.ts
|
|
1351
|
+
var import_zod17 = require("zod");
|
|
1352
|
+
var ScreenDisplay = import_zod17.z.strictObject({
|
|
1353
|
+
/** The OS's display id; pass it to screen.capture. */
|
|
1354
|
+
id: nonNegInt,
|
|
1355
|
+
name: import_zod17.z.string().max(128),
|
|
1356
|
+
/** Position and size in the OS's logical points (x and y may be negative left of or above the main display). */
|
|
1357
|
+
x: import_zod17.z.int(),
|
|
1358
|
+
y: import_zod17.z.int(),
|
|
1359
|
+
width: import_zod17.z.int().min(1),
|
|
1360
|
+
height: import_zod17.z.int().min(1),
|
|
1361
|
+
/** Pixels per point (2 on a Retina display). */
|
|
1362
|
+
scale: import_zod17.z.number().min(0.1).max(8),
|
|
1363
|
+
primary: import_zod17.z.boolean()
|
|
1364
|
+
});
|
|
1365
|
+
var ScreenListParams = import_zod17.z.strictObject({});
|
|
1366
|
+
var ScreenListResult = import_zod17.z.strictObject({ displays: import_zod17.z.array(ScreenDisplay).max(32) });
|
|
1367
|
+
var ScreenCaptureParams = import_zod17.z.strictObject({
|
|
1368
|
+
/** The display (from screen.list); the primary display when absent. */
|
|
1369
|
+
display_id: nonNegInt.optional(),
|
|
1370
|
+
format: import_zod17.z.enum(["jpeg", "png"]).default("jpeg"),
|
|
1371
|
+
/** Scale the picture down to at most this width in pixels (kept when already smaller). */
|
|
1372
|
+
max_width: import_zod17.z.int().min(160).max(7680).default(1600)
|
|
1373
|
+
});
|
|
1374
|
+
var ScreenCaptureResult = import_zod17.z.strictObject({
|
|
1375
|
+
display_id: nonNegInt,
|
|
1376
|
+
mime_type: import_zod17.z.enum(["image/jpeg", "image/png"]),
|
|
1377
|
+
width: import_zod17.z.int().min(1),
|
|
1378
|
+
height: import_zod17.z.int().min(1),
|
|
1379
|
+
/** The display's full resolution in pixels, before scaling. */
|
|
1380
|
+
source_width: import_zod17.z.int().min(1),
|
|
1381
|
+
source_height: import_zod17.z.int().min(1),
|
|
1382
|
+
/** The image, base64 (at most 6 MiB of text). */
|
|
1383
|
+
data_base64: import_zod17.z.string().max(6291456)
|
|
1384
|
+
});
|
|
1385
|
+
|
|
1386
|
+
// src/schema/window.ts
|
|
1387
|
+
var import_zod18 = require("zod");
|
|
1388
|
+
var WindowInfo = import_zod18.z.strictObject({
|
|
1389
|
+
/** The OS's window handle (macOS window number, Windows HWND, X11 window id). */
|
|
1390
|
+
id: nonNegInt,
|
|
1391
|
+
title: import_zod18.z.string().max(512),
|
|
1392
|
+
/** Position and size in logical points. */
|
|
1393
|
+
x: import_zod18.z.int(),
|
|
1394
|
+
y: import_zod18.z.int(),
|
|
1395
|
+
width: import_zod18.z.int().min(0),
|
|
1396
|
+
height: import_zod18.z.int().min(0)
|
|
1397
|
+
});
|
|
1398
|
+
var WindowListParams = import_zod18.z.strictObject({
|
|
1399
|
+
/** Case-insensitive substring of the window title. */
|
|
1400
|
+
title: import_zod18.z.string().min(1).max(256).optional(),
|
|
1401
|
+
limit: import_zod18.z.int().min(1).max(500).default(100)
|
|
1402
|
+
});
|
|
1403
|
+
var WindowListResult = import_zod18.z.strictObject({
|
|
1404
|
+
windows: import_zod18.z.array(WindowInfo).max(500),
|
|
1405
|
+
total: nonNegInt,
|
|
1406
|
+
truncated: import_zod18.z.boolean()
|
|
1407
|
+
});
|
|
1408
|
+
var WindowFocusParams = import_zod18.z.strictObject({ id: nonNegInt });
|
|
1409
|
+
var WindowFocusResult = import_zod18.z.strictObject({ window: WindowInfo });
|
|
1410
|
+
var WindowMoveParams = import_zod18.z.strictObject({
|
|
1411
|
+
id: nonNegInt,
|
|
1412
|
+
/** New top-left corner; unchanged when absent. */
|
|
1413
|
+
x: import_zod18.z.int().optional(),
|
|
1414
|
+
y: import_zod18.z.int().optional(),
|
|
1415
|
+
/** New size; unchanged when absent. */
|
|
1416
|
+
width: import_zod18.z.int().min(50).max(16384).optional(),
|
|
1417
|
+
height: import_zod18.z.int().min(50).max(16384).optional()
|
|
1418
|
+
});
|
|
1419
|
+
var WindowMoveResult = import_zod18.z.strictObject({ window: WindowInfo });
|
|
1420
|
+
var WindowMinimizeParams = import_zod18.z.strictObject({ id: nonNegInt });
|
|
1421
|
+
var WindowMinimizeResult = import_zod18.z.strictObject({ id: nonNegInt });
|
|
1422
|
+
|
|
1423
|
+
// src/schema/input.ts
|
|
1424
|
+
var import_zod19 = require("zod");
|
|
1425
|
+
var InputKey = import_zod19.z.enum([
|
|
1426
|
+
"cmd",
|
|
1427
|
+
"ctrl",
|
|
1428
|
+
"alt",
|
|
1429
|
+
"shift",
|
|
1430
|
+
"meta",
|
|
1431
|
+
"a",
|
|
1432
|
+
"b",
|
|
1433
|
+
"c",
|
|
1434
|
+
"d",
|
|
1435
|
+
"e",
|
|
1436
|
+
"f",
|
|
1437
|
+
"g",
|
|
1438
|
+
"h",
|
|
1439
|
+
"i",
|
|
1440
|
+
"j",
|
|
1441
|
+
"k",
|
|
1442
|
+
"l",
|
|
1443
|
+
"m",
|
|
1444
|
+
"n",
|
|
1445
|
+
"o",
|
|
1446
|
+
"p",
|
|
1447
|
+
"q",
|
|
1448
|
+
"r",
|
|
1449
|
+
"s",
|
|
1450
|
+
"t",
|
|
1451
|
+
"u",
|
|
1452
|
+
"v",
|
|
1453
|
+
"w",
|
|
1454
|
+
"x",
|
|
1455
|
+
"y",
|
|
1456
|
+
"z",
|
|
1457
|
+
"0",
|
|
1458
|
+
"1",
|
|
1459
|
+
"2",
|
|
1460
|
+
"3",
|
|
1461
|
+
"4",
|
|
1462
|
+
"5",
|
|
1463
|
+
"6",
|
|
1464
|
+
"7",
|
|
1465
|
+
"8",
|
|
1466
|
+
"9",
|
|
1467
|
+
"f1",
|
|
1468
|
+
"f2",
|
|
1469
|
+
"f3",
|
|
1470
|
+
"f4",
|
|
1471
|
+
"f5",
|
|
1472
|
+
"f6",
|
|
1473
|
+
"f7",
|
|
1474
|
+
"f8",
|
|
1475
|
+
"f9",
|
|
1476
|
+
"f10",
|
|
1477
|
+
"f11",
|
|
1478
|
+
"f12",
|
|
1479
|
+
"enter",
|
|
1480
|
+
"tab",
|
|
1481
|
+
"escape",
|
|
1482
|
+
"space",
|
|
1483
|
+
"backspace",
|
|
1484
|
+
"delete",
|
|
1485
|
+
"up",
|
|
1486
|
+
"down",
|
|
1487
|
+
"left",
|
|
1488
|
+
"right",
|
|
1489
|
+
"home",
|
|
1490
|
+
"end",
|
|
1491
|
+
"pageup",
|
|
1492
|
+
"pagedown",
|
|
1493
|
+
"minus",
|
|
1494
|
+
"equal",
|
|
1495
|
+
"comma",
|
|
1496
|
+
"period",
|
|
1497
|
+
"slash",
|
|
1498
|
+
"semicolon",
|
|
1499
|
+
"quote",
|
|
1500
|
+
"bracketleft",
|
|
1501
|
+
"bracketright",
|
|
1502
|
+
"backslash",
|
|
1503
|
+
"grave"
|
|
1504
|
+
]);
|
|
1505
|
+
var InputTypeTextParams = import_zod19.z.strictObject({ text: import_zod19.z.string().min(1).max(1e4) });
|
|
1506
|
+
var InputTypeTextResult = import_zod19.z.strictObject({ characters: import_zod19.z.int().min(1) });
|
|
1507
|
+
var InputHotkeyParams = import_zod19.z.strictObject({
|
|
1508
|
+
/** Pressed together in order and released in reverse: ["cmd", "shift", "t"]. */
|
|
1509
|
+
keys: import_zod19.z.array(InputKey).min(1).max(6)
|
|
1510
|
+
});
|
|
1511
|
+
var InputHotkeyResult = import_zod19.z.strictObject({ keys: import_zod19.z.array(InputKey) });
|
|
1512
|
+
var InputPoint = import_zod19.z.strictObject({ x: import_zod19.z.int(), y: import_zod19.z.int() });
|
|
1513
|
+
var InputMouseMoveParams = import_zod19.z.strictObject({
|
|
1514
|
+
/** Screen position in logical points (the coordinates screen.list and window.list report). */
|
|
1515
|
+
x: import_zod19.z.int(),
|
|
1516
|
+
y: import_zod19.z.int()
|
|
1517
|
+
});
|
|
1518
|
+
var InputMouseMoveResult = import_zod19.z.strictObject({
|
|
1519
|
+
/** Where the pointer is now, read back from the OS. */
|
|
1520
|
+
position: InputPoint
|
|
1521
|
+
});
|
|
1522
|
+
var InputMouseClickParams = import_zod19.z.strictObject({
|
|
1523
|
+
/** Move here first; clicks where the pointer is when absent. */
|
|
1524
|
+
x: import_zod19.z.int().optional(),
|
|
1525
|
+
y: import_zod19.z.int().optional(),
|
|
1526
|
+
button: import_zod19.z.enum(["left", "right", "middle"]).default("left"),
|
|
1527
|
+
double: import_zod19.z.boolean().default(false)
|
|
1528
|
+
});
|
|
1529
|
+
var InputMouseClickResult = import_zod19.z.strictObject({
|
|
1530
|
+
position: InputPoint,
|
|
1531
|
+
button: import_zod19.z.enum(["left", "right", "middle"]),
|
|
1532
|
+
double: import_zod19.z.boolean()
|
|
1533
|
+
});
|
|
1534
|
+
|
|
1535
|
+
// src/schema/power.ts
|
|
1536
|
+
var import_zod20 = require("zod");
|
|
1537
|
+
var PowerStatusParams = import_zod20.z.strictObject({});
|
|
1538
|
+
var PowerStatusResult = import_zod20.z.strictObject({
|
|
1539
|
+
has_battery: import_zod20.z.boolean(),
|
|
1540
|
+
/** 0–100; null without a battery. */
|
|
1541
|
+
percent: import_zod20.z.number().min(0).max(100).nullable(),
|
|
1542
|
+
charging: import_zod20.z.boolean().nullable(),
|
|
1543
|
+
/** On wall power; null where the OS does not say. */
|
|
1544
|
+
plugged_in: import_zod20.z.boolean().nullable(),
|
|
1545
|
+
/** Minutes of battery left; null when charging, unknown or without a battery. */
|
|
1546
|
+
minutes_left: nonNegInt.nullable(),
|
|
1547
|
+
/** Matrx 2 is keeping the computer awake (power.prevent_sleep) until this time; null when it is not. */
|
|
1548
|
+
awake_until_ms: epochMs.nullable()
|
|
1549
|
+
});
|
|
1550
|
+
var PowerPreventSleepParams = import_zod20.z.strictObject({
|
|
1551
|
+
/** Keep the computer awake this long; 0 lets it sleep again now. */
|
|
1552
|
+
seconds: import_zod20.z.int().min(0).max(86400),
|
|
1553
|
+
/** Shown where the OS lists what keeps it awake. */
|
|
1554
|
+
reason: import_zod20.z.string().min(1).max(128).default("Matrx 2 is working")
|
|
1555
|
+
});
|
|
1556
|
+
var PowerPreventSleepResult = import_zod20.z.strictObject({
|
|
1557
|
+
/** When it may sleep again; null after seconds 0. */
|
|
1558
|
+
awake_until_ms: epochMs.nullable()
|
|
1559
|
+
});
|
|
1560
|
+
|
|
1561
|
+
// src/schema/resources.ts
|
|
1562
|
+
var import_zod21 = require("zod");
|
|
1563
|
+
var ResourcesDisk = import_zod21.z.strictObject({
|
|
1564
|
+
/** Where it is mounted ("/", "C:"). */
|
|
1565
|
+
mount: import_zod21.z.string().max(512),
|
|
1566
|
+
/** The file system ("apfs", "NTFS", "ext4"). */
|
|
1567
|
+
fs: import_zod21.z.string().max(64),
|
|
1568
|
+
size_bytes: nonNegInt,
|
|
1569
|
+
used_bytes: nonNegInt,
|
|
1570
|
+
available_bytes: nonNegInt
|
|
1571
|
+
});
|
|
1572
|
+
var ResourcesSnapshotParams = import_zod21.z.strictObject({});
|
|
1573
|
+
var ResourcesSnapshotResult = import_zod21.z.strictObject({
|
|
1574
|
+
cpu: import_zod21.z.strictObject({
|
|
1575
|
+
/** Busy share of all cores, 0–100, measured now. */
|
|
1576
|
+
percent: import_zod21.z.number().min(0).max(100),
|
|
1577
|
+
cores: import_zod21.z.int().min(1),
|
|
1578
|
+
/** 1, 5 and 15 minute load averages; null on Windows. */
|
|
1579
|
+
load: import_zod21.z.array(import_zod21.z.number().min(0)).length(3).nullable()
|
|
1580
|
+
}),
|
|
1581
|
+
memory: import_zod21.z.strictObject({ total_bytes: nonNegInt, used_bytes: nonNegInt, available_bytes: nonNegInt }),
|
|
1582
|
+
swap: import_zod21.z.strictObject({ total_bytes: nonNegInt, used_bytes: nonNegInt }),
|
|
1583
|
+
disks: import_zod21.z.array(ResourcesDisk).max(64),
|
|
1584
|
+
uptime_seconds: nonNegInt
|
|
1585
|
+
});
|
|
1586
|
+
|
|
1587
|
+
// src/schema/fs-watch.ts
|
|
1588
|
+
var import_zod22 = require("zod");
|
|
1589
|
+
var FsWatchId = import_zod22.z.string().regex(/^fw_[A-Za-z0-9]{12,40}$/);
|
|
1590
|
+
var FsWatchStartParams = import_zod22.z.strictObject({
|
|
1591
|
+
path: AbsPath,
|
|
1592
|
+
recursive: import_zod22.z.boolean().default(true),
|
|
1593
|
+
/** Globs relative to `path` whose changes are not reported (".git/**", "node_modules/**"). */
|
|
1594
|
+
ignore: import_zod22.z.array(import_zod22.z.string().max(256)).max(64).default([])
|
|
1595
|
+
});
|
|
1596
|
+
var FsWatchStartResult = import_zod22.z.strictObject({
|
|
1597
|
+
watch_id: FsWatchId,
|
|
1598
|
+
path: AbsPath,
|
|
1599
|
+
/** The watch ends by itself if nobody reads it for 30 minutes. */
|
|
1600
|
+
expires_at_ms: epochMs
|
|
1601
|
+
});
|
|
1602
|
+
var FsWatchEventsParams = import_zod22.z.strictObject({
|
|
1603
|
+
watch_id: FsWatchId,
|
|
1604
|
+
/** Wait up to this long for a first change when none is waiting (0 answers at once). */
|
|
1605
|
+
wait_ms: import_zod22.z.int().min(0).max(25e3).default(0)
|
|
1606
|
+
});
|
|
1607
|
+
var FsWatchEventsResult = import_zod22.z.strictObject({
|
|
1608
|
+
/** What changed since the last read, oldest first; re-checked against the disk when read. */
|
|
1609
|
+
changes: import_zod22.z.array(FsChange).max(1e3),
|
|
1610
|
+
/** Changes were dropped (more than 1000 waited): list the folder again. */
|
|
1611
|
+
overflow: import_zod22.z.boolean(),
|
|
1612
|
+
expires_at_ms: epochMs
|
|
1613
|
+
});
|
|
1614
|
+
var FsWatchStopParams = import_zod22.z.strictObject({ watch_id: FsWatchId });
|
|
1615
|
+
var FsWatchStopResult = import_zod22.z.strictObject({ watch_id: FsWatchId });
|
|
1616
|
+
|
|
1617
|
+
// src/schema/exec-job.ts
|
|
1618
|
+
var import_zod23 = require("zod");
|
|
1619
|
+
var ExecJobId = import_zod23.z.string().regex(/^job_[A-Za-z0-9]{12,40}$/);
|
|
1620
|
+
var ExecJobStartParams = import_zod23.z.strictObject({
|
|
1621
|
+
command: import_zod23.z.string().min(1).max(131072),
|
|
1622
|
+
/** The folder it runs in; the home folder when absent. */
|
|
1623
|
+
cwd: AbsPath.optional(),
|
|
1624
|
+
env: import_zod23.z.record(import_zod23.z.string().regex(/^[A-Za-z_][A-Za-z0-9_]*$/).max(128), import_zod23.z.string().max(32768)).optional()
|
|
1625
|
+
});
|
|
1626
|
+
var ExecJobStartResult = import_zod23.z.strictObject({ job_id: ExecJobId, pid: import_zod23.z.int().min(1), cwd: AbsPath });
|
|
1627
|
+
var ExecJobOutputParams = import_zod23.z.strictObject({
|
|
1628
|
+
job_id: ExecJobId,
|
|
1629
|
+
/** Byte offset into the job's output to read from (next_offset of the last read; 0 = the start). */
|
|
1630
|
+
offset: nonNegInt.default(0),
|
|
1631
|
+
/** Wait up to this long for new output or the exit when none is waiting (0 answers at once). */
|
|
1632
|
+
wait_ms: import_zod23.z.int().min(0).max(25e3).default(0),
|
|
1633
|
+
max_bytes: import_zod23.z.int().min(1024).max(1048576).default(65536)
|
|
1634
|
+
});
|
|
1635
|
+
var ExecJobOutputResult = import_zod23.z.strictObject({
|
|
1636
|
+
/** stdout and stderr interleaved as they arrived (UTF-8). */
|
|
1637
|
+
output: import_zod23.z.string(),
|
|
1638
|
+
next_offset: nonNegInt,
|
|
1639
|
+
/** Bytes before `offset` that are gone (the job keeps its last 4 MiB). */
|
|
1640
|
+
dropped_bytes: nonNegInt,
|
|
1641
|
+
running: import_zod23.z.boolean(),
|
|
1642
|
+
exit_code: import_zod23.z.int().nullable()
|
|
1643
|
+
});
|
|
1644
|
+
var ExecJobStopParams = import_zod23.z.strictObject({
|
|
1645
|
+
job_id: ExecJobId,
|
|
1646
|
+
/** End it at once (SIGKILL; on Windows the whole tree with /F) instead of asking it to quit. */
|
|
1647
|
+
force: import_zod23.z.boolean().default(false)
|
|
1648
|
+
});
|
|
1649
|
+
var ExecJobStopResult = import_zod23.z.strictObject({ job_id: ExecJobId, exited: import_zod23.z.boolean(), exit_code: import_zod23.z.int().nullable() });
|
|
1650
|
+
var ExecJobInfo = import_zod23.z.strictObject({
|
|
1651
|
+
job_id: ExecJobId,
|
|
1652
|
+
command: import_zod23.z.string().max(1024),
|
|
1653
|
+
pid: import_zod23.z.int().min(1),
|
|
1654
|
+
cwd: AbsPath,
|
|
1655
|
+
running: import_zod23.z.boolean(),
|
|
1656
|
+
exit_code: import_zod23.z.int().nullable(),
|
|
1657
|
+
started_at_ms: epochMs,
|
|
1658
|
+
output_bytes: nonNegInt
|
|
1659
|
+
});
|
|
1660
|
+
var ExecJobListParams = import_zod23.z.strictObject({});
|
|
1661
|
+
var ExecJobListResult = import_zod23.z.strictObject({ jobs: import_zod23.z.array(ExecJobInfo).max(64) });
|
|
1662
|
+
|
|
1274
1663
|
// src/schema/registry.ts
|
|
1275
1664
|
var FS_ERR = ["NOT_FOUND", "PERMISSION_DENIED_OS", "INVALID_PARAMS", "RESOURCE_BUSY", "INTERNAL"];
|
|
1276
1665
|
var OPS = {
|
|
@@ -1312,7 +1701,30 @@ var OPS = {
|
|
|
1312
1701
|
"proc.ports": { params: ProcPortsParams, result: ProcPortsResult, kind: "unary", since: "1.3", errors: ["INVALID_PARAMS", "PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1313
1702
|
"proc.kill": { params: ProcKillParams, result: ProcKillResult, kind: "unary", since: "1.3", errors: ["NOT_FOUND", "AUTH_FORBIDDEN", "PERMISSION_DENIED_OS", "INVALID_PARAMS", "INTERNAL"] },
|
|
1314
1703
|
"clipboard.read": { params: ClipboardReadParams, result: ClipboardReadResult, kind: "unary", since: "1.3", errors: ["PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1315
|
-
"clipboard.write": { params: ClipboardWriteParams, result: ClipboardWriteResult, kind: "unary", since: "1.3", errors: ["PLATFORM_UNSUPPORTED", "PAYLOAD_TOO_LARGE", "INTERNAL"] }
|
|
1704
|
+
"clipboard.write": { params: ClipboardWriteParams, result: ClipboardWriteResult, kind: "unary", since: "1.3", errors: ["PLATFORM_UNSUPPORTED", "PAYLOAD_TOO_LARGE", "INTERNAL"] },
|
|
1705
|
+
"fs.watch.start": { params: FsWatchStartParams, result: FsWatchStartResult, kind: "unary", since: "1.4", errors: [...FS_ERR, "RATE_LIMITED"] },
|
|
1706
|
+
"fs.watch.events": { params: FsWatchEventsParams, result: FsWatchEventsResult, kind: "unary", since: "1.4", errors: ["RESOURCE_GONE", "INVALID_PARAMS", "INTERNAL"] },
|
|
1707
|
+
"fs.watch.stop": { params: FsWatchStopParams, result: FsWatchStopResult, kind: "unary", since: "1.4", errors: ["RESOURCE_GONE", "INVALID_PARAMS"] },
|
|
1708
|
+
"exec.job.start": { params: ExecJobStartParams, result: ExecJobStartResult, kind: "unary", since: "1.4", errors: ["INVALID_PARAMS", "NOT_FOUND", "RATE_LIMITED", "INTERNAL"] },
|
|
1709
|
+
"exec.job.output": { params: ExecJobOutputParams, result: ExecJobOutputResult, kind: "unary", since: "1.4", errors: ["RESOURCE_GONE", "INVALID_PARAMS"] },
|
|
1710
|
+
"exec.job.stop": { params: ExecJobStopParams, result: ExecJobStopResult, kind: "unary", since: "1.4", errors: ["RESOURCE_GONE", "INVALID_PARAMS", "INTERNAL"] },
|
|
1711
|
+
"exec.job.list": { params: ExecJobListParams, result: ExecJobListResult, kind: "unary", since: "1.4", errors: ["INTERNAL"] },
|
|
1712
|
+
"system.open_url": { params: SystemOpenUrlParams, result: SystemOpenUrlResult, kind: "unary", since: "1.4", errors: ["INVALID_PARAMS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1713
|
+
"system.open_path": { params: SystemOpenPathParams, result: SystemOpenPathResult, kind: "unary", since: "1.4", errors: ["NOT_FOUND", "INVALID_PARAMS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1714
|
+
"system.notify": { params: SystemNotifyParams, result: SystemNotifyResult, kind: "unary", since: "1.4", errors: ["PERMISSION_DENIED_OS", "INTERNAL"] },
|
|
1715
|
+
"screen.list": { params: ScreenListParams, result: ScreenListResult, kind: "unary", since: "1.4", errors: ["PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1716
|
+
"screen.capture": { params: ScreenCaptureParams, result: ScreenCaptureResult, kind: "unary", since: "1.4", errors: ["NOT_FOUND", "PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "PAYLOAD_TOO_LARGE", "INTERNAL"] },
|
|
1717
|
+
"window.list": { params: WindowListParams, result: WindowListResult, kind: "unary", since: "1.4", errors: ["PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1718
|
+
"window.focus": { params: WindowFocusParams, result: WindowFocusResult, kind: "unary", since: "1.4", errors: ["NOT_FOUND", "PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1719
|
+
"window.move": { params: WindowMoveParams, result: WindowMoveResult, kind: "unary", since: "1.4", errors: ["NOT_FOUND", "INVALID_PARAMS", "PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1720
|
+
"window.minimize": { params: WindowMinimizeParams, result: WindowMinimizeResult, kind: "unary", since: "1.4", errors: ["NOT_FOUND", "PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1721
|
+
"input.type_text": { params: InputTypeTextParams, result: InputTypeTextResult, kind: "unary", since: "1.4", errors: ["PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1722
|
+
"input.hotkey": { params: InputHotkeyParams, result: InputHotkeyResult, kind: "unary", since: "1.4", errors: ["INVALID_PARAMS", "PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1723
|
+
"input.mouse_move": { params: InputMouseMoveParams, result: InputMouseMoveResult, kind: "unary", since: "1.4", errors: ["PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1724
|
+
"input.mouse_click": { params: InputMouseClickParams, result: InputMouseClickResult, kind: "unary", since: "1.4", errors: ["INVALID_PARAMS", "PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1725
|
+
"power.status": { params: PowerStatusParams, result: PowerStatusResult, kind: "unary", since: "1.4", errors: ["INTERNAL"] },
|
|
1726
|
+
"power.prevent_sleep": { params: PowerPreventSleepParams, result: PowerPreventSleepResult, kind: "unary", since: "1.4", errors: ["PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
1727
|
+
"resources.snapshot": { params: ResourcesSnapshotParams, result: ResourcesSnapshotResult, kind: "unary", since: "1.4", errors: ["INTERNAL"] }
|
|
1316
1728
|
};
|
|
1317
1729
|
var EVENTS = {
|
|
1318
1730
|
"fs.changed": FsChangedEvent,
|
|
@@ -1477,6 +1889,60 @@ var NAMED_SCHEMAS = {
|
|
|
1477
1889
|
ClipboardReadResult,
|
|
1478
1890
|
ClipboardWriteParams,
|
|
1479
1891
|
ClipboardWriteResult,
|
|
1892
|
+
SystemOpenUrlParams,
|
|
1893
|
+
SystemOpenUrlResult,
|
|
1894
|
+
SystemOpenPathParams,
|
|
1895
|
+
SystemOpenPathResult,
|
|
1896
|
+
SystemNotifyParams,
|
|
1897
|
+
SystemNotifyResult,
|
|
1898
|
+
ScreenDisplay,
|
|
1899
|
+
ScreenListParams,
|
|
1900
|
+
ScreenListResult,
|
|
1901
|
+
ScreenCaptureParams,
|
|
1902
|
+
ScreenCaptureResult,
|
|
1903
|
+
WindowInfo,
|
|
1904
|
+
WindowListParams,
|
|
1905
|
+
WindowListResult,
|
|
1906
|
+
WindowFocusParams,
|
|
1907
|
+
WindowFocusResult,
|
|
1908
|
+
WindowMoveParams,
|
|
1909
|
+
WindowMoveResult,
|
|
1910
|
+
WindowMinimizeParams,
|
|
1911
|
+
WindowMinimizeResult,
|
|
1912
|
+
InputKey,
|
|
1913
|
+
InputPoint,
|
|
1914
|
+
InputTypeTextParams,
|
|
1915
|
+
InputTypeTextResult,
|
|
1916
|
+
InputHotkeyParams,
|
|
1917
|
+
InputHotkeyResult,
|
|
1918
|
+
InputMouseMoveParams,
|
|
1919
|
+
InputMouseMoveResult,
|
|
1920
|
+
InputMouseClickParams,
|
|
1921
|
+
InputMouseClickResult,
|
|
1922
|
+
PowerStatusParams,
|
|
1923
|
+
PowerStatusResult,
|
|
1924
|
+
PowerPreventSleepParams,
|
|
1925
|
+
PowerPreventSleepResult,
|
|
1926
|
+
ResourcesDisk,
|
|
1927
|
+
ResourcesSnapshotParams,
|
|
1928
|
+
ResourcesSnapshotResult,
|
|
1929
|
+
FsWatchId,
|
|
1930
|
+
FsWatchStartParams,
|
|
1931
|
+
FsWatchStartResult,
|
|
1932
|
+
FsWatchEventsParams,
|
|
1933
|
+
FsWatchEventsResult,
|
|
1934
|
+
FsWatchStopParams,
|
|
1935
|
+
FsWatchStopResult,
|
|
1936
|
+
ExecJobId,
|
|
1937
|
+
ExecJobStartParams,
|
|
1938
|
+
ExecJobStartResult,
|
|
1939
|
+
ExecJobOutputParams,
|
|
1940
|
+
ExecJobOutputResult,
|
|
1941
|
+
ExecJobStopParams,
|
|
1942
|
+
ExecJobStopResult,
|
|
1943
|
+
ExecJobInfo,
|
|
1944
|
+
ExecJobListParams,
|
|
1945
|
+
ExecJobListResult,
|
|
1480
1946
|
ToolLevel,
|
|
1481
1947
|
ToolOutcome,
|
|
1482
1948
|
ToolPlatform,
|
|
@@ -1582,7 +2048,7 @@ function forPeer(op, part, value, version) {
|
|
|
1582
2048
|
var VERSIONED_RESULT_OPS = [...RESULT_PATH.keys()];
|
|
1583
2049
|
|
|
1584
2050
|
// src/contract.ts
|
|
1585
|
-
var CONTRACT_SHA256 = "
|
|
2051
|
+
var CONTRACT_SHA256 = "a5378bb523cbf52619f16e2accc788931ffb443e762052db4ca42c598792c181";
|
|
1586
2052
|
|
|
1587
2053
|
// src/close-policy.ts
|
|
1588
2054
|
var CLOSE_RULES = {
|
|
@@ -1631,19 +2097,19 @@ var TOOL_CATALOG = [
|
|
|
1631
2097
|
{ name: "fs_search", group: "files_shell", state: "built", path: "sandbox_proxy", ops: ["fs.search_paths", "fs.search_content"], platforms: ALL, summary: "Find files by name or content" },
|
|
1632
2098
|
{ name: "shell_execute", group: "files_shell", state: "built", path: "sandbox_proxy", ops: ["exec.run"], platforms: ALL, summary: "Run a command; cd carries over" },
|
|
1633
2099
|
{ name: "shell_python", group: "files_shell", state: "built", path: "sandbox_proxy", ops: ["exec.run"], platforms: ALL, summary: "Run a Python script" },
|
|
1634
|
-
{ name: "shell_job", group: "files_shell", state: "
|
|
2100
|
+
{ name: "shell_job", group: "files_shell", state: "built", path: "device_op", ops: ["exec.job.start", "exec.job.output", "exec.job.stop", "exec.job.list"], platforms: ALL, summary: "Background commands: start, read output, stop" },
|
|
1635
2101
|
// ── 2. Computer control (TS owners) ──────────────────────────────────────────────────────────
|
|
1636
2102
|
{ name: "desktop_process", group: "os_control", state: "built", path: "device_op", ops: ["proc.list", "proc.ports", "proc.kill"], platforms: ALL, summary: "Running processes and ports; stop one" },
|
|
1637
|
-
{ name: "desktop_apps", group: "os_control", state: "
|
|
1638
|
-
{ name: "desktop_system", group: "os_control", state: "
|
|
2103
|
+
{ name: "desktop_apps", group: "os_control", state: "built", path: "device_op", ops: ["apps.list", "apps.open"], platforms: ALL, summary: "Installed apps; open or bring one forward" },
|
|
2104
|
+
{ name: "desktop_system", group: "os_control", state: "built", path: "device_op", ops: ["sysinfo.get", "system.open_url", "system.open_path", "system.notify"], platforms: ALL, summary: "System facts, open, notify" },
|
|
1639
2105
|
{ 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" },
|
|
1640
|
-
{ name: "desktop_screen", group: "os_control", state: "
|
|
1641
|
-
{ name: "desktop_window", group: "os_control", state: "
|
|
1642
|
-
{ name: "desktop_input", group: "os_control", state: "
|
|
2106
|
+
{ name: "desktop_screen", group: "os_control", state: "built", path: "device_op", ops: ["screen.list", "screen.capture"], platforms: ALL, summary: "Displays and screenshots" },
|
|
2107
|
+
{ 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" },
|
|
2108
|
+
{ name: "desktop_input", group: "os_control", state: "built", path: "device_op", ops: ["input.type_text", "input.hotkey", "input.mouse_click", "input.mouse_move"], platforms: ALL, summary: "Keyboard and mouse" },
|
|
1643
2109
|
{ name: "desktop_audio", group: "os_control", state: "planned", path: "device_op", ops: ["audio.devices", "audio.record", "audio.play"], platforms: ALL, summary: "Audio devices, record, play" },
|
|
1644
|
-
{ name: "desktop_power", group: "os_control", state: "
|
|
1645
|
-
{ name: "desktop_resources", group: "os_control", state: "
|
|
1646
|
-
{ name: "fs_watch", group: "os_control", state: "
|
|
2110
|
+
{ name: "desktop_power", group: "os_control", state: "built", path: "device_op", ops: ["power.status", "power.prevent_sleep"], platforms: ALL, summary: "Battery and keep awake" },
|
|
2111
|
+
{ name: "desktop_resources", group: "os_control", state: "built", path: "device_op", ops: ["resources.snapshot"], platforms: ALL, summary: "CPU, memory and disk use" },
|
|
2112
|
+
{ name: "fs_watch", group: "os_control", state: "built", path: "device_op", ops: ["fs.watch.start", "fs.watch.events", "fs.watch.stop"], platforms: ALL, summary: "Watch a folder; read what changed" },
|
|
1647
2113
|
// ── 3. Personal apps and automation ──────────────────────────────────────────────────────────
|
|
1648
2114
|
{ name: "desktop_automation", group: "personal_automation", state: "planned", path: "device_op", ops: ["automation.script"], platforms: ["darwin", "win32"], summary: "AppleScript on a Mac, PowerShell on Windows" },
|
|
1649
2115
|
{ name: "desktop_mail", group: "personal_automation", state: "planned", path: "device_op", ops: ["mail.accounts", "mail.list", "mail.send"], platforms: ["darwin"], summary: "The Mail app" },
|
|
@@ -1744,7 +2210,7 @@ var LEGACY_ACTIONS = {
|
|
|
1744
2210
|
"local_monitor.resources": tool("desktop_resources"),
|
|
1745
2211
|
"local_monitor.battery": tool("desktop_power"),
|
|
1746
2212
|
"local_monitor.disk_usage": tool("desktop_resources"),
|
|
1747
|
-
"local_monitor.top_processes": tool("
|
|
2213
|
+
"local_monitor.top_processes": tool("desktop_process"),
|
|
1748
2214
|
"local_monitor.watch_directory": tool("fs_watch"),
|
|
1749
2215
|
"local_monitor.watch_events": tool("fs_watch"),
|
|
1750
2216
|
"local_monitor.stop_watch": tool("fs_watch"),
|