@ai-matrx/desktop-protocol 0.21.29 → 0.21.31
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 +1538 -768
- package/dist/client.cjs.map +1 -1
- package/dist/client.d.cts +7 -2
- package/dist/client.d.ts +7 -2
- package/dist/client.js +1538 -768
- package/dist/client.js.map +1 -1
- package/dist/index.cjs +1504 -471
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +3144 -263
- package/dist/index.d.ts +3144 -263
- package/dist/index.js +1504 -471
- package/dist/index.js.map +1 -1
- package/dist/{models-BpzT2hqF.d.cts → models-C4JytZ8c.d.cts} +8152 -3380
- package/dist/{models-BpzT2hqF.d.ts → models-C4JytZ8c.d.ts} +8152 -3380
- package/dist/react.d.cts +2102 -120
- package/dist/react.d.ts +2102 -120
- package/generated/desktop-protocol.schema.json +11118 -6179
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import { UUID_SHAPE_PATTERN } from "@ai-matrx/kit/uuid";
|
|
4
4
|
var PROTOCOL_MAJOR = 1;
|
|
5
|
-
var PROTOCOL_MINOR =
|
|
5
|
+
var PROTOCOL_MINOR = 41;
|
|
6
6
|
var PROTOCOL_VERSION = `${PROTOCOL_MAJOR}.${PROTOCOL_MINOR}`;
|
|
7
7
|
var ProtocolVersion = z.string().regex(/^[1-9][0-9]{0,2}\.[0-9]{1,3}$/);
|
|
8
8
|
var RequestId = z.string().min(1).max(64).regex(/^[A-Za-z0-9_-]+$/);
|
|
@@ -394,8 +394,17 @@ var OsPermissionName = z5.enum([
|
|
|
394
394
|
"location",
|
|
395
395
|
"local_network",
|
|
396
396
|
"bluetooth",
|
|
397
|
-
"notifications"
|
|
397
|
+
"notifications",
|
|
398
|
+
// (1.41) Matrx Local's remaining kinds, checked on every OS (its permissions checker): a peer
|
|
399
|
+
// older than 1.41 is never sent these rows (versioning.ts PERMISSIONS_SINCE).
|
|
400
|
+
"reminders",
|
|
401
|
+
"speech_recognition",
|
|
402
|
+
"messages",
|
|
403
|
+
"mail",
|
|
404
|
+
"wifi"
|
|
398
405
|
]);
|
|
406
|
+
var OsGrantState = z5.enum(["granted", "denied", "not_determined", "not_applicable"]);
|
|
407
|
+
var OsRequirementName = z5.enum(["secret_storage", "tray", "display_server", "helper_programs", "smart_app_control", "path_length"]);
|
|
399
408
|
var SysinfoGetParams = z5.strictObject({});
|
|
400
409
|
var SysinfoGetResult = z5.strictObject({
|
|
401
410
|
device_id: DeviceId,
|
|
@@ -425,9 +434,20 @@ var SysinfoGetResult = z5.strictObject({
|
|
|
425
434
|
z5.strictObject({
|
|
426
435
|
name: OsPermissionName,
|
|
427
436
|
state: z5.enum(["granted", "denied", "not_determined", "not_applicable"]),
|
|
428
|
-
settings_url: z5.string().max(512).nullable()
|
|
437
|
+
settings_url: z5.string().max(512).nullable(),
|
|
438
|
+
/** (1.41) One short fact when the state alone does not say it ("No camera", "Bluetooth is off"); absent when there is none. */
|
|
439
|
+
detail: z5.string().max(256).optional()
|
|
429
440
|
})
|
|
430
|
-
)
|
|
441
|
+
),
|
|
442
|
+
/** (1.41) The requirements beyond the grants (OsRequirementName), each read when asked. */
|
|
443
|
+
requirements: z5.array(
|
|
444
|
+
z5.strictObject({
|
|
445
|
+
name: OsRequirementName,
|
|
446
|
+
state: OsGrantState,
|
|
447
|
+
settings_url: z5.string().max(512).nullable(),
|
|
448
|
+
detail: z5.string().max(256).nullable()
|
|
449
|
+
})
|
|
450
|
+
).optional()
|
|
431
451
|
});
|
|
432
452
|
var SysinfoHardwareParams = z5.strictObject({});
|
|
433
453
|
var SysinfoHardwareResult = z5.strictObject({
|
|
@@ -926,7 +946,22 @@ var AccountAgent = z11.strictObject({
|
|
|
926
946
|
shared_by: z11.string().max(320).nullable(),
|
|
927
947
|
/** The organization it belongs to. */
|
|
928
948
|
organization: z11.string().max(200).nullable(),
|
|
929
|
-
updated_at_ms: epochMs
|
|
949
|
+
updated_at_ms: epochMs,
|
|
950
|
+
// 1.39: the catalogue's own row (agx_get_list_full, read whole through @ai-matrx/agents/catalog).
|
|
951
|
+
/** The agent's tags (the library's search and its inspector). */
|
|
952
|
+
tags: z11.array(z11.string().max(120)).max(50).optional(),
|
|
953
|
+
/** The model it runs (a model catalogue id); absent when it names none. */
|
|
954
|
+
model_id: AccountRowId.optional(),
|
|
955
|
+
/** The person's access: owner, admin, editor, viewer or system (the database's own words); absent when unknown. */
|
|
956
|
+
access_level: z11.string().min(1).max(40).optional(),
|
|
957
|
+
/** The organization's id (the label is `organization`); absent when it has none. */
|
|
958
|
+
organization_id: AccountRowId.optional(),
|
|
959
|
+
/** Whose it is: the person's own, shared with them, or one AI Matrx ships (Gallery). */
|
|
960
|
+
origin: z11.enum(["mine", "shared", "system"]).optional(),
|
|
961
|
+
/** Archived (the catalogue's archive filter decides whether the library lists it). */
|
|
962
|
+
is_archived: z11.boolean().optional(),
|
|
963
|
+
/** An orchestra: it conducts other agents. */
|
|
964
|
+
orchestra: z11.boolean().optional()
|
|
930
965
|
});
|
|
931
966
|
var AccountAgentsListParams = z11.strictObject({});
|
|
932
967
|
var AccountAgentsListResult = z11.strictObject({
|
|
@@ -935,6 +970,70 @@ var AccountAgentsListResult = z11.strictObject({
|
|
|
935
970
|
problem: z11.string().max(300).nullable(),
|
|
936
971
|
agents: z11.array(AccountAgent).max(2e3)
|
|
937
972
|
});
|
|
973
|
+
var AccountAgentVariable = z11.strictObject({
|
|
974
|
+
name: z11.string().min(1).max(200),
|
|
975
|
+
/** The default value as text ("" when it has none). */
|
|
976
|
+
default_value: z11.string().max(4e3),
|
|
977
|
+
required: z11.boolean(),
|
|
978
|
+
help: z11.string().max(1e3)
|
|
979
|
+
});
|
|
980
|
+
var AccountAgentDetail = z11.strictObject({
|
|
981
|
+
agent: AccountAgent,
|
|
982
|
+
/** The inputs a run asks for (the agent's variables). */
|
|
983
|
+
variables: z11.array(AccountAgentVariable).max(100),
|
|
984
|
+
/** How many tools, custom tools, skills and connections it may use. */
|
|
985
|
+
tool_count: z11.int().min(0),
|
|
986
|
+
custom_tool_count: z11.int().min(0),
|
|
987
|
+
skill_count: z11.int().min(0),
|
|
988
|
+
connection_count: z11.int().min(0),
|
|
989
|
+
/** The model's display name when the catalogue knows it. */
|
|
990
|
+
model_name: z11.string().max(200).nullable()
|
|
991
|
+
});
|
|
992
|
+
var AccountAgentsGetParams = z11.strictObject({ agent_id: AccountRowId });
|
|
993
|
+
var AccountAgentsGetResult = z11.strictObject({
|
|
994
|
+
state: AccountReadState,
|
|
995
|
+
problem: z11.string().max(300).nullable(),
|
|
996
|
+
/** Null when the person cannot open it (not theirs, not shared with them, or gone). */
|
|
997
|
+
detail: AccountAgentDetail.nullable()
|
|
998
|
+
});
|
|
999
|
+
var AccountAgentRunStatus = z11.enum(["succeeded", "warned", "failed", "stopped", "waiting", "running"]);
|
|
1000
|
+
var AccountAgentRun = z11.strictObject({
|
|
1001
|
+
run_id: AccountRowId,
|
|
1002
|
+
status: AccountAgentRunStatus,
|
|
1003
|
+
started_at_ms: epochMs,
|
|
1004
|
+
completed_at_ms: epochMs.nullable(),
|
|
1005
|
+
duration_ms: z11.int().min(0).nullable(),
|
|
1006
|
+
cost: z11.number().min(0).nullable(),
|
|
1007
|
+
tokens: z11.int().min(0).nullable(),
|
|
1008
|
+
/** One line of the answer (at most 240 characters), when the run kept one. */
|
|
1009
|
+
output_preview: z11.string().max(240).nullable(),
|
|
1010
|
+
/** The run's error, one line. */
|
|
1011
|
+
error: z11.string().max(300).nullable(),
|
|
1012
|
+
/** The mandate it served, when one named it. */
|
|
1013
|
+
mandate_key: z11.string().max(200).nullable(),
|
|
1014
|
+
organization: z11.string().max(200).nullable(),
|
|
1015
|
+
/** The conversation that holds its transcript, when it kept one. */
|
|
1016
|
+
conversation_id: AccountRowId.nullable(),
|
|
1017
|
+
has_transcript: z11.boolean()
|
|
1018
|
+
});
|
|
1019
|
+
var AccountAgentRunSort = z11.enum(["started_at", "duration", "cost", "status"]);
|
|
1020
|
+
var AccountAgentsRunsParams = z11.strictObject({
|
|
1021
|
+
agent_id: AccountRowId,
|
|
1022
|
+
status: AccountAgentRunStatus.optional(),
|
|
1023
|
+
sort: AccountAgentRunSort.optional(),
|
|
1024
|
+
descending: z11.boolean().optional(),
|
|
1025
|
+
offset: z11.int().min(0).max(1e5).optional(),
|
|
1026
|
+
limit: z11.int().min(1).max(100).optional()
|
|
1027
|
+
});
|
|
1028
|
+
var AccountAgentsRunsResult = z11.strictObject({
|
|
1029
|
+
state: AccountReadState,
|
|
1030
|
+
problem: z11.string().max(300).nullable(),
|
|
1031
|
+
/** Every run of this agent the person may see (rows is one page of it). */
|
|
1032
|
+
total: z11.int().min(0),
|
|
1033
|
+
rows: z11.array(AccountAgentRun).max(100)
|
|
1034
|
+
});
|
|
1035
|
+
var AccountAgentsFavoriteParams = z11.strictObject({ agent_id: AccountRowId, favorite: z11.boolean() });
|
|
1036
|
+
var AccountAgentsFavoriteResult = z11.strictObject({ favorite: z11.boolean() });
|
|
938
1037
|
var VaultItemKind = z11.enum(["login", "passkey", "key", "other"]);
|
|
939
1038
|
var VaultFieldSummary = z11.strictObject({
|
|
940
1039
|
key: z11.string().min(1).max(120),
|
|
@@ -1787,10 +1886,12 @@ var GitCloneParams = z19.strictObject({
|
|
|
1787
1886
|
});
|
|
1788
1887
|
|
|
1789
1888
|
// src/schema/web.ts
|
|
1889
|
+
import { UUID_SHAPE_PATTERN as UUID_SHAPE_PATTERN4 } from "@ai-matrx/kit/uuid";
|
|
1790
1890
|
import { z as z20 } from "zod";
|
|
1791
1891
|
var WEB_MAX_TEXT_CHARS = 524288;
|
|
1792
1892
|
var WebUrl = z20.string().min(1).max(8192).regex(/^https?:\/\//);
|
|
1793
1893
|
var WebText = z20.string().max(WEB_MAX_TEXT_CHARS);
|
|
1894
|
+
var OrgId = z20.string().regex(UUID_SHAPE_PATTERN4);
|
|
1794
1895
|
var WebHeader = z20.strictObject({ name: z20.string().min(1).max(256), value: z20.string().max(8192) });
|
|
1795
1896
|
var WebFetchParams = z20.strictObject({
|
|
1796
1897
|
url: WebUrl,
|
|
@@ -1812,10 +1913,65 @@ var WebFetchResult = z20.strictObject({
|
|
|
1812
1913
|
bytes: nonNegInt,
|
|
1813
1914
|
elapsed_ms: nonNegInt
|
|
1814
1915
|
});
|
|
1916
|
+
var WebAttachTarget = z20.strictObject({
|
|
1917
|
+
entity_type: z20.string().min(1).max(64),
|
|
1918
|
+
entity_id: z20.string().min(1).max(128),
|
|
1919
|
+
label: z20.string().max(200).optional()
|
|
1920
|
+
});
|
|
1921
|
+
var WebLand = z20.strictObject({
|
|
1922
|
+
/** The organization the page is saved in; absent: this computer's active organization. */
|
|
1923
|
+
organization_id: OrgId.optional(),
|
|
1924
|
+
/** Keep it: AI processing starts (chunks, search). Unkept pages are saved and wait. */
|
|
1925
|
+
keep: z20.boolean().default(false),
|
|
1926
|
+
attach_to: z20.array(WebAttachTarget).max(8).default([])
|
|
1927
|
+
});
|
|
1928
|
+
var WebNotSavedReason = z20.enum([
|
|
1929
|
+
/** Nobody is signed in on this computer. Saved on sign-in. */
|
|
1930
|
+
"signed_out",
|
|
1931
|
+
/** AI Matrx could not be reached. Retried on its own. */
|
|
1932
|
+
"offline",
|
|
1933
|
+
/** AI Matrx refused it (the message says why). Kept until the person retries or discards it. */
|
|
1934
|
+
"rejected",
|
|
1935
|
+
/** Waiting its turn behind other pages (retried on its own). */
|
|
1936
|
+
"queued"
|
|
1937
|
+
]);
|
|
1938
|
+
var WebSourceNotice = z20.strictObject({ code: z20.string().max(120), message: z20.string().max(2e3), remedy: z20.string().max(120) });
|
|
1939
|
+
var WebSourceState = z20.discriminatedUnion("state", [
|
|
1940
|
+
z20.strictObject({
|
|
1941
|
+
state: z20.literal("saved"),
|
|
1942
|
+
processed_document_id: z20.string().min(1).max(64),
|
|
1943
|
+
source_id: z20.string().min(1).max(128),
|
|
1944
|
+
/** The page was already saved and nothing changed ("Already saved, no change"). */
|
|
1945
|
+
reused_existing: z20.boolean(),
|
|
1946
|
+
/** The page changed: this is a new version of that Source. */
|
|
1947
|
+
new_version_of: z20.string().max(64).nullable(),
|
|
1948
|
+
kept: z20.boolean(),
|
|
1949
|
+
intelligence: z20.enum(["queued", "deferred", "never"]),
|
|
1950
|
+
/** The original page as captured, kept by AI Matrx (null: the organization keeps none). */
|
|
1951
|
+
original_file_id: z20.string().max(128).nullable(),
|
|
1952
|
+
/** The organization it was saved in. */
|
|
1953
|
+
organization_id: OrgId,
|
|
1954
|
+
notices: z20.array(WebSourceNotice).max(20)
|
|
1955
|
+
}),
|
|
1956
|
+
z20.strictObject({
|
|
1957
|
+
state: z20.literal("not_saved"),
|
|
1958
|
+
outbox_id: z20.string().min(1).max(64),
|
|
1959
|
+
reason: WebNotSavedReason,
|
|
1960
|
+
message: z20.string().max(2e3)
|
|
1961
|
+
})
|
|
1962
|
+
]);
|
|
1815
1963
|
var WebScrapeParams = z20.strictObject({
|
|
1816
1964
|
urls: z20.array(WebUrl).min(1).max(20),
|
|
1817
1965
|
use_cache: z20.boolean().default(true),
|
|
1818
|
-
get_links: z20.boolean().default(false)
|
|
1966
|
+
get_links: z20.boolean().default(false),
|
|
1967
|
+
/**
|
|
1968
|
+
* Since 1.38. `auto` (absent): this computer's scraper (HTTP, its browser only when a page needs
|
|
1969
|
+
* it). `browser`: this computer's own browser renders every page. `server`: AI Matrx's servers
|
|
1970
|
+
* read it (their connection, not this computer's; saved there as a web capture).
|
|
1971
|
+
*/
|
|
1972
|
+
engine: z20.enum(["auto", "browser", "server"]).optional(),
|
|
1973
|
+
/** Since 1.38: where the pages are saved (see WebLand). */
|
|
1974
|
+
land: WebLand.optional()
|
|
1819
1975
|
});
|
|
1820
1976
|
var WebScrapePage = z20.strictObject({
|
|
1821
1977
|
url: z20.string(),
|
|
@@ -1830,7 +1986,9 @@ var WebScrapePage = z20.strictObject({
|
|
|
1830
1986
|
/** Why the page failed (blocked, timeout, not found…), in the scraper's words; null when ok. */
|
|
1831
1987
|
error: z20.string().nullable(),
|
|
1832
1988
|
/** How the page was fetched (http, browser, cache). */
|
|
1833
|
-
via: z20.string().nullable()
|
|
1989
|
+
via: z20.string().nullable(),
|
|
1990
|
+
/** Since 1.38: the page's Source (absent from a 1.37 core, and for a page that failed). */
|
|
1991
|
+
source: WebSourceState.optional()
|
|
1834
1992
|
});
|
|
1835
1993
|
var WebScrapeResult = z20.strictObject({ pages: z20.array(WebScrapePage), elapsed_ms: nonNegInt });
|
|
1836
1994
|
var WebSearchParams = z20.strictObject({
|
|
@@ -1854,7 +2012,9 @@ var WebBrowserFetchParams = z20.strictObject({
|
|
|
1854
2012
|
wait_for: z20.string().max(1024).optional(),
|
|
1855
2013
|
wait_timeout_ms: z20.int().min(100).max(12e4).default(3e4),
|
|
1856
2014
|
/** true: readable text; false: the rendered HTML. */
|
|
1857
|
-
extract_text: z20.boolean().default(true)
|
|
2015
|
+
extract_text: z20.boolean().default(true),
|
|
2016
|
+
/** Since 1.38: where the rendered page is saved (see WebLand). */
|
|
2017
|
+
land: WebLand.optional()
|
|
1858
2018
|
});
|
|
1859
2019
|
var WebBrowserFetchResult = z20.strictObject({
|
|
1860
2020
|
url: z20.string(),
|
|
@@ -1862,7 +2022,137 @@ var WebBrowserFetchResult = z20.strictObject({
|
|
|
1862
2022
|
title: z20.string().nullable(),
|
|
1863
2023
|
content: WebText,
|
|
1864
2024
|
truncated: z20.boolean(),
|
|
1865
|
-
elapsed_ms: nonNegInt
|
|
2025
|
+
elapsed_ms: nonNegInt,
|
|
2026
|
+
/** Since 1.38: the rendered page's Source (absent from a 1.37 core). */
|
|
2027
|
+
source: WebSourceState.optional()
|
|
2028
|
+
});
|
|
2029
|
+
var ToolsParseFile = z20.strictObject({
|
|
2030
|
+
/** Absolute path of the gzipped JSON the core reads, saves and then removes. */
|
|
2031
|
+
path: z20.string().min(1).max(4096),
|
|
2032
|
+
bytes: nonNegInt
|
|
2033
|
+
});
|
|
2034
|
+
var ToolsWebScrapeParams = z20.strictObject({
|
|
2035
|
+
urls: z20.array(WebUrl).min(1).max(20),
|
|
2036
|
+
use_cache: z20.boolean().default(true),
|
|
2037
|
+
get_links: z20.boolean().default(false),
|
|
2038
|
+
/** `browser`: render every page in this computer's browser, then parse it. */
|
|
2039
|
+
engine: z20.enum(["auto", "browser"]).default("auto"),
|
|
2040
|
+
/** Pages read at once (desktop.web/scrape_concurrency). */
|
|
2041
|
+
concurrency: z20.int().min(1).max(20).default(5),
|
|
2042
|
+
/** The wait between pages from the same site (desktop.web/request_delay_ms). */
|
|
2043
|
+
delay_ms: z20.int().min(0).max(3e4).default(0),
|
|
2044
|
+
/** Where the parse files go (the core's spool folder). */
|
|
2045
|
+
spool_dir: z20.string().min(1).max(4096)
|
|
2046
|
+
});
|
|
2047
|
+
var ToolsWebScrapePage = z20.strictObject({
|
|
2048
|
+
page: WebScrapePage,
|
|
2049
|
+
/** The page's whole parse, for the door; null when the page failed or had no words. */
|
|
2050
|
+
parse: ToolsParseFile.nullable(),
|
|
2051
|
+
/** The page as fetched, for research (rendered HTML or the HTTP body); null when not kept. */
|
|
2052
|
+
html: ToolsParseFile.nullable()
|
|
2053
|
+
});
|
|
2054
|
+
var ToolsWebScrapeResult = z20.strictObject({ pages: z20.array(ToolsWebScrapePage), elapsed_ms: nonNegInt });
|
|
2055
|
+
var ToolsWebBrowserFetchParams = z20.strictObject({
|
|
2056
|
+
url: WebUrl,
|
|
2057
|
+
wait_for: z20.string().max(1024).optional(),
|
|
2058
|
+
wait_timeout_ms: z20.int().min(100).max(12e4).default(3e4),
|
|
2059
|
+
extract_text: z20.boolean().default(true),
|
|
2060
|
+
spool_dir: z20.string().min(1).max(4096)
|
|
2061
|
+
});
|
|
2062
|
+
var ToolsWebBrowserFetchResult = z20.strictObject({ result: WebBrowserFetchResult, parse: ToolsParseFile.nullable() });
|
|
2063
|
+
var WebRuntimeStateName = z20.enum(["not_installed", "installing", "installed", "failed"]);
|
|
2064
|
+
var WebRuntimeParams = z20.strictObject({});
|
|
2065
|
+
var WebRuntimeState = z20.strictObject({
|
|
2066
|
+
state: WebRuntimeStateName,
|
|
2067
|
+
/** Why it failed, in the installer's words; null otherwise. */
|
|
2068
|
+
error: z20.string().max(2e3).nullable(),
|
|
2069
|
+
/** Bytes the browser takes on this computer (its packages and Chromium); null when unknown. */
|
|
2070
|
+
size_bytes: nonNegInt.nullable(),
|
|
2071
|
+
/** Whether it can show a window while it works (false: only the headless shell is installed). */
|
|
2072
|
+
can_show_window: z20.boolean()
|
|
2073
|
+
});
|
|
2074
|
+
var WebOutboxItem = z20.strictObject({
|
|
2075
|
+
outbox_id: z20.string().min(1).max(64),
|
|
2076
|
+
url: z20.string().max(8192),
|
|
2077
|
+
title: z20.string().max(500).nullable(),
|
|
2078
|
+
organization_id: OrgId.nullable(),
|
|
2079
|
+
reason: WebNotSavedReason,
|
|
2080
|
+
message: z20.string().max(2e3),
|
|
2081
|
+
attempts: nonNegInt,
|
|
2082
|
+
created_at_ms: nonNegInt,
|
|
2083
|
+
last_attempt_at_ms: nonNegInt.nullable(),
|
|
2084
|
+
bytes: nonNegInt
|
|
2085
|
+
});
|
|
2086
|
+
var WebOutboxListParams = z20.strictObject({});
|
|
2087
|
+
var WebOutboxListResult = z20.strictObject({
|
|
2088
|
+
items: z20.array(WebOutboxItem),
|
|
2089
|
+
bytes: nonNegInt,
|
|
2090
|
+
/** The most the outbox holds; past it the oldest pages are dropped (and the log says so). */
|
|
2091
|
+
cap_bytes: nonNegInt
|
|
2092
|
+
});
|
|
2093
|
+
var WebOutboxRetryParams = z20.strictObject({ outbox_id: z20.string().min(1).max(64).optional() });
|
|
2094
|
+
var WebOutboxRetryResult = z20.strictObject({ saved: nonNegInt, waiting: nonNegInt });
|
|
2095
|
+
var WebOutboxDiscardParams = z20.strictObject({ outbox_id: z20.string().min(1).max(64) });
|
|
2096
|
+
var WebOutboxDiscardResult = z20.strictObject({ discarded: z20.boolean() });
|
|
2097
|
+
var WebLogVia = z20.enum(["this_computer", "browser", "server"]);
|
|
2098
|
+
var WebLogCaller = z20.enum(["person", "agent", "research", "phone", "other"]);
|
|
2099
|
+
var WebLogResult = z20.enum(["saved", "not_saved", "failed", "blocked", "read"]);
|
|
2100
|
+
var WebLogEntry = z20.strictObject({
|
|
2101
|
+
id: z20.string().min(1).max(64),
|
|
2102
|
+
at_ms: nonNegInt,
|
|
2103
|
+
caller: WebLogCaller,
|
|
2104
|
+
url: z20.string().max(8192),
|
|
2105
|
+
title: z20.string().max(500).nullable(),
|
|
2106
|
+
result: WebLogResult,
|
|
2107
|
+
/** One sentence: why it failed or was blocked, or the save's notice. Never page text. */
|
|
2108
|
+
detail: z20.string().max(1e3).nullable(),
|
|
2109
|
+
via: WebLogVia,
|
|
2110
|
+
duration_ms: nonNegInt,
|
|
2111
|
+
processed_document_id: z20.string().max(64).nullable()
|
|
2112
|
+
});
|
|
2113
|
+
var WebLogListParams = z20.strictObject({ since_ms: nonNegInt.optional(), limit: z20.int().min(1).max(1e3).default(200) });
|
|
2114
|
+
var WebLogListResult = z20.strictObject({ entries: z20.array(WebLogEntry) });
|
|
2115
|
+
var WebLogClearParams = z20.strictObject({});
|
|
2116
|
+
var WebLogClearResult = z20.strictObject({ cleared: nonNegInt });
|
|
2117
|
+
var WebProgressEvent = z20.strictObject({
|
|
2118
|
+
request_id: RequestId,
|
|
2119
|
+
phase: z20.enum(["installing", "fetching", "saving"]),
|
|
2120
|
+
done: nonNegInt,
|
|
2121
|
+
total: nonNegInt
|
|
2122
|
+
});
|
|
2123
|
+
var WebResearchItemState = z20.enum(["waiting", "fetching", "saved", "thin", "failed", "cannot_edit", "blocked"]);
|
|
2124
|
+
var WebResearchItem = z20.strictObject({
|
|
2125
|
+
topic_id: z20.string().min(1).max(64),
|
|
2126
|
+
topic_name: z20.string().max(500),
|
|
2127
|
+
source_id: z20.string().min(1).max(64),
|
|
2128
|
+
url: z20.string().max(8192),
|
|
2129
|
+
title: z20.string().max(500).nullable(),
|
|
2130
|
+
/** The capture level this computer would try (1 quick, 2 scroll); 3+ is the extension's. */
|
|
2131
|
+
level: z20.int().min(1).max(4),
|
|
2132
|
+
last_failure: z20.string().max(1e3).nullable(),
|
|
2133
|
+
state: WebResearchItemState,
|
|
2134
|
+
/** One sentence after a fetch: what happened. */
|
|
2135
|
+
message: z20.string().max(1e3).nullable()
|
|
2136
|
+
});
|
|
2137
|
+
var WebResearchQueueParams = z20.strictObject({ topic_id: z20.string().min(1).max(64).optional() });
|
|
2138
|
+
var WebResearchQueueResult = z20.strictObject({
|
|
2139
|
+
state: z20.enum(["ready", "signed_out", "unavailable"]),
|
|
2140
|
+
problem: z20.string().max(1e3).nullable(),
|
|
2141
|
+
/** L1/L2 items on topics this person can edit: what this computer can fetch. */
|
|
2142
|
+
items: z20.array(WebResearchItem),
|
|
2143
|
+
/** Items on topics the person can view but not add to (shown, never fetched). */
|
|
2144
|
+
view_only: nonNegInt
|
|
2145
|
+
});
|
|
2146
|
+
var WebResearchFetchParams = z20.strictObject({
|
|
2147
|
+
topic_id: z20.string().min(1).max(64).optional(),
|
|
2148
|
+
source_ids: z20.array(z20.string().min(1).max(64)).max(200).optional()
|
|
2149
|
+
});
|
|
2150
|
+
var WebResearchFetchResult = z20.strictObject({
|
|
2151
|
+
items: z20.array(WebResearchItem),
|
|
2152
|
+
saved: nonNegInt,
|
|
2153
|
+
thin: nonNegInt,
|
|
2154
|
+
failed: nonNegInt,
|
|
2155
|
+
cannot_edit: nonNegInt
|
|
1866
2156
|
});
|
|
1867
2157
|
var ToolsServiceProgress = z20.strictObject({ phase: z20.enum(["fetching", "installing"]), done: nonNegInt, total: nonNegInt });
|
|
1868
2158
|
|
|
@@ -1900,7 +2190,27 @@ var SystemSettingsPane = z21.enum([
|
|
|
1900
2190
|
"storage",
|
|
1901
2191
|
"system_report",
|
|
1902
2192
|
/** (1.35) Privacy & Security › Microphone: where the person allows Matrx 2 the microphone. */
|
|
1903
|
-
"microphone"
|
|
2193
|
+
"microphone",
|
|
2194
|
+
// (1.41) Each other privacy grant's own page (Settings › Permissions and privacy's buttons), named
|
|
2195
|
+
// as sysinfo's OsPermissionName so a row opens its pane by its own name. A 1.40 core refuses these
|
|
2196
|
+
// as INVALID_PARAMS, so a client asks only a 1.41 core for them.
|
|
2197
|
+
"full_disk_access",
|
|
2198
|
+
"accessibility",
|
|
2199
|
+
"screen_recording",
|
|
2200
|
+
"camera",
|
|
2201
|
+
"automation",
|
|
2202
|
+
"contacts",
|
|
2203
|
+
"calendars",
|
|
2204
|
+
"reminders",
|
|
2205
|
+
"photos",
|
|
2206
|
+
"location",
|
|
2207
|
+
"local_network",
|
|
2208
|
+
"bluetooth",
|
|
2209
|
+
"wifi",
|
|
2210
|
+
"notifications",
|
|
2211
|
+
"speech_recognition",
|
|
2212
|
+
"messages",
|
|
2213
|
+
"mail"
|
|
1904
2214
|
]);
|
|
1905
2215
|
var SystemOpenSettingsParams = z21.strictObject({ pane: SystemSettingsPane });
|
|
1906
2216
|
var SystemOpenSettingsResult = z21.strictObject({ pane: SystemSettingsPane });
|
|
@@ -2606,10 +2916,10 @@ var ExecJobListResult = z31.strictObject({ jobs: z31.array(ExecJobInfo).max(64)
|
|
|
2606
2916
|
|
|
2607
2917
|
// src/schema/coding.ts
|
|
2608
2918
|
import { z as z32 } from "zod";
|
|
2609
|
-
import { UUID_SHAPE_PATTERN as
|
|
2919
|
+
import { UUID_SHAPE_PATTERN as UUID_SHAPE_PATTERN5 } from "@ai-matrx/kit/uuid";
|
|
2610
2920
|
var CodingServiceCredentials = z32.strictObject({
|
|
2611
2921
|
access_token: z32.string().min(16).max(16384),
|
|
2612
|
-
user_id: z32.string().regex(
|
|
2922
|
+
user_id: z32.string().regex(UUID_SHAPE_PATTERN5),
|
|
2613
2923
|
/** The AI Matrx server this app talks to (production, or a local server on the nightly copy). */
|
|
2614
2924
|
server_url: z32.string().min(1).max(2048).regex(/^https?:\/\/[^\s/?#]+(\/[^\s?#]*)?$/)
|
|
2615
2925
|
});
|
|
@@ -2680,22 +2990,387 @@ var CodingHistoryProgressEvent = z32.strictObject({
|
|
|
2680
2990
|
failed: nonNegInt
|
|
2681
2991
|
});
|
|
2682
2992
|
|
|
2683
|
-
// src/schema/
|
|
2993
|
+
// src/schema/coding-sessions.ts
|
|
2684
2994
|
import { z as z33 } from "zod";
|
|
2685
|
-
var
|
|
2686
|
-
var
|
|
2687
|
-
var
|
|
2688
|
-
var
|
|
2995
|
+
var CodingProviderName = z33.enum(["claude", "codex"]);
|
|
2996
|
+
var CodingRunStatus = z33.enum(["starting", "running", "completed", "stopped", "failed"]);
|
|
2997
|
+
var SessionKey = z33.string().regex(/^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$/);
|
|
2998
|
+
var IsoTime = z33.string().min(10).max(40);
|
|
2999
|
+
var LocalPath = z33.string().min(1).max(4096);
|
|
3000
|
+
var CodingClientRequestId = z33.string().regex(/^[A-Za-z0-9_-]{8,64}$/);
|
|
3001
|
+
var ShortText = z33.string().max(500);
|
|
3002
|
+
var CodingRunUsage = z33.strictObject({
|
|
3003
|
+
inputTokens: nonNegInt,
|
|
3004
|
+
outputTokens: nonNegInt,
|
|
3005
|
+
cachedInputTokens: nonNegInt
|
|
3006
|
+
});
|
|
3007
|
+
var CodingStartedBy = z33.strictObject({
|
|
3008
|
+
kind: z33.enum(["this_computer", "web", "phone", "agent", "other"]),
|
|
3009
|
+
label: z33.string().min(1).max(80)
|
|
3010
|
+
});
|
|
3011
|
+
var CodingRunRecord = z33.strictObject({
|
|
3012
|
+
runId: z33.string().min(1).max(64),
|
|
3013
|
+
sessionId: SessionKey,
|
|
3014
|
+
provider: CodingProviderName,
|
|
3015
|
+
cwd: LocalPath,
|
|
3016
|
+
prompt: z33.string().max(1048576),
|
|
3017
|
+
model: z33.string().max(200).nullable(),
|
|
3018
|
+
status: CodingRunStatus,
|
|
3019
|
+
startedAt: IsoTime,
|
|
3020
|
+
endedAt: IsoTime.nullable(),
|
|
3021
|
+
error: z33.string().max(65536).nullable(),
|
|
3022
|
+
usage: CodingRunUsage.nullable(),
|
|
3023
|
+
costUsd: z33.number().nullable(),
|
|
3024
|
+
billing: z33.enum(["subscription", "api", "unknown"]).nullable(),
|
|
3025
|
+
startedBy: CodingStartedBy.nullable()
|
|
3026
|
+
});
|
|
3027
|
+
var CodingSessionAgentPart = z33.strictObject({
|
|
3028
|
+
part: z33.enum(["instructions", "skills", "tools"]),
|
|
3029
|
+
loaded: nonNegInt,
|
|
3030
|
+
total: nonNegInt
|
|
3031
|
+
});
|
|
3032
|
+
var CodingSessionAgent = z33.strictObject({
|
|
3033
|
+
agentId: z33.string().min(1).max(64),
|
|
3034
|
+
versionId: z33.string().max(64).nullable(),
|
|
3035
|
+
versionNumber: nonNegInt.nullable(),
|
|
3036
|
+
name: z33.string().max(300),
|
|
3037
|
+
definitionHash: z33.string().max(200),
|
|
3038
|
+
loaded: z33.array(CodingSessionAgentPart).max(3),
|
|
3039
|
+
unavailable: z33.array(z33.strictObject({ kind: z33.string().max(60), name: z33.string().max(300), reason: ShortText })).max(500),
|
|
3040
|
+
skills: z33.array(z33.string().max(300)).max(500),
|
|
3041
|
+
tools: z33.array(z33.string().max(300)).max(500),
|
|
3042
|
+
variables: z33.record(z33.string().max(200), z33.unknown()),
|
|
3043
|
+
blockDue: z33.boolean(),
|
|
3044
|
+
deliveredAt: IsoTime.nullable(),
|
|
3045
|
+
replaces: z33.string().max(300).nullable()
|
|
3046
|
+
});
|
|
3047
|
+
var CodingSessionRecord = z33.strictObject({
|
|
3048
|
+
id: SessionKey,
|
|
3049
|
+
provider: CodingProviderName,
|
|
3050
|
+
providerSessionId: SessionKey.nullable(),
|
|
3051
|
+
cwd: LocalPath,
|
|
3052
|
+
title: z33.string().max(500),
|
|
3053
|
+
model: z33.string().max(200).nullable(),
|
|
3054
|
+
effort: z33.string().max(40).nullable(),
|
|
3055
|
+
origin: z33.enum(["started", "takeover"]),
|
|
3056
|
+
createdAt: IsoTime,
|
|
3057
|
+
updatedAt: IsoTime,
|
|
3058
|
+
lastRunId: z33.string().max(64).nullable(),
|
|
3059
|
+
lastRunStatus: CodingRunStatus.nullable(),
|
|
3060
|
+
queued: z33.array(z33.string().max(1048576)).max(100),
|
|
3061
|
+
agent: CodingSessionAgent.nullable(),
|
|
3062
|
+
agentRemovedDue: z33.boolean()
|
|
3063
|
+
});
|
|
3064
|
+
var CodingActiveElsewhere = z33.strictObject({
|
|
3065
|
+
reason: z33.enum(["process", "recent-write", "open-tool-call", "open"]),
|
|
3066
|
+
message: ShortText,
|
|
3067
|
+
/** The process driving it, when the evidence is a process (re-checked before any stop). */
|
|
3068
|
+
pid: z33.int().min(1).nullable()
|
|
3069
|
+
});
|
|
3070
|
+
var CodingTitleSource = z33.enum(["app", "app-remembered", "custom-title", "ai-title", "agent-name", "summary", "first-prompt", "last-prompt", "unknown"]);
|
|
3071
|
+
var CodingDiscoveredChat = z33.strictObject({
|
|
3072
|
+
provider: CodingProviderName,
|
|
3073
|
+
providerSessionId: SessionKey,
|
|
3074
|
+
cwd: LocalPath.nullable(),
|
|
3075
|
+
title: z33.string().max(500),
|
|
3076
|
+
titleSource: CodingTitleSource.optional(),
|
|
3077
|
+
titlePending: z33.boolean().optional(),
|
|
3078
|
+
archived: z33.boolean().optional(),
|
|
3079
|
+
scheduled: z33.boolean().optional(),
|
|
3080
|
+
unlisted: z33.boolean().optional(),
|
|
3081
|
+
unavailable: ShortText.nullable(),
|
|
3082
|
+
updatedAt: IsoTime,
|
|
3083
|
+
source: z33.string().max(60).nullable(),
|
|
3084
|
+
activeElsewhere: CodingActiveElsewhere.nullable()
|
|
3085
|
+
});
|
|
3086
|
+
var CodingTranscriptItem = z33.discriminatedUnion("kind", [
|
|
3087
|
+
z33.strictObject({ kind: z33.literal("user"), id: z33.string().max(200), text: z33.string(), at: IsoTime.nullable() }),
|
|
3088
|
+
z33.strictObject({ kind: z33.literal("text"), id: z33.string().max(200), text: z33.string() }),
|
|
3089
|
+
z33.strictObject({ kind: z33.literal("text-delta"), id: z33.string().max(200), text: z33.string() }),
|
|
3090
|
+
z33.strictObject({ kind: z33.literal("reasoning"), id: z33.string().max(200), text: z33.string() }),
|
|
3091
|
+
z33.strictObject({ kind: z33.literal("tool-call"), id: z33.string().max(200), name: z33.string().max(300), input: z33.unknown() }),
|
|
3092
|
+
z33.strictObject({
|
|
3093
|
+
kind: z33.literal("tool-result"),
|
|
3094
|
+
id: z33.string().max(200),
|
|
3095
|
+
output: z33.string(),
|
|
3096
|
+
isError: z33.boolean(),
|
|
3097
|
+
/** The output's full size when only its start is here; `coding.item.full` reads the rest. */
|
|
3098
|
+
fullBytes: nonNegInt.optional()
|
|
3099
|
+
}),
|
|
3100
|
+
z33.strictObject({ kind: z33.literal("usage"), usage: CodingRunUsage, costUsd: z33.number().nullable() }),
|
|
3101
|
+
z33.strictObject({ kind: z33.literal("notice"), id: z33.string().max(200), level: z33.enum(["info", "warning"]), text: z33.string() }),
|
|
3102
|
+
z33.strictObject({ kind: z33.literal("error"), id: z33.string().max(200), text: z33.string() })
|
|
3103
|
+
]);
|
|
3104
|
+
var CodingHistoryRecord = z33.strictObject({
|
|
3105
|
+
items: z33.array(CodingTranscriptItem),
|
|
3106
|
+
/** Only the end of the chat is here; "Show earlier" reads more (a bigger `max_bytes`). */
|
|
3107
|
+
truncated: z33.boolean(),
|
|
3108
|
+
unavailable: ShortText.nullable(),
|
|
3109
|
+
/** The last live item `seq` this read already contains; a watch applies only newer ones. */
|
|
3110
|
+
seq: nonNegInt
|
|
3111
|
+
});
|
|
3112
|
+
var CodingQuotaWindow = z33.strictObject({
|
|
3113
|
+
label: z33.string().max(120),
|
|
3114
|
+
usedPercent: z33.number().nullable(),
|
|
3115
|
+
resetsAt: z33.string().max(80).nullable(),
|
|
3116
|
+
valueLabel: z33.string().max(120).nullable()
|
|
3117
|
+
});
|
|
3118
|
+
var CodingProviderProblem = z33.strictObject({
|
|
3119
|
+
kind: z33.enum(["usage-limit", "signed-out"]),
|
|
3120
|
+
message: z33.string().max(2e3),
|
|
3121
|
+
until: z33.string().max(120).nullable(),
|
|
3122
|
+
at: IsoTime
|
|
3123
|
+
});
|
|
3124
|
+
var CodingProviderBinary = z33.strictObject({
|
|
3125
|
+
path: LocalPath,
|
|
3126
|
+
version: z33.string().max(80).nullable(),
|
|
3127
|
+
source: z33.enum(["desktop-app", "path", "npm-global", "configured"]),
|
|
3128
|
+
sourceLabel: z33.string().max(120),
|
|
3129
|
+
newer: z33.strictObject({ path: LocalPath, version: z33.string().max(80), sourceLabel: z33.string().max(120) }).nullable()
|
|
3130
|
+
});
|
|
3131
|
+
var CodingProviderStatus = z33.strictObject({
|
|
3132
|
+
provider: CodingProviderName,
|
|
3133
|
+
label: z33.string().max(60),
|
|
3134
|
+
installed: z33.boolean(),
|
|
3135
|
+
version: z33.string().max(80).nullable(),
|
|
3136
|
+
loggedIn: z33.boolean(),
|
|
3137
|
+
billing: z33.enum(["subscription", "api", "unknown"]),
|
|
3138
|
+
plan: z33.string().max(80).nullable(),
|
|
3139
|
+
account: z33.string().max(320).nullable(),
|
|
3140
|
+
problem: ShortText.nullable(),
|
|
3141
|
+
fix: ShortText.nullable(),
|
|
3142
|
+
ready: z33.boolean(),
|
|
3143
|
+
lastProblem: CodingProviderProblem.nullable(),
|
|
3144
|
+
quota: z33.array(CodingQuotaWindow).max(20),
|
|
3145
|
+
models: z33.array(z33.strictObject({ id: z33.string().max(200), label: z33.string().max(200) })).max(200),
|
|
3146
|
+
efforts: z33.array(z33.string().max(40)).max(20),
|
|
3147
|
+
defaultModel: z33.strictObject({ id: z33.string().max(200), source: z33.enum(["settings", "driver"]) }).nullable(),
|
|
3148
|
+
defaultEffort: z33.string().max(40).nullable(),
|
|
3149
|
+
binary: CodingProviderBinary.nullable()
|
|
3150
|
+
});
|
|
3151
|
+
var CodingChatPreference = z33.strictObject({
|
|
3152
|
+
title: z33.string().max(500).nullable(),
|
|
3153
|
+
pinned: z33.boolean(),
|
|
3154
|
+
hidden: z33.boolean(),
|
|
3155
|
+
/** When the person last had this chat open on any screen of this computer (the "New output" dot). */
|
|
3156
|
+
lastSeenAt: IsoTime.nullable(),
|
|
3157
|
+
updatedAt: IsoTime.nullable()
|
|
3158
|
+
});
|
|
3159
|
+
var CodingTitleStatus = z33.strictObject({
|
|
3160
|
+
owner: z33.boolean(),
|
|
3161
|
+
pending: z33.boolean(),
|
|
3162
|
+
problem: ShortText.nullable(),
|
|
3163
|
+
renames: ShortText.nullable()
|
|
3164
|
+
});
|
|
3165
|
+
var CodingRecentRow = z33.strictObject({
|
|
3166
|
+
target: z33.string().min(3).max(200),
|
|
3167
|
+
title: z33.string().max(500),
|
|
3168
|
+
provider: CodingProviderName,
|
|
3169
|
+
sessionId: SessionKey.nullable(),
|
|
3170
|
+
providerSessionId: SessionKey.nullable(),
|
|
3171
|
+
cwd: LocalPath.nullable(),
|
|
3172
|
+
updatedAt: IsoTime,
|
|
3173
|
+
state: z33.enum(["running", "needs_attention", "new_output", "elsewhere", "idle"]),
|
|
3174
|
+
stateLabel: z33.string().max(120).nullable(),
|
|
3175
|
+
pinned: z33.boolean(),
|
|
3176
|
+
startedBy: CodingStartedBy.nullable()
|
|
3177
|
+
});
|
|
3178
|
+
var CodingFolderCheck = z33.strictObject({
|
|
3179
|
+
path: z33.string().max(4096),
|
|
3180
|
+
exists: z33.boolean(),
|
|
3181
|
+
isDirectory: z33.boolean()
|
|
3182
|
+
});
|
|
3183
|
+
var CodingRecentFolder = z33.strictObject({ path: LocalPath, lastUsedAt: IsoTime, exists: z33.boolean() });
|
|
3184
|
+
var CodingAgentSelectionParams = z33.strictObject({
|
|
3185
|
+
agent_id: z33.string().min(1).max(64),
|
|
3186
|
+
version_id: z33.string().min(1).max(64).optional(),
|
|
3187
|
+
variables: z33.record(z33.string().max(200), z33.unknown()).optional()
|
|
3188
|
+
});
|
|
3189
|
+
var CodingSendResult = z33.strictObject({
|
|
3190
|
+
session: CodingSessionRecord,
|
|
3191
|
+
run: CodingRunRecord.nullable(),
|
|
3192
|
+
/** The prompt waits behind a live run (it shows as a queued bubble). */
|
|
3193
|
+
queued: z33.boolean()
|
|
3194
|
+
});
|
|
3195
|
+
var CodingProvidersParams = z33.strictObject({});
|
|
3196
|
+
var CodingProvidersResult = z33.strictObject({ providers: z33.array(CodingProviderStatus).max(4) });
|
|
3197
|
+
var CodingSessionsListParams = z33.strictObject({});
|
|
3198
|
+
var CodingSessionsListResult = z33.strictObject({
|
|
3199
|
+
sessions: z33.array(CodingSessionRecord),
|
|
3200
|
+
/** The latest run of each session, by session id. */
|
|
3201
|
+
runs: z33.record(z33.string().max(128), CodingRunRecord),
|
|
3202
|
+
recent: z33.array(CodingRecentRow),
|
|
3203
|
+
title_status: CodingTitleStatus
|
|
3204
|
+
});
|
|
3205
|
+
var CodingDiscoverParams = z33.strictObject({ limit: z33.int().min(1).max(1e3).optional() });
|
|
3206
|
+
var CodingDiscoverResult = z33.strictObject({ chats: z33.array(CodingDiscoveredChat) });
|
|
3207
|
+
var CodingRunsListParams = z33.strictObject({ session_id: SessionKey });
|
|
3208
|
+
var CodingRunsListResult = z33.strictObject({ runs: z33.array(CodingRunRecord) });
|
|
3209
|
+
var CodingHistoryParams = z33.strictObject({ session_id: SessionKey, max_bytes: z33.int().min(1024).max(209715200).optional() });
|
|
3210
|
+
var CodingHistoryResult = CodingHistoryRecord;
|
|
3211
|
+
var CodingTranscriptReadParams = z33.strictObject({
|
|
3212
|
+
provider: CodingProviderName,
|
|
3213
|
+
provider_session_id: SessionKey,
|
|
3214
|
+
max_bytes: z33.int().min(1024).max(209715200).optional()
|
|
3215
|
+
});
|
|
3216
|
+
var CodingTranscriptReadResult = CodingHistoryRecord;
|
|
3217
|
+
var CodingItemFullParams = z33.strictObject({
|
|
3218
|
+
provider: CodingProviderName,
|
|
3219
|
+
provider_session_id: SessionKey,
|
|
3220
|
+
item_id: z33.string().min(1).max(200)
|
|
3221
|
+
});
|
|
3222
|
+
var CodingItemFullResult = z33.strictObject({ output: z33.string(), bytes: nonNegInt });
|
|
3223
|
+
var CodingActivityParams = z33.strictObject({ provider: CodingProviderName, provider_session_id: SessionKey });
|
|
3224
|
+
var CodingActivityResult = z33.strictObject({ active: CodingActiveElsewhere.nullable() });
|
|
3225
|
+
var CodingFoldersRecentParams = z33.strictObject({});
|
|
3226
|
+
var CodingFoldersRecentResult = z33.strictObject({ folders: z33.array(CodingRecentFolder).max(100) });
|
|
3227
|
+
var CodingFoldersCheckParams = z33.strictObject({ path: z33.string().min(1).max(4096) });
|
|
3228
|
+
var CodingFoldersCheckResult = CodingFolderCheck;
|
|
3229
|
+
var CodingFoldersCreateParams = z33.strictObject({ path: z33.string().min(1).max(4096) });
|
|
3230
|
+
var CodingFoldersCreateResult = CodingFolderCheck;
|
|
3231
|
+
var CodingStartParams = z33.strictObject({
|
|
3232
|
+
provider: CodingProviderName,
|
|
3233
|
+
cwd: z33.string().min(1).max(4096),
|
|
3234
|
+
prompt: z33.string().min(1).max(1048576),
|
|
3235
|
+
model: z33.string().min(1).max(200).optional(),
|
|
3236
|
+
effort: z33.string().min(1).max(40).optional(),
|
|
3237
|
+
agent: CodingAgentSelectionParams.optional(),
|
|
3238
|
+
/** One of the person's coding accounts on this computer (Accounts); absent = the default login. */
|
|
3239
|
+
account_profile_id: z33.string().min(1).max(64).optional(),
|
|
3240
|
+
client_request_id: CodingClientRequestId
|
|
3241
|
+
});
|
|
3242
|
+
var CodingStartResult = CodingSendResult;
|
|
3243
|
+
var CodingTakeoverParams = z33.strictObject({
|
|
3244
|
+
provider: CodingProviderName,
|
|
3245
|
+
provider_session_id: SessionKey,
|
|
3246
|
+
cwd: z33.string().min(1).max(4096),
|
|
3247
|
+
title: z33.string().max(500).optional(),
|
|
3248
|
+
agent: CodingAgentSelectionParams.optional(),
|
|
3249
|
+
confirm_elsewhere: z33.boolean().optional()
|
|
3250
|
+
});
|
|
3251
|
+
var CodingTakeoverResult = z33.strictObject({ session: CodingSessionRecord });
|
|
3252
|
+
var CodingSendParams = z33.strictObject({
|
|
3253
|
+
session_id: SessionKey,
|
|
3254
|
+
prompt: z33.string().min(1).max(1048576),
|
|
3255
|
+
client_request_id: CodingClientRequestId
|
|
3256
|
+
});
|
|
3257
|
+
var CodingStopParams = z33.strictObject({ run_id: z33.string().min(1).max(64) });
|
|
3258
|
+
var CodingStopResult = z33.strictObject({ run: CodingRunRecord.nullable() });
|
|
3259
|
+
var CodingStopElsewhereParams = z33.strictObject({
|
|
3260
|
+
provider: CodingProviderName,
|
|
3261
|
+
provider_session_id: SessionKey,
|
|
3262
|
+
pid: z33.int().min(1)
|
|
3263
|
+
});
|
|
3264
|
+
var CodingStopElsewhereResult = z33.strictObject({ stopped: z33.boolean(), message: ShortText });
|
|
3265
|
+
var CodingOptionsSetParams = z33.strictObject({
|
|
3266
|
+
session_id: SessionKey,
|
|
3267
|
+
model: z33.string().max(200).optional(),
|
|
3268
|
+
effort: z33.string().max(40).optional()
|
|
3269
|
+
});
|
|
3270
|
+
var CodingOptionsSetResult = z33.strictObject({ session: CodingSessionRecord });
|
|
3271
|
+
var CodingAgentSetParams = z33.strictObject({ session_id: SessionKey, agent: CodingAgentSelectionParams.optional() });
|
|
3272
|
+
var CodingAgentSetResult = z33.strictObject({ session: CodingSessionRecord });
|
|
3273
|
+
var CodingAgentsAccessParams = z33.strictObject({});
|
|
3274
|
+
var CodingAgentsAccessResult = z33.strictObject({
|
|
3275
|
+
signedIn: z33.boolean(),
|
|
3276
|
+
userId: z33.string().max(64).nullable(),
|
|
3277
|
+
organizationId: z33.string().max(64).nullable(),
|
|
3278
|
+
configured: z33.boolean()
|
|
3279
|
+
});
|
|
3280
|
+
var CodingTitlesStatusParams = z33.strictObject({});
|
|
3281
|
+
var CodingTitlesStatusResult = CodingTitleStatus;
|
|
3282
|
+
var CodingPrefsListParams = z33.strictObject({});
|
|
3283
|
+
var CodingPrefsListResult = z33.strictObject({ preferences: z33.record(z33.string().max(200), CodingChatPreference) });
|
|
3284
|
+
var CodingPrefsSetParams = z33.strictObject({
|
|
3285
|
+
key: z33.string().min(1).max(200),
|
|
3286
|
+
title: z33.string().min(1).max(500).optional(),
|
|
3287
|
+
clear_title: z33.boolean().optional(),
|
|
3288
|
+
pinned: z33.boolean().optional(),
|
|
3289
|
+
hidden: z33.boolean().optional()
|
|
3290
|
+
});
|
|
3291
|
+
var CodingPrefsSetResult = CodingPrefsListResult;
|
|
3292
|
+
var CodingRecentSeenParams = z33.strictObject({ target: z33.string().min(3).max(200) });
|
|
3293
|
+
var CodingRecentSeenResult = z33.strictObject({ recent: z33.array(CodingRecentRow) });
|
|
3294
|
+
var CodingSearchParams = z33.strictObject({
|
|
3295
|
+
query: z33.string().min(1).max(500),
|
|
3296
|
+
cursor: nonNegInt.optional(),
|
|
3297
|
+
limit: z33.int().min(1).max(100).optional()
|
|
3298
|
+
});
|
|
3299
|
+
var CodingSearchResult = z33.strictObject({
|
|
3300
|
+
query: z33.string().max(500),
|
|
3301
|
+
hits: z33.array(
|
|
3302
|
+
z33.strictObject({
|
|
3303
|
+
provider: CodingProviderName,
|
|
3304
|
+
providerSessionId: SessionKey,
|
|
3305
|
+
title: z33.string().max(500),
|
|
3306
|
+
cwd: LocalPath.nullable(),
|
|
3307
|
+
updatedAt: IsoTime,
|
|
3308
|
+
where: z33.enum(["title", "content"]),
|
|
3309
|
+
snippet: z33.string().max(2e3).nullable()
|
|
3310
|
+
})
|
|
3311
|
+
),
|
|
3312
|
+
scanned: nonNegInt,
|
|
3313
|
+
total: nonNegInt,
|
|
3314
|
+
nextCursor: nonNegInt.nullable()
|
|
3315
|
+
});
|
|
3316
|
+
var CodingReconcileParams = z33.strictObject({ provider: CodingProviderName, provider_session_id: SessionKey });
|
|
3317
|
+
var CodingReconcileResult = z33.strictObject({
|
|
3318
|
+
state: z33.enum(["done", "blocked", "nothing_to_do"]),
|
|
3319
|
+
summary: z33.string().max(400)
|
|
3320
|
+
});
|
|
3321
|
+
var CodingTranscriptRawParams = z33.strictObject({ provider: CodingProviderName, provider_session_id: SessionKey });
|
|
3322
|
+
var CodingTranscriptRawResult = z33.strictObject({
|
|
3323
|
+
available: z33.boolean(),
|
|
3324
|
+
reason: ShortText.nullable(),
|
|
3325
|
+
file_name: z33.string().max(300).nullable(),
|
|
3326
|
+
bytes: nonNegInt,
|
|
3327
|
+
/** The opt-in cloud backup was refreshed (false: off, unchanged, or signed out). */
|
|
3328
|
+
backup_refreshed: z33.boolean(),
|
|
3329
|
+
/** Subagent transcripts beside the chat (Claude Code), downloaded separately. */
|
|
3330
|
+
subagents: nonNegInt
|
|
3331
|
+
});
|
|
3332
|
+
var CodingWatchParams = z33.strictObject({});
|
|
3333
|
+
var CodingWatchResult = z33.strictObject({ resource_id: ResourceId });
|
|
3334
|
+
var CodingSessionWatchParams = z33.strictObject({ session_id: SessionKey, since_seq: nonNegInt.optional() });
|
|
3335
|
+
var CodingSessionWatchResult = z33.strictObject({
|
|
3336
|
+
resource_id: ResourceId,
|
|
3337
|
+
/** The newest item seq the device has for this session right now. */
|
|
3338
|
+
seq: nonNegInt
|
|
3339
|
+
});
|
|
3340
|
+
var CodingChangedEvent = z33.discriminatedUnion("kind", [
|
|
3341
|
+
z33.strictObject({ kind: z33.literal("session"), session: CodingSessionRecord }),
|
|
3342
|
+
z33.strictObject({ kind: z33.literal("run"), run: CodingRunRecord }),
|
|
3343
|
+
z33.strictObject({ kind: z33.literal("preferences"), preferences: z33.record(z33.string().max(200), CodingChatPreference) }),
|
|
3344
|
+
z33.strictObject({ kind: z33.literal("titles") }),
|
|
3345
|
+
z33.strictObject({ kind: z33.literal("recent"), recent: z33.array(CodingRecentRow) })
|
|
3346
|
+
]);
|
|
3347
|
+
var CodingWatchStateEvent = z33.strictObject({ live: z33.boolean(), reason: ShortText.nullable(), beat_ms: z33.int().min(1e3) });
|
|
3348
|
+
var CodingItemEvent = z33.strictObject({
|
|
3349
|
+
session_id: SessionKey,
|
|
3350
|
+
run_id: z33.string().min(1).max(64),
|
|
3351
|
+
seq: nonNegInt,
|
|
3352
|
+
item: CodingTranscriptItem
|
|
3353
|
+
});
|
|
3354
|
+
var CodingGapEvent = z33.strictObject({ session_id: SessionKey, since_seq: nonNegInt, seq: nonNegInt });
|
|
3355
|
+
var SessionIdentifyParams = z33.strictObject({ label: z33.string().min(1).max(60) });
|
|
3356
|
+
var SessionIdentifyResult = z33.strictObject({ label: z33.string().max(60) });
|
|
3357
|
+
|
|
3358
|
+
// src/schema/browser.ts
|
|
3359
|
+
import { z as z34 } from "zod";
|
|
3360
|
+
var BrowserClientInstance = z34.string().min(1).max(64).regex(/^[A-Za-z0-9_.:-]+$/);
|
|
3361
|
+
var BrowserKind = z34.enum(["chrome", "edge", "brave", "arc", "opera", "vivaldi", "chromium", "firefox", "other"]);
|
|
3362
|
+
var BrowserSessionState = z34.enum(["connected", "different_account", "extension_signed_out", "device_signed_out", "unverified"]);
|
|
3363
|
+
var BrowserSession = z34.strictObject({
|
|
2689
3364
|
client_instance: BrowserClientInstance,
|
|
2690
3365
|
/** What the person sees ("Chrome — Work"), set by the extension. */
|
|
2691
|
-
client_label:
|
|
3366
|
+
client_label: z34.string().min(1).max(128),
|
|
2692
3367
|
browser: BrowserKind,
|
|
2693
|
-
extension_version:
|
|
3368
|
+
extension_version: z34.string().min(1).max(32),
|
|
2694
3369
|
state: BrowserSessionState,
|
|
2695
3370
|
/** True only for `connected`: an agent's call can reach this session. */
|
|
2696
|
-
routable:
|
|
3371
|
+
routable: z34.boolean(),
|
|
2697
3372
|
/** The extension's account email from its token (null when signed out or unknown). */
|
|
2698
|
-
account_email:
|
|
3373
|
+
account_email: z34.string().max(320).nullable(),
|
|
2699
3374
|
connected_at_ms: epochMs,
|
|
2700
3375
|
last_call_at_ms: epochMs.nullable(),
|
|
2701
3376
|
calls: nonNegInt,
|
|
@@ -2704,119 +3379,119 @@ var BrowserSession = z33.strictObject({
|
|
|
2704
3379
|
p50_ms: nonNegInt.nullable(),
|
|
2705
3380
|
p95_ms: nonNegInt.nullable(),
|
|
2706
3381
|
/** A call is waiting for the person to confirm it in the browser. */
|
|
2707
|
-
awaiting_confirmation:
|
|
3382
|
+
awaiting_confirmation: z34.boolean()
|
|
2708
3383
|
});
|
|
2709
|
-
var BrowserRegisterParams =
|
|
3384
|
+
var BrowserRegisterParams = z34.strictObject({
|
|
2710
3385
|
client_instance: BrowserClientInstance,
|
|
2711
|
-
client_label:
|
|
3386
|
+
client_label: z34.string().min(1).max(128),
|
|
2712
3387
|
browser: BrowserKind,
|
|
2713
|
-
extension_version:
|
|
3388
|
+
extension_version: z34.string().min(1).max(32),
|
|
2714
3389
|
/** The extension's current AI Matrx access token, checked against the device owner; null when signed out. */
|
|
2715
|
-
account_token:
|
|
3390
|
+
account_token: z34.string().min(16).max(8192).nullable()
|
|
2716
3391
|
});
|
|
2717
|
-
var BrowserRegisterResult =
|
|
2718
|
-
var BrowserCallError =
|
|
2719
|
-
message:
|
|
3392
|
+
var BrowserRegisterResult = z34.strictObject({ session: BrowserSession });
|
|
3393
|
+
var BrowserCallError = z34.strictObject({
|
|
3394
|
+
message: z34.string().max(1e3),
|
|
2720
3395
|
/** The extension's own error code, when it has one ("tool_not_found", "denied"). */
|
|
2721
|
-
code:
|
|
3396
|
+
code: z34.string().max(64).nullable()
|
|
2722
3397
|
});
|
|
2723
|
-
var BrowserResultParams =
|
|
2724
|
-
call_id:
|
|
2725
|
-
ok:
|
|
3398
|
+
var BrowserResultParams = z34.strictObject({
|
|
3399
|
+
call_id: z34.string().min(1).max(64),
|
|
3400
|
+
ok: z34.boolean(),
|
|
2726
3401
|
/** The tool's result when ok (any JSON). */
|
|
2727
|
-
result:
|
|
3402
|
+
result: z34.unknown(),
|
|
2728
3403
|
error: BrowserCallError.nullable()
|
|
2729
3404
|
});
|
|
2730
|
-
var BrowserResultResult =
|
|
2731
|
-
var BrowserCallPhase =
|
|
2732
|
-
var BrowserProgressParams =
|
|
2733
|
-
var BrowserProgressResult =
|
|
2734
|
-
var BrowserSessionsParams =
|
|
2735
|
-
var BrowserSessionsResult =
|
|
3405
|
+
var BrowserResultResult = z34.strictObject({ accepted: z34.boolean() });
|
|
3406
|
+
var BrowserCallPhase = z34.enum(["awaiting_confirmation", "running"]);
|
|
3407
|
+
var BrowserProgressParams = z34.strictObject({ call_id: z34.string().min(1).max(64), phase: BrowserCallPhase });
|
|
3408
|
+
var BrowserProgressResult = z34.strictObject({ accepted: z34.boolean() });
|
|
3409
|
+
var BrowserSessionsParams = z34.strictObject({});
|
|
3410
|
+
var BrowserSessionsResult = z34.strictObject({
|
|
2736
3411
|
/** The person's Browser connection switch. Off: no pairing, no extension sessions. */
|
|
2737
|
-
enabled:
|
|
3412
|
+
enabled: z34.boolean(),
|
|
2738
3413
|
/** Whether Matrx 2 is signed in (without an owner no session is routable). */
|
|
2739
|
-
owner_signed_in:
|
|
2740
|
-
sessions:
|
|
2741
|
-
});
|
|
2742
|
-
var BrowserDisconnectParams =
|
|
2743
|
-
var BrowserDisconnectResult =
|
|
2744
|
-
var BrowserSetEnabledParams =
|
|
2745
|
-
var BrowserSetEnabledResult =
|
|
2746
|
-
var BrowserPairCodeParams =
|
|
2747
|
-
var BrowserPairCodeResult =
|
|
2748
|
-
var BrowserPairResetParams =
|
|
2749
|
-
var BrowserCallParams =
|
|
2750
|
-
tool:
|
|
2751
|
-
args:
|
|
3414
|
+
owner_signed_in: z34.boolean(),
|
|
3415
|
+
sessions: z34.array(BrowserSession).max(64)
|
|
3416
|
+
});
|
|
3417
|
+
var BrowserDisconnectParams = z34.strictObject({ client_instance: BrowserClientInstance });
|
|
3418
|
+
var BrowserDisconnectResult = z34.strictObject({ disconnected: z34.boolean() });
|
|
3419
|
+
var BrowserSetEnabledParams = z34.strictObject({ enabled: z34.boolean() });
|
|
3420
|
+
var BrowserSetEnabledResult = z34.strictObject({ enabled: z34.boolean() });
|
|
3421
|
+
var BrowserPairCodeParams = z34.strictObject({});
|
|
3422
|
+
var BrowserPairCodeResult = z34.strictObject({ code: z34.string().min(16).max(128) });
|
|
3423
|
+
var BrowserPairResetParams = z34.strictObject({});
|
|
3424
|
+
var BrowserCallParams = z34.strictObject({
|
|
3425
|
+
tool: z34.string().min(1).max(96).regex(/^[a-z][a-z0-9_]*$/),
|
|
3426
|
+
args: z34.record(z34.string(), z34.unknown()),
|
|
2752
3427
|
/** Which session; default: the most recently active routable one (BROWSER ambiguity → CONFLICT). */
|
|
2753
3428
|
client_instance: BrowserClientInstance.optional(),
|
|
2754
3429
|
/** How long to wait, including a person's confirmation; default 120 s. */
|
|
2755
|
-
timeout_ms:
|
|
3430
|
+
timeout_ms: z34.int().min(1e3).max(6e5).optional()
|
|
2756
3431
|
});
|
|
2757
|
-
var BrowserCallResult =
|
|
3432
|
+
var BrowserCallResult = z34.strictObject({
|
|
2758
3433
|
client_instance: BrowserClientInstance,
|
|
2759
|
-
result:
|
|
3434
|
+
result: z34.unknown(),
|
|
2760
3435
|
duration_ms: nonNegInt
|
|
2761
3436
|
});
|
|
2762
|
-
var BrowserToolMetricsParams =
|
|
2763
|
-
var BrowserToolMetric =
|
|
2764
|
-
tool:
|
|
3437
|
+
var BrowserToolMetricsParams = z34.strictObject({ client_instance: BrowserClientInstance });
|
|
3438
|
+
var BrowserToolMetric = z34.strictObject({
|
|
3439
|
+
tool: z34.string().max(256),
|
|
2765
3440
|
calls: nonNegInt,
|
|
2766
3441
|
errors: nonNegInt,
|
|
2767
3442
|
/** Over the last 200 answered calls; null before the first answer. */
|
|
2768
3443
|
p50_ms: nonNegInt.nullable(),
|
|
2769
3444
|
p95_ms: nonNegInt.nullable(),
|
|
2770
3445
|
last_call_at_ms: epochMs.nullable(),
|
|
2771
|
-
last_error:
|
|
3446
|
+
last_error: z34.string().max(2048).nullable()
|
|
2772
3447
|
});
|
|
2773
|
-
var BrowserToolMetricsResult =
|
|
2774
|
-
var BrowserResetCountersParams =
|
|
2775
|
-
var BrowserResetCountersResult =
|
|
2776
|
-
var BrowserLogParams =
|
|
3448
|
+
var BrowserToolMetricsResult = z34.strictObject({ client_instance: z34.string(), tools: z34.array(BrowserToolMetric) });
|
|
3449
|
+
var BrowserResetCountersParams = z34.strictObject({ client_instance: BrowserClientInstance });
|
|
3450
|
+
var BrowserResetCountersResult = z34.strictObject({ reset: z34.boolean() });
|
|
3451
|
+
var BrowserLogParams = z34.strictObject({
|
|
2777
3452
|
/** Only messages after this seq (0: from the oldest kept; the core keeps the last 500). */
|
|
2778
3453
|
after_seq: nonNegInt.default(0),
|
|
2779
|
-
limit:
|
|
3454
|
+
limit: z34.int().min(1).max(500).default(500)
|
|
2780
3455
|
});
|
|
2781
|
-
var BrowserLogMessage =
|
|
3456
|
+
var BrowserLogMessage = z34.strictObject({
|
|
2782
3457
|
seq: nonNegInt,
|
|
2783
3458
|
at_ms: epochMs,
|
|
2784
|
-
direction:
|
|
2785
|
-
client_instance:
|
|
2786
|
-
kind:
|
|
2787
|
-
tool:
|
|
2788
|
-
call_id:
|
|
2789
|
-
ok:
|
|
2790
|
-
detail:
|
|
2791
|
-
});
|
|
2792
|
-
var BrowserLogResult =
|
|
2793
|
-
messages:
|
|
3459
|
+
direction: z34.enum(["to_browser", "from_browser", "core"]),
|
|
3460
|
+
client_instance: z34.string(),
|
|
3461
|
+
kind: z34.enum(["register", "invoke", "result", "progress", "timeout", "closed"]),
|
|
3462
|
+
tool: z34.string().nullable(),
|
|
3463
|
+
call_id: z34.string().nullable(),
|
|
3464
|
+
ok: z34.boolean().nullable(),
|
|
3465
|
+
detail: z34.string().max(1024)
|
|
3466
|
+
});
|
|
3467
|
+
var BrowserLogResult = z34.strictObject({
|
|
3468
|
+
messages: z34.array(BrowserLogMessage),
|
|
2794
3469
|
/** The newest seq the core has written (pass it back as after_seq to follow the log). */
|
|
2795
3470
|
last_seq: nonNegInt
|
|
2796
3471
|
});
|
|
2797
|
-
var BrowserInvokeEvent =
|
|
2798
|
-
call_id:
|
|
2799
|
-
tool:
|
|
2800
|
-
args:
|
|
3472
|
+
var BrowserInvokeEvent = z34.strictObject({
|
|
3473
|
+
call_id: z34.string().min(1).max(64),
|
|
3474
|
+
tool: z34.string().min(1).max(96),
|
|
3475
|
+
args: z34.record(z34.string(), z34.unknown()),
|
|
2801
3476
|
deadline_ms: epochMs
|
|
2802
3477
|
});
|
|
2803
|
-
var BrowserSessionsChangedEvent =
|
|
2804
|
-
var BrowserProgressEvent =
|
|
2805
|
-
call_id:
|
|
3478
|
+
var BrowserSessionsChangedEvent = z34.strictObject({ count: nonNegInt, enabled: z34.boolean() });
|
|
3479
|
+
var BrowserProgressEvent = z34.strictObject({
|
|
3480
|
+
call_id: z34.string().min(1).max(64),
|
|
2806
3481
|
client_instance: BrowserClientInstance,
|
|
2807
3482
|
phase: BrowserCallPhase
|
|
2808
3483
|
});
|
|
2809
|
-
var DesktopHealth =
|
|
2810
|
-
status:
|
|
2811
|
-
service:
|
|
2812
|
-
version:
|
|
2813
|
-
protocol_version:
|
|
2814
|
-
ws_path:
|
|
2815
|
-
device_id:
|
|
2816
|
-
browser_connection:
|
|
2817
|
-
});
|
|
2818
|
-
var BrowserPairRequest =
|
|
2819
|
-
var BrowserPairResult =
|
|
3484
|
+
var DesktopHealth = z34.strictObject({
|
|
3485
|
+
status: z34.literal("ok"),
|
|
3486
|
+
service: z34.literal("matrx-desktop"),
|
|
3487
|
+
version: z34.string().max(32),
|
|
3488
|
+
protocol_version: z34.string().max(16),
|
|
3489
|
+
ws_path: z34.literal("/v1/connect"),
|
|
3490
|
+
device_id: z34.string().max(64),
|
|
3491
|
+
browser_connection: z34.enum(["on", "off"])
|
|
3492
|
+
});
|
|
3493
|
+
var BrowserPairRequest = z34.strictObject({ client_instance: BrowserClientInstance });
|
|
3494
|
+
var BrowserPairResult = z34.strictObject({ pair_token: z34.string().min(16).max(128), ws_path: z34.literal("/v1/connect") });
|
|
2820
3495
|
var MATRX_EXTENSION_IDS = {
|
|
2821
3496
|
store: "hnfolienncfklkgmdjjmhhegglimlamg",
|
|
2822
3497
|
development: "cihdmkcdjjckfhjpgoedmgfpoljebaml"
|
|
@@ -2824,572 +3499,572 @@ var MATRX_EXTENSION_IDS = {
|
|
|
2824
3499
|
var DISCOVERY_FILE = { live: "matrx2.json", development: "matrx2-dev.json" };
|
|
2825
3500
|
|
|
2826
3501
|
// src/schema/net.ts
|
|
2827
|
-
import { z as
|
|
2828
|
-
var NetInfoParams =
|
|
2829
|
-
var NetAddress =
|
|
2830
|
-
address:
|
|
2831
|
-
family:
|
|
2832
|
-
netmask:
|
|
3502
|
+
import { z as z35 } from "zod";
|
|
3503
|
+
var NetInfoParams = z35.strictObject({});
|
|
3504
|
+
var NetAddress = z35.strictObject({
|
|
3505
|
+
address: z35.string(),
|
|
3506
|
+
family: z35.enum(["ipv4", "ipv6"]),
|
|
3507
|
+
netmask: z35.string().nullable(),
|
|
2833
3508
|
/** CIDR form ("192.168.1.20/24"); null where the OS gives no prefix. */
|
|
2834
|
-
cidr:
|
|
3509
|
+
cidr: z35.string().nullable()
|
|
2835
3510
|
});
|
|
2836
|
-
var NetInterface =
|
|
2837
|
-
name:
|
|
2838
|
-
mac:
|
|
3511
|
+
var NetInterface = z35.strictObject({
|
|
3512
|
+
name: z35.string(),
|
|
3513
|
+
mac: z35.string().nullable(),
|
|
2839
3514
|
/** Loopback and other internal interfaces. */
|
|
2840
|
-
internal:
|
|
2841
|
-
addresses:
|
|
3515
|
+
internal: z35.boolean(),
|
|
3516
|
+
addresses: z35.array(NetAddress)
|
|
2842
3517
|
});
|
|
2843
|
-
var NetInfoResult =
|
|
2844
|
-
hostname:
|
|
2845
|
-
interfaces:
|
|
3518
|
+
var NetInfoResult = z35.strictObject({
|
|
3519
|
+
hostname: z35.string(),
|
|
3520
|
+
interfaces: z35.array(NetInterface),
|
|
2846
3521
|
/** The default route's gateway; null when the OS does not say (or there is none). */
|
|
2847
|
-
gateway:
|
|
3522
|
+
gateway: z35.string().nullable(),
|
|
2848
3523
|
/** The DNS servers the OS uses; empty when it does not say. */
|
|
2849
|
-
dns:
|
|
3524
|
+
dns: z35.array(z35.string())
|
|
2850
3525
|
});
|
|
2851
|
-
var NetWifiParams =
|
|
2852
|
-
var NetWifiNetwork =
|
|
3526
|
+
var NetWifiParams = z35.strictObject({});
|
|
3527
|
+
var NetWifiNetwork = z35.strictObject({
|
|
2853
3528
|
/** null: the OS hides the name (macOS without Location Services for this app). */
|
|
2854
|
-
ssid:
|
|
3529
|
+
ssid: z35.string().nullable(),
|
|
2855
3530
|
/** dBm; null where the OS does not say. */
|
|
2856
|
-
rssi:
|
|
2857
|
-
channel:
|
|
2858
|
-
security:
|
|
3531
|
+
rssi: z35.int().nullable(),
|
|
3532
|
+
channel: z35.string().nullable(),
|
|
3533
|
+
security: z35.string().nullable()
|
|
2859
3534
|
});
|
|
2860
|
-
var NetWifiResult =
|
|
3535
|
+
var NetWifiResult = z35.strictObject({
|
|
2861
3536
|
/** Whether the computer has a Wi-Fi interface at all. */
|
|
2862
|
-
available:
|
|
3537
|
+
available: z35.boolean(),
|
|
2863
3538
|
/** The network the computer is on; null when it is on none. */
|
|
2864
3539
|
current: NetWifiNetwork.nullable(),
|
|
2865
3540
|
/** Networks in range (may be empty where the OS lists none to apps). */
|
|
2866
|
-
networks:
|
|
3541
|
+
networks: z35.array(NetWifiNetwork)
|
|
2867
3542
|
});
|
|
2868
|
-
var NetBluetoothParams =
|
|
2869
|
-
var NetBluetoothDevice =
|
|
2870
|
-
name:
|
|
2871
|
-
address:
|
|
2872
|
-
connected:
|
|
3543
|
+
var NetBluetoothParams = z35.strictObject({});
|
|
3544
|
+
var NetBluetoothDevice = z35.strictObject({
|
|
3545
|
+
name: z35.string(),
|
|
3546
|
+
address: z35.string().nullable(),
|
|
3547
|
+
connected: z35.boolean(),
|
|
2873
3548
|
/** What it is, in the OS's words ("Headphones", "Keyboard"); null where it does not say. */
|
|
2874
|
-
kind:
|
|
3549
|
+
kind: z35.string().nullable(),
|
|
2875
3550
|
/** Battery percent, where the OS reports it. */
|
|
2876
|
-
battery:
|
|
3551
|
+
battery: z35.int().min(0).max(100).nullable()
|
|
2877
3552
|
});
|
|
2878
|
-
var NetBluetoothResult =
|
|
3553
|
+
var NetBluetoothResult = z35.strictObject({
|
|
2879
3554
|
/** Bluetooth is on; null where the OS does not say. */
|
|
2880
|
-
powered:
|
|
2881
|
-
devices:
|
|
2882
|
-
});
|
|
2883
|
-
var NetDevicesParams =
|
|
2884
|
-
var NetDevice =
|
|
2885
|
-
ip:
|
|
2886
|
-
mac:
|
|
2887
|
-
interface:
|
|
3555
|
+
powered: z35.boolean().nullable(),
|
|
3556
|
+
devices: z35.array(NetBluetoothDevice)
|
|
3557
|
+
});
|
|
3558
|
+
var NetDevicesParams = z35.strictObject({});
|
|
3559
|
+
var NetDevice = z35.strictObject({
|
|
3560
|
+
ip: z35.string(),
|
|
3561
|
+
mac: z35.string().nullable(),
|
|
3562
|
+
interface: z35.string().nullable(),
|
|
2888
3563
|
/** The name the local network gives it (reverse DNS / mDNS), when the table carries one. */
|
|
2889
|
-
hostname:
|
|
3564
|
+
hostname: z35.string().nullable()
|
|
2890
3565
|
});
|
|
2891
|
-
var NetDevicesResult =
|
|
2892
|
-
var NetMdnsParams =
|
|
3566
|
+
var NetDevicesResult = z35.strictObject({ devices: z35.array(NetDevice) });
|
|
3567
|
+
var NetMdnsParams = z35.strictObject({
|
|
2893
3568
|
/** A service type ("_http._tcp"); absent lists the service types found. */
|
|
2894
|
-
service_type:
|
|
3569
|
+
service_type: z35.string().min(1).max(64).regex(/^_[A-Za-z0-9-]+\._(tcp|udp)$/).optional(),
|
|
2895
3570
|
/** How long to listen. */
|
|
2896
|
-
timeout_s:
|
|
3571
|
+
timeout_s: z35.int().min(1).max(30).default(3)
|
|
2897
3572
|
});
|
|
2898
|
-
var NetMdnsService =
|
|
2899
|
-
name:
|
|
2900
|
-
type:
|
|
2901
|
-
domain:
|
|
2902
|
-
interface:
|
|
3573
|
+
var NetMdnsService = z35.strictObject({
|
|
3574
|
+
name: z35.string(),
|
|
3575
|
+
type: z35.string(),
|
|
3576
|
+
domain: z35.string(),
|
|
3577
|
+
interface: z35.string().nullable()
|
|
2903
3578
|
});
|
|
2904
|
-
var NetMdnsResult =
|
|
2905
|
-
var NetScanParams =
|
|
3579
|
+
var NetMdnsResult = z35.strictObject({ services: z35.array(NetMdnsService) });
|
|
3580
|
+
var NetScanParams = z35.strictObject({
|
|
2906
3581
|
/** A host name or address; a private or loopback address unless `allow_public`. */
|
|
2907
|
-
host:
|
|
2908
|
-
ports:
|
|
2909
|
-
timeout_ms:
|
|
3582
|
+
host: z35.string().min(1).max(253),
|
|
3583
|
+
ports: z35.array(z35.int().min(1).max(65535)).min(1).max(1024),
|
|
3584
|
+
timeout_ms: z35.int().min(50).max(1e4).default(800),
|
|
2910
3585
|
/** Scanning a host on the public internet needs saying so. */
|
|
2911
|
-
allow_public:
|
|
3586
|
+
allow_public: z35.boolean().default(false)
|
|
2912
3587
|
});
|
|
2913
|
-
var NetScanResult =
|
|
2914
|
-
host:
|
|
3588
|
+
var NetScanResult = z35.strictObject({
|
|
3589
|
+
host: z35.string(),
|
|
2915
3590
|
/** The address the host resolved to. */
|
|
2916
|
-
address:
|
|
2917
|
-
open:
|
|
3591
|
+
address: z35.string(),
|
|
3592
|
+
open: z35.array(z35.int().min(1).max(65535)),
|
|
2918
3593
|
closed: nonNegInt,
|
|
2919
3594
|
elapsed_ms: nonNegInt
|
|
2920
3595
|
});
|
|
2921
|
-
var NetDownloadParams =
|
|
2922
|
-
url:
|
|
3596
|
+
var NetDownloadParams = z35.strictObject({
|
|
3597
|
+
url: z35.string().min(1).max(8192).regex(/^https?:\/\//),
|
|
2923
3598
|
/** Where to save it: an absolute path (a folder keeps the URL's file name). */
|
|
2924
3599
|
path: AbsPath,
|
|
2925
|
-
overwrite:
|
|
2926
|
-
timeout_s:
|
|
3600
|
+
overwrite: z35.boolean().default(false),
|
|
3601
|
+
timeout_s: z35.int().min(1).max(3600).default(300),
|
|
2927
3602
|
/** Refuse anything larger. */
|
|
2928
|
-
max_bytes:
|
|
3603
|
+
max_bytes: z35.int().min(1).max(10737418240).default(2147483648)
|
|
2929
3604
|
});
|
|
2930
|
-
var NetDownloadResult =
|
|
2931
|
-
path:
|
|
3605
|
+
var NetDownloadResult = z35.strictObject({
|
|
3606
|
+
path: z35.string(),
|
|
2932
3607
|
bytes: nonNegInt,
|
|
2933
|
-
content_type:
|
|
3608
|
+
content_type: z35.string().nullable(),
|
|
2934
3609
|
/** The final URL after redirects. */
|
|
2935
|
-
url:
|
|
3610
|
+
url: z35.string(),
|
|
2936
3611
|
elapsed_ms: nonNegInt
|
|
2937
3612
|
});
|
|
2938
3613
|
|
|
2939
3614
|
// src/schema/personal.ts
|
|
2940
|
-
import { z as
|
|
2941
|
-
var Text =
|
|
2942
|
-
var AutomationScriptParams =
|
|
3615
|
+
import { z as z36 } from "zod";
|
|
3616
|
+
var Text = z36.string().max(65536);
|
|
3617
|
+
var AutomationScriptParams = z36.strictObject({
|
|
2943
3618
|
/** applescript and jxa: macOS (osascript); powershell: Windows (and pwsh where installed). */
|
|
2944
|
-
language:
|
|
2945
|
-
script:
|
|
2946
|
-
timeout_s:
|
|
2947
|
-
});
|
|
2948
|
-
var AutomationScriptResult =
|
|
2949
|
-
stdout:
|
|
2950
|
-
stderr:
|
|
2951
|
-
exit_code:
|
|
2952
|
-
timed_out:
|
|
3619
|
+
language: z36.enum(["applescript", "jxa", "powershell"]),
|
|
3620
|
+
script: z36.string().min(1).max(262144),
|
|
3621
|
+
timeout_s: z36.int().min(1).max(600).default(60)
|
|
3622
|
+
});
|
|
3623
|
+
var AutomationScriptResult = z36.strictObject({
|
|
3624
|
+
stdout: z36.string(),
|
|
3625
|
+
stderr: z36.string(),
|
|
3626
|
+
exit_code: z36.int(),
|
|
3627
|
+
timed_out: z36.boolean(),
|
|
2953
3628
|
/** stdout or stderr was cut at 1 MiB. */
|
|
2954
|
-
truncated:
|
|
3629
|
+
truncated: z36.boolean(),
|
|
2955
3630
|
elapsed_ms: nonNegInt
|
|
2956
3631
|
});
|
|
2957
|
-
var MailAccountsParams =
|
|
2958
|
-
var MailAccount =
|
|
2959
|
-
var MailAccountsResult =
|
|
2960
|
-
var MailListParams =
|
|
3632
|
+
var MailAccountsParams = z36.strictObject({});
|
|
3633
|
+
var MailAccount = z36.strictObject({ name: z36.string(), emails: z36.array(z36.string()), enabled: z36.boolean() });
|
|
3634
|
+
var MailAccountsResult = z36.strictObject({ accounts: z36.array(MailAccount) });
|
|
3635
|
+
var MailListParams = z36.strictObject({
|
|
2961
3636
|
/** The account's name in Mail; absent: every account. */
|
|
2962
|
-
account:
|
|
3637
|
+
account: z36.string().min(1).max(256).optional(),
|
|
2963
3638
|
/** The mailbox's name ("INBOX", "Sent Messages"). */
|
|
2964
|
-
mailbox:
|
|
2965
|
-
unread_only:
|
|
2966
|
-
limit:
|
|
2967
|
-
});
|
|
2968
|
-
var MailMessage =
|
|
2969
|
-
id:
|
|
2970
|
-
subject:
|
|
2971
|
-
sender:
|
|
3639
|
+
mailbox: z36.string().min(1).max(256).default("INBOX"),
|
|
3640
|
+
unread_only: z36.boolean().default(false),
|
|
3641
|
+
limit: z36.int().min(1).max(200).default(25)
|
|
3642
|
+
});
|
|
3643
|
+
var MailMessage = z36.strictObject({
|
|
3644
|
+
id: z36.string(),
|
|
3645
|
+
subject: z36.string(),
|
|
3646
|
+
sender: z36.string(),
|
|
2972
3647
|
received_at_ms: epochMs.nullable(),
|
|
2973
|
-
read:
|
|
2974
|
-
account:
|
|
2975
|
-
mailbox:
|
|
3648
|
+
read: z36.boolean(),
|
|
3649
|
+
account: z36.string(),
|
|
3650
|
+
mailbox: z36.string(),
|
|
2976
3651
|
/** The first lines of the message's text. */
|
|
2977
|
-
preview:
|
|
3652
|
+
preview: z36.string()
|
|
2978
3653
|
});
|
|
2979
|
-
var MailListResult =
|
|
2980
|
-
var MailSendParams =
|
|
2981
|
-
to:
|
|
2982
|
-
cc:
|
|
2983
|
-
subject:
|
|
3654
|
+
var MailListResult = z36.strictObject({ messages: z36.array(MailMessage) });
|
|
3655
|
+
var MailSendParams = z36.strictObject({
|
|
3656
|
+
to: z36.array(z36.string().min(3).max(320)).min(1).max(50),
|
|
3657
|
+
cc: z36.array(z36.string().min(3).max(320)).max(50).default([]),
|
|
3658
|
+
subject: z36.string().max(998),
|
|
2984
3659
|
body: Text,
|
|
2985
3660
|
/** The sending account's address; absent: Mail's default. */
|
|
2986
|
-
from:
|
|
3661
|
+
from: z36.string().min(3).max(320).optional(),
|
|
2987
3662
|
/** false leaves it open in Mail as a draft for the person to send. */
|
|
2988
|
-
send:
|
|
2989
|
-
});
|
|
2990
|
-
var MailSendResult =
|
|
2991
|
-
var MessagesChatsParams =
|
|
2992
|
-
var MessagesChat =
|
|
2993
|
-
chat_id:
|
|
2994
|
-
name:
|
|
2995
|
-
participants:
|
|
3663
|
+
send: z36.boolean().default(true)
|
|
3664
|
+
});
|
|
3665
|
+
var MailSendResult = z36.strictObject({ sent: z36.boolean() });
|
|
3666
|
+
var MessagesChatsParams = z36.strictObject({ limit: z36.int().min(1).max(200).default(25) });
|
|
3667
|
+
var MessagesChat = z36.strictObject({
|
|
3668
|
+
chat_id: z36.string(),
|
|
3669
|
+
name: z36.string().nullable(),
|
|
3670
|
+
participants: z36.array(z36.string()),
|
|
2996
3671
|
last_message_at_ms: epochMs.nullable(),
|
|
2997
|
-
service:
|
|
3672
|
+
service: z36.string().nullable()
|
|
2998
3673
|
});
|
|
2999
|
-
var MessagesChatsResult =
|
|
3000
|
-
var MessagesListParams =
|
|
3674
|
+
var MessagesChatsResult = z36.strictObject({ chats: z36.array(MessagesChat) });
|
|
3675
|
+
var MessagesListParams = z36.strictObject({
|
|
3001
3676
|
/** One chat (messages.chats' chat_id); absent: the newest across all. */
|
|
3002
|
-
chat_id:
|
|
3003
|
-
limit:
|
|
3004
|
-
});
|
|
3005
|
-
var MessagesMessage =
|
|
3006
|
-
id:
|
|
3007
|
-
chat_id:
|
|
3008
|
-
text:
|
|
3009
|
-
from_me:
|
|
3677
|
+
chat_id: z36.string().min(1).max(512).optional(),
|
|
3678
|
+
limit: z36.int().min(1).max(500).default(50)
|
|
3679
|
+
});
|
|
3680
|
+
var MessagesMessage = z36.strictObject({
|
|
3681
|
+
id: z36.string(),
|
|
3682
|
+
chat_id: z36.string().nullable(),
|
|
3683
|
+
text: z36.string(),
|
|
3684
|
+
from_me: z36.boolean(),
|
|
3010
3685
|
/** The other person's handle (phone or email); null for the person's own messages. */
|
|
3011
|
-
sender:
|
|
3686
|
+
sender: z36.string().nullable(),
|
|
3012
3687
|
sent_at_ms: epochMs.nullable()
|
|
3013
3688
|
});
|
|
3014
|
-
var MessagesListResult =
|
|
3015
|
-
var MessagesSendParams =
|
|
3689
|
+
var MessagesListResult = z36.strictObject({ messages: z36.array(MessagesMessage) });
|
|
3690
|
+
var MessagesSendParams = z36.strictObject({
|
|
3016
3691
|
/** A phone number or email the person can message. */
|
|
3017
|
-
to:
|
|
3018
|
-
text:
|
|
3692
|
+
to: z36.string().min(3).max(320),
|
|
3693
|
+
text: z36.string().min(1).max(2e4)
|
|
3019
3694
|
});
|
|
3020
|
-
var MessagesSendResult =
|
|
3021
|
-
var ContactsSearchParams =
|
|
3695
|
+
var MessagesSendResult = z36.strictObject({ sent: z36.boolean() });
|
|
3696
|
+
var ContactsSearchParams = z36.strictObject({
|
|
3022
3697
|
/** Matched against names, organizations, emails and phone numbers. */
|
|
3023
|
-
query:
|
|
3024
|
-
limit:
|
|
3698
|
+
query: z36.string().min(1).max(256),
|
|
3699
|
+
limit: z36.int().min(1).max(200).default(25)
|
|
3025
3700
|
});
|
|
3026
|
-
var ContactLabeled =
|
|
3027
|
-
var ContactSummary =
|
|
3028
|
-
id:
|
|
3029
|
-
name:
|
|
3030
|
-
organization:
|
|
3031
|
-
emails:
|
|
3032
|
-
phones:
|
|
3033
|
-
});
|
|
3034
|
-
var ContactsSearchResult =
|
|
3035
|
-
var ContactsGetParams =
|
|
3036
|
-
var ContactDetail =
|
|
3037
|
-
id:
|
|
3038
|
-
name:
|
|
3039
|
-
organization:
|
|
3040
|
-
job_title:
|
|
3041
|
-
emails:
|
|
3042
|
-
phones:
|
|
3043
|
-
addresses:
|
|
3044
|
-
birthday:
|
|
3045
|
-
note:
|
|
3046
|
-
});
|
|
3047
|
-
var ContactsGetResult =
|
|
3048
|
-
var CalendarListParams =
|
|
3701
|
+
var ContactLabeled = z36.strictObject({ label: z36.string().nullable(), value: z36.string() });
|
|
3702
|
+
var ContactSummary = z36.strictObject({
|
|
3703
|
+
id: z36.string(),
|
|
3704
|
+
name: z36.string(),
|
|
3705
|
+
organization: z36.string().nullable(),
|
|
3706
|
+
emails: z36.array(ContactLabeled),
|
|
3707
|
+
phones: z36.array(ContactLabeled)
|
|
3708
|
+
});
|
|
3709
|
+
var ContactsSearchResult = z36.strictObject({ contacts: z36.array(ContactSummary) });
|
|
3710
|
+
var ContactsGetParams = z36.strictObject({ id: z36.string().min(1).max(256) });
|
|
3711
|
+
var ContactDetail = z36.strictObject({
|
|
3712
|
+
id: z36.string(),
|
|
3713
|
+
name: z36.string(),
|
|
3714
|
+
organization: z36.string().nullable(),
|
|
3715
|
+
job_title: z36.string().nullable(),
|
|
3716
|
+
emails: z36.array(ContactLabeled),
|
|
3717
|
+
phones: z36.array(ContactLabeled),
|
|
3718
|
+
addresses: z36.array(ContactLabeled),
|
|
3719
|
+
birthday: z36.string().nullable(),
|
|
3720
|
+
note: z36.string().nullable()
|
|
3721
|
+
});
|
|
3722
|
+
var ContactsGetResult = z36.strictObject({ contact: ContactDetail });
|
|
3723
|
+
var CalendarListParams = z36.strictObject({
|
|
3049
3724
|
from_ms: epochMs,
|
|
3050
3725
|
to_ms: epochMs,
|
|
3051
3726
|
/** One calendar's name; absent: every calendar. */
|
|
3052
|
-
calendar:
|
|
3053
|
-
limit:
|
|
3727
|
+
calendar: z36.string().min(1).max(256).optional(),
|
|
3728
|
+
limit: z36.int().min(1).max(500).default(100)
|
|
3054
3729
|
});
|
|
3055
|
-
var CalendarEvent =
|
|
3056
|
-
id:
|
|
3057
|
-
title:
|
|
3730
|
+
var CalendarEvent = z36.strictObject({
|
|
3731
|
+
id: z36.string(),
|
|
3732
|
+
title: z36.string(),
|
|
3058
3733
|
start_ms: epochMs,
|
|
3059
3734
|
end_ms: epochMs,
|
|
3060
|
-
all_day:
|
|
3061
|
-
calendar:
|
|
3062
|
-
location:
|
|
3063
|
-
notes:
|
|
3064
|
-
});
|
|
3065
|
-
var CalendarListResult =
|
|
3066
|
-
var CalendarCreateParams =
|
|
3067
|
-
title:
|
|
3735
|
+
all_day: z36.boolean(),
|
|
3736
|
+
calendar: z36.string(),
|
|
3737
|
+
location: z36.string().nullable(),
|
|
3738
|
+
notes: z36.string().nullable()
|
|
3739
|
+
});
|
|
3740
|
+
var CalendarListResult = z36.strictObject({ events: z36.array(CalendarEvent) });
|
|
3741
|
+
var CalendarCreateParams = z36.strictObject({
|
|
3742
|
+
title: z36.string().min(1).max(1024),
|
|
3068
3743
|
start_ms: epochMs,
|
|
3069
3744
|
end_ms: epochMs,
|
|
3070
|
-
all_day:
|
|
3745
|
+
all_day: z36.boolean().default(false),
|
|
3071
3746
|
/** The calendar's name; absent: the first writable calendar. */
|
|
3072
|
-
calendar:
|
|
3073
|
-
location:
|
|
3747
|
+
calendar: z36.string().min(1).max(256).optional(),
|
|
3748
|
+
location: z36.string().max(1024).optional(),
|
|
3074
3749
|
notes: Text.optional()
|
|
3075
3750
|
});
|
|
3076
|
-
var CalendarCreateResult =
|
|
3077
|
-
var RemindersListParams =
|
|
3751
|
+
var CalendarCreateResult = z36.strictObject({ id: z36.string(), calendar: z36.string() });
|
|
3752
|
+
var RemindersListParams = z36.strictObject({
|
|
3078
3753
|
/** One list's name; absent: every list. */
|
|
3079
|
-
list:
|
|
3080
|
-
include_completed:
|
|
3081
|
-
limit:
|
|
3082
|
-
});
|
|
3083
|
-
var Reminder =
|
|
3084
|
-
id:
|
|
3085
|
-
title:
|
|
3086
|
-
list:
|
|
3754
|
+
list: z36.string().min(1).max(256).optional(),
|
|
3755
|
+
include_completed: z36.boolean().default(false),
|
|
3756
|
+
limit: z36.int().min(1).max(500).default(100)
|
|
3757
|
+
});
|
|
3758
|
+
var Reminder = z36.strictObject({
|
|
3759
|
+
id: z36.string(),
|
|
3760
|
+
title: z36.string(),
|
|
3761
|
+
list: z36.string(),
|
|
3087
3762
|
due_ms: epochMs.nullable(),
|
|
3088
|
-
completed:
|
|
3089
|
-
notes:
|
|
3763
|
+
completed: z36.boolean(),
|
|
3764
|
+
notes: z36.string().nullable()
|
|
3090
3765
|
});
|
|
3091
|
-
var RemindersListResult =
|
|
3092
|
-
var RemindersCreateParams =
|
|
3093
|
-
title:
|
|
3766
|
+
var RemindersListResult = z36.strictObject({ reminders: z36.array(Reminder) });
|
|
3767
|
+
var RemindersCreateParams = z36.strictObject({
|
|
3768
|
+
title: z36.string().min(1).max(1024),
|
|
3094
3769
|
due_ms: epochMs.optional(),
|
|
3095
|
-
list:
|
|
3770
|
+
list: z36.string().min(1).max(256).optional(),
|
|
3096
3771
|
notes: Text.optional()
|
|
3097
3772
|
});
|
|
3098
|
-
var RemindersCreateResult =
|
|
3099
|
-
var PhotosSearchParams =
|
|
3773
|
+
var RemindersCreateResult = z36.strictObject({ id: z36.string(), list: z36.string() });
|
|
3774
|
+
var PhotosSearchParams = z36.strictObject({
|
|
3100
3775
|
/** Matched against file names, titles, descriptions and keywords; absent: the newest. */
|
|
3101
|
-
query:
|
|
3776
|
+
query: z36.string().min(1).max(256).optional(),
|
|
3102
3777
|
from_ms: epochMs.optional(),
|
|
3103
3778
|
to_ms: epochMs.optional(),
|
|
3104
|
-
favorites_only:
|
|
3105
|
-
limit:
|
|
3779
|
+
favorites_only: z36.boolean().default(false),
|
|
3780
|
+
limit: z36.int().min(1).max(200).default(25)
|
|
3106
3781
|
});
|
|
3107
|
-
var Photo =
|
|
3108
|
-
id:
|
|
3109
|
-
filename:
|
|
3782
|
+
var Photo = z36.strictObject({
|
|
3783
|
+
id: z36.string(),
|
|
3784
|
+
filename: z36.string(),
|
|
3110
3785
|
taken_at_ms: epochMs.nullable(),
|
|
3111
3786
|
width: nonNegInt.nullable(),
|
|
3112
3787
|
height: nonNegInt.nullable(),
|
|
3113
|
-
favorite:
|
|
3114
|
-
title:
|
|
3788
|
+
favorite: z36.boolean(),
|
|
3789
|
+
title: z36.string().nullable()
|
|
3115
3790
|
});
|
|
3116
|
-
var PhotosSearchResult =
|
|
3117
|
-
var PhotosGetParams =
|
|
3118
|
-
id:
|
|
3791
|
+
var PhotosSearchResult = z36.strictObject({ photos: z36.array(Photo) });
|
|
3792
|
+
var PhotosGetParams = z36.strictObject({
|
|
3793
|
+
id: z36.string().min(1).max(256),
|
|
3119
3794
|
/** Copy the original into a folder Matrx 2 owns and answer its path (then fs_read or desktop_documents reads it). */
|
|
3120
|
-
export:
|
|
3795
|
+
export: z36.boolean().default(false)
|
|
3121
3796
|
});
|
|
3122
|
-
var PhotosGetResult =
|
|
3123
|
-
var LocationGetParams =
|
|
3124
|
-
var LocationGetResult =
|
|
3125
|
-
latitude:
|
|
3126
|
-
longitude:
|
|
3797
|
+
var PhotosGetResult = z36.strictObject({ photo: Photo, path: z36.string().nullable() });
|
|
3798
|
+
var LocationGetParams = z36.strictObject({ timeout_s: z36.int().min(1).max(60).default(15) });
|
|
3799
|
+
var LocationGetResult = z36.strictObject({
|
|
3800
|
+
latitude: z36.number().min(-90).max(90),
|
|
3801
|
+
longitude: z36.number().min(-180).max(180),
|
|
3127
3802
|
/** Metres; null where the OS does not say. */
|
|
3128
|
-
accuracy_m:
|
|
3803
|
+
accuracy_m: z36.number().min(0).nullable(),
|
|
3129
3804
|
at_ms: epochMs,
|
|
3130
3805
|
/** Who answered: the OS's own location service. */
|
|
3131
|
-
source:
|
|
3806
|
+
source: z36.enum(["corelocation", "windows", "geoclue"])
|
|
3132
3807
|
});
|
|
3133
3808
|
|
|
3134
3809
|
// src/schema/windows.ts
|
|
3135
|
-
import { z as
|
|
3136
|
-
var RegistryKey =
|
|
3137
|
-
var RegistryValueType =
|
|
3138
|
-
var WindowsRegistryReadParams =
|
|
3810
|
+
import { z as z37 } from "zod";
|
|
3811
|
+
var RegistryKey = z37.string().min(6).max(1024).regex(/^(HKLM|HKCU|HKCR|HKU|HKCC|HKEY_LOCAL_MACHINE|HKEY_CURRENT_USER|HKEY_CLASSES_ROOT|HKEY_USERS|HKEY_CURRENT_CONFIG)(\\.*)?$/);
|
|
3812
|
+
var RegistryValueType = z37.enum(["REG_SZ", "REG_EXPAND_SZ", "REG_MULTI_SZ", "REG_DWORD", "REG_QWORD", "REG_BINARY", "REG_NONE"]);
|
|
3813
|
+
var WindowsRegistryReadParams = z37.strictObject({
|
|
3139
3814
|
key: RegistryKey,
|
|
3140
3815
|
/** One value's name ("" is the key's default value); absent: every value and the subkeys. */
|
|
3141
|
-
name:
|
|
3816
|
+
name: z37.string().max(16383).optional()
|
|
3142
3817
|
});
|
|
3143
|
-
var RegistryValue =
|
|
3144
|
-
var WindowsRegistryReadResult =
|
|
3145
|
-
key:
|
|
3146
|
-
exists:
|
|
3147
|
-
values:
|
|
3148
|
-
subkeys:
|
|
3818
|
+
var RegistryValue = z37.strictObject({ name: z37.string(), type: RegistryValueType, data: z37.string() });
|
|
3819
|
+
var WindowsRegistryReadResult = z37.strictObject({
|
|
3820
|
+
key: z37.string(),
|
|
3821
|
+
exists: z37.boolean(),
|
|
3822
|
+
values: z37.array(RegistryValue),
|
|
3823
|
+
subkeys: z37.array(z37.string())
|
|
3149
3824
|
});
|
|
3150
|
-
var WindowsRegistryWriteParams =
|
|
3825
|
+
var WindowsRegistryWriteParams = z37.strictObject({
|
|
3151
3826
|
key: RegistryKey,
|
|
3152
|
-
name:
|
|
3827
|
+
name: z37.string().max(16383),
|
|
3153
3828
|
type: RegistryValueType.default("REG_SZ"),
|
|
3154
3829
|
/** As reg.exe takes it: text, a number, hex for binary, \\0 between the strings of a multi-string. */
|
|
3155
|
-
data:
|
|
3830
|
+
data: z37.string().max(1048576),
|
|
3156
3831
|
/** Remove the value instead of writing it. */
|
|
3157
|
-
delete:
|
|
3832
|
+
delete: z37.boolean().default(false)
|
|
3158
3833
|
});
|
|
3159
|
-
var WindowsRegistryWriteResult =
|
|
3160
|
-
var WindowsServicesParams =
|
|
3834
|
+
var WindowsRegistryWriteResult = z37.strictObject({ key: z37.string(), name: z37.string(), deleted: z37.boolean() });
|
|
3835
|
+
var WindowsServicesParams = z37.strictObject({
|
|
3161
3836
|
/** Matched against the service's name and display name. */
|
|
3162
|
-
filter:
|
|
3163
|
-
limit:
|
|
3837
|
+
filter: z37.string().min(1).max(256).optional(),
|
|
3838
|
+
limit: z37.int().min(1).max(1e3).default(200)
|
|
3164
3839
|
});
|
|
3165
|
-
var WindowsService =
|
|
3166
|
-
name:
|
|
3167
|
-
display_name:
|
|
3840
|
+
var WindowsService = z37.strictObject({
|
|
3841
|
+
name: z37.string(),
|
|
3842
|
+
display_name: z37.string(),
|
|
3168
3843
|
/** Running, Stopped, Paused… as Windows says it. */
|
|
3169
|
-
status:
|
|
3844
|
+
status: z37.string(),
|
|
3170
3845
|
/** Automatic, Manual, Disabled…; null where Windows does not say. */
|
|
3171
|
-
start_type:
|
|
3846
|
+
start_type: z37.string().nullable()
|
|
3172
3847
|
});
|
|
3173
|
-
var WindowsServicesResult =
|
|
3174
|
-
var WindowsServiceControlParams =
|
|
3175
|
-
name:
|
|
3176
|
-
action:
|
|
3848
|
+
var WindowsServicesResult = z37.strictObject({ services: z37.array(WindowsService) });
|
|
3849
|
+
var WindowsServiceControlParams = z37.strictObject({
|
|
3850
|
+
name: z37.string().min(1).max(256),
|
|
3851
|
+
action: z37.enum(["start", "stop", "restart"])
|
|
3177
3852
|
});
|
|
3178
|
-
var WindowsServiceControlResult =
|
|
3179
|
-
var WindowsEventLogParams =
|
|
3180
|
-
log:
|
|
3853
|
+
var WindowsServiceControlResult = z37.strictObject({ name: z37.string(), status: z37.string() });
|
|
3854
|
+
var WindowsEventLogParams = z37.strictObject({
|
|
3855
|
+
log: z37.string().min(1).max(256).default("System"),
|
|
3181
3856
|
/** Only these levels; absent: all. */
|
|
3182
|
-
levels:
|
|
3857
|
+
levels: z37.array(z37.enum(["critical", "error", "warning", "information", "verbose"])).max(5).optional(),
|
|
3183
3858
|
since_ms: epochMs.optional(),
|
|
3184
|
-
limit:
|
|
3859
|
+
limit: z37.int().min(1).max(500).default(50)
|
|
3185
3860
|
});
|
|
3186
|
-
var WindowsEvent =
|
|
3187
|
-
id:
|
|
3188
|
-
level:
|
|
3189
|
-
source:
|
|
3861
|
+
var WindowsEvent = z37.strictObject({
|
|
3862
|
+
id: z37.int(),
|
|
3863
|
+
level: z37.string(),
|
|
3864
|
+
source: z37.string(),
|
|
3190
3865
|
at_ms: epochMs,
|
|
3191
|
-
message:
|
|
3866
|
+
message: z37.string()
|
|
3192
3867
|
});
|
|
3193
|
-
var WindowsEventLogResult =
|
|
3194
|
-
var WindowsFeaturesParams =
|
|
3195
|
-
var WindowsFeature =
|
|
3196
|
-
var WindowsFeaturesResult =
|
|
3868
|
+
var WindowsEventLogResult = z37.strictObject({ log: z37.string(), events: z37.array(WindowsEvent) });
|
|
3869
|
+
var WindowsFeaturesParams = z37.strictObject({ filter: z37.string().min(1).max(256).optional() });
|
|
3870
|
+
var WindowsFeature = z37.strictObject({ name: z37.string(), state: z37.string() });
|
|
3871
|
+
var WindowsFeaturesResult = z37.strictObject({ features: z37.array(WindowsFeature) });
|
|
3197
3872
|
|
|
3198
3873
|
// src/schema/schedule.ts
|
|
3199
|
-
import { z as
|
|
3200
|
-
var OpRef =
|
|
3201
|
-
var ScheduleCreateParams =
|
|
3202
|
-
name:
|
|
3874
|
+
import { z as z38 } from "zod";
|
|
3875
|
+
var OpRef = z38.string().min(3).max(128).regex(/^[a-z_]+(\.[a-z_]+)+$/);
|
|
3876
|
+
var ScheduleCreateParams = z38.strictObject({
|
|
3877
|
+
name: z38.string().min(1).max(200),
|
|
3203
3878
|
op: OpRef,
|
|
3204
3879
|
/** The op's params, exactly as the op takes them; checked when the task is created. */
|
|
3205
|
-
params:
|
|
3206
|
-
interval_s:
|
|
3880
|
+
params: z38.record(z38.string(), z38.unknown()).default({}),
|
|
3881
|
+
interval_s: z38.int().min(10).max(2592e3),
|
|
3207
3882
|
/** Stop after this many runs; absent: until cancelled. */
|
|
3208
|
-
max_runs:
|
|
3883
|
+
max_runs: z38.int().min(1).max(1e5).optional(),
|
|
3209
3884
|
/** Run once now, before the first interval. */
|
|
3210
|
-
run_now:
|
|
3885
|
+
run_now: z38.boolean().default(false)
|
|
3211
3886
|
});
|
|
3212
|
-
var ScheduleRun =
|
|
3887
|
+
var ScheduleRun = z38.strictObject({
|
|
3213
3888
|
at_ms: epochMs,
|
|
3214
|
-
ok:
|
|
3889
|
+
ok: z38.boolean(),
|
|
3215
3890
|
elapsed_ms: nonNegInt,
|
|
3216
3891
|
/** The error's code and message when the run failed. */
|
|
3217
|
-
error:
|
|
3892
|
+
error: z38.string().nullable(),
|
|
3218
3893
|
/** The start of the answer, as JSON (cut at 4 KiB). */
|
|
3219
|
-
result_preview:
|
|
3894
|
+
result_preview: z38.string().nullable()
|
|
3220
3895
|
});
|
|
3221
|
-
var ScheduledTask =
|
|
3222
|
-
id:
|
|
3223
|
-
name:
|
|
3224
|
-
op:
|
|
3225
|
-
params:
|
|
3896
|
+
var ScheduledTask = z38.strictObject({
|
|
3897
|
+
id: z38.string(),
|
|
3898
|
+
name: z38.string(),
|
|
3899
|
+
op: z38.string(),
|
|
3900
|
+
params: z38.record(z38.string(), z38.unknown()),
|
|
3226
3901
|
interval_s: nonNegInt,
|
|
3227
3902
|
max_runs: nonNegInt.nullable(),
|
|
3228
3903
|
runs: nonNegInt,
|
|
3229
3904
|
created_at_ms: epochMs,
|
|
3230
3905
|
next_run_at_ms: epochMs.nullable(),
|
|
3231
3906
|
/** active, done (ran max_runs), cancelled. */
|
|
3232
|
-
state:
|
|
3907
|
+
state: z38.enum(["active", "done", "cancelled"]),
|
|
3233
3908
|
/** The newest runs, newest first (at most 10). */
|
|
3234
|
-
recent:
|
|
3909
|
+
recent: z38.array(ScheduleRun)
|
|
3235
3910
|
});
|
|
3236
|
-
var ScheduleCreateResult =
|
|
3237
|
-
var ScheduleListParams =
|
|
3238
|
-
var ScheduleListResult =
|
|
3239
|
-
var ScheduleCancelParams =
|
|
3240
|
-
var ScheduleCancelResult =
|
|
3911
|
+
var ScheduleCreateResult = z38.strictObject({ task: ScheduledTask });
|
|
3912
|
+
var ScheduleListParams = z38.strictObject({ include_finished: z38.boolean().default(false) });
|
|
3913
|
+
var ScheduleListResult = z38.strictObject({ tasks: z38.array(ScheduledTask) });
|
|
3914
|
+
var ScheduleCancelParams = z38.strictObject({ id: z38.string().min(1).max(64) });
|
|
3915
|
+
var ScheduleCancelResult = z38.strictObject({ task: ScheduledTask });
|
|
3241
3916
|
|
|
3242
3917
|
// src/schema/notes.ts
|
|
3243
|
-
import { z as
|
|
3244
|
-
var NoteFolder =
|
|
3245
|
-
var NotePath =
|
|
3246
|
-
var NotesFoldersParams =
|
|
3247
|
-
var NotesFolder =
|
|
3248
|
-
var NotesFoldersResult =
|
|
3918
|
+
import { z as z39 } from "zod";
|
|
3919
|
+
var NoteFolder = z39.string().min(1).max(512).regex(/^[^/\\:*?"<>|][^\\:*?"<>|]*$/);
|
|
3920
|
+
var NotePath = z39.string().min(4).max(1024).regex(/^[^/\\:*?"<>|][^\\:*?"<>|]*\.md$/);
|
|
3921
|
+
var NotesFoldersParams = z39.strictObject({});
|
|
3922
|
+
var NotesFolder = z39.strictObject({ folder: z39.string(), notes: nonNegInt });
|
|
3923
|
+
var NotesFoldersResult = z39.strictObject({
|
|
3249
3924
|
/** The notes root on this computer. */
|
|
3250
|
-
root:
|
|
3251
|
-
folders:
|
|
3925
|
+
root: z39.string(),
|
|
3926
|
+
folders: z39.array(NotesFolder)
|
|
3252
3927
|
});
|
|
3253
|
-
var NotesListParams =
|
|
3928
|
+
var NotesListParams = z39.strictObject({
|
|
3254
3929
|
folder: NoteFolder.optional(),
|
|
3255
|
-
limit:
|
|
3930
|
+
limit: z39.int().min(1).max(2e3).default(500)
|
|
3256
3931
|
});
|
|
3257
|
-
var NoteEntry =
|
|
3258
|
-
path:
|
|
3259
|
-
label:
|
|
3260
|
-
folder:
|
|
3932
|
+
var NoteEntry = z39.strictObject({
|
|
3933
|
+
path: z39.string(),
|
|
3934
|
+
label: z39.string(),
|
|
3935
|
+
folder: z39.string(),
|
|
3261
3936
|
bytes: nonNegInt,
|
|
3262
3937
|
modified_at_ms: epochMs
|
|
3263
3938
|
});
|
|
3264
|
-
var NotesListResult =
|
|
3265
|
-
var NotesReadParams =
|
|
3266
|
-
var NotesReadResult =
|
|
3267
|
-
path:
|
|
3268
|
-
content:
|
|
3939
|
+
var NotesListResult = z39.strictObject({ root: z39.string(), notes: z39.array(NoteEntry), total: nonNegInt });
|
|
3940
|
+
var NotesReadParams = z39.strictObject({ path: NotePath });
|
|
3941
|
+
var NotesReadResult = z39.strictObject({
|
|
3942
|
+
path: z39.string(),
|
|
3943
|
+
content: z39.string(),
|
|
3269
3944
|
bytes: nonNegInt,
|
|
3270
3945
|
modified_at_ms: epochMs,
|
|
3271
3946
|
/** SHA-256 of the content: pass it back as `if_hash` to write only over this version. */
|
|
3272
|
-
hash:
|
|
3947
|
+
hash: z39.string()
|
|
3273
3948
|
});
|
|
3274
|
-
var NotesWriteParams =
|
|
3949
|
+
var NotesWriteParams = z39.strictObject({
|
|
3275
3950
|
folder: NoteFolder.default("General"),
|
|
3276
3951
|
/** The note's name, without ".md". */
|
|
3277
|
-
label:
|
|
3278
|
-
content:
|
|
3952
|
+
label: z39.string().min(1).max(200).regex(/^[^/\\:*?"<>|]+$/),
|
|
3953
|
+
content: z39.string().max(10485760),
|
|
3279
3954
|
/** Write only when the note is still this version (notes.read's hash); a change since answers CONFLICT. */
|
|
3280
|
-
if_hash:
|
|
3955
|
+
if_hash: z39.string().length(64).optional()
|
|
3281
3956
|
});
|
|
3282
|
-
var NotesWriteResult =
|
|
3283
|
-
var NotesSearchParams =
|
|
3284
|
-
query:
|
|
3285
|
-
limit:
|
|
3957
|
+
var NotesWriteResult = z39.strictObject({ path: z39.string(), bytes: nonNegInt, created: z39.boolean(), hash: z39.string() });
|
|
3958
|
+
var NotesSearchParams = z39.strictObject({
|
|
3959
|
+
query: z39.string().min(1).max(512),
|
|
3960
|
+
limit: z39.int().min(1).max(200).default(50)
|
|
3286
3961
|
});
|
|
3287
|
-
var NotesMatch =
|
|
3288
|
-
path:
|
|
3289
|
-
label:
|
|
3290
|
-
folder:
|
|
3962
|
+
var NotesMatch = z39.strictObject({
|
|
3963
|
+
path: z39.string(),
|
|
3964
|
+
label: z39.string(),
|
|
3965
|
+
folder: z39.string(),
|
|
3291
3966
|
/** The matching lines (at most five), trimmed. */
|
|
3292
|
-
lines:
|
|
3967
|
+
lines: z39.array(z39.string())
|
|
3293
3968
|
});
|
|
3294
|
-
var NotesSearchResult =
|
|
3969
|
+
var NotesSearchResult = z39.strictObject({ matches: z39.array(NotesMatch), total: nonNegInt });
|
|
3295
3970
|
|
|
3296
3971
|
// src/schema/documents.ts
|
|
3297
|
-
import { z as
|
|
3972
|
+
import { z as z40 } from "zod";
|
|
3298
3973
|
var DOCUMENTS_MAX_TEXT_CHARS = 1048576;
|
|
3299
|
-
var DocumentsPdfTextParams =
|
|
3974
|
+
var DocumentsPdfTextParams = z40.strictObject({
|
|
3300
3975
|
path: AbsPath,
|
|
3301
3976
|
/** 1-based, inclusive. */
|
|
3302
|
-
first_page:
|
|
3303
|
-
last_page:
|
|
3304
|
-
max_chars:
|
|
3977
|
+
first_page: z40.int().min(1).optional(),
|
|
3978
|
+
last_page: z40.int().min(1).optional(),
|
|
3979
|
+
max_chars: z40.int().min(1).max(DOCUMENTS_MAX_TEXT_CHARS).default(2e5)
|
|
3305
3980
|
});
|
|
3306
|
-
var DocumentsPdfPage =
|
|
3307
|
-
var DocumentsPdfTextResult =
|
|
3981
|
+
var DocumentsPdfPage = z40.strictObject({ page: z40.int().min(1), text: z40.string() });
|
|
3982
|
+
var DocumentsPdfTextResult = z40.strictObject({
|
|
3308
3983
|
pages: nonNegInt,
|
|
3309
3984
|
/** Each page read, in order (an image-only page has empty text: OCR it). */
|
|
3310
|
-
read:
|
|
3311
|
-
truncated:
|
|
3312
|
-
title:
|
|
3313
|
-
author:
|
|
3985
|
+
read: z40.array(DocumentsPdfPage),
|
|
3986
|
+
truncated: z40.boolean(),
|
|
3987
|
+
title: z40.string().nullable(),
|
|
3988
|
+
author: z40.string().nullable()
|
|
3314
3989
|
});
|
|
3315
|
-
var DocumentsOcrParams =
|
|
3990
|
+
var DocumentsOcrParams = z40.strictObject({
|
|
3316
3991
|
path: AbsPath,
|
|
3317
3992
|
/** BCP-47 language hints ("en-US", "fr-FR"); absent: the OS's own choice. */
|
|
3318
|
-
languages:
|
|
3993
|
+
languages: z40.array(z40.string().min(2).max(16)).max(8).optional(),
|
|
3319
3994
|
/** Faster, less accurate. */
|
|
3320
|
-
fast:
|
|
3995
|
+
fast: z40.boolean().default(false)
|
|
3321
3996
|
});
|
|
3322
|
-
var DocumentsOcrLine =
|
|
3323
|
-
text:
|
|
3997
|
+
var DocumentsOcrLine = z40.strictObject({
|
|
3998
|
+
text: z40.string(),
|
|
3324
3999
|
/** 0–1; null where the engine does not say. */
|
|
3325
|
-
confidence:
|
|
4000
|
+
confidence: z40.number().min(0).max(1).nullable()
|
|
3326
4001
|
});
|
|
3327
|
-
var DocumentsOcrResult =
|
|
3328
|
-
text:
|
|
3329
|
-
lines:
|
|
3330
|
-
truncated:
|
|
4002
|
+
var DocumentsOcrResult = z40.strictObject({
|
|
4003
|
+
text: z40.string(),
|
|
4004
|
+
lines: z40.array(DocumentsOcrLine),
|
|
4005
|
+
truncated: z40.boolean(),
|
|
3331
4006
|
/** Which engine read it ("vision" on macOS, "windows-ocr", "tesseract"). */
|
|
3332
|
-
engine:
|
|
4007
|
+
engine: z40.string()
|
|
3333
4008
|
});
|
|
3334
|
-
var DocumentsImageResizeParams =
|
|
4009
|
+
var DocumentsImageResizeParams = z40.strictObject({
|
|
3335
4010
|
path: AbsPath,
|
|
3336
4011
|
/** Where to write it; absent: next to the original, "<name>-resized.<ext>". */
|
|
3337
4012
|
out_path: AbsPath.optional(),
|
|
3338
4013
|
/** The longest side, kept in proportion; absent: the size stays (a format change only). */
|
|
3339
|
-
max_size:
|
|
3340
|
-
format:
|
|
3341
|
-
overwrite:
|
|
4014
|
+
max_size: z40.int().min(1).max(32768).optional(),
|
|
4015
|
+
format: z40.enum(["png", "jpeg", "tiff", "heic", "bmp", "gif"]).optional(),
|
|
4016
|
+
overwrite: z40.boolean().default(false)
|
|
3342
4017
|
});
|
|
3343
|
-
var DocumentsImageResizeResult =
|
|
3344
|
-
path:
|
|
4018
|
+
var DocumentsImageResizeResult = z40.strictObject({
|
|
4019
|
+
path: z40.string(),
|
|
3345
4020
|
width: nonNegInt,
|
|
3346
4021
|
height: nonNegInt,
|
|
3347
4022
|
bytes: nonNegInt
|
|
3348
4023
|
});
|
|
3349
|
-
var DocumentsParagraph =
|
|
3350
|
-
style:
|
|
3351
|
-
text:
|
|
4024
|
+
var DocumentsParagraph = z40.strictObject({
|
|
4025
|
+
style: z40.enum(["title", "heading1", "heading2", "heading3", "body", "bullet", "numbered", "quote", "code"]).default("body"),
|
|
4026
|
+
text: z40.string().max(1e5)
|
|
3352
4027
|
});
|
|
3353
|
-
var DocumentsSheet =
|
|
3354
|
-
name:
|
|
4028
|
+
var DocumentsSheet = z40.strictObject({
|
|
4029
|
+
name: z40.string().min(1).max(31),
|
|
3355
4030
|
/** Rows of cells; the first row is the header when `header` is true. */
|
|
3356
|
-
rows:
|
|
3357
|
-
header:
|
|
4031
|
+
rows: z40.array(z40.array(z40.union([z40.string().max(32767), z40.number(), z40.boolean(), z40.null()])).max(16384)).max(1e5),
|
|
4032
|
+
header: z40.boolean().default(true)
|
|
3358
4033
|
});
|
|
3359
|
-
var DocumentsOfficeGenerateParams =
|
|
3360
|
-
kind:
|
|
4034
|
+
var DocumentsOfficeGenerateParams = z40.strictObject({
|
|
4035
|
+
kind: z40.enum(["docx", "xlsx"]),
|
|
3361
4036
|
path: AbsPath,
|
|
3362
|
-
title:
|
|
4037
|
+
title: z40.string().max(1024).optional(),
|
|
3363
4038
|
/** docx: the document's paragraphs, in order. */
|
|
3364
|
-
paragraphs:
|
|
4039
|
+
paragraphs: z40.array(DocumentsParagraph).max(5e4).optional(),
|
|
3365
4040
|
/** xlsx: the workbook's sheets, in order. */
|
|
3366
|
-
sheets:
|
|
3367
|
-
overwrite:
|
|
4041
|
+
sheets: z40.array(DocumentsSheet).min(1).max(64).optional(),
|
|
4042
|
+
overwrite: z40.boolean().default(false)
|
|
3368
4043
|
});
|
|
3369
|
-
var DocumentsOfficeGenerateResult =
|
|
3370
|
-
var EntitiesNerParams =
|
|
3371
|
-
text:
|
|
4044
|
+
var DocumentsOfficeGenerateResult = z40.strictObject({ path: z40.string(), bytes: nonNegInt });
|
|
4045
|
+
var EntitiesNerParams = z40.strictObject({
|
|
4046
|
+
text: z40.string().min(1).max(DOCUMENTS_MAX_TEXT_CHARS),
|
|
3372
4047
|
/** Which kinds to keep; absent: all three. */
|
|
3373
|
-
labels:
|
|
4048
|
+
labels: z40.array(z40.enum(["person", "place", "organization"])).min(1).max(3).optional()
|
|
3374
4049
|
});
|
|
3375
|
-
var EntitySpan =
|
|
3376
|
-
text:
|
|
3377
|
-
label:
|
|
4050
|
+
var EntitySpan = z40.strictObject({
|
|
4051
|
+
text: z40.string(),
|
|
4052
|
+
label: z40.string(),
|
|
3378
4053
|
/** Character offsets into the text (UTF-16, as JavaScript counts). */
|
|
3379
4054
|
start: nonNegInt,
|
|
3380
4055
|
end: nonNegInt
|
|
3381
4056
|
});
|
|
3382
|
-
var EntitiesNerResult =
|
|
3383
|
-
var PiiKind =
|
|
3384
|
-
var EntitiesPiiParams =
|
|
3385
|
-
text:
|
|
3386
|
-
kinds:
|
|
4057
|
+
var EntitiesNerResult = z40.strictObject({ entities: z40.array(EntitySpan), engine: z40.string() });
|
|
4058
|
+
var PiiKind = z40.enum(["email", "phone", "credit_card", "us_ssn", "iban", "ip_address", "url", "api_key"]);
|
|
4059
|
+
var EntitiesPiiParams = z40.strictObject({
|
|
4060
|
+
text: z40.string().min(1).max(DOCUMENTS_MAX_TEXT_CHARS),
|
|
4061
|
+
kinds: z40.array(PiiKind).min(1).max(8).optional(),
|
|
3387
4062
|
/** Also answer the text with each finding replaced by its kind ("[email]"). */
|
|
3388
|
-
redact:
|
|
4063
|
+
redact: z40.boolean().default(false)
|
|
3389
4064
|
});
|
|
3390
|
-
var EntitiesPiiResult =
|
|
3391
|
-
findings:
|
|
3392
|
-
redacted:
|
|
4065
|
+
var EntitiesPiiResult = z40.strictObject({
|
|
4066
|
+
findings: z40.array(z40.strictObject({ kind: PiiKind, text: z40.string(), start: nonNegInt, end: nonNegInt })),
|
|
4067
|
+
redacted: z40.string().nullable()
|
|
3393
4068
|
});
|
|
3394
4069
|
|
|
3395
4070
|
// src/schema/registry.ts
|
|
@@ -3523,6 +4198,36 @@ var OPS = {
|
|
|
3523
4198
|
"apps.windows.shown": { params: AppsWindowsShownParams, result: AppsWindowsShownResult, kind: "unary", since: "1.21", errors: ["NOT_FOUND", "PERMISSION_DENIED_OS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
3524
4199
|
// Claude Code history (SPEC §6 coding): served by the `coding` Python service through SERVICES below.
|
|
3525
4200
|
"coding.history.import_missing": { params: CodingHistoryImportMissingParams, result: CodingHistoryImportMissingResult, kind: "unary", since: "1.5", errors: ["RESOURCE_BUSY", "RESOURCE_GONE", "CANCELLED", "INTERNAL"] },
|
|
4201
|
+
// Code from anywhere (1.38): the coding engine's sessions, read and driven over any transport.
|
|
4202
|
+
"coding.providers": { params: CodingProvidersParams, result: CodingProvidersResult, kind: "unary", since: "1.38", errors: ["INTERNAL"] },
|
|
4203
|
+
"coding.sessions.list": { params: CodingSessionsListParams, result: CodingSessionsListResult, kind: "unary", since: "1.38", errors: ["PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
4204
|
+
"coding.discover": { params: CodingDiscoverParams, result: CodingDiscoverResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
4205
|
+
"coding.runs.list": { params: CodingRunsListParams, result: CodingRunsListResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "INTERNAL"] },
|
|
4206
|
+
"coding.history": { params: CodingHistoryParams, result: CodingHistoryResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "INTERNAL"] },
|
|
4207
|
+
"coding.transcript.read": { params: CodingTranscriptReadParams, result: CodingTranscriptReadResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "INTERNAL"] },
|
|
4208
|
+
"coding.item.full": { params: CodingItemFullParams, result: CodingItemFullResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "PAYLOAD_TOO_LARGE", "INTERNAL"] },
|
|
4209
|
+
"coding.activity": { params: CodingActivityParams, result: CodingActivityResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "INTERNAL"] },
|
|
4210
|
+
"coding.folders.recent": { params: CodingFoldersRecentParams, result: CodingFoldersRecentResult, kind: "unary", since: "1.38", errors: ["INTERNAL"] },
|
|
4211
|
+
"coding.folders.check": { params: CodingFoldersCheckParams, result: CodingFoldersCheckResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "AUTH_FORBIDDEN", "INTERNAL"] },
|
|
4212
|
+
"coding.folders.create": { params: CodingFoldersCreateParams, result: CodingFoldersCreateResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "AUTH_FORBIDDEN", "PERMISSION_DENIED_OS", "INTERNAL"] },
|
|
4213
|
+
"coding.start": { params: CodingStartParams, result: CodingStartResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "AUTH_FORBIDDEN", "RATE_LIMITED", "INTERNAL"] },
|
|
4214
|
+
"coding.takeover": { params: CodingTakeoverParams, result: CodingTakeoverResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "RESOURCE_BUSY", "AUTH_FORBIDDEN", "INTERNAL"] },
|
|
4215
|
+
"coding.send": { params: CodingSendParams, result: CodingSendResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "RATE_LIMITED", "INTERNAL"] },
|
|
4216
|
+
"coding.stop": { params: CodingStopParams, result: CodingStopResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "INTERNAL"] },
|
|
4217
|
+
"coding.stop_elsewhere": { params: CodingStopElsewhereParams, result: CodingStopElsewhereResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "CONFLICT", "PERMISSION_DENIED_OS", "INTERNAL"] },
|
|
4218
|
+
"coding.options.set": { params: CodingOptionsSetParams, result: CodingOptionsSetResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "INTERNAL"] },
|
|
4219
|
+
"coding.agent.set": { params: CodingAgentSetParams, result: CodingAgentSetResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "AUTH_FORBIDDEN", "INTERNAL"] },
|
|
4220
|
+
"coding.agents.access": { params: CodingAgentsAccessParams, result: CodingAgentsAccessResult, kind: "unary", since: "1.38", errors: ["INTERNAL"] },
|
|
4221
|
+
"coding.titles.status": { params: CodingTitlesStatusParams, result: CodingTitlesStatusResult, kind: "unary", since: "1.38", errors: ["INTERNAL"] },
|
|
4222
|
+
"coding.prefs.list": { params: CodingPrefsListParams, result: CodingPrefsListResult, kind: "unary", since: "1.38", errors: ["INTERNAL"] },
|
|
4223
|
+
"coding.prefs.set": { params: CodingPrefsSetParams, result: CodingPrefsSetResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "INTERNAL"] },
|
|
4224
|
+
"coding.recent.seen": { params: CodingRecentSeenParams, result: CodingRecentSeenResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "INTERNAL"] },
|
|
4225
|
+
"coding.search": { params: CodingSearchParams, result: CodingSearchResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "TIMEOUT", "INTERNAL"] },
|
|
4226
|
+
"coding.reconcile": { params: CodingReconcileParams, result: CodingReconcileResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "RESOURCE_BUSY", "CANCELLED", "INTERNAL"] },
|
|
4227
|
+
"coding.transcript.raw": { params: CodingTranscriptRawParams, result: CodingTranscriptRawResult, kind: "stream", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "CANCELLED", "INTERNAL"] },
|
|
4228
|
+
"coding.watch": { params: CodingWatchParams, result: CodingWatchResult, kind: "resource", since: "1.38", errors: ["PLATFORM_UNSUPPORTED", "RATE_LIMITED", "INTERNAL"] },
|
|
4229
|
+
"coding.session.watch": { params: CodingSessionWatchParams, result: CodingSessionWatchResult, kind: "resource", since: "1.38", errors: ["INVALID_PARAMS", "NOT_FOUND", "RATE_LIMITED", "INTERNAL"] },
|
|
4230
|
+
"session.identify": { params: SessionIdentifyParams, result: SessionIdentifyResult, kind: "unary", since: "1.38", errors: ["INVALID_PARAMS"] },
|
|
3526
4231
|
// 1.22: git for agents (core `git`, the system git; the cloud sandbox's /git/* set, SPEC 6.1).
|
|
3527
4232
|
"git.status": { params: GitStatusParams, result: GitStatusResult, kind: "unary", since: "1.22", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "TIMEOUT", "INTERNAL"] },
|
|
3528
4233
|
"git.diff": { params: GitDiffParams, result: GitDiffResult, kind: "unary", since: "1.22", errors: ["NOT_FOUND", "INVALID_PARAMS", "CONFLICT", "PLATFORM_UNSUPPORTED", "TIMEOUT", "INTERNAL"] },
|
|
@@ -3539,10 +4244,24 @@ var OPS = {
|
|
|
3539
4244
|
"web.scrape": { params: WebScrapeParams, result: WebScrapeResult, kind: "unary", since: "1.22", errors: ["INVALID_PARAMS", "TIMEOUT", "RESOURCE_BUSY", "AUTH_REQUIRED", "INTERNAL"] },
|
|
3540
4245
|
"web.search": { params: WebSearchParams, result: WebSearchResult, kind: "unary", since: "1.22", errors: ["INVALID_PARAMS", "TIMEOUT", "RESOURCE_BUSY", "AUTH_REQUIRED", "INTERNAL"] },
|
|
3541
4246
|
"web.fetch_with_browser": { params: WebBrowserFetchParams, result: WebBrowserFetchResult, kind: "unary", since: "1.22", errors: ["INVALID_PARAMS", "TIMEOUT", "RESOURCE_BUSY", "AUTH_REQUIRED", "INTERNAL"] },
|
|
4247
|
+
"web.runtime.state": { params: WebRuntimeParams, result: WebRuntimeState, kind: "unary", since: "1.40", errors: ["INTERNAL"] },
|
|
4248
|
+
"web.runtime.install": { params: WebRuntimeParams, result: WebRuntimeState, kind: "unary", since: "1.40", errors: ["TIMEOUT", "RESOURCE_BUSY", "CANCELLED", "INTERNAL"] },
|
|
4249
|
+
"web.runtime.remove": { params: WebRuntimeParams, result: WebRuntimeState, kind: "unary", since: "1.40", errors: ["RESOURCE_BUSY", "INTERNAL"] },
|
|
4250
|
+
"web.outbox.list": { params: WebOutboxListParams, result: WebOutboxListResult, kind: "unary", since: "1.40", errors: ["INTERNAL"] },
|
|
4251
|
+
"web.outbox.retry": { params: WebOutboxRetryParams, result: WebOutboxRetryResult, kind: "unary", since: "1.40", errors: ["NOT_FOUND", "AUTH_REQUIRED", "INTERNAL"] },
|
|
4252
|
+
"web.outbox.discard": { params: WebOutboxDiscardParams, result: WebOutboxDiscardResult, kind: "unary", since: "1.40", errors: ["NOT_FOUND", "INTERNAL"] },
|
|
4253
|
+
"web.log.list": { params: WebLogListParams, result: WebLogListResult, kind: "unary", since: "1.40", errors: ["INVALID_PARAMS"] },
|
|
4254
|
+
"web.log.clear": { params: WebLogClearParams, result: WebLogClearResult, kind: "unary", since: "1.40", errors: ["INTERNAL"] },
|
|
4255
|
+
"web.research.queue": { params: WebResearchQueueParams, result: WebResearchQueueResult, kind: "unary", since: "1.40", errors: ["INVALID_PARAMS", "INTERNAL"] },
|
|
4256
|
+
"web.research.fetch": { params: WebResearchFetchParams, result: WebResearchFetchResult, kind: "unary", since: "1.40", errors: ["INVALID_PARAMS", "AUTH_REQUIRED", "RESOURCE_BUSY", "CANCELLED", "INTERNAL"] },
|
|
3542
4257
|
// 1.23: the signed-in person's own agents and Vault, read as them (the desktop's Agents library and Vault).
|
|
3543
4258
|
"account.agents.list": { params: AccountAgentsListParams, result: AccountAgentsListResult, kind: "unary", since: "1.23", errors: ["INTERNAL"] },
|
|
3544
4259
|
"account.vault.list": { params: AccountVaultListParams, result: AccountVaultListResult, kind: "unary", since: "1.23", errors: ["INTERNAL"] },
|
|
3545
4260
|
"account.vault.copy": { params: AccountVaultCopyParams, result: AccountVaultCopyResult, kind: "unary", since: "1.23", errors: ["AUTH_REQUIRED", "AUTH_FORBIDDEN", "NOT_FOUND", "INVALID_PARAMS", "DEVICE_OFFLINE", "INTERNAL"] },
|
|
4261
|
+
// 1.39: one agent opened (its inputs and what it uses), its runs (mandate.run_history, one agent at a time) and its star.
|
|
4262
|
+
"account.agents.get": { params: AccountAgentsGetParams, result: AccountAgentsGetResult, kind: "unary", since: "1.39", errors: ["INVALID_PARAMS", "INTERNAL"] },
|
|
4263
|
+
"account.agents.runs": { params: AccountAgentsRunsParams, result: AccountAgentsRunsResult, kind: "unary", since: "1.39", errors: ["INVALID_PARAMS", "INTERNAL"] },
|
|
4264
|
+
"account.agents.favorite": { params: AccountAgentsFavoriteParams, result: AccountAgentsFavoriteResult, kind: "unary", since: "1.39", errors: ["AUTH_REQUIRED", "NOT_FOUND", "INVALID_PARAMS", "DEVICE_OFFLINE", "INTERNAL"] },
|
|
3546
4265
|
// 1.26: the app's own update (it installs only once every window quit) and bringing the windows back.
|
|
3547
4266
|
"apps.windows.update_state": { params: AppsWindowsUpdateStateParams, result: AppsWindowsUpdateStateResult, kind: "unary", since: "1.26", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
3548
4267
|
"apps.windows.reopen": { params: AppsWindowsReopenParams, result: AppsWindowsReopenResult, kind: "unary", since: "1.26", errors: ["NOT_FOUND", "PLATFORM_UNSUPPORTED", "INTERNAL"] },
|
|
@@ -3616,12 +4335,18 @@ var EVENTS = {
|
|
|
3616
4335
|
"session.control_changed": SessionControlChangedEvent,
|
|
3617
4336
|
"models.progress": ModelsProgressEvent,
|
|
3618
4337
|
"coding.history.progress": CodingHistoryProgressEvent,
|
|
4338
|
+
"coding.changed": CodingChangedEvent,
|
|
4339
|
+
"coding.watch_state": CodingWatchStateEvent,
|
|
4340
|
+
"coding.item": CodingItemEvent,
|
|
4341
|
+
"coding.gap": CodingGapEvent,
|
|
3619
4342
|
"relay.device_status": RelayDeviceStatusEvent,
|
|
3620
4343
|
"relay.auth_expiring": RelayAuthExpiringEvent,
|
|
3621
4344
|
"diag.errors.changed": DiagErrorsChangedEvent,
|
|
3622
4345
|
"browser.invoke": BrowserInvokeEvent,
|
|
3623
4346
|
"browser.sessions_changed": BrowserSessionsChangedEvent,
|
|
3624
|
-
"browser.progress": BrowserProgressEvent
|
|
4347
|
+
"browser.progress": BrowserProgressEvent,
|
|
4348
|
+
"web.log.entry": WebLogEntry,
|
|
4349
|
+
"web.progress": WebProgressEvent
|
|
3625
4350
|
};
|
|
3626
4351
|
var SERVICES = {
|
|
3627
4352
|
ml: {
|
|
@@ -3647,9 +4372,12 @@ var SERVICES = {
|
|
|
3647
4372
|
progress: ToolsServiceProgress,
|
|
3648
4373
|
ops: {
|
|
3649
4374
|
"tools.web_fetch": { params: WebFetchParams, result: WebFetchResult },
|
|
3650
|
-
"tools.web_scrape": { params:
|
|
4375
|
+
"tools.web_scrape": { params: ToolsWebScrapeParams, result: ToolsWebScrapeResult },
|
|
3651
4376
|
"tools.web_search": { params: ToolsWebSearchParams, result: WebSearchResult },
|
|
3652
|
-
"tools.web_browser_fetch": { params:
|
|
4377
|
+
"tools.web_browser_fetch": { params: ToolsWebBrowserFetchParams, result: ToolsWebBrowserFetchResult },
|
|
4378
|
+
"tools.web_runtime_state": { params: WebRuntimeParams, result: WebRuntimeState },
|
|
4379
|
+
"tools.web_runtime_install": { params: WebRuntimeParams, result: WebRuntimeState },
|
|
4380
|
+
"tools.web_runtime_remove": { params: WebRuntimeParams, result: WebRuntimeState }
|
|
3653
4381
|
}
|
|
3654
4382
|
}
|
|
3655
4383
|
};
|
|
@@ -3682,7 +4410,9 @@ var NAMED_SCHEMAS = {
|
|
|
3682
4410
|
RelayMsg,
|
|
3683
4411
|
ClientToCoreMsg,
|
|
3684
4412
|
CoreToClientMsg,
|
|
4413
|
+
OsGrantState,
|
|
3685
4414
|
OsPermissionName,
|
|
4415
|
+
OsRequirementName,
|
|
3686
4416
|
SysinfoGetParams,
|
|
3687
4417
|
SysinfoGetResult,
|
|
3688
4418
|
SysinfoHardwareParams,
|
|
@@ -3790,6 +4520,91 @@ var NAMED_SCHEMAS = {
|
|
|
3790
4520
|
CodingHistoryImportMissingParams,
|
|
3791
4521
|
CodingHistoryImportMissingResult,
|
|
3792
4522
|
CodingHistoryProgressEvent,
|
|
4523
|
+
CodingProviderName,
|
|
4524
|
+
CodingRunStatus,
|
|
4525
|
+
CodingClientRequestId,
|
|
4526
|
+
CodingRunUsage,
|
|
4527
|
+
CodingStartedBy,
|
|
4528
|
+
CodingRunRecord,
|
|
4529
|
+
CodingSessionAgentPart,
|
|
4530
|
+
CodingSessionAgent,
|
|
4531
|
+
CodingSessionRecord,
|
|
4532
|
+
CodingActiveElsewhere,
|
|
4533
|
+
CodingDiscoveredChat,
|
|
4534
|
+
CodingTranscriptItem,
|
|
4535
|
+
CodingHistoryRecord,
|
|
4536
|
+
CodingQuotaWindow,
|
|
4537
|
+
CodingProviderProblem,
|
|
4538
|
+
CodingProviderBinary,
|
|
4539
|
+
CodingProviderStatus,
|
|
4540
|
+
CodingChatPreference,
|
|
4541
|
+
CodingTitleStatus,
|
|
4542
|
+
CodingRecentRow,
|
|
4543
|
+
CodingFolderCheck,
|
|
4544
|
+
CodingRecentFolder,
|
|
4545
|
+
CodingAgentSelectionParams,
|
|
4546
|
+
CodingSendResult,
|
|
4547
|
+
CodingProvidersParams,
|
|
4548
|
+
CodingProvidersResult,
|
|
4549
|
+
CodingSessionsListParams,
|
|
4550
|
+
CodingSessionsListResult,
|
|
4551
|
+
CodingDiscoverParams,
|
|
4552
|
+
CodingDiscoverResult,
|
|
4553
|
+
CodingRunsListParams,
|
|
4554
|
+
CodingRunsListResult,
|
|
4555
|
+
CodingHistoryParams,
|
|
4556
|
+
CodingHistoryResult,
|
|
4557
|
+
CodingTranscriptReadParams,
|
|
4558
|
+
CodingTranscriptReadResult,
|
|
4559
|
+
CodingItemFullParams,
|
|
4560
|
+
CodingItemFullResult,
|
|
4561
|
+
CodingActivityParams,
|
|
4562
|
+
CodingActivityResult,
|
|
4563
|
+
CodingFoldersRecentParams,
|
|
4564
|
+
CodingFoldersRecentResult,
|
|
4565
|
+
CodingFoldersCheckParams,
|
|
4566
|
+
CodingFoldersCheckResult,
|
|
4567
|
+
CodingFoldersCreateParams,
|
|
4568
|
+
CodingFoldersCreateResult,
|
|
4569
|
+
CodingStartParams,
|
|
4570
|
+
CodingStartResult,
|
|
4571
|
+
CodingTakeoverParams,
|
|
4572
|
+
CodingTakeoverResult,
|
|
4573
|
+
CodingSendParams,
|
|
4574
|
+
CodingStopParams,
|
|
4575
|
+
CodingStopResult,
|
|
4576
|
+
CodingStopElsewhereParams,
|
|
4577
|
+
CodingStopElsewhereResult,
|
|
4578
|
+
CodingOptionsSetParams,
|
|
4579
|
+
CodingOptionsSetResult,
|
|
4580
|
+
CodingAgentSetParams,
|
|
4581
|
+
CodingAgentSetResult,
|
|
4582
|
+
CodingAgentsAccessParams,
|
|
4583
|
+
CodingAgentsAccessResult,
|
|
4584
|
+
CodingTitlesStatusParams,
|
|
4585
|
+
CodingTitlesStatusResult,
|
|
4586
|
+
CodingPrefsListParams,
|
|
4587
|
+
CodingPrefsListResult,
|
|
4588
|
+
CodingPrefsSetParams,
|
|
4589
|
+
CodingPrefsSetResult,
|
|
4590
|
+
CodingRecentSeenParams,
|
|
4591
|
+
CodingRecentSeenResult,
|
|
4592
|
+
CodingSearchParams,
|
|
4593
|
+
CodingSearchResult,
|
|
4594
|
+
CodingReconcileParams,
|
|
4595
|
+
CodingReconcileResult,
|
|
4596
|
+
CodingTranscriptRawParams,
|
|
4597
|
+
CodingTranscriptRawResult,
|
|
4598
|
+
CodingWatchParams,
|
|
4599
|
+
CodingWatchResult,
|
|
4600
|
+
CodingSessionWatchParams,
|
|
4601
|
+
CodingSessionWatchResult,
|
|
4602
|
+
SessionIdentifyParams,
|
|
4603
|
+
SessionIdentifyResult,
|
|
4604
|
+
CodingChangedEvent,
|
|
4605
|
+
CodingWatchStateEvent,
|
|
4606
|
+
CodingItemEvent,
|
|
4607
|
+
CodingGapEvent,
|
|
3793
4608
|
ServiceName,
|
|
3794
4609
|
ContractHash,
|
|
3795
4610
|
ServiceToken,
|
|
@@ -4086,6 +4901,42 @@ var NAMED_SCHEMAS = {
|
|
|
4086
4901
|
ToolsWebSearchParams,
|
|
4087
4902
|
WebBrowserFetchParams,
|
|
4088
4903
|
WebBrowserFetchResult,
|
|
4904
|
+
WebAttachTarget,
|
|
4905
|
+
WebLand,
|
|
4906
|
+
WebNotSavedReason,
|
|
4907
|
+
WebSourceNotice,
|
|
4908
|
+
WebSourceState,
|
|
4909
|
+
ToolsParseFile,
|
|
4910
|
+
ToolsWebScrapeParams,
|
|
4911
|
+
ToolsWebScrapePage,
|
|
4912
|
+
ToolsWebScrapeResult,
|
|
4913
|
+
ToolsWebBrowserFetchParams,
|
|
4914
|
+
ToolsWebBrowserFetchResult,
|
|
4915
|
+
WebRuntimeStateName,
|
|
4916
|
+
WebRuntimeParams,
|
|
4917
|
+
WebRuntimeState,
|
|
4918
|
+
WebOutboxItem,
|
|
4919
|
+
WebOutboxListParams,
|
|
4920
|
+
WebOutboxListResult,
|
|
4921
|
+
WebOutboxRetryParams,
|
|
4922
|
+
WebOutboxRetryResult,
|
|
4923
|
+
WebOutboxDiscardParams,
|
|
4924
|
+
WebOutboxDiscardResult,
|
|
4925
|
+
WebLogVia,
|
|
4926
|
+
WebLogCaller,
|
|
4927
|
+
WebLogResult,
|
|
4928
|
+
WebLogEntry,
|
|
4929
|
+
WebLogListParams,
|
|
4930
|
+
WebLogListResult,
|
|
4931
|
+
WebLogClearParams,
|
|
4932
|
+
WebLogClearResult,
|
|
4933
|
+
WebProgressEvent,
|
|
4934
|
+
WebResearchItemState,
|
|
4935
|
+
WebResearchItem,
|
|
4936
|
+
WebResearchQueueParams,
|
|
4937
|
+
WebResearchQueueResult,
|
|
4938
|
+
WebResearchFetchParams,
|
|
4939
|
+
WebResearchFetchResult,
|
|
4089
4940
|
ToolsServiceProgress,
|
|
4090
4941
|
AccountRowId,
|
|
4091
4942
|
AccountReadState,
|
|
@@ -4099,6 +4950,17 @@ var NAMED_SCHEMAS = {
|
|
|
4099
4950
|
AccountVaultListResult,
|
|
4100
4951
|
AccountVaultCopyParams,
|
|
4101
4952
|
AccountVaultCopyResult,
|
|
4953
|
+
AccountAgentVariable,
|
|
4954
|
+
AccountAgentDetail,
|
|
4955
|
+
AccountAgentsGetParams,
|
|
4956
|
+
AccountAgentsGetResult,
|
|
4957
|
+
AccountAgentRunStatus,
|
|
4958
|
+
AccountAgentRun,
|
|
4959
|
+
AccountAgentRunSort,
|
|
4960
|
+
AccountAgentsRunsParams,
|
|
4961
|
+
AccountAgentsRunsResult,
|
|
4962
|
+
AccountAgentsFavoriteParams,
|
|
4963
|
+
AccountAgentsFavoriteResult,
|
|
4102
4964
|
AppsWindowsUpdateStateParams,
|
|
4103
4965
|
AppsWindowsUpdateStateResult,
|
|
4104
4966
|
AppsWindowsReopenParams,
|
|
@@ -4283,7 +5145,14 @@ var FIELDS_SINCE = {
|
|
|
4283
5145
|
AppsWindowsUpdateStateResult: { closed_by_update: "1.27" },
|
|
4284
5146
|
AppsProjectsToWindowParams: { pin: "1.32", chat_ids: "1.36", take_off_from: "1.36" },
|
|
4285
5147
|
AppsProjectsToWindowResult: { pin: "1.32" },
|
|
4286
|
-
AppsChatsTitlesCheckResult: { stale_windows: "1.33" }
|
|
5148
|
+
AppsChatsTitlesCheckResult: { stale_windows: "1.33" },
|
|
5149
|
+
AccountAgent: { tags: "1.39", model_id: "1.39", access_level: "1.39", organization_id: "1.39", origin: "1.39", is_archived: "1.39", orchestra: "1.39" },
|
|
5150
|
+
WebScrapeParams: { engine: "1.40", land: "1.40" },
|
|
5151
|
+
WebScrapePage: { source: "1.40" },
|
|
5152
|
+
WebBrowserFetchParams: { land: "1.40" },
|
|
5153
|
+
WebBrowserFetchResult: { source: "1.40" },
|
|
5154
|
+
SysinfoGetResult: { requirements: "1.41" },
|
|
5155
|
+
"SysinfoGetResult.permissions[]": { detail: "1.41" }
|
|
4287
5156
|
};
|
|
4288
5157
|
var NULL_SINCE = {
|
|
4289
5158
|
"RelayDeviceStatusEvent.since_ms": { since: "1.1", olderPeersGet: 0 }
|
|
@@ -4303,6 +5172,25 @@ var REASONS_SINCE = {
|
|
|
4303
5172
|
awaiting_confirmation: "1.28",
|
|
4304
5173
|
tool_disabled_on_device: "1.34"
|
|
4305
5174
|
};
|
|
5175
|
+
var PERMISSIONS_SINCE = {
|
|
5176
|
+
reminders: "1.41",
|
|
5177
|
+
speech_recognition: "1.41",
|
|
5178
|
+
messages: "1.41",
|
|
5179
|
+
mail: "1.41",
|
|
5180
|
+
wifi: "1.41"
|
|
5181
|
+
};
|
|
5182
|
+
function permissionsForPeer(value, version) {
|
|
5183
|
+
if (value === null || typeof value !== "object" || Array.isArray(value)) return value;
|
|
5184
|
+
const body = value;
|
|
5185
|
+
if (!Array.isArray(body.permissions)) return value;
|
|
5186
|
+
const since = PERMISSIONS_SINCE;
|
|
5187
|
+
const kept = body.permissions.filter((p) => {
|
|
5188
|
+
const name = p?.name;
|
|
5189
|
+
const added = typeof name === "string" ? since[name] : void 0;
|
|
5190
|
+
return !added || knows(version, added);
|
|
5191
|
+
});
|
|
5192
|
+
return kept.length === body.permissions.length ? value : { ...body, permissions: kept };
|
|
5193
|
+
}
|
|
4306
5194
|
function statusForPeer(status, version) {
|
|
4307
5195
|
const rule = NULL_SINCE["RelayDeviceStatusEvent.since_ms"];
|
|
4308
5196
|
return status.since_ms === null && !knows(version, rule.since) ? { ...status, since_ms: rule.olderPeersGet } : status;
|
|
@@ -4347,7 +5235,9 @@ var RESULT_PATH = /* @__PURE__ */ new Map([
|
|
|
4347
5235
|
["apps.chats.list", "AppsChatsListResult"],
|
|
4348
5236
|
["apps.accounts.usage", "AppsAccountsUsageResult"],
|
|
4349
5237
|
["apps.accounts.resets", "AppsAccountsResetsResult"],
|
|
4350
|
-
["apps.windows.update_state", "AppsWindowsUpdateStateResult"]
|
|
5238
|
+
["apps.windows.update_state", "AppsWindowsUpdateStateResult"],
|
|
5239
|
+
["web.fetch_with_browser", "WebBrowserFetchResult"],
|
|
5240
|
+
["sysinfo.get", "SysinfoGetResult"]
|
|
4351
5241
|
]);
|
|
4352
5242
|
var NESTED_RESULTS = /* @__PURE__ */ new Map([
|
|
4353
5243
|
["apps.chats.list", [["chats", "ChatRow"]]],
|
|
@@ -4359,7 +5249,10 @@ var NESTED_RESULTS = /* @__PURE__ */ new Map([
|
|
|
4359
5249
|
["apps.chats.place", [["chat", "ChatRow"]]],
|
|
4360
5250
|
["apps.accounts.usage", [["accounts", "AccountUsage"]]],
|
|
4361
5251
|
["resources.snapshot", [["disks", "ResourcesDisk"]]],
|
|
4362
|
-
["stack.state", [["servers", "StackServer"]]]
|
|
5252
|
+
["stack.state", [["servers", "StackServer"]]],
|
|
5253
|
+
["account.agents.list", [["agents", "AccountAgent"]]],
|
|
5254
|
+
["web.scrape", [["pages", "WebScrapePage"]]],
|
|
5255
|
+
["sysinfo.get", [["permissions", "SysinfoGetResult.permissions[]"]]]
|
|
4363
5256
|
]);
|
|
4364
5257
|
function stripNested(value, nested, version) {
|
|
4365
5258
|
if (value === null || typeof value !== "object" || Array.isArray(value)) return value;
|
|
@@ -4401,7 +5294,8 @@ function forPeer(op, part, value, version) {
|
|
|
4401
5294
|
const windowKey = op ? WINDOW_RESULTS.get(op) : void 0;
|
|
4402
5295
|
if (windowKey) return stripWindows(value, windowKey, version);
|
|
4403
5296
|
const path = op ? RESULT_PATH.get(op) : void 0;
|
|
4404
|
-
const
|
|
5297
|
+
const known = op === "sysinfo.get" ? permissionsForPeer(value, version) : value;
|
|
5298
|
+
const top = path ? strip(known, FIELDS_SINCE[path], version) : known;
|
|
4405
5299
|
const nested = op ? NESTED_RESULTS.get(op) : void 0;
|
|
4406
5300
|
return nested ? stripNested(top, nested, version) : top;
|
|
4407
5301
|
}
|
|
@@ -4420,7 +5314,7 @@ function forPeer(op, part, value, version) {
|
|
|
4420
5314
|
var VERSIONED_RESULT_OPS = [.../* @__PURE__ */ new Set([...RESULT_PATH.keys(), ...WINDOW_RESULTS.keys(), ...NESTED_RESULTS.keys()])];
|
|
4421
5315
|
|
|
4422
5316
|
// src/contract.ts
|
|
4423
|
-
var CONTRACT_SHA256 = "
|
|
5317
|
+
var CONTRACT_SHA256 = "a2ea77f45ed3f5421e4c722442205e48fce2bbc5bccc892b54403304eca55443";
|
|
4424
5318
|
|
|
4425
5319
|
// src/close-policy.ts
|
|
4426
5320
|
var CLOSE_RULES = {
|
|
@@ -4494,6 +5388,10 @@ var TOOL_CATALOG = [
|
|
|
4494
5388
|
{ name: "desktop_location", group: "personal_automation", state: "built", path: "device_op", ops: ["location.get"], platforms: ["darwin", "win32"], summary: "Where the computer is (the OS's location service)" },
|
|
4495
5389
|
{ name: "desktop_net", group: "personal_automation", state: "built", path: "device_op", ops: ["net.info", "net.wifi", "net.bluetooth", "net.devices", "net.mdns", "net.scan", "net.download"], platforms: ALL, summary: "Local network, Wi-Fi, Bluetooth, open ports and downloads" },
|
|
4496
5390
|
{ name: "desktop_schedule", group: "personal_automation", state: "built", path: "device_op", ops: ["schedule.create", "schedule.list", "schedule.cancel"], platforms: ALL, summary: "Run a tool's op on this computer on an interval; list and cancel" },
|
|
5391
|
+
// 1.38, code from anywhere: the person's Claude Code and Codex sessions on this computer. Turning
|
|
5392
|
+
// either off in Agents › Tools refuses its ops on every relay connection (the existing switch).
|
|
5393
|
+
{ name: "coding_sessions_read", group: "personal_automation", state: "built", path: "device_op", ops: ["coding.providers", "coding.sessions.list", "coding.discover", "coding.runs.list", "coding.history", "coding.transcript.read", "coding.item.full", "coding.activity", "coding.folders.recent", "coding.folders.check", "coding.agents.access", "coding.titles.status", "coding.prefs.list", "coding.recent.seen", "coding.search", "coding.transcript.raw", "coding.watch", "coding.session.watch"], platforms: ALL, summary: "Claude Code and Codex sessions: list, read live, search, download" },
|
|
5394
|
+
{ name: "coding_sessions_drive", group: "personal_automation", state: "built", path: "device_op", ops: ["coding.start", "coding.takeover", "coding.send", "coding.stop", "coding.stop_elsewhere", "coding.options.set", "coding.agent.set", "coding.folders.create", "coding.prefs.set", "coding.reconcile"], platforms: ALL, summary: "Claude Code and Codex sessions: start, send, stop, take over, rename" },
|
|
4497
5395
|
// ── 4. Documents, notes and entities (1.37: the core's `documents` and `notes` owners; desktop_web is the `tools` service) ──
|
|
4498
5396
|
{ name: "desktop_documents", group: "tools_service", state: "built", path: "device_op", ops: ["documents.pdf_text", "documents.ocr", "documents.image_resize", "documents.office_generate"], platforms: ALL, summary: "PDF text, OCR, images, Word and Excel files" },
|
|
4499
5397
|
{ name: "desktop_web", group: "tools_service", state: "built", path: "device_op", ops: ["web.fetch", "web.scrape", "web.search", "web.fetch_with_browser"], platforms: ALL, summary: "Fetch, scrape and search the web from this computer's own connection" },
|
|
@@ -4794,8 +5692,19 @@ function sharedOpsBlocking(tool2, disabledTools) {
|
|
|
4794
5692
|
export {
|
|
4795
5693
|
AbsPath,
|
|
4796
5694
|
AccountAgent,
|
|
5695
|
+
AccountAgentDetail,
|
|
5696
|
+
AccountAgentRun,
|
|
5697
|
+
AccountAgentRunSort,
|
|
5698
|
+
AccountAgentRunStatus,
|
|
5699
|
+
AccountAgentVariable,
|
|
5700
|
+
AccountAgentsFavoriteParams,
|
|
5701
|
+
AccountAgentsFavoriteResult,
|
|
5702
|
+
AccountAgentsGetParams,
|
|
5703
|
+
AccountAgentsGetResult,
|
|
4797
5704
|
AccountAgentsListParams,
|
|
4798
5705
|
AccountAgentsListResult,
|
|
5706
|
+
AccountAgentsRunsParams,
|
|
5707
|
+
AccountAgentsRunsResult,
|
|
4799
5708
|
AccountReadState,
|
|
4800
5709
|
AccountReset,
|
|
4801
5710
|
AccountRowId,
|
|
@@ -4964,17 +5873,100 @@ export {
|
|
|
4964
5873
|
ClipboardWriteResult,
|
|
4965
5874
|
CloseCode,
|
|
4966
5875
|
CloseCodeValue,
|
|
5876
|
+
CodingActiveElsewhere,
|
|
5877
|
+
CodingActivityParams,
|
|
5878
|
+
CodingActivityResult,
|
|
5879
|
+
CodingAgentSelectionParams,
|
|
5880
|
+
CodingAgentSetParams,
|
|
5881
|
+
CodingAgentSetResult,
|
|
5882
|
+
CodingAgentsAccessParams,
|
|
5883
|
+
CodingAgentsAccessResult,
|
|
5884
|
+
CodingChangedEvent,
|
|
5885
|
+
CodingChatPreference,
|
|
5886
|
+
CodingClientRequestId,
|
|
5887
|
+
CodingDiscoverParams,
|
|
5888
|
+
CodingDiscoverResult,
|
|
5889
|
+
CodingDiscoveredChat,
|
|
5890
|
+
CodingFolderCheck,
|
|
5891
|
+
CodingFoldersCheckParams,
|
|
5892
|
+
CodingFoldersCheckResult,
|
|
5893
|
+
CodingFoldersCreateParams,
|
|
5894
|
+
CodingFoldersCreateResult,
|
|
5895
|
+
CodingFoldersRecentParams,
|
|
5896
|
+
CodingFoldersRecentResult,
|
|
5897
|
+
CodingGapEvent,
|
|
4967
5898
|
CodingHistoryBlocked,
|
|
4968
5899
|
CodingHistoryFailure,
|
|
4969
5900
|
CodingHistoryImportMissingParams,
|
|
4970
5901
|
CodingHistoryImportMissingResult,
|
|
5902
|
+
CodingHistoryParams,
|
|
4971
5903
|
CodingHistoryProgressEvent,
|
|
5904
|
+
CodingHistoryRecord,
|
|
5905
|
+
CodingHistoryResult,
|
|
4972
5906
|
CodingHistoryRun,
|
|
4973
5907
|
CodingHistoryStep,
|
|
4974
5908
|
CodingImportNextParams,
|
|
5909
|
+
CodingItemEvent,
|
|
5910
|
+
CodingItemFullParams,
|
|
5911
|
+
CodingItemFullResult,
|
|
5912
|
+
CodingOptionsSetParams,
|
|
5913
|
+
CodingOptionsSetResult,
|
|
4975
5914
|
CodingPlanMissingParams,
|
|
5915
|
+
CodingPrefsListParams,
|
|
5916
|
+
CodingPrefsListResult,
|
|
5917
|
+
CodingPrefsSetParams,
|
|
5918
|
+
CodingPrefsSetResult,
|
|
5919
|
+
CodingProviderBinary,
|
|
5920
|
+
CodingProviderName,
|
|
5921
|
+
CodingProviderProblem,
|
|
5922
|
+
CodingProviderStatus,
|
|
5923
|
+
CodingProvidersParams,
|
|
5924
|
+
CodingProvidersResult,
|
|
5925
|
+
CodingQuotaWindow,
|
|
5926
|
+
CodingRecentFolder,
|
|
5927
|
+
CodingRecentRow,
|
|
5928
|
+
CodingRecentSeenParams,
|
|
5929
|
+
CodingRecentSeenResult,
|
|
5930
|
+
CodingReconcileParams,
|
|
5931
|
+
CodingReconcileResult,
|
|
5932
|
+
CodingRunRecord,
|
|
5933
|
+
CodingRunStatus,
|
|
5934
|
+
CodingRunUsage,
|
|
5935
|
+
CodingRunsListParams,
|
|
5936
|
+
CodingRunsListResult,
|
|
5937
|
+
CodingSearchParams,
|
|
5938
|
+
CodingSearchResult,
|
|
5939
|
+
CodingSendParams,
|
|
5940
|
+
CodingSendResult,
|
|
4976
5941
|
CodingServiceCredentials,
|
|
4977
5942
|
CodingServiceProgress,
|
|
5943
|
+
CodingSessionAgent,
|
|
5944
|
+
CodingSessionAgentPart,
|
|
5945
|
+
CodingSessionRecord,
|
|
5946
|
+
CodingSessionWatchParams,
|
|
5947
|
+
CodingSessionWatchResult,
|
|
5948
|
+
CodingSessionsListParams,
|
|
5949
|
+
CodingSessionsListResult,
|
|
5950
|
+
CodingStartParams,
|
|
5951
|
+
CodingStartResult,
|
|
5952
|
+
CodingStartedBy,
|
|
5953
|
+
CodingStopElsewhereParams,
|
|
5954
|
+
CodingStopElsewhereResult,
|
|
5955
|
+
CodingStopParams,
|
|
5956
|
+
CodingStopResult,
|
|
5957
|
+
CodingTakeoverParams,
|
|
5958
|
+
CodingTakeoverResult,
|
|
5959
|
+
CodingTitleStatus,
|
|
5960
|
+
CodingTitlesStatusParams,
|
|
5961
|
+
CodingTitlesStatusResult,
|
|
5962
|
+
CodingTranscriptItem,
|
|
5963
|
+
CodingTranscriptRawParams,
|
|
5964
|
+
CodingTranscriptRawResult,
|
|
5965
|
+
CodingTranscriptReadParams,
|
|
5966
|
+
CodingTranscriptReadResult,
|
|
5967
|
+
CodingWatchParams,
|
|
5968
|
+
CodingWatchResult,
|
|
5969
|
+
CodingWatchStateEvent,
|
|
4978
5970
|
ColdChat,
|
|
4979
5971
|
ContactDetail,
|
|
4980
5972
|
ContactLabeled,
|
|
@@ -5224,7 +6216,10 @@ export {
|
|
|
5224
6216
|
NotesWriteResult,
|
|
5225
6217
|
OPS,
|
|
5226
6218
|
OpDescriptor,
|
|
6219
|
+
OsGrantState,
|
|
5227
6220
|
OsPermissionName,
|
|
6221
|
+
OsRequirementName,
|
|
6222
|
+
PERMISSIONS_SINCE,
|
|
5228
6223
|
PING_TEXT,
|
|
5229
6224
|
PONG_TEXT,
|
|
5230
6225
|
PROTOCOL_MAJOR,
|
|
@@ -5337,6 +6332,8 @@ export {
|
|
|
5337
6332
|
SessionControlChangedEvent,
|
|
5338
6333
|
SessionDetachParams,
|
|
5339
6334
|
SessionDetachResult,
|
|
6335
|
+
SessionIdentifyParams,
|
|
6336
|
+
SessionIdentifyResult,
|
|
5340
6337
|
SessionListParams,
|
|
5341
6338
|
SessionListResult,
|
|
5342
6339
|
SessionReleaseParams,
|
|
@@ -5400,7 +6397,13 @@ export {
|
|
|
5400
6397
|
ToolPlatform,
|
|
5401
6398
|
ToolResultsFile,
|
|
5402
6399
|
ToolTransport,
|
|
6400
|
+
ToolsParseFile,
|
|
5403
6401
|
ToolsServiceProgress,
|
|
6402
|
+
ToolsWebBrowserFetchParams,
|
|
6403
|
+
ToolsWebBrowserFetchResult,
|
|
6404
|
+
ToolsWebScrapePage,
|
|
6405
|
+
ToolsWebScrapeParams,
|
|
6406
|
+
ToolsWebScrapeResult,
|
|
5404
6407
|
ToolsWebSearchParams,
|
|
5405
6408
|
TranscriptSegment,
|
|
5406
6409
|
TranscriptionModelId,
|
|
@@ -5410,11 +6413,39 @@ export {
|
|
|
5410
6413
|
VaultItemKind,
|
|
5411
6414
|
VaultItemSummary,
|
|
5412
6415
|
WEB_MAX_TEXT_CHARS,
|
|
6416
|
+
WebAttachTarget,
|
|
5413
6417
|
WebBrowserFetchParams,
|
|
5414
6418
|
WebBrowserFetchResult,
|
|
5415
6419
|
WebFetchParams,
|
|
5416
6420
|
WebFetchResult,
|
|
5417
6421
|
WebHeader,
|
|
6422
|
+
WebLand,
|
|
6423
|
+
WebLogCaller,
|
|
6424
|
+
WebLogClearParams,
|
|
6425
|
+
WebLogClearResult,
|
|
6426
|
+
WebLogEntry,
|
|
6427
|
+
WebLogListParams,
|
|
6428
|
+
WebLogListResult,
|
|
6429
|
+
WebLogResult,
|
|
6430
|
+
WebLogVia,
|
|
6431
|
+
WebNotSavedReason,
|
|
6432
|
+
WebOutboxDiscardParams,
|
|
6433
|
+
WebOutboxDiscardResult,
|
|
6434
|
+
WebOutboxItem,
|
|
6435
|
+
WebOutboxListParams,
|
|
6436
|
+
WebOutboxListResult,
|
|
6437
|
+
WebOutboxRetryParams,
|
|
6438
|
+
WebOutboxRetryResult,
|
|
6439
|
+
WebProgressEvent,
|
|
6440
|
+
WebResearchFetchParams,
|
|
6441
|
+
WebResearchFetchResult,
|
|
6442
|
+
WebResearchItem,
|
|
6443
|
+
WebResearchItemState,
|
|
6444
|
+
WebResearchQueueParams,
|
|
6445
|
+
WebResearchQueueResult,
|
|
6446
|
+
WebRuntimeParams,
|
|
6447
|
+
WebRuntimeState,
|
|
6448
|
+
WebRuntimeStateName,
|
|
5418
6449
|
WebScrapePage,
|
|
5419
6450
|
WebScrapeParams,
|
|
5420
6451
|
WebScrapeResult,
|
|
@@ -5422,6 +6453,8 @@ export {
|
|
|
5422
6453
|
WebSearchParams,
|
|
5423
6454
|
WebSearchQueryResult,
|
|
5424
6455
|
WebSearchResult,
|
|
6456
|
+
WebSourceNotice,
|
|
6457
|
+
WebSourceState,
|
|
5425
6458
|
Welcome,
|
|
5426
6459
|
WindowFocusParams,
|
|
5427
6460
|
WindowFocusResult,
|