@prismshadow/penguin-server 0.2.16 → 0.2.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/api/types.d.ts +402 -52
- package/dist/api/types.js +17 -3
- package/dist/auth-token.js +1 -1
- package/dist/{chunk-HMTT2PX4.js → chunk-2LZDP26O.js} +8 -5
- package/dist/chunk-2LZDP26O.js.map +1 -0
- package/dist/chunk-5YLLSHY3.js +1195 -0
- package/dist/chunk-5YLLSHY3.js.map +1 -0
- package/dist/{chunk-D3JNA6ZI.js → chunk-B3PSKR3D.js} +2 -2
- package/dist/chunk-B3PSKR3D.js.map +1 -0
- package/dist/{chunk-LPPVGHYD.js → chunk-BL4U7GYY.js} +2 -2
- package/dist/chunk-BL4U7GYY.js.map +1 -0
- package/dist/chunk-BRMNPLU6.js +37 -0
- package/dist/chunk-BRMNPLU6.js.map +1 -0
- package/dist/chunk-GGIINEEK.js +3401 -0
- package/dist/chunk-GGIINEEK.js.map +1 -0
- package/dist/{chunk-QFV3ERQO.js → chunk-OQZDL3TR.js} +2 -2
- package/dist/hmr/manifest.js +1 -1
- package/dist/index.js +13440 -8991
- package/dist/index.js.map +1 -1
- package/dist/machine-status.js +2 -2
- package/dist/model-catalog.d.ts +610 -0
- package/dist/model-catalog.js +108 -0
- package/dist/model-catalog.js.map +1 -0
- package/dist/plugin/index.d.ts +170 -74
- package/dist/reset-admin-password.js +2 -2
- package/dist/version-report.js +2 -2
- package/package.json +14 -9
- package/web-dist/assets/{abnfDiagram-VCTEODGH-0AKFiyig.js → abnfDiagram-VCTEODGH-C_Ej4MyZ.js} +1 -1
- package/web-dist/assets/{addon-clipboard-BovFnNVg.js → addon-clipboard-eONBCa8x.js} +1 -1
- package/web-dist/assets/{addon-fit-B1npgxQk.js → addon-fit-Dk6bkT8u.js} +1 -1
- package/web-dist/assets/{addon-web-links-D88QHj7A.js → addon-web-links-e0JpGvGv.js} +1 -1
- package/web-dist/assets/{arc-Beox1Cgf.js → arc-ytwqobEL.js} +1 -1
- package/web-dist/assets/{architectureDiagram-5GKGNRK7-CC1sLMY1.js → architectureDiagram-5GKGNRK7-oxT9SNOE.js} +1 -1
- package/web-dist/assets/{blockDiagram-I7D4REHJ-B8BY1PkZ.js → blockDiagram-I7D4REHJ-D8OXfpb9.js} +1 -1
- package/web-dist/assets/{c4Diagram-7LVT6UL2-yjY0BkxQ.js → c4Diagram-7LVT6UL2-BNYNzSWK.js} +1 -1
- package/web-dist/assets/channel-7Be_pU-b.js +1 -0
- package/web-dist/assets/{chunk-2Q5K7J3B-DdgIvETg.js → chunk-2Q5K7J3B-C2yNhFmh.js} +1 -1
- package/web-dist/assets/{chunk-5VM5RSS4-BE38k1Rs.js → chunk-5VM5RSS4-CAeuhwbB.js} +1 -1
- package/web-dist/assets/{chunk-F27PBJKO-D4YXmaqQ.js → chunk-F27PBJKO-DSuRiLxP.js} +1 -1
- package/web-dist/assets/{chunk-IMKFNOWR-CyJFdThc.js → chunk-IMKFNOWR-MStar4cf.js} +1 -1
- package/web-dist/assets/{chunk-JWPE2WC7-BAM_oEUU.js → chunk-JWPE2WC7-CIgQwRv4.js} +1 -1
- package/web-dist/assets/{chunk-POPQ4Y6H-BP3D0FVi.js → chunk-POPQ4Y6H-CA8evx9g.js} +1 -1
- package/web-dist/assets/{chunk-SVP7TREG-Clk8PdKZ.js → chunk-SVP7TREG-bR7-FT1W.js} +1 -1
- package/web-dist/assets/{chunk-TICWLB2K-EvWPnEGg.js → chunk-TICWLB2K-C0ZdCnvI.js} +1 -1
- package/web-dist/assets/{chunk-XXDRQBXY-6p5D0UB1.js → chunk-XXDRQBXY-CzozFLFI.js} +1 -1
- package/web-dist/assets/classDiagram-ZZMXUADV-BjVhvDIH.js +1 -0
- package/web-dist/assets/classDiagram-v2-VYDZK3BY-BjVhvDIH.js +1 -0
- package/web-dist/assets/{cose-bilkent-JH36ORCC-bpkI-tLJ.js → cose-bilkent-JH36ORCC-nkjrY6eI.js} +1 -1
- package/web-dist/assets/{cynefin-OW5HDTMX-srLaqJ4e.js → cynefin-OW5HDTMX-D2A0h062.js} +1 -1
- package/web-dist/assets/{cynefinDiagram-5FMLGOSQ-BPfpHSPc.js → cynefinDiagram-5FMLGOSQ-DFZQ7d_T.js} +1 -1
- package/web-dist/assets/{dagre-GXQ25YYZ-C4fF5-j7.js → dagre-GXQ25YYZ-DPYLLARd.js} +1 -1
- package/web-dist/assets/{diagram-S7CK7UJ4-BzBLb_9-.js → diagram-S7CK7UJ4-B204Nrur.js} +1 -1
- package/web-dist/assets/{diagram-UQ7AKVKN-BJuJ1o_T.js → diagram-UQ7AKVKN-DWORCZlS.js} +1 -1
- package/web-dist/assets/{diagram-VSXAHHWV-DFelN9i9.js → diagram-VSXAHHWV-Su6Bzm4Z.js} +1 -1
- package/web-dist/assets/{diagram-VX7I27RA-BgrEoPyp.js → diagram-VX7I27RA-B4p8ssYj.js} +1 -1
- package/web-dist/assets/{diagram-Z3DM3KII-C71KiMiX.js → diagram-Z3DM3KII-BgMz7jjW.js} +1 -1
- package/web-dist/assets/{ebnfDiagram-PWID7BFC-EYteyp1b.js → ebnfDiagram-PWID7BFC-DBCS3Cwc.js} +1 -1
- package/web-dist/assets/{erDiagram-RLTQ6QDP-B6n6-sz6.js → erDiagram-RLTQ6QDP-DEm39S5C.js} +1 -1
- package/web-dist/assets/{flowDiagram-HODETNUW-BtoMTdyT.js → flowDiagram-HODETNUW-CEUQGUza.js} +1 -1
- package/web-dist/assets/{ganttDiagram-EL5Y4UJY-CbOAa3vS.js → ganttDiagram-EL5Y4UJY-myYTgwFp.js} +1 -1
- package/web-dist/assets/{gitGraphDiagram-WWUBYQGX-B7-8sszH.js → gitGraphDiagram-WWUBYQGX-BAQ0Kl1C.js} +1 -1
- package/web-dist/assets/highlighter-DRTMVWxI.js +2 -0
- package/web-dist/assets/{highlighter-core-CMXoD8ze.js → highlighter-core-DgISzHrX.js} +1 -1
- package/web-dist/assets/{highlighter.worker-D6D9fPma.js → highlighter.worker-CKF6ok1g.js} +1 -1
- package/web-dist/assets/index-PA-IFoA6.js +1300 -0
- package/web-dist/assets/index-oCEyg9BT.css +1 -0
- package/web-dist/assets/{infoDiagram-27XIBGKW-BBjf6pkP.js → infoDiagram-27XIBGKW-B2WDMvX9.js} +1 -1
- package/web-dist/assets/{ishikawaDiagram-5VMMS53U-BBSvCv45.js → ishikawaDiagram-5VMMS53U-8qHTttjq.js} +1 -1
- package/web-dist/assets/{journeyDiagram-3NMN7TZE-CuHHl5zk.js → journeyDiagram-3NMN7TZE-DKE_xRCO.js} +1 -1
- package/web-dist/assets/{kanban-definition-UXKFOSKX-DJyP4Myw.js → kanban-definition-UXKFOSKX-EnJbHEmV.js} +1 -1
- package/web-dist/assets/{layout-Bqqhdwtt.js → layout-BlhCFmEZ.js} +1 -1
- package/web-dist/assets/{linear-BZfUSIf8.js → linear-Dw2VzU-D.js} +1 -1
- package/web-dist/assets/mermaid.core-CaXNMz57.js +310 -0
- package/web-dist/assets/{mindmap-definition-YA3MSWOX-BtyMD4wz.js → mindmap-definition-YA3MSWOX-DnTTfqbu.js} +1 -1
- package/web-dist/assets/{pegDiagram-XKGWAZYB-BUF_GJ0B.js → pegDiagram-XKGWAZYB-C3SArVd6.js} +1 -1
- package/web-dist/assets/{pieDiagram-E7YTZNPT-nweubbsU.js → pieDiagram-E7YTZNPT-CTOmO6ke.js} +1 -1
- package/web-dist/assets/powershell-DXrKVo3G.js +1 -0
- package/web-dist/assets/powershell-Dpen1YoG.js +1 -0
- package/web-dist/assets/{quadrantDiagram-AXDQQJYC-B_r4Wkxy.js → quadrantDiagram-AXDQQJYC-CbUsMwzO.js} +1 -1
- package/web-dist/assets/{railroadDiagram-O6MQD6OU-Dn7nm0MX.js → railroadDiagram-O6MQD6OU-Co2hsvaZ.js} +1 -1
- package/web-dist/assets/{requirementDiagram-BXWQKSXE-DaagYJ49.js → requirementDiagram-BXWQKSXE-BqFG0eYQ.js} +1 -1
- package/web-dist/assets/{sankeyDiagram-P5KCCOFB-CqEX6H-B.js → sankeyDiagram-P5KCCOFB-YgQHJlB7.js} +1 -1
- package/web-dist/assets/{sequenceDiagram-WJ2MYXX4-BzLfQO55.js → sequenceDiagram-WJ2MYXX4-CdDrP6O2.js} +1 -1
- package/web-dist/assets/{sizeCapture-INFHLROL-BcUuVH2L.js → sizeCapture-INFHLROL-CKwbEVhU.js} +1 -1
- package/web-dist/assets/{stateDiagram-D77RDMKH-BO3LWLvT.js → stateDiagram-D77RDMKH-kTJR3t2p.js} +1 -1
- package/web-dist/assets/stateDiagram-v2-MP3YSRHH-DzaSnZwj.js +1 -0
- package/web-dist/assets/{swimlanes-42K2YHIH-etP_hkIB.js → swimlanes-42K2YHIH-DCAO3rCQ.js} +1 -1
- package/web-dist/assets/swimlanesDiagram-VR7AAH4N-DNfCLejq.js +8 -0
- package/web-dist/assets/{timeline-definition-24CTP7MA-CTLt2XCT.js → timeline-definition-24CTP7MA-DEjnyzKw.js} +1 -1
- package/web-dist/assets/{vennDiagram-4TSXK5OY-DPO6ZSvH.js → vennDiagram-4TSXK5OY-DSihUvCq.js} +1 -1
- package/web-dist/assets/{wardleyDiagram-VM6X3IG4-DFofGg8b.js → wardleyDiagram-VM6X3IG4-CnAoMeCH.js} +1 -1
- package/web-dist/assets/{xterm-RdyTuaAH.js → xterm-3JwPT74G.js} +1 -1
- package/web-dist/assets/{xychartDiagram-S5SC5T6Z-Bgtb34Gu.js → xychartDiagram-S5SC5T6Z-43dHqZTr.js} +1 -1
- package/web-dist/index.html +6 -5
- package/web-dist/workbench-ui.css +164 -34
- package/dist/chunk-3SFJKLQU.js +0 -1016
- package/dist/chunk-3SFJKLQU.js.map +0 -1
- package/dist/chunk-D3JNA6ZI.js.map +0 -1
- package/dist/chunk-HMTT2PX4.js.map +0 -1
- package/dist/chunk-LPPVGHYD.js.map +0 -1
- package/dist/chunk-W7JNIJ25.js +0 -19
- package/dist/chunk-W7JNIJ25.js.map +0 -1
- package/web-dist/assets/channel-mfsAVJLE.js +0 -1
- package/web-dist/assets/classDiagram-ZZMXUADV-BPVO1m8i.js +0 -1
- package/web-dist/assets/classDiagram-v2-VYDZK3BY-BPVO1m8i.js +0 -1
- package/web-dist/assets/highlighter-Bj5l2XH_.js +0 -2
- package/web-dist/assets/index-BOCqRT4e.css +0 -1
- package/web-dist/assets/index-BrMpjp2s.js +0 -1286
- package/web-dist/assets/mermaid.core-BlUspEsI.js +0 -310
- package/web-dist/assets/stateDiagram-v2-MP3YSRHH-B-EuucjM.js +0 -1
- package/web-dist/assets/swimlanesDiagram-VR7AAH4N-0JbFdDbQ.js +0 -8
- /package/dist/{chunk-QFV3ERQO.js.map → chunk-OQZDL3TR.js.map} +0 -0
package/dist/api/types.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SessionSource,
|
|
2
|
-
export { SessionSource } from '@prismshadow/
|
|
1
|
+
import { SessionSource, AmspRecord, ToolCallPayload, CompactionMode } from '@prismshadow/amsp';
|
|
2
|
+
export { SessionSource } from '@prismshadow/amsp';
|
|
3
3
|
import { ThinkingLevelName, ToolDefinitionConfig, MCPServerConfig } from '@prismshadow/penguin-core/interfaces';
|
|
4
4
|
import { HarnessHistory, VersionReport } from '@prismshadow/penguin-core';
|
|
5
5
|
export { HarnessHistoryEntry, IfacesSummary } from '@prismshadow/penguin-core';
|
|
@@ -42,6 +42,27 @@ interface WorkbenchResponse {
|
|
|
42
42
|
*/
|
|
43
43
|
stream?: AsyncIterable<Uint8Array | string>;
|
|
44
44
|
}
|
|
45
|
+
/**
|
|
46
|
+
* One AMSP record as `WorkbenchHost.subscribe` hands it over: the envelope every Trace line and
|
|
47
|
+
* every unnamed event of a Session's stream is. `type` is `session_meta`, `model_msg` or
|
|
48
|
+
* `event_msg`; `payload.type` names the record (`task_begin`, `partial_text`, `tool_call`,
|
|
49
|
+
* `task_end`, …; a `session_meta` payload has none); `origin` is the chain of child Session ids
|
|
50
|
+
* a subagent's record came through, outer to inner, and is absent on the main Session's own.
|
|
51
|
+
*
|
|
52
|
+
* Typed by its envelope rather than by every payload AMSP defines: a workbench keeps the types
|
|
53
|
+
* it was written against (`.harness/`), and a record type that grew with each new payload would
|
|
54
|
+
* stop fitting them.
|
|
55
|
+
*/
|
|
56
|
+
interface WorkbenchRecord {
|
|
57
|
+
/** ISO 8601 UTC. */
|
|
58
|
+
timestamp: string;
|
|
59
|
+
type: string;
|
|
60
|
+
payload: {
|
|
61
|
+
type?: string;
|
|
62
|
+
[key: string]: unknown;
|
|
63
|
+
};
|
|
64
|
+
origin?: string[];
|
|
65
|
+
}
|
|
45
66
|
/** How the Web App draws a contributed tab: a page of the workbench, or a renderer it carries. */
|
|
46
67
|
type WorkbenchTabRenderer = {
|
|
47
68
|
iframe: {
|
|
@@ -97,11 +118,11 @@ interface WorkbenchVersion {
|
|
|
97
118
|
* frontend SPA (single source of truth).
|
|
98
119
|
*
|
|
99
120
|
* These field definitions are authoritative for the Web API contract. Conventions:
|
|
100
|
-
* - DTO fields use camelCase;
|
|
121
|
+
* - DTO fields use camelCase; an AMSP record keeps its own shape as-is (snake_case envelope),
|
|
101
122
|
* no conversion;
|
|
102
123
|
* - This file holds only types, no implementation; exposed to the frontend via package
|
|
103
124
|
* exports `"./api"` for type-only import;
|
|
104
|
-
* - Types are taken only from core's pure
|
|
125
|
+
* - Types are taken only from `@prismshadow/amsp` and core's pure `interfaces` subpath, so the
|
|
105
126
|
* frontend can safely reference them.
|
|
106
127
|
*
|
|
107
128
|
* Docs: packages/docs/content/server-api.{zh,en}.md (site path /docs/server-api) is the
|
|
@@ -204,11 +225,11 @@ interface MeResponse {
|
|
|
204
225
|
* "desktop" is the shell's own window (one-shot token); "setup" was claimed through the
|
|
205
226
|
* first-login link on a server whose admin password has never been set. Both may set a
|
|
206
227
|
* password without the old one (it is random and was never shown); only "desktop" opens
|
|
207
|
-
* desktop-only routes. "
|
|
208
|
-
*
|
|
209
|
-
* sign-in.
|
|
228
|
+
* desktop-only routes. "remote" is the one-hour session Penguin Remote exchanged the local
|
|
229
|
+
* API token for; it counts as the person's sign-in. "token" marks the local API token itself,
|
|
230
|
+
* sent as a Bearer header; it cannot perform writes requiring a person's sign-in.
|
|
210
231
|
*/
|
|
211
|
-
sessionVia: "password" | "desktop" | "setup" | "token";
|
|
232
|
+
sessionVia: "password" | "desktop" | "setup" | "remote" | "token";
|
|
212
233
|
/**
|
|
213
234
|
* The upload limits currently in force, so the composer can refuse an oversize pick before
|
|
214
235
|
* reading it and can name the real number in the message. They are admin-settable and ride
|
|
@@ -455,6 +476,13 @@ interface UiPrefs {
|
|
|
455
476
|
* shallow, so this whole map is one field.
|
|
456
477
|
*/
|
|
457
478
|
todoDismissed?: Record<string, Record<string, string>>;
|
|
479
|
+
/**
|
|
480
|
+
* Notices the user closed, by notice id (a machine's model keys only this server's environment
|
|
481
|
+
* holds: `machine-env-only:<machine id>`), each the SIGNATURE of what it named when closed — its
|
|
482
|
+
* items sorted, one per line — so it comes back when a new item appears (web's
|
|
483
|
+
* `lib/notice-dismissals.ts`). Replaced whole on every write, like `todoDismissed`.
|
|
484
|
+
*/
|
|
485
|
+
noticesDismissed?: Record<string, string>;
|
|
458
486
|
/**
|
|
459
487
|
* The draft screen's user-defined shortcuts, in display order. Replaced whole on every write
|
|
460
488
|
* (the merge is shallow, so the array is one field like any other) and bounded on write by
|
|
@@ -478,8 +506,97 @@ interface UiPrefs {
|
|
|
478
506
|
* everywhere else.
|
|
479
507
|
*/
|
|
480
508
|
browserBackend?: BrowserBackend;
|
|
509
|
+
/** Light / dark / follow the system. */
|
|
510
|
+
themeMode?: string | null;
|
|
511
|
+
/** Which theme renders the app (a theme id). */
|
|
512
|
+
themeId?: string | null;
|
|
513
|
+
/** The accent preset, or "neutral" for the theme's own. */
|
|
514
|
+
accent?: string | null;
|
|
515
|
+
/** The root text size step. */
|
|
516
|
+
textSize?: string | null;
|
|
517
|
+
/** The Latin face paired over the theme's own ("theme" = keep the theme's). */
|
|
518
|
+
fontLatin?: string | null;
|
|
519
|
+
/** The CJK face paired over the theme's own ("theme" = keep the theme's). */
|
|
520
|
+
fontCjk?: string | null;
|
|
521
|
+
/** Interface language: zh / en / system. */
|
|
522
|
+
lang?: string | null;
|
|
523
|
+
/** Display currency for prices. */
|
|
524
|
+
currency?: string | null;
|
|
525
|
+
/** The terminal's appearance: light / dark / follow the app. */
|
|
526
|
+
terminalTheme?: string | null;
|
|
527
|
+
/** Whether tool cards name the built-in tools by their short alias. */
|
|
528
|
+
toolAliases?: boolean | null;
|
|
529
|
+
/** Whether task-completion notifications were asked for (each browser still needs its own OS permission). */
|
|
530
|
+
notifications?: boolean | null;
|
|
531
|
+
/** Whether the floating dock launcher was put away. */
|
|
532
|
+
launcherHidden?: boolean | null;
|
|
533
|
+
/** Mid-run send mode: steer or queue as a follow-up. */
|
|
534
|
+
steerMode?: string | null;
|
|
535
|
+
/** The custom background's display settings; the image itself is GET|PUT /api/me/background-image. */
|
|
536
|
+
background?: BackgroundSettingsDto | null;
|
|
537
|
+
/**
|
|
538
|
+
* Which background image the account holds, as an opaque id that changes whenever the image
|
|
539
|
+
* does; absent or null when it holds none. Written only by PUT /api/me/background-image (PUT
|
|
540
|
+
* /api/me/prefs refuses it): a browser compares it with the image it has cached and fetches the
|
|
541
|
+
* image only when they differ.
|
|
542
|
+
*/
|
|
543
|
+
backgroundImageId?: string | null;
|
|
481
544
|
[key: string]: unknown;
|
|
482
545
|
}
|
|
546
|
+
/** The custom background's display settings, as the Web App stores them. */
|
|
547
|
+
interface BackgroundSettingsDto {
|
|
548
|
+
/** 0–100: how much of the page colour shows through the image. */
|
|
549
|
+
transparency: number;
|
|
550
|
+
mode: string;
|
|
551
|
+
position: string;
|
|
552
|
+
}
|
|
553
|
+
/**
|
|
554
|
+
* The background image cap, in characters of the data URL: the same number the Web App encodes
|
|
555
|
+
* against, so the browser and the server cannot disagree about what "too large" means.
|
|
556
|
+
*/
|
|
557
|
+
declare const BACKGROUND_IMAGE_MAX_CHARS: number;
|
|
558
|
+
/** GET /api/me/background-image. */
|
|
559
|
+
interface BackgroundImageResponse {
|
|
560
|
+
/** A PNG / JPEG / WebP data URL, or null when the account holds no image. */
|
|
561
|
+
image: string | null;
|
|
562
|
+
imageId: string | null;
|
|
563
|
+
}
|
|
564
|
+
/** PUT /api/me/background-image: the image to keep, or null to remove it. */
|
|
565
|
+
interface BackgroundImageRequest {
|
|
566
|
+
image: string | null;
|
|
567
|
+
}
|
|
568
|
+
/** PUT /api/me/background-image's answer: the id the image is now known by (null once removed). */
|
|
569
|
+
interface BackgroundImagePutResponse {
|
|
570
|
+
imageId: string | null;
|
|
571
|
+
}
|
|
572
|
+
/**
|
|
573
|
+
* The kinds of draft the account keeps, as the first segment of a draft key
|
|
574
|
+
* (`<kind>:<id>`). The id names what the draft belongs to, so the server can drop it with that
|
|
575
|
+
* thing: `chat` — a Project's new-conversation draft (`chat:<projectId>`); `parked` — a
|
|
576
|
+
* Project's parked draft conversations (`parked:<projectId>`); `org` — a Project's
|
|
577
|
+
* create-organization form (`org:<projectId>`); `channel` — a company-mode channel's composer
|
|
578
|
+
* (`channel:<projectId>.<orgId>.<channelId>`); `session` — a Session's composer
|
|
579
|
+
* (`session:<sessionId>`); `a2ui` — a reply's form answers in progress
|
|
580
|
+
* (`a2ui:<sessionId>:<block>`).
|
|
581
|
+
*/
|
|
582
|
+
declare const DRAFT_KINDS: readonly ["chat", "parked", "org", "channel", "session", "a2ui"];
|
|
583
|
+
type DraftKind = (typeof DRAFT_KINDS)[number];
|
|
584
|
+
/** One draft's cap, in characters of its JSON text. */
|
|
585
|
+
declare const DRAFT_VALUE_MAX_CHARS: number;
|
|
586
|
+
/** Draft writes one PATCH may carry. */
|
|
587
|
+
declare const DRAFTS_PATCH_MAX_ENTRIES = 50;
|
|
588
|
+
/** GET /api/me/drafts: every draft the account keeps, by key, as the JSON each was written with. */
|
|
589
|
+
interface DraftsResponse {
|
|
590
|
+
drafts: Record<string, unknown>;
|
|
591
|
+
}
|
|
592
|
+
/**
|
|
593
|
+
* PATCH /api/me/drafts: drafts to write, by key; `null` removes one. Applied together. When the
|
|
594
|
+
* account then holds more than its bound, its least recently written drafts outside this patch
|
|
595
|
+
* are dropped.
|
|
596
|
+
*/
|
|
597
|
+
interface DraftsPatchRequest {
|
|
598
|
+
drafts: Record<string, unknown>;
|
|
599
|
+
}
|
|
483
600
|
/** A group balance pinned beside the user name: which Project's key reads which group's balance. */
|
|
484
601
|
interface PinnedBalance {
|
|
485
602
|
projectId: string;
|
|
@@ -577,7 +694,11 @@ interface ModelEffectiveConnection {
|
|
|
577
694
|
baseUrlSource: ConnectionSourceDto;
|
|
578
695
|
clientType?: string;
|
|
579
696
|
clientTypeSource: ConnectionSourceDto;
|
|
580
|
-
/**
|
|
697
|
+
/**
|
|
698
|
+
* `env` = no key in the file, and MMSP's routed client reads its own variable for the row's
|
|
699
|
+
* endpoint (no base URL, or the client's default endpoint) — reported when that variable
|
|
700
|
+
* holds a value here (`envKeyMasked`), `none` otherwise.
|
|
701
|
+
*/
|
|
581
702
|
apiKeySource: "model" | "provider" | "env" | "none";
|
|
582
703
|
/** Mask of the key the row would use, whichever source; absent when none. */
|
|
583
704
|
apiKeyMasked?: string;
|
|
@@ -631,21 +752,18 @@ interface ModelInfo {
|
|
|
631
752
|
discount?: number;
|
|
632
753
|
/**
|
|
633
754
|
* Environment variable name the entry falls back to when api_key is empty (e.g.
|
|
634
|
-
* ANTHROPIC_API_KEY)
|
|
635
|
-
*
|
|
636
|
-
*
|
|
755
|
+
* ANTHROPIC_API_KEY): only for a row with no key in the file whose routed MMSP client reads
|
|
756
|
+
* that variable for its endpoint — no base URL on the row or its group, or the client's own
|
|
757
|
+
* default endpoint. Unset for a row with a key (its own or a group key that reaches it), a row
|
|
758
|
+
* sent to any other base URL (a gateway, Penguin Go, ModelScope, a vendor's second host or a
|
|
759
|
+
* proxy), or an id nothing routes.
|
|
637
760
|
*/
|
|
638
761
|
envKey?: string;
|
|
639
762
|
/**
|
|
640
763
|
* Masked preview (same rule as `credential.apiKeyMasked`) of the value the server process
|
|
641
|
-
* currently holds for `envKey` — the plaintext is never serialized.
|
|
642
|
-
*
|
|
643
|
-
*
|
|
644
|
-
* in a built-in group other than custom, on the client its id's family names. Gateway rows
|
|
645
|
-
* never carry it, and neither do custom / vLLM / user-defined rows with no base URL,
|
|
646
|
-
* although those do fall back. Absent = the variable is unset or empty, or the entry is not
|
|
647
|
-
* previewable. Computed on the effective shape, and only when no row or group key reaches
|
|
648
|
-
* the row.
|
|
764
|
+
* currently holds for `envKey` — the plaintext is never serialized. Absent = the variable is
|
|
765
|
+
* unset or empty, or the entry gets no fallback. Reported only when no row or group key
|
|
766
|
+
* reaches the row.
|
|
649
767
|
*/
|
|
650
768
|
envKeyMasked?: string;
|
|
651
769
|
/** The row's OWN key (masked) and base URL — overrides of its group's; see `effective`. */
|
|
@@ -951,17 +1069,17 @@ interface ModelBalanceAmount {
|
|
|
951
1069
|
/**
|
|
952
1070
|
* Why a group's balance could not be read:
|
|
953
1071
|
* - `unsupported`: the group publishes no balance endpoint (no `balance` descriptor in the catalog);
|
|
954
|
-
* - `no_key`: the group has no API key to ask with — none stored, and no
|
|
955
|
-
*
|
|
1072
|
+
* - `no_key`: the group has no API key to ask with — none stored, and no vendor variable that
|
|
1073
|
+
* MMSP's vendor client reads for the group's base URL;
|
|
956
1074
|
* - `upstream_failed`: the vendor could not be reached in time, refused the request, or answered
|
|
957
1075
|
* without a readable balance.
|
|
958
1076
|
*/
|
|
959
1077
|
type ModelBalanceErrorCode = "unsupported" | "no_key" | "upstream_failed";
|
|
960
1078
|
/**
|
|
961
1079
|
* GET /api/projects/:p/models/balance?provider=<group>[&force=1] (Project member): the account
|
|
962
|
-
* balance behind the group's API key — the stored one, or else the environment key
|
|
963
|
-
*
|
|
964
|
-
* the endpoint the catalog's `balance` descriptor names. The key never reaches the browser, and
|
|
1080
|
+
* balance behind the group's API key — the stored one, or else the environment key MMSP's
|
|
1081
|
+
* vendor client reads for the group's base URL (DeepSeek's DEEPSEEK_API_KEY) — read server-side
|
|
1082
|
+
* from the endpoint the catalog's `balance` descriptor names. The key never reaches the browser, and
|
|
965
1083
|
* neither does the vendor's own text. Like the connectivity test, a balance that cannot be read is an answer
|
|
966
1084
|
* (`ok: false` with a code), not a failed request. Readings and vendor failures are cached for
|
|
967
1085
|
* 60 s per Project and group, for as long as the group's key is the same; `force=1` skips the
|
|
@@ -992,7 +1110,8 @@ interface ModelBalanceFailure {
|
|
|
992
1110
|
/**
|
|
993
1111
|
* How the authorization code travels back. `callback` sends the browser to a harness URL
|
|
994
1112
|
* the provider redirects to; `manual` asks the provider for a one-time code the user copies
|
|
995
|
-
* back by hand, for the case where that redirect cannot reach the harness
|
|
1113
|
+
* back by hand, for the case where that redirect cannot reach the harness — or where the
|
|
1114
|
+
* provider would refuse it: only an HTTPS or loopback HTTP origin can be redirected to.
|
|
996
1115
|
*/
|
|
997
1116
|
type ModelOAuthMode = "callback" | "manual";
|
|
998
1117
|
/**
|
|
@@ -1003,13 +1122,19 @@ type ModelOAuthMode = "callback" | "manual";
|
|
|
1003
1122
|
interface ModelOAuthStartRequest {
|
|
1004
1123
|
/** Provider group id (must be a catalog group that publishes a key-minting flow). */
|
|
1005
1124
|
provider: string;
|
|
1006
|
-
/** Defaults to `callback
|
|
1125
|
+
/** Defaults to `callback`; the response says which mode the flow was opened in. */
|
|
1007
1126
|
mode?: ModelOAuthMode;
|
|
1008
1127
|
}
|
|
1009
1128
|
/** The opaque flow handle plus the page to send the user to. No secret of the flow's is included. */
|
|
1010
1129
|
interface ModelOAuthStartResponse {
|
|
1011
1130
|
flowId: string;
|
|
1012
1131
|
authorizeUrl: string;
|
|
1132
|
+
/**
|
|
1133
|
+
* The mode the flow was opened in: `manual` for a `callback` request when the origin the
|
|
1134
|
+
* request reached this server on is neither HTTPS nor loopback HTTP, which the provider's
|
|
1135
|
+
* authorization page refuses as a callback.
|
|
1136
|
+
*/
|
|
1137
|
+
mode: ModelOAuthMode;
|
|
1013
1138
|
}
|
|
1014
1139
|
/** Why a flow failed, as a code the frontend phrases; never carries a code, a verifier or a key. */
|
|
1015
1140
|
type ModelOAuthErrorCode = "invalid_request" | "code_rejected" | "upstream_failed" | "unreachable" | "apply_failed";
|
|
@@ -1178,7 +1303,7 @@ interface AgentSummary {
|
|
|
1178
1303
|
kernelOutdated: boolean;
|
|
1179
1304
|
/** Vault key count (number of keys in agent_state/.vault.toml). */
|
|
1180
1305
|
vaultKeyCount: number;
|
|
1181
|
-
/** Schedule count (number of .toml files under agent_state/schedule/, including invalid ones). */
|
|
1306
|
+
/** Schedule count (number of .toml files directly under agent_state/schedule/, including invalid ones; archived files under schedule/expired/ are not counted). */
|
|
1182
1307
|
scheduleCount: number;
|
|
1183
1308
|
/** Workbench folders with a manifest, including ones with a load error. */
|
|
1184
1309
|
workbenchCount: number;
|
|
@@ -1254,6 +1379,38 @@ interface AgentCreateRequest {
|
|
|
1254
1379
|
interface AgentCreateResponse {
|
|
1255
1380
|
agent: AgentSummary;
|
|
1256
1381
|
}
|
|
1382
|
+
/**
|
|
1383
|
+
* Where a deleted Agent's files stand. The Agent itself is gone the moment DELETE answers: its
|
|
1384
|
+
* folder was moved out of the Project's agents directory in one rename, and every list and route
|
|
1385
|
+
* stopped seeing it. What follows is the removal of that folder's contents in the background,
|
|
1386
|
+
* which this reports.
|
|
1387
|
+
*/
|
|
1388
|
+
interface AgentDeletionInfo {
|
|
1389
|
+
/** Names this deletion (GET /api/projects/:projectId/agent-deletions/:deletionId). */
|
|
1390
|
+
deletionId: string;
|
|
1391
|
+
agentId: string;
|
|
1392
|
+
/**
|
|
1393
|
+
* `counting`: the folder is walked to learn how many entries it holds (`total` grows);
|
|
1394
|
+
* `removing`: they are removed (`removed` grows towards `total`); `done`: nothing is left;
|
|
1395
|
+
* `failed`: some entries could not be removed (`error` says why). What is left is tried again
|
|
1396
|
+
* when the server next starts.
|
|
1397
|
+
*/
|
|
1398
|
+
phase: "counting" | "removing" | "done" | "failed";
|
|
1399
|
+
/** Entries found: so far while counting, then in all. Files and folders alike. */
|
|
1400
|
+
total: number;
|
|
1401
|
+
/** Entries removed so far. */
|
|
1402
|
+
removed: number;
|
|
1403
|
+
/** The first error the removal met, as the operating system worded it (`failed` only). */
|
|
1404
|
+
error?: string;
|
|
1405
|
+
}
|
|
1406
|
+
/** DELETE /api/projects/:projectId/agents/:agentId (202). */
|
|
1407
|
+
interface AgentDeleteResponse {
|
|
1408
|
+
deletion: AgentDeletionInfo;
|
|
1409
|
+
}
|
|
1410
|
+
/** GET /api/projects/:projectId/agent-deletions/:deletionId. */
|
|
1411
|
+
interface AgentDeletionResponse {
|
|
1412
|
+
deletion: AgentDeletionInfo;
|
|
1413
|
+
}
|
|
1257
1414
|
interface AgentModelConfigDto {
|
|
1258
1415
|
maxTokens?: number;
|
|
1259
1416
|
thinkingLevel?: ThinkingLevelName;
|
|
@@ -1883,7 +2040,13 @@ interface ArchivedSessionsQuery {
|
|
|
1883
2040
|
/** One Project the user can open (404 `project_not_found` otherwise); absent = every Project they own or are a member of. */
|
|
1884
2041
|
projectId?: string;
|
|
1885
2042
|
}
|
|
1886
|
-
/**
|
|
2043
|
+
/**
|
|
2044
|
+
* Which servers' groups GET /api/me/archived-sessions/groups answers with: `here` this server's
|
|
2045
|
+
* alone, never waiting on a machine; `machines` the machines' alone. Absent: both, in one answer.
|
|
2046
|
+
* The Web App asks the two apart, so a machine that answers nothing never holds this server's.
|
|
2047
|
+
*/
|
|
2048
|
+
type ArchivedSessionGroupServers = "here" | "machines";
|
|
2049
|
+
/** One group of the archive page: one Workspace of one Project, on this server or on one machine. */
|
|
1887
2050
|
interface ArchivedSessionGroup {
|
|
1888
2051
|
projectId: string;
|
|
1889
2052
|
projectName: string;
|
|
@@ -1893,6 +2056,12 @@ interface ArchivedSessionGroup {
|
|
|
1893
2056
|
count: number;
|
|
1894
2057
|
/** The newest `lastActiveAt` in the group — the order the groups come in, newest first. */
|
|
1895
2058
|
latest: string;
|
|
2059
|
+
/** The machine the group's Sessions live on (its own id); absent on this server's groups. */
|
|
2060
|
+
machineId?: string;
|
|
2061
|
+
/** That machine's ssh alias, for the group's header. */
|
|
2062
|
+
machineAlias?: string;
|
|
2063
|
+
/** That machine's own time when it counted the group: a batch on the whole group passes it as `until`. */
|
|
2064
|
+
asOf?: string;
|
|
1896
2065
|
}
|
|
1897
2066
|
/** GET /api/me/archived-sessions/groups. */
|
|
1898
2067
|
interface ArchivedSessionGroupsResponse {
|
|
@@ -1904,6 +2073,11 @@ interface ArchivedSessionGroupsResponse {
|
|
|
1904
2073
|
* filter's `until`, so it acts on the Sessions the count saw and on none that came after.
|
|
1905
2074
|
*/
|
|
1906
2075
|
asOf: string;
|
|
2076
|
+
/** Machines the user's Projects use whose archive could not be read (not connected, or no answer). */
|
|
2077
|
+
unreachable?: Array<{
|
|
2078
|
+
machineId: string;
|
|
2079
|
+
alias: string;
|
|
2080
|
+
}>;
|
|
1907
2081
|
}
|
|
1908
2082
|
/** Query of GET /api/me/archived-sessions: one group's page, newest activity first. */
|
|
1909
2083
|
interface ArchivedSessionsRowsQuery extends ArchivedSessionsQuery {
|
|
@@ -1914,6 +2088,8 @@ interface ArchivedSessionsRowsQuery extends ArchivedSessionsQuery {
|
|
|
1914
2088
|
limit: number;
|
|
1915
2089
|
/** `<lastActiveAt>,<sessionId>` of the last row held, as the Session list's cursor. */
|
|
1916
2090
|
before?: string;
|
|
2091
|
+
/** The group's machine (`ArchivedSessionGroup.machineId`): the page is read from it. */
|
|
2092
|
+
machineId?: string;
|
|
1917
2093
|
}
|
|
1918
2094
|
/** GET /api/me/archived-sessions. */
|
|
1919
2095
|
interface ArchivedSessionsResponse {
|
|
@@ -1921,11 +2097,16 @@ interface ArchivedSessionsResponse {
|
|
|
1921
2097
|
sessions: SessionInfo[];
|
|
1922
2098
|
hasMore: boolean;
|
|
1923
2099
|
}
|
|
1924
|
-
/**
|
|
1925
|
-
|
|
2100
|
+
/**
|
|
2101
|
+
* What an archive-page batch acts on: explicit ids (1–500), or every archived row a filter
|
|
2102
|
+
* matches — on this server, or with `machineId` on that machine (the filter then names its Project).
|
|
2103
|
+
*/
|
|
2104
|
+
type ArchivedSessionsBatch = ({
|
|
1926
2105
|
sessionIds: string[];
|
|
1927
2106
|
} | {
|
|
1928
2107
|
filter: ArchivedSessionsBatchFilter;
|
|
2108
|
+
}) & {
|
|
2109
|
+
machineId?: string;
|
|
1929
2110
|
};
|
|
1930
2111
|
/** A batch's filter: the archive query, one group's Workspace, and the snapshot it was counted at. */
|
|
1931
2112
|
interface ArchivedSessionsBatchFilter extends ArchivedSessionsQuery {
|
|
@@ -2103,7 +2284,7 @@ interface TracePosition {
|
|
|
2103
2284
|
ordinal: number;
|
|
2104
2285
|
}
|
|
2105
2286
|
/** History-only transport metadata; `tracePosition` is never persisted into Trace JSONL. */
|
|
2106
|
-
type HistoryMessage =
|
|
2287
|
+
type HistoryMessage = AmspRecord & {
|
|
2107
2288
|
tracePosition?: TracePosition;
|
|
2108
2289
|
};
|
|
2109
2290
|
interface SessionForkRequest {
|
|
@@ -2149,7 +2330,7 @@ interface SessionPatchRequest {
|
|
|
2149
2330
|
* - `cursor`: the Session channel's most recently assigned SSE event id
|
|
2150
2331
|
* (`<epoch>-<seq>`); every event published up to and including this id is already
|
|
2151
2332
|
* reflected in `fragments`.
|
|
2152
|
-
* - `fragments`: one synthetic `partial_* start`
|
|
2333
|
+
* - `fragments`: one synthetic `partial_* start` AmspRecord per open streaming
|
|
2153
2334
|
* fragment, whose payload carries the full accumulated content so far (text/thinking
|
|
2154
2335
|
* prefix, tool-call name + accumulated arguments, tool-output prefix + images), with
|
|
2155
2336
|
* the original `origin` chain preserved.
|
|
@@ -2164,7 +2345,7 @@ interface SessionPatchRequest {
|
|
|
2164
2345
|
*/
|
|
2165
2346
|
interface MessagesLiveTail {
|
|
2166
2347
|
cursor: string;
|
|
2167
|
-
fragments:
|
|
2348
|
+
fragments: AmspRecord[];
|
|
2168
2349
|
}
|
|
2169
2350
|
/**
|
|
2170
2351
|
* Pagination envelope of a windowed `GET /messages` (`tailLimit` / `before` requests
|
|
@@ -2994,6 +3175,50 @@ interface WeChatScanVerifyRequest {
|
|
|
2994
3175
|
interface MessagingTestMessageResponse {
|
|
2995
3176
|
ok: true;
|
|
2996
3177
|
}
|
|
3178
|
+
/**
|
|
3179
|
+
* One bot account a server has enabled: the channel and its account id (Feishu `app_id`,
|
|
3180
|
+
* Telegram bot id, QQ App ID, WeChat bot id), which is public by design. Never a Session,
|
|
3181
|
+
* never a secret.
|
|
3182
|
+
*/
|
|
3183
|
+
interface MessagingAccount {
|
|
3184
|
+
channel: MessagingChannel;
|
|
3185
|
+
accountId: string;
|
|
3186
|
+
}
|
|
3187
|
+
/**
|
|
3188
|
+
* GET /api/messaging/accounts (admin only) — every bot account this server has enabled,
|
|
3189
|
+
* across all its Projects. A server that connects machines asks each of them this when a
|
|
3190
|
+
* bot is about to be turned on, so that one account is enabled on one server at a time.
|
|
3191
|
+
*/
|
|
3192
|
+
interface MessagingAccountsResponse {
|
|
3193
|
+
accounts: MessagingAccount[];
|
|
3194
|
+
}
|
|
3195
|
+
/** A server that has the asked-about bot enabled: a machine by id and alias, or this server (both null). */
|
|
3196
|
+
interface MessagingAccountHolder {
|
|
3197
|
+
machineId: string | null;
|
|
3198
|
+
alias: string | null;
|
|
3199
|
+
}
|
|
3200
|
+
/**
|
|
3201
|
+
* Why a machine could not be asked: no connection to it, a build without the accounts
|
|
3202
|
+
* route (it answered 404), or any other failed answer.
|
|
3203
|
+
*/
|
|
3204
|
+
type MessagingUnreachableReason = "not_connected" | "older_build" | "failed";
|
|
3205
|
+
/** A machine of the Project that could not be asked whether it holds the bot. */
|
|
3206
|
+
interface MessagingUnreachableMachine {
|
|
3207
|
+
machineId: string;
|
|
3208
|
+
alias: string;
|
|
3209
|
+
reason: MessagingUnreachableReason;
|
|
3210
|
+
}
|
|
3211
|
+
/**
|
|
3212
|
+
* GET /api/projects/:projectId/messaging/account-holders?channel=&accountId= — which servers
|
|
3213
|
+
* have this bot enabled: this server, and each machine the Project uses that could be asked.
|
|
3214
|
+
* Machines that could not be asked are listed apart; the caller decides what to do about
|
|
3215
|
+
* them. Never names a Session. A caller who is not an admin is answered for this server
|
|
3216
|
+
* only, because machines are admins' (both lists then hold no machine).
|
|
3217
|
+
*/
|
|
3218
|
+
interface MessagingAccountHoldersResponse {
|
|
3219
|
+
holders: MessagingAccountHolder[];
|
|
3220
|
+
unreachable: MessagingUnreachableMachine[];
|
|
3221
|
+
}
|
|
2997
3222
|
/** Docs: /docs/server-api § "Streaming (SSE)". */
|
|
2998
3223
|
type ServerEvent =
|
|
2999
3224
|
/**
|
|
@@ -3002,7 +3227,7 @@ type ServerEvent =
|
|
|
3002
3227
|
*/
|
|
3003
3228
|
{
|
|
3004
3229
|
type: "approval_request";
|
|
3005
|
-
toolCall:
|
|
3230
|
+
toolCall: AmspRecord<ToolCallPayload>;
|
|
3006
3231
|
origin?: string[];
|
|
3007
3232
|
}
|
|
3008
3233
|
/** Session run status flip (for toggling the input area and list); `queued` = queued follow-up count (see TaskCreateRequest.queueIfBusy). */
|
|
@@ -3110,6 +3335,17 @@ type ServerEvent =
|
|
|
3110
3335
|
| {
|
|
3111
3336
|
type: "hello";
|
|
3112
3337
|
}
|
|
3338
|
+
/**
|
|
3339
|
+
* The stream's own beat, written by the endpoint's SSE writer every 20 seconds (http/sse.ts)
|
|
3340
|
+
* on `/api/events`, and by the hub on a machine's aggregate stream. The socket's ping and the
|
|
3341
|
+
* `: ping` comment line are invisible to a stream's consumer, so without this a stream that
|
|
3342
|
+
* stopped while its socket stayed healthy would look alive forever: the hub
|
|
3343
|
+
* (machines/event-hub.ts) and the browser (web api/socket.ts) each end a stream that misses
|
|
3344
|
+
* two beats and re-issue it with its last event id.
|
|
3345
|
+
*/
|
|
3346
|
+
| {
|
|
3347
|
+
type: "heartbeat";
|
|
3348
|
+
}
|
|
3113
3349
|
/** The served web assets were hot-swapped by a platform upgrade: clients reload to pick them up. */
|
|
3114
3350
|
| {
|
|
3115
3351
|
type: "web_updated";
|
|
@@ -3150,7 +3386,7 @@ type ServerEvent =
|
|
|
3150
3386
|
projectId: string;
|
|
3151
3387
|
} | ScheduleServerEvent | GoalServerEvent | CompanyServerEvent | BuiltinBrowserServerEvent | MachineServerEvent;
|
|
3152
3388
|
/**
|
|
3153
|
-
* The machines'
|
|
3389
|
+
* The machines' events on the user channel, published to admins only — the Machines page,
|
|
3154
3390
|
* and the `/server/<id>` proxy everything else about a machine goes through, are admin-only.
|
|
3155
3391
|
*/
|
|
3156
3392
|
type MachineServerEvent =
|
|
@@ -3165,11 +3401,13 @@ type MachineServerEvent =
|
|
|
3165
3401
|
type: "machines_changed";
|
|
3166
3402
|
}
|
|
3167
3403
|
/**
|
|
3168
|
-
* One of a connected machine's own user-channel events,
|
|
3169
|
-
*
|
|
3170
|
-
*
|
|
3171
|
-
*
|
|
3172
|
-
*
|
|
3404
|
+
* One of a connected machine's own user-channel events, tagged with the machine it came
|
|
3405
|
+
* from. They ride the machines aggregate (event-hub.ts, `GET …/machines/events`) — ONE
|
|
3406
|
+
* stream for every connected machine, whose per-machine frames have this same shape; the
|
|
3407
|
+
* page that re-publishes them on its own channel wraps them this way too. One stream, not
|
|
3408
|
+
* a stream per machine: five of those once took the browser's whole HTTP/1.1 allowance of
|
|
3409
|
+
* six connections to one origin, and every other request of the page then waited behind
|
|
3410
|
+
* them for good.
|
|
3173
3411
|
*/
|
|
3174
3412
|
| {
|
|
3175
3413
|
type: "machine_event";
|
|
@@ -3311,7 +3549,7 @@ interface SessionContextResponse extends SessionContextParts {
|
|
|
3311
3549
|
compactionThreshold: number | null;
|
|
3312
3550
|
}
|
|
3313
3551
|
interface TraceEventsResponse {
|
|
3314
|
-
events:
|
|
3552
|
+
events: AmspRecord[];
|
|
3315
3553
|
offset: number;
|
|
3316
3554
|
limit: number;
|
|
3317
3555
|
/**
|
|
@@ -3340,6 +3578,11 @@ interface RequestSpan {
|
|
|
3340
3578
|
approvalWaitMs?: number;
|
|
3341
3579
|
/** LLM generation duration = durationMs − approvalWaitMs (≥ 0): only this can be used as the TPS denominator, not durationMs. */
|
|
3342
3580
|
activeMs?: number;
|
|
3581
|
+
/**
|
|
3582
|
+
* The thinking level this request went out at, as its `request_begin` records it. Absent
|
|
3583
|
+
* when no level was sent, and on Traces written before the field — unknown, not a level.
|
|
3584
|
+
*/
|
|
3585
|
+
thinkingLevel?: string;
|
|
3343
3586
|
}
|
|
3344
3587
|
/**
|
|
3345
3588
|
* Per-Task Token / duration figures (aggregated server-side over the **entire** Trace file,
|
|
@@ -3369,6 +3612,14 @@ interface TraceTaskStats {
|
|
|
3369
3612
|
* mode; treat an absent value as `summarize`, which is what the badge said before the split.
|
|
3370
3613
|
*/
|
|
3371
3614
|
compactionMode?: CompactionMode;
|
|
3615
|
+
/**
|
|
3616
|
+
* A short label for the round navigator: the first non-empty line of the user text that
|
|
3617
|
+
* started this turn, with harness marker blocks and attachment lines removed, whitespace
|
|
3618
|
+
* collapsed, at most 120 characters (the view truncates it further to fit). Absent when no
|
|
3619
|
+
* user text started the turn — a summarize compaction turn, an image-only send — or none of
|
|
3620
|
+
* its lines is left (only attachment lines).
|
|
3621
|
+
*/
|
|
3622
|
+
prompt?: string;
|
|
3372
3623
|
/**
|
|
3373
3624
|
* This turn's message index range within the **entire file** (inclusive). A single
|
|
3374
3625
|
* sequential scan on the server tells which turn each message belongs to; the frontend
|
|
@@ -3455,7 +3706,8 @@ interface ToolCallSpan {
|
|
|
3455
3706
|
startTs: string;
|
|
3456
3707
|
endTs?: string;
|
|
3457
3708
|
durationMs?: number;
|
|
3458
|
-
|
|
3709
|
+
/** The paired tool_call_output's `status` (completed / aborted / fatal); absent while the call has no output. */
|
|
3710
|
+
status?: string;
|
|
3459
3711
|
}
|
|
3460
3712
|
/** Workspace file entry (Files tab). */
|
|
3461
3713
|
interface WorkspaceFileEntry {
|
|
@@ -3577,7 +3829,8 @@ interface TraceToolSpan {
|
|
|
3577
3829
|
approvalTs?: string;
|
|
3578
3830
|
decision?: string;
|
|
3579
3831
|
outputTs?: string;
|
|
3580
|
-
|
|
3832
|
+
/** The tool_call_output's `status` (completed / aborted / fatal); absent while unclosed. */
|
|
3833
|
+
status?: string;
|
|
3581
3834
|
/** The Task that initiated this tool (grouped with its tool_call segment): async output belongs to this Task even if it arrives after request_end. */
|
|
3582
3835
|
taskIndex: number;
|
|
3583
3836
|
}
|
|
@@ -3950,7 +4203,11 @@ interface UsageResponse {
|
|
|
3950
4203
|
/** List of Model paired references that have appeared in this Project (for the filter dropdown). */
|
|
3951
4204
|
models: ModelRefDto[];
|
|
3952
4205
|
}
|
|
3953
|
-
/**
|
|
4206
|
+
/**
|
|
4207
|
+
* Display-facing schedule status: the file's `enabled` only expresses intent; the rest is derived from runtime state.
|
|
4208
|
+
* The scheduler archives an agent's settled tasks (done / missed / expired) into `schedule/expired/`, so the agent
|
|
4209
|
+
* listings show those three only while a queued fire is still to be sent or when the move failed.
|
|
4210
|
+
*/
|
|
3954
4211
|
type ScheduleStatus = "active" | "disabled" | "expired" | "done" | "missed" | "invalid";
|
|
3955
4212
|
interface ScheduleItem {
|
|
3956
4213
|
/** Filename (without .toml) is the identifier. */
|
|
@@ -4673,6 +4930,24 @@ interface DesktopTrayCommandMessage {
|
|
|
4673
4930
|
showTrayIcon?: boolean;
|
|
4674
4931
|
locale?: DesktopTrayLocale;
|
|
4675
4932
|
}
|
|
4933
|
+
/**
|
|
4934
|
+
* The API socket (PRFC-0011): one WebSocket per tab, every frame a call to an existing
|
|
4935
|
+
* endpoint. It has its own upgrade route, {@link API_SOCKET_PATH}: the runtime's websocket
|
|
4936
|
+
* seam authenticates the cookie and the Origin there and hands the socket to the platform,
|
|
4937
|
+
* which serves the protocol as the signed-in user (server: socket/ref.ts). Shared so the Web
|
|
4938
|
+
* App and anything else that speaks to another server spell the address the same way.
|
|
4939
|
+
*/
|
|
4940
|
+
declare const API_SOCKET_PATH = "/api/socket";
|
|
4941
|
+
/**
|
|
4942
|
+
* Paths whose answer depends on the KIND of session behind the request — the desktop shell's
|
|
4943
|
+
* own window (`sessionVia === "desktop"`: its update, tray and privacy relays, folder access,
|
|
4944
|
+
* revealing a file) or a first-login link (a password change without the old password). The
|
|
4945
|
+
* socket's handshake does not say how the cookie behind it was minted, so these are made over
|
|
4946
|
+
* HTTP: the socket answers them 421 `not_on_socket` and the Web App never sends them there.
|
|
4947
|
+
*/
|
|
4948
|
+
declare function sessionKindPath(pathname: string): boolean;
|
|
4949
|
+
/** The API socket's address. No id is involved: the handshake's cookie names the user. */
|
|
4950
|
+
declare function apiSocketPath(): string;
|
|
4676
4951
|
/** What the shell's read of one folder came to. */
|
|
4677
4952
|
interface DesktopFolderAccessResult {
|
|
4678
4953
|
/** The folder could be read. Always true off macOS, where the shell reads nothing. */
|
|
@@ -4763,6 +5038,43 @@ interface RestartResponse {
|
|
|
4763
5038
|
restarting: boolean;
|
|
4764
5039
|
reason?: "no_supervisor";
|
|
4765
5040
|
}
|
|
5041
|
+
/**
|
|
5042
|
+
* What the API socket this server holds to one machine is doing (machines/machine-sockets.ts) —
|
|
5043
|
+
* the fact behind `MachineInfo.socket`. `since` is the instant the state was entered, so the
|
|
5044
|
+
* Machines page can say how long a machine has been dialling, failing or connected instead of
|
|
5045
|
+
* sending someone to the browser console for it.
|
|
5046
|
+
*/
|
|
5047
|
+
interface MachineSocketFact {
|
|
5048
|
+
/**
|
|
5049
|
+
* `connected` once the handshake completed, `dialling` while a dial is outstanding, `refused`
|
|
5050
|
+
* when the machine answered the handshake with a status (a program predating the socket),
|
|
5051
|
+
* `unanswered` when its server answers HTTP and never answered the handshake, and `failed` when
|
|
5052
|
+
* the dial did not complete or a socket that was up closed.
|
|
5053
|
+
*
|
|
5054
|
+
* `unanswered` is a server PROCESS older than the socket: an update handed to a running server
|
|
5055
|
+
* swaps its platform and never the process that takes the upgrade, so the machine reports the
|
|
5056
|
+
* current build and still has no socket: it is not running this server's version, which a remote
|
|
5057
|
+
* machine must. A restart of its server, and failing that an update or a reinstall, brings it
|
|
5058
|
+
* there; the Machines page reads the state as needing a restart. It lasts until a handshake
|
|
5059
|
+
* completes: a
|
|
5060
|
+
* machine dialled again keeps it while the dial is outstanding, instead of reading `dialling`.
|
|
5061
|
+
*/
|
|
5062
|
+
state: "connected" | "dialling" | "refused" | "unanswered" | "failed";
|
|
5063
|
+
/** When that state was entered (ISO). */
|
|
5064
|
+
since: string;
|
|
5065
|
+
/** The transport's own words where there are any: a refusal's status, a dial's error. */
|
|
5066
|
+
detail?: string;
|
|
5067
|
+
}
|
|
5068
|
+
/**
|
|
5069
|
+
* One machine's event, as the machines aggregate stream carries it
|
|
5070
|
+
* (`GET /api/projects/:projectId/machines/events`): the machine's own `ServerEvent`, with the
|
|
5071
|
+
* machine it came from — one stream carries many machines, and the tag is what keeps their
|
|
5072
|
+
* events apart (docs: /docs/server-api § "One event stream per machine").
|
|
5073
|
+
*/
|
|
5074
|
+
interface MachineEvent {
|
|
5075
|
+
machineId: string;
|
|
5076
|
+
event: ServerEvent;
|
|
5077
|
+
}
|
|
4766
5078
|
/** One `Host` entry of the server's `~/.ssh/config`, as the Machines page lists it. */
|
|
4767
5079
|
interface MachineInfo {
|
|
4768
5080
|
/** `ssh:<alias>` — the id the install route is asked for. */
|
|
@@ -4848,6 +5160,15 @@ interface MachineInfo {
|
|
|
4848
5160
|
* here, one that never got as far as a connection.
|
|
4849
5161
|
*/
|
|
4850
5162
|
keepConnected?: true;
|
|
5163
|
+
/**
|
|
5164
|
+
* The API socket this server holds to that machine — connected, dialling, refused or failed,
|
|
5165
|
+
* and since when (machines/machine-sockets.ts). Null for `local`, and until a stream has
|
|
5166
|
+
* asked for a socket at all. A fact about one process on THIS side, like `connection` and
|
|
5167
|
+
* for the same reason: it says the socket exists and what it is doing, never that the far
|
|
5168
|
+
* side is answering. The Machines page reads it so a stuck stream does not have to be found
|
|
5169
|
+
* in the browser console.
|
|
5170
|
+
*/
|
|
5171
|
+
socket: MachineSocketFact | null;
|
|
4851
5172
|
/**
|
|
4852
5173
|
* The machine's API as last seen by this server's proxy — stamped by traffic passing
|
|
4853
5174
|
* through, never by a probe of its own. `answeredAt` when the last forwarded request got
|
|
@@ -4917,6 +5238,12 @@ interface MachineSkippedModel {
|
|
|
4917
5238
|
/** The far side's error code (`model_not_addable`, `model_not_routable`). */
|
|
4918
5239
|
code: string;
|
|
4919
5240
|
reason: string;
|
|
5241
|
+
/**
|
|
5242
|
+
* The entry is one of this server's built-in models for its group, which the machine refused
|
|
5243
|
+
* as not addable: the machine's build does not list it yet, so updating the machine, then
|
|
5244
|
+
* syncing again, carries it. Absent for any other refusal.
|
|
5245
|
+
*/
|
|
5246
|
+
builtInHere?: true;
|
|
4920
5247
|
}
|
|
4921
5248
|
/** A model entry that takes `variable` from this server's environment. */
|
|
4922
5249
|
interface MachineEnvOnly {
|
|
@@ -4927,17 +5254,30 @@ interface MachineEnvOnly {
|
|
|
4927
5254
|
}
|
|
4928
5255
|
/**
|
|
4929
5256
|
* A machine this server keeps connected, while it is being brought back. Attempts back off
|
|
4930
|
-
* from
|
|
4931
|
-
*
|
|
4932
|
-
*
|
|
5257
|
+
* from 15 s, doubling, and stop after `maxAttempts` failures in a row — or after the first, when
|
|
5258
|
+
* ssh refused in a way no retry fixes, or when a person asks to stop
|
|
5259
|
+
* (`POST …/machines/:machineId/stop-reconnecting`) — until a person asks for a Retry
|
|
5260
|
+
* (`POST …/machines/:machineId/reconnect`). After three failures in a row the connection check
|
|
5261
|
+
* runs on its own, and its answer is what the page shows as the explanation.
|
|
4933
5262
|
*/
|
|
4934
5263
|
interface MachineReconnect {
|
|
4935
|
-
/** When this streak began: the moment the machine was found not connected. */
|
|
5264
|
+
/** When this streak began: the moment the machine was found not connected, or the Retry that began it again. */
|
|
4936
5265
|
since: string;
|
|
4937
5266
|
/** Attempts that failed in this streak; 0 while the first is still to run or running. */
|
|
4938
5267
|
attempts: number;
|
|
4939
|
-
/**
|
|
5268
|
+
/** How many failures in a row end the streak: the page says "attempt n of this". */
|
|
5269
|
+
maxAttempts: number;
|
|
5270
|
+
/** When the next attempt runs; null while one is running, and once the streak stopped. */
|
|
4940
5271
|
nextAt: string | null;
|
|
5272
|
+
/**
|
|
5273
|
+
* The streak stopped, and nothing runs until a person asks for a Retry, which begins a new
|
|
5274
|
+
* one: `attempts` — `maxAttempts` failed in a row; `ssh` — ssh refused in a way retrying
|
|
5275
|
+
* cannot fix (a host key unknown or changed, an unusable key file, a key refused, a broken
|
|
5276
|
+
* ssh config), said by `sshReason`; `cancelled` — a person stopped it. An attempt that was
|
|
5277
|
+
* under way when it was stopped runs out: it may still connect the machine, and its failure
|
|
5278
|
+
* is the `lastError`.
|
|
5279
|
+
*/
|
|
5280
|
+
gaveUp?: "attempts" | "ssh" | "cancelled";
|
|
4941
5281
|
/** The last attempt's failure in the far side's words; null before the first one fails. */
|
|
4942
5282
|
lastError: string | null;
|
|
4943
5283
|
/** Why ssh refused, when the last failure was ssh's own — for the page to say in its language. */
|
|
@@ -5979,6 +6319,11 @@ interface OrgHandbookFile {
|
|
|
5979
6319
|
updatedAt: string;
|
|
5980
6320
|
}
|
|
5981
6321
|
interface OrgHandbookFilesResponse {
|
|
6322
|
+
/**
|
|
6323
|
+
* The handbook directory's absolute path on this server: the Web App browses it with the Files
|
|
6324
|
+
* panel's own directory-addressed routes, which take the same Project access these do.
|
|
6325
|
+
*/
|
|
6326
|
+
dir: string;
|
|
5982
6327
|
/** The index first, then the other documents by path. */
|
|
5983
6328
|
files: OrgHandbookFile[];
|
|
5984
6329
|
}
|
|
@@ -6496,7 +6841,12 @@ interface BrowserExtensionPairingResponse {
|
|
|
6496
6841
|
code: string;
|
|
6497
6842
|
/** ISO time the code stops working. */
|
|
6498
6843
|
expiresAt: string;
|
|
6499
|
-
/**
|
|
6844
|
+
/**
|
|
6845
|
+
* The address the browser reaches this server at, which the extension pairs with: the public
|
|
6846
|
+
* origin (scheme, host and port; from the forwarded headers when the server trusts a proxy).
|
|
6847
|
+
* Null only from an older server, which echoed the request's `Origin` and had none to echo for
|
|
6848
|
+
* a call that carried no `Origin`.
|
|
6849
|
+
*/
|
|
6500
6850
|
origin: string | null;
|
|
6501
6851
|
}
|
|
6502
6852
|
/** POST /api/builtin-browser/extension/pair (no cookie: the extension's own request). */
|
|
@@ -6931,4 +7281,4 @@ interface DesktopBrowserEventMessage {
|
|
|
6931
7281
|
event: DesktopBrowserEvent;
|
|
6932
7282
|
}
|
|
6933
7283
|
|
|
6934
|
-
export { type AdminPasswordResetRequest, type AdminUserCreateRequest, type AdminUserCreateResponse, type AdminUsersResponse, type AgentApiKeyCreateRequest, type AgentApiKeyCreateResponse, type AgentApiKeyInfo, type AgentApiResponse, type AgentApiSettings, type AgentApiUpdateRequest, type AgentCompactionConfigDto, type AgentConfigDto, type AgentConfigResponse, type AgentConfigUpdateRequest, type AgentCreateRequest, type AgentCreateResponse, type AgentHooksConfigDto, type AgentHooksResponse, type AgentImportRequest, type AgentImportResponse, type AgentKernelUpdateResponse, type AgentMcpServerItem, type AgentMcpServersResponse, type AgentMemoryConfigDto, type AgentModelConfigDto, type AgentPluginsInstallResponse, type AgentSchedulesConfigDto, type AgentSkillsConfigDto, type AgentSkillsResponse, type AgentSummary, type AgentTraceDateGroup, type AgentTraceFileRef, type AgentTraceSessionEntry, type AgentTraceSessionFile, type AgentTraceSessionGroup, type AgentTracesResponse, type AgentVaultConfigDto, type AgentsResponse, type ApprovalDecisionRequest, type ApprovalMode, type ArchivedSessionGroup, type ArchivedSessionGroupsResponse, type ArchivedSessionSource, type ArchivedSessionsBatch, type ArchivedSessionsBatchFilter, type ArchivedSessionsBatchResponse, type ArchivedSessionsQuery, type ArchivedSessionsResponse, type ArchivedSessionsRowsQuery, type AuthLoginRequest, type AuthResponse, type BenchmarkArchiveGitOrigin, type BenchmarkArchiveImportRequest, type BenchmarkArchiveImportResponse, type BenchmarkCaseScore, type BenchmarkCaseSummary, type BenchmarkCasesResponse, type BenchmarkCreateCase, type BenchmarkCreateRequest, type BenchmarkCreateResponse, type BenchmarkEvaluation, type BenchmarkManifestProblem, type BenchmarkOrigin, type BenchmarkOriginKind, type BenchmarkRunScore, type BenchmarkStatus, type BenchmarkSummary, type BenchmarksResponse, type BrowserBackend, type BrowserBackendInfo, type BrowserBackendResponse, type BrowserExtensionCloseCode, type BrowserExtensionPairRequest, type BrowserExtensionPairResponse, type BrowserExtensionPairingResponse, type BrowserExtensionRecord, type BrowserExtensionsResponse, type BrowserHello, type BrowserLinkCapabilities, type BuiltinBrowserAction, type BuiltinBrowserDialog, type BuiltinBrowserExecResult, type BuiltinBrowserHistoryEntry, type BuiltinBrowserHistoryResponse, type BuiltinBrowserImportBrowser, type BuiltinBrowserImportRequest, type BuiltinBrowserImportResult, type BuiltinBrowserImportSource, type BuiltinBrowserImportSourcesResponse, type BuiltinBrowserLoadWarning, type BuiltinBrowserMetrics, type BuiltinBrowserScanResult, type BuiltinBrowserScreenshot, type BuiltinBrowserServerEvent, type BuiltinBrowserSettings, type BuiltinBrowserStatus, type BuiltinBrowserTab, type BuiltinBrowserTabMetrics, type BuiltinBrowserTabsResponse, type BuiltinBrowserUnavailableReason, type CaseMaterial, type ChatDefaultsDto, type CommandPolicyDto, type CommandPolicyRuleDto, type CompanyServerEvent, type ConnectionSourceDto, type ContextFileShare, type ContextToolShare, type ContributionsResponse, type CostParts, type CredentialInfo, type DefaultModelResponse, type DefaultModelUpdateRequest, type DesktopBrowserCommand, type DesktopBrowserCommandMessage, type DesktopBrowserCookie, type DesktopBrowserEvent, type DesktopBrowserEventMessage, type DesktopBrowserReplyMessage, type DesktopFolderAccessMessage, type DesktopFolderAccessResult, type DesktopFolderAccessResultMessage, type DesktopOpenPrivacySettingsMessage, type DesktopPrivacyPane, type DesktopTrayCommandMessage, type DesktopTrayLocale, type DesktopTrayPatch, type DesktopTrayStatus, type DesktopTrayStatusMessage, type DesktopTrayStatusResponse, type DesktopUpdateStatus, type DesktopUpdateStatusResponse, type DesktopUpdaterCommandMessage, type DesktopUpdaterStatusMessage, type DirAccessResponse, type DirEntryInfo, type DirListResponse, type DirLocation, type DirStandardFolders, type DirectorySkillItem, type DirectorySkillsResponse, type DraftShortcut, type Employment, type EndpointModelListRequest, type EndpointModelListResponse, type ErrorBody, type ErrorDetails, type FeishuBindingInfo, type FeishuBindingPutRequest, type FeishuBindingResponse, type FeishuTestRequest, type FeishuTestResponse, type FilesCreateRequest, type FilesMoveRequest, type FilesStatRequest, type FilesStatResponse, type FilesWriteRequest, type GoalResponse, type GoalServerEvent, type GoalStateView, type HistoryMessage, type HookArchiveInstallRequest, type HookItem, type InstallResponse, type InstalledPlugin, type InstalledPluginsResponse, type LanguageIndexResponse, type LanguageSummary, MACHINE_PHASES, type MachineCheck, type MachineConfigSync, type MachineDiagnosis, type MachineEnvOnly, type MachineInfo, type MachineJob, type MachinePhase, type MachineReconnect, type MachineServerEvent, type MachineServerStatus, type MachineSkippedModel, type MachineSourceReach, type MachineSshFailure, type MachineUninstallRequest, type MachineUseRefusal, type MachinesAddRequest, type MachinesCheckoutImage, type MachinesResponse, type MachinesStopUsingRequest, type MachinesUseRequest, type MachinesUseResponse, type McpServerTestResponse, type McpTransport, type MeResponse, type MemberAddRequest, type MemberAddResponse, type MemberInfo, type MembersResponse, type MemoryFileInfo, type MemoryFileResponse, type MemoryFilesResponse, type MemoryImportMode, type MemoryImportRequest, type MemoryImportResponse, type MemoryOverviewResponse, type MemoryScopeExport, type MemoryScopeInfo, type MemoryTransferFile, type MessagesLiveTail, type MessagesPageInfo, type MessagesResponse, type MessagingBindingCommon, type MessagingBindingInfo, type MessagingBindingStateRequest, type MessagingBindingsResponse, type MessagingChannel, type MessagingChannelState, type MessagingDeliveryError, type MessagingDeliveryPatch, type MessagingRuntimeState, type MessagingRuntimeStatus, type MessagingTestMessageResponse, type ModelBalanceAmount, type ModelBalanceErrorCode, type ModelBalanceFailure, type ModelBalanceReading, type ModelBalanceResponse, type ModelEffectiveConnection, type ModelInfo, type ModelOAuthCodeRequest, type ModelOAuthCodeResponse, type ModelOAuthErrorCode, type ModelOAuthMode, type ModelOAuthStartRequest, type ModelOAuthStartResponse, type ModelOAuthStatusResponse, type ModelPricingDto, type ModelProtocolDetectRequest, type ModelProtocolDetectResponse, type ModelProtocolProbeDto, type ModelRefDto, type ModelScopeAuthFlowErrorCode, type ModelScopeAuthFlowStatusResponse, type ModelScopeAuthStartResponse, type ModelTestRequest, type ModelTestResponse, type ModelUpdateEntry, type ModelVisionDetectRequest, type ModelVisionDetectResponse, type ModelVisionOutcome, type ModelsResponse, type ModelsUpdateRequest, type OrgApprovalMode, type OrgBudgetAlert, type OrgCalendarItem, type OrgCalendarOutcome, type OrgCalendarResponse, type OrgCalendarUpsertRequest, type OrgCalendarWriteResponse, type OrgChannelCreateRequest, type OrgChannelDetail, type OrgChannelItem, type OrgChannelMember, type OrgChannelMemberRequest, type OrgChannelMessage, type OrgChannelMessageSendRequest, type OrgChannelMessagesResponse, type OrgChannelNotice, type OrgChannelNoticeKind, type OrgChannelPatchRequest, type OrgChannelReadRequest, type OrgChannelsResponse, type OrgChartResponse, type OrgDeskItem, type OrgDeskResponse, type OrgEmployeeItem, type OrgEmployeePatchRequest, type OrgEmployeeState, type OrgFinanceEmployee, type OrgFinanceResponse, type OrgFinanceTicket, type OrgHandbookFile, type OrgHandbookFileResponse, type OrgHandbookFileWriteRequest, type OrgHandbookFilesResponse, type OrgHandbookResponse, type OrgHireRequest, type OrgInbox, type OrgLanguage, type OrgSessionsResponse, type OrgSpendSummary, type OrgStatus, type OrgTicketAttachRequest, type OrgTicketBlockRequest, type OrgTicketChange, type OrgTicketCreateRequest, type OrgTicketDetail, type OrgTicketHistoryAction, type OrgTicketHistoryEntry, type OrgTicketItem, type OrgTicketMoveRequest, type OrgTicketPriority, type OrgTicketProgressRequest, type OrgTicketSessionItem, type OrgTicketStartRequest, type OrgTicketStartResponse, type OrgTicketStatus, type OrgTicketUpdateRequest, type OrgTicketsResponse, type OrgTriggerKind, type OrganizationCreateRequest, type OrganizationDetail, type OrganizationPatchRequest, type OrganizationSettings, type OrganizationSummary, type OrganizationsResponse, type PasswordChangeRequest, type PendingFollowUpInfo, type PendingSteeringInfo, type PinnedBalance, type PlatformAuthFlowErrorCode, type PlatformAuthFlowStatusResponse, type PlatformAuthStartResponse, type PlatformModelSyncResponse, type PluginArchiveImportRequest, type PluginConfigActionDecl, type PluginConfigActionResponse, type PluginConfigBackend, type PluginConfigColumnGroup, type PluginConfigEntry, type PluginConfigField, type PluginConfigNewRow, type PluginConfigNotice, type PluginConfigOption, type PluginConfigPinColumn, type PluginConfigResponse, type PluginConfigRowChoice, type PluginConfigTableColumn, type PluginConfigTableRow, type PluginConfigUnavailableDecl, type PluginConfigUpdateRequest, type PluginConfiguration, type PluginFilesResponse, type PluginGroupItem, type PluginIndexEntry, type PluginIndexResponse, type PluginInstallOutcome, type PluginInstallRequest, type PluginItem, type PluginLibraryResponse, type PluginMcpServerItem, type PluginReadmeResponse, type PluginSetupKeyItem, type PluginUpdateRef, type PrefsResponse, type PresetSyncMode, type PresetSyncRequest, type PresetSyncResponse, type ProjectCreateRequest, type ProjectCreateResponse, type ProjectRole, type ProjectScheduleItem, type ProjectSchedulesResponse, type ProjectSummary, type ProjectUpdateRequest, type ProjectUpdateResponse, type ProjectsResponse, type ProtocolProbeOutcome, type ProviderConnectionDto, type ProviderConnectionUpdate, type ProxyProbeDto, type ProxyProbeOutcome, type ProxyProbeProvider, type ProxyProbeResponse, type ProxyProbeTargetDto, type ProxyProbeTargetsResponse, type QQBindingInfo, type QQBindingPutRequest, type QQBindingResponse, type QQScanPollResponse, type QQScanStartResponse, type QQTestRequest, type QQTestResponse, type QuickStartItem, type RecalledMessageResponse, type RendererRef, type RequestSpan, type RestartResponse, type RetryNowResponse, type ScheduleItem, type ScheduleServerEvent, type ScheduleStatus, type ScheduleUpsertRequest, type SchedulesResponse, type SemanticIdKind, type SemanticIdSuggestReason, type SemanticIdSuggestRequest, type SemanticIdSuggestResponse, type ServerEvent, type ServerSettings, type ServerSettingsResponse, type ServerSettingsUpdateRequest, type SessionBackgroundTasks, type SessionBatchPageRequest, type SessionBatchResult, type SessionCategory, type SessionCategoryCounts, type SessionContextParts, type SessionContextResponse, type SessionCreateRequest, type SessionCreateResponse, type SessionForkRequest, type SessionForkResponse, type SessionInfo, type SessionPatchRequest, type SessionProcessInfo, type SessionProcessesResponse, type SessionResponse, type SessionSandbox, type SessionSandboxMode, type SessionSandboxNetwork, type SessionSandboxPreset, type SessionStatus, type SessionSwitchModelRequest, type SessionTracesResponse, type SessionsBatchRequest, type SessionsBatchResponse, type SessionsResponse, type SkillArchiveInstallRequest, type SkillMetadataItem, type SshHostRequest, type SshHostResponse, type SshHostSummary, type SshHostsResponse, type SteerRequest, type StoredKeybindings, type SubagentMessageResponse, type SubagentRuntimeInfo, TICKET_SLUG_PATTERN, type TaskCreateRequest, type TaskCreateResponse, type TaskInputPart, type TelegramBindingInfo, type TelegramBindingPutRequest, type TelegramBindingResponse, type TelegramTestRequest, type TelegramTestResponse, type ToolCallSpan, type TraceAnalysisResponse, type TraceEventsResponse, type TraceFileInfo, type TraceImportRequest, type TraceImportResponse, type TraceModelSegment, type TraceOtherSpan, type TracePosition, type TraceTaskStats, type TraceToolSpan, type UiPrefs, type UnavailableSandboxBackend, type UnsatisfiedPlugin, type UpdateCheckResponse, type UpdateJobPhase, type UpdateJobStatus, type UpdateProfileRequest, type UpdateProfileResponse, type UpdateRunResponse, type UploadLimits, type UsageAgentSeries, type UsageBucket, type UsageEntitySeriesCounts, type UsageErrorCount, type UsageErrorItem, type UsageErrorKind, type UsageErrors, type UsageErrorsClearResponse, type UsageErrorsPage, type UsageGranularity, type UsageGroupBy, type UsageGroupRow, type UsageModelSeries, type UsageModelTotal, type UsageModelTotals, type UsageResponse, type UsageSeriesPoint, type UsageTrendPointInTrace, type UserInfo, type VaultEntryInfo, type VaultEntryUpdate, type VaultResponse, type VaultUpdateRequest, type VersionHistoryDiffResponse, type VersionHistoryResponse, type VersionResponse, type VersionRollbackResponse, type WeChatBindingInfo, type WeChatBindingPutRequest, type WeChatBindingResponse, type WeChatScanPollResponse, type WeChatScanStartResponse, type WeChatScanStatus, type WeChatScanVerifyRequest, type WeChatTestResponse, type WebContribution, type WorkbenchInfo, type WorkbenchRequest, type WorkbenchResponse, type WorkbenchVersion, type WorkspaceFileEntry, type WorkspaceFilesResponse, type WorkspaceSearchHit, type WorkspaceSearchResponse };
|
|
7284
|
+
export { API_SOCKET_PATH, type AdminPasswordResetRequest, type AdminUserCreateRequest, type AdminUserCreateResponse, type AdminUsersResponse, type AgentApiKeyCreateRequest, type AgentApiKeyCreateResponse, type AgentApiKeyInfo, type AgentApiResponse, type AgentApiSettings, type AgentApiUpdateRequest, type AgentCompactionConfigDto, type AgentConfigDto, type AgentConfigResponse, type AgentConfigUpdateRequest, type AgentCreateRequest, type AgentCreateResponse, type AgentDeleteResponse, type AgentDeletionInfo, type AgentDeletionResponse, type AgentHooksConfigDto, type AgentHooksResponse, type AgentImportRequest, type AgentImportResponse, type AgentKernelUpdateResponse, type AgentMcpServerItem, type AgentMcpServersResponse, type AgentMemoryConfigDto, type AgentModelConfigDto, type AgentPluginsInstallResponse, type AgentSchedulesConfigDto, type AgentSkillsConfigDto, type AgentSkillsResponse, type AgentSummary, type AgentTraceDateGroup, type AgentTraceFileRef, type AgentTraceSessionEntry, type AgentTraceSessionFile, type AgentTraceSessionGroup, type AgentTracesResponse, type AgentVaultConfigDto, type AgentsResponse, type ApprovalDecisionRequest, type ApprovalMode, type ArchivedSessionGroup, type ArchivedSessionGroupServers, type ArchivedSessionGroupsResponse, type ArchivedSessionSource, type ArchivedSessionsBatch, type ArchivedSessionsBatchFilter, type ArchivedSessionsBatchResponse, type ArchivedSessionsQuery, type ArchivedSessionsResponse, type ArchivedSessionsRowsQuery, type AuthLoginRequest, type AuthResponse, BACKGROUND_IMAGE_MAX_CHARS, type BackgroundImagePutResponse, type BackgroundImageRequest, type BackgroundImageResponse, type BackgroundSettingsDto, type BenchmarkArchiveGitOrigin, type BenchmarkArchiveImportRequest, type BenchmarkArchiveImportResponse, type BenchmarkCaseScore, type BenchmarkCaseSummary, type BenchmarkCasesResponse, type BenchmarkCreateCase, type BenchmarkCreateRequest, type BenchmarkCreateResponse, type BenchmarkEvaluation, type BenchmarkManifestProblem, type BenchmarkOrigin, type BenchmarkOriginKind, type BenchmarkRunScore, type BenchmarkStatus, type BenchmarkSummary, type BenchmarksResponse, type BrowserBackend, type BrowserBackendInfo, type BrowserBackendResponse, type BrowserExtensionCloseCode, type BrowserExtensionPairRequest, type BrowserExtensionPairResponse, type BrowserExtensionPairingResponse, type BrowserExtensionRecord, type BrowserExtensionsResponse, type BrowserHello, type BrowserLinkCapabilities, type BuiltinBrowserAction, type BuiltinBrowserDialog, type BuiltinBrowserExecResult, type BuiltinBrowserHistoryEntry, type BuiltinBrowserHistoryResponse, type BuiltinBrowserImportBrowser, type BuiltinBrowserImportRequest, type BuiltinBrowserImportResult, type BuiltinBrowserImportSource, type BuiltinBrowserImportSourcesResponse, type BuiltinBrowserLoadWarning, type BuiltinBrowserMetrics, type BuiltinBrowserScanResult, type BuiltinBrowserScreenshot, type BuiltinBrowserServerEvent, type BuiltinBrowserSettings, type BuiltinBrowserStatus, type BuiltinBrowserTab, type BuiltinBrowserTabMetrics, type BuiltinBrowserTabsResponse, type BuiltinBrowserUnavailableReason, type CaseMaterial, type ChatDefaultsDto, type CommandPolicyDto, type CommandPolicyRuleDto, type CompanyServerEvent, type ConnectionSourceDto, type ContextFileShare, type ContextToolShare, type ContributionsResponse, type CostParts, type CredentialInfo, DRAFTS_PATCH_MAX_ENTRIES, DRAFT_KINDS, DRAFT_VALUE_MAX_CHARS, type DefaultModelResponse, type DefaultModelUpdateRequest, type DesktopBrowserCommand, type DesktopBrowserCommandMessage, type DesktopBrowserCookie, type DesktopBrowserEvent, type DesktopBrowserEventMessage, type DesktopBrowserReplyMessage, type DesktopFolderAccessMessage, type DesktopFolderAccessResult, type DesktopFolderAccessResultMessage, type DesktopOpenPrivacySettingsMessage, type DesktopPrivacyPane, type DesktopTrayCommandMessage, type DesktopTrayLocale, type DesktopTrayPatch, type DesktopTrayStatus, type DesktopTrayStatusMessage, type DesktopTrayStatusResponse, type DesktopUpdateStatus, type DesktopUpdateStatusResponse, type DesktopUpdaterCommandMessage, type DesktopUpdaterStatusMessage, type DirAccessResponse, type DirEntryInfo, type DirListResponse, type DirLocation, type DirStandardFolders, type DirectorySkillItem, type DirectorySkillsResponse, type DraftKind, type DraftShortcut, type DraftsPatchRequest, type DraftsResponse, type Employment, type EndpointModelListRequest, type EndpointModelListResponse, type ErrorBody, type ErrorDetails, type FeishuBindingInfo, type FeishuBindingPutRequest, type FeishuBindingResponse, type FeishuTestRequest, type FeishuTestResponse, type FilesCreateRequest, type FilesMoveRequest, type FilesStatRequest, type FilesStatResponse, type FilesWriteRequest, type GoalResponse, type GoalServerEvent, type GoalStateView, type HistoryMessage, type HookArchiveInstallRequest, type HookItem, type InstallResponse, type InstalledPlugin, type InstalledPluginsResponse, type LanguageIndexResponse, type LanguageSummary, MACHINE_PHASES, type MachineCheck, type MachineConfigSync, type MachineDiagnosis, type MachineEnvOnly, type MachineEvent, type MachineInfo, type MachineJob, type MachinePhase, type MachineReconnect, type MachineServerEvent, type MachineServerStatus, type MachineSkippedModel, type MachineSocketFact, type MachineSourceReach, type MachineSshFailure, type MachineUninstallRequest, type MachineUseRefusal, type MachinesAddRequest, type MachinesCheckoutImage, type MachinesResponse, type MachinesStopUsingRequest, type MachinesUseRequest, type MachinesUseResponse, type McpServerTestResponse, type McpTransport, type MeResponse, type MemberAddRequest, type MemberAddResponse, type MemberInfo, type MembersResponse, type MemoryFileInfo, type MemoryFileResponse, type MemoryFilesResponse, type MemoryImportMode, type MemoryImportRequest, type MemoryImportResponse, type MemoryOverviewResponse, type MemoryScopeExport, type MemoryScopeInfo, type MemoryTransferFile, type MessagesLiveTail, type MessagesPageInfo, type MessagesResponse, type MessagingAccount, type MessagingAccountHolder, type MessagingAccountHoldersResponse, type MessagingAccountsResponse, type MessagingBindingCommon, type MessagingBindingInfo, type MessagingBindingStateRequest, type MessagingBindingsResponse, type MessagingChannel, type MessagingChannelState, type MessagingDeliveryError, type MessagingDeliveryPatch, type MessagingRuntimeState, type MessagingRuntimeStatus, type MessagingTestMessageResponse, type MessagingUnreachableMachine, type MessagingUnreachableReason, type ModelBalanceAmount, type ModelBalanceErrorCode, type ModelBalanceFailure, type ModelBalanceReading, type ModelBalanceResponse, type ModelEffectiveConnection, type ModelInfo, type ModelOAuthCodeRequest, type ModelOAuthCodeResponse, type ModelOAuthErrorCode, type ModelOAuthMode, type ModelOAuthStartRequest, type ModelOAuthStartResponse, type ModelOAuthStatusResponse, type ModelPricingDto, type ModelProtocolDetectRequest, type ModelProtocolDetectResponse, type ModelProtocolProbeDto, type ModelRefDto, type ModelScopeAuthFlowErrorCode, type ModelScopeAuthFlowStatusResponse, type ModelScopeAuthStartResponse, type ModelTestRequest, type ModelTestResponse, type ModelUpdateEntry, type ModelVisionDetectRequest, type ModelVisionDetectResponse, type ModelVisionOutcome, type ModelsResponse, type ModelsUpdateRequest, type OrgApprovalMode, type OrgBudgetAlert, type OrgCalendarItem, type OrgCalendarOutcome, type OrgCalendarResponse, type OrgCalendarUpsertRequest, type OrgCalendarWriteResponse, type OrgChannelCreateRequest, type OrgChannelDetail, type OrgChannelItem, type OrgChannelMember, type OrgChannelMemberRequest, type OrgChannelMessage, type OrgChannelMessageSendRequest, type OrgChannelMessagesResponse, type OrgChannelNotice, type OrgChannelNoticeKind, type OrgChannelPatchRequest, type OrgChannelReadRequest, type OrgChannelsResponse, type OrgChartResponse, type OrgDeskItem, type OrgDeskResponse, type OrgEmployeeItem, type OrgEmployeePatchRequest, type OrgEmployeeState, type OrgFinanceEmployee, type OrgFinanceResponse, type OrgFinanceTicket, type OrgHandbookFile, type OrgHandbookFileResponse, type OrgHandbookFileWriteRequest, type OrgHandbookFilesResponse, type OrgHandbookResponse, type OrgHireRequest, type OrgInbox, type OrgLanguage, type OrgSessionsResponse, type OrgSpendSummary, type OrgStatus, type OrgTicketAttachRequest, type OrgTicketBlockRequest, type OrgTicketChange, type OrgTicketCreateRequest, type OrgTicketDetail, type OrgTicketHistoryAction, type OrgTicketHistoryEntry, type OrgTicketItem, type OrgTicketMoveRequest, type OrgTicketPriority, type OrgTicketProgressRequest, type OrgTicketSessionItem, type OrgTicketStartRequest, type OrgTicketStartResponse, type OrgTicketStatus, type OrgTicketUpdateRequest, type OrgTicketsResponse, type OrgTriggerKind, type OrganizationCreateRequest, type OrganizationDetail, type OrganizationPatchRequest, type OrganizationSettings, type OrganizationSummary, type OrganizationsResponse, type PasswordChangeRequest, type PendingFollowUpInfo, type PendingSteeringInfo, type PinnedBalance, type PlatformAuthFlowErrorCode, type PlatformAuthFlowStatusResponse, type PlatformAuthStartResponse, type PlatformModelSyncResponse, type PluginArchiveImportRequest, type PluginConfigActionDecl, type PluginConfigActionResponse, type PluginConfigBackend, type PluginConfigColumnGroup, type PluginConfigEntry, type PluginConfigField, type PluginConfigNewRow, type PluginConfigNotice, type PluginConfigOption, type PluginConfigPinColumn, type PluginConfigResponse, type PluginConfigRowChoice, type PluginConfigTableColumn, type PluginConfigTableRow, type PluginConfigUnavailableDecl, type PluginConfigUpdateRequest, type PluginConfiguration, type PluginFilesResponse, type PluginGroupItem, type PluginIndexEntry, type PluginIndexResponse, type PluginInstallOutcome, type PluginInstallRequest, type PluginItem, type PluginLibraryResponse, type PluginMcpServerItem, type PluginReadmeResponse, type PluginSetupKeyItem, type PluginUpdateRef, type PrefsResponse, type PresetSyncMode, type PresetSyncRequest, type PresetSyncResponse, type ProjectCreateRequest, type ProjectCreateResponse, type ProjectRole, type ProjectScheduleItem, type ProjectSchedulesResponse, type ProjectSummary, type ProjectUpdateRequest, type ProjectUpdateResponse, type ProjectsResponse, type ProtocolProbeOutcome, type ProviderConnectionDto, type ProviderConnectionUpdate, type ProxyProbeDto, type ProxyProbeOutcome, type ProxyProbeProvider, type ProxyProbeResponse, type ProxyProbeTargetDto, type ProxyProbeTargetsResponse, type QQBindingInfo, type QQBindingPutRequest, type QQBindingResponse, type QQScanPollResponse, type QQScanStartResponse, type QQTestRequest, type QQTestResponse, type QuickStartItem, type RecalledMessageResponse, type RendererRef, type RequestSpan, type RestartResponse, type RetryNowResponse, type ScheduleItem, type ScheduleServerEvent, type ScheduleStatus, type ScheduleUpsertRequest, type SchedulesResponse, type SemanticIdKind, type SemanticIdSuggestReason, type SemanticIdSuggestRequest, type SemanticIdSuggestResponse, type ServerEvent, type ServerSettings, type ServerSettingsResponse, type ServerSettingsUpdateRequest, type SessionBackgroundTasks, type SessionBatchPageRequest, type SessionBatchResult, type SessionCategory, type SessionCategoryCounts, type SessionContextParts, type SessionContextResponse, type SessionCreateRequest, type SessionCreateResponse, type SessionForkRequest, type SessionForkResponse, type SessionInfo, type SessionPatchRequest, type SessionProcessInfo, type SessionProcessesResponse, type SessionResponse, type SessionSandbox, type SessionSandboxMode, type SessionSandboxNetwork, type SessionSandboxPreset, type SessionStatus, type SessionSwitchModelRequest, type SessionTracesResponse, type SessionsBatchRequest, type SessionsBatchResponse, type SessionsResponse, type SkillArchiveInstallRequest, type SkillMetadataItem, type SshHostRequest, type SshHostResponse, type SshHostSummary, type SshHostsResponse, type SteerRequest, type StoredKeybindings, type SubagentMessageResponse, type SubagentRuntimeInfo, TICKET_SLUG_PATTERN, type TaskCreateRequest, type TaskCreateResponse, type TaskInputPart, type TelegramBindingInfo, type TelegramBindingPutRequest, type TelegramBindingResponse, type TelegramTestRequest, type TelegramTestResponse, type ToolCallSpan, type TraceAnalysisResponse, type TraceEventsResponse, type TraceFileInfo, type TraceImportRequest, type TraceImportResponse, type TraceModelSegment, type TraceOtherSpan, type TracePosition, type TraceTaskStats, type TraceToolSpan, type UiPrefs, type UnavailableSandboxBackend, type UnsatisfiedPlugin, type UpdateCheckResponse, type UpdateJobPhase, type UpdateJobStatus, type UpdateProfileRequest, type UpdateProfileResponse, type UpdateRunResponse, type UploadLimits, type UsageAgentSeries, type UsageBucket, type UsageEntitySeriesCounts, type UsageErrorCount, type UsageErrorItem, type UsageErrorKind, type UsageErrors, type UsageErrorsClearResponse, type UsageErrorsPage, type UsageGranularity, type UsageGroupBy, type UsageGroupRow, type UsageModelSeries, type UsageModelTotal, type UsageModelTotals, type UsageResponse, type UsageSeriesPoint, type UsageTrendPointInTrace, type UserInfo, type VaultEntryInfo, type VaultEntryUpdate, type VaultResponse, type VaultUpdateRequest, type VersionHistoryDiffResponse, type VersionHistoryResponse, type VersionResponse, type VersionRollbackResponse, type WeChatBindingInfo, type WeChatBindingPutRequest, type WeChatBindingResponse, type WeChatScanPollResponse, type WeChatScanStartResponse, type WeChatScanStatus, type WeChatScanVerifyRequest, type WeChatTestResponse, type WebContribution, type WorkbenchInfo, type WorkbenchRecord, type WorkbenchRequest, type WorkbenchResponse, type WorkbenchVersion, type WorkspaceFileEntry, type WorkspaceFilesResponse, type WorkspaceSearchHit, type WorkspaceSearchResponse, apiSocketPath, sessionKindPath };
|