@synsci/sdk 1.1.145 → 1.2.2

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.
@@ -84,6 +84,38 @@ export type EventFileEdited = {
84
84
  file: string;
85
85
  };
86
86
  };
87
+ export type EventVcsBranchUpdated = {
88
+ type: "vcs.branch.updated";
89
+ properties: {
90
+ branch?: string;
91
+ };
92
+ };
93
+ export type PermissionRequest = {
94
+ id: string;
95
+ sessionID: string;
96
+ permission: string;
97
+ patterns: Array<string>;
98
+ metadata: {
99
+ [key: string]: unknown;
100
+ };
101
+ always: Array<string>;
102
+ tool?: {
103
+ messageID: string;
104
+ callID: string;
105
+ };
106
+ };
107
+ export type EventPermissionAsked = {
108
+ type: "permission.asked";
109
+ properties: PermissionRequest;
110
+ };
111
+ export type EventPermissionReplied = {
112
+ type: "permission.replied";
113
+ properties: {
114
+ sessionID: string;
115
+ requestID: string;
116
+ reply: "once" | "always" | "reject";
117
+ };
118
+ };
87
119
  export type FileDiff = {
88
120
  file: string;
89
121
  before: string;
@@ -114,6 +146,7 @@ export type UserMessage = {
114
146
  };
115
147
  variant?: string;
116
148
  tier?: "fast" | "pro" | "ultra";
149
+ fast?: boolean;
117
150
  };
118
151
  export type ProviderAuthError = {
119
152
  name: "ProviderAuthError";
@@ -439,32 +472,6 @@ export type EventMessagePartRemoved = {
439
472
  partID: string;
440
473
  };
441
474
  };
442
- export type PermissionRequest = {
443
- id: string;
444
- sessionID: string;
445
- permission: string;
446
- patterns: Array<string>;
447
- metadata: {
448
- [key: string]: unknown;
449
- };
450
- always: Array<string>;
451
- tool?: {
452
- messageID: string;
453
- callID: string;
454
- };
455
- };
456
- export type EventPermissionAsked = {
457
- type: "permission.asked";
458
- properties: PermissionRequest;
459
- };
460
- export type EventPermissionReplied = {
461
- type: "permission.replied";
462
- properties: {
463
- sessionID: string;
464
- requestID: string;
465
- reply: "once" | "always" | "reject";
466
- };
467
- };
468
475
  export type SessionStatus = {
469
476
  type: "idle";
470
477
  } | {
@@ -583,45 +590,6 @@ export type EventTodoUpdated = {
583
590
  todos: Array<Todo>;
584
591
  };
585
592
  };
586
- export type EventSkillUpdated = {
587
- type: "skill.updated";
588
- properties: {
589
- [key: string]: unknown;
590
- };
591
- };
592
- export type EventTuiPromptAppend = {
593
- type: "tui.prompt.append";
594
- properties: {
595
- text: string;
596
- };
597
- };
598
- export type EventTuiCommandExecute = {
599
- type: "tui.command.execute";
600
- properties: {
601
- command: "session.list" | "session.new" | "session.interrupt" | "session.compact" | "session.page.up" | "session.page.down" | "session.line.up" | "session.line.down" | "session.half.page.up" | "session.half.page.down" | "session.first" | "session.last" | "prompt.clear" | "prompt.submit" | "agent.cycle" | string;
602
- };
603
- };
604
- export type EventTuiToastShow = {
605
- type: "tui.toast.show";
606
- properties: {
607
- title?: string;
608
- message: string;
609
- variant: "info" | "success" | "warning" | "error";
610
- /**
611
- * Duration in milliseconds
612
- */
613
- duration?: number;
614
- };
615
- };
616
- export type EventTuiSessionSelect = {
617
- type: "tui.session.select";
618
- properties: {
619
- /**
620
- * Session ID to navigate to
621
- */
622
- sessionID: string;
623
- };
624
- };
625
593
  export type EventMcpToolsChanged = {
626
594
  type: "mcp.tools.changed";
627
595
  properties: {
@@ -714,10 +682,10 @@ export type EventSessionError = {
714
682
  error?: ProviderAuthError | UnknownError | MessageOutputLengthError | MessageAbortedError | ApiError;
715
683
  };
716
684
  };
717
- export type EventVcsBranchUpdated = {
718
- type: "vcs.branch.updated";
685
+ export type EventSkillUpdated = {
686
+ type: "skill.updated";
719
687
  properties: {
720
- branch?: string;
688
+ [key: string]: unknown;
721
689
  };
722
690
  };
723
691
  export type Pty = {
@@ -767,7 +735,7 @@ export type EventWorktreeFailed = {
767
735
  message: string;
768
736
  };
769
737
  };
770
- export type Event = EventInstallationUpdated | EventInstallationUpdateAvailable | EventProjectUpdated | EventServerInstanceDisposed | EventServerConnected | EventGlobalDisposed | EventLspClientDiagnostics | EventLspUpdated | EventFileWatcherUpdated | EventFileEdited | EventMessageUpdated | EventMessageRemoved | EventMessagePartUpdated | EventMessagePartRemoved | EventPermissionAsked | EventPermissionReplied | EventSessionStatus | EventSessionIdle | EventQuestionAsked | EventQuestionReplied | EventQuestionRejected | EventSessionCompacted | EventTodoUpdated | EventSkillUpdated | EventTuiPromptAppend | EventTuiCommandExecute | EventTuiToastShow | EventTuiSessionSelect | EventMcpToolsChanged | EventMcpBrowserOpenFailed | EventCommandExecuted | EventSessionCreated | EventSessionUpdated | EventSessionDeleted | EventSessionDiff | EventSessionError | EventVcsBranchUpdated | EventPtyCreated | EventPtyUpdated | EventPtyExited | EventPtyDeleted | EventWorktreeReady | EventWorktreeFailed;
738
+ export type Event = EventInstallationUpdated | EventInstallationUpdateAvailable | EventProjectUpdated | EventServerInstanceDisposed | EventServerConnected | EventGlobalDisposed | EventLspClientDiagnostics | EventLspUpdated | EventFileWatcherUpdated | EventFileEdited | EventVcsBranchUpdated | EventPermissionAsked | EventPermissionReplied | EventMessageUpdated | EventMessageRemoved | EventMessagePartUpdated | EventMessagePartRemoved | EventSessionStatus | EventSessionIdle | EventQuestionAsked | EventQuestionReplied | EventQuestionRejected | EventSessionCompacted | EventTodoUpdated | EventMcpToolsChanged | EventMcpBrowserOpenFailed | EventCommandExecuted | EventSessionCreated | EventSessionUpdated | EventSessionDeleted | EventSessionDiff | EventSessionError | EventSkillUpdated | EventPtyCreated | EventPtyUpdated | EventPtyExited | EventPtyDeleted | EventWorktreeReady | EventWorktreeFailed;
771
739
  export type GlobalEvent = {
772
740
  directory: string;
773
741
  payload: Event;
@@ -1154,7 +1122,7 @@ export type KeybindsConfig = {
1154
1122
  */
1155
1123
  export type LogLevel = "DEBUG" | "INFO" | "WARN" | "ERROR";
1156
1124
  /**
1157
- * Server configuration for synsci serve and web commands
1125
+ * Server configuration for openscience serve and web commands
1158
1126
  */
1159
1127
  export type ServerConfig = {
1160
1128
  /**
@@ -1409,28 +1377,6 @@ export type Config = {
1409
1377
  theme?: string;
1410
1378
  keybinds?: KeybindsConfig;
1411
1379
  logLevel?: LogLevel;
1412
- /**
1413
- * TUI specific settings
1414
- */
1415
- tui?: {
1416
- /**
1417
- * TUI scroll speed
1418
- */
1419
- scroll_speed?: number;
1420
- /**
1421
- * Scroll acceleration settings
1422
- */
1423
- scroll_acceleration?: {
1424
- /**
1425
- * Enable scroll acceleration
1426
- */
1427
- enabled: boolean;
1428
- };
1429
- /**
1430
- * Control diff rendering style: 'auto' adapts to terminal width, 'stacked' always shows single column
1431
- */
1432
- diff_style?: "auto" | "stacked";
1433
- };
1434
1380
  server?: ServerConfig;
1435
1381
  /**
1436
1382
  * Command configuration, see https://syntheticsciences.ai/docs/commands
@@ -1479,9 +1425,22 @@ export type Config = {
1479
1425
  */
1480
1426
  small_model?: string;
1481
1427
  /**
1482
- * Default agent to use when none is specified. Must be a primary agent. Falls back to 'build' if not set or if the specified agent is invalid.
1428
+ * Default agent to use when none is specified. Must be a primary agent. Falls back to 'research' if not set or if the specified agent is invalid.
1483
1429
  */
1484
1430
  default_agent?: string;
1431
+ /**
1432
+ * Managed (Atlas wallet) vs bring-your-own-key spend, toggled independently for LLM inference and compute.
1433
+ */
1434
+ billing?: {
1435
+ /**
1436
+ * How LLM inference is paid for. 'managed' routes through the Atlas wallet (metered credits); 'byok' uses your own provider API keys or first-party OAuth (ChatGPT/Claude Pro/Copilot) and is never billed. Unset = auto-detect from the resolved credential.
1437
+ */
1438
+ llm?: "managed" | "byok";
1439
+ /**
1440
+ * How GPU/compute is paid for. 'managed' runs on Atlas-provisioned compute billed to your wallet (via the bundled atlas CLI); 'byok' uses your own connected GPU providers (Modal, Tinker, TensorPool, …). Unset = byok.
1441
+ */
1442
+ compute?: "managed" | "byok";
1443
+ };
1485
1444
  /**
1486
1445
  * Custom username to display in conversations instead of system username
1487
1446
  */
@@ -1829,6 +1788,8 @@ export type FileNode = {
1829
1788
  absolute: string;
1830
1789
  type: "file" | "directory";
1831
1790
  ignored: boolean;
1791
+ size?: number;
1792
+ mtime?: number;
1832
1793
  };
1833
1794
  export type FileContent = {
1834
1795
  type: "text";
@@ -2203,119 +2164,741 @@ export type AccountLogoutResponses = {
2203
2164
  200: boolean;
2204
2165
  };
2205
2166
  export type AccountLogoutResponse = AccountLogoutResponses[keyof AccountLogoutResponses];
2206
- export type AuthRemoveData = {
2167
+ export type SettingsCredentialsListData = {
2207
2168
  body?: never;
2208
- path: {
2209
- providerID: string;
2210
- };
2169
+ path?: never;
2211
2170
  query?: never;
2212
- url: "/auth/{providerID}";
2171
+ url: "/settings/credentials";
2213
2172
  };
2214
- export type AuthRemoveErrors = {
2173
+ export type SettingsCredentialsListResponses = {
2215
2174
  /**
2216
- * Bad request
2175
+ * Services
2217
2176
  */
2218
- 400: BadRequestError;
2177
+ 200: {
2178
+ services: Array<{
2179
+ id: string;
2180
+ label: string;
2181
+ description: string;
2182
+ custom: boolean;
2183
+ fields: Array<{
2184
+ name: string;
2185
+ label: string;
2186
+ type: "password" | "text" | "textarea";
2187
+ optional: boolean;
2188
+ placeholder?: string;
2189
+ }>;
2190
+ connected: boolean;
2191
+ set_fields: Array<string>;
2192
+ updated_at: string | null;
2193
+ }>;
2194
+ };
2219
2195
  };
2220
- export type AuthRemoveError = AuthRemoveErrors[keyof AuthRemoveErrors];
2221
- export type AuthRemoveResponses = {
2196
+ export type SettingsCredentialsListResponse = SettingsCredentialsListResponses[keyof SettingsCredentialsListResponses];
2197
+ export type SettingsCredentialsRemoveData = {
2198
+ body?: never;
2199
+ path: {
2200
+ id: string;
2201
+ };
2202
+ query?: never;
2203
+ url: "/settings/credentials/{id}";
2204
+ };
2205
+ export type SettingsCredentialsRemoveResponses = {
2222
2206
  /**
2223
- * Successfully removed authentication credentials
2207
+ * Services
2224
2208
  */
2225
- 200: boolean;
2209
+ 200: {
2210
+ services: Array<{
2211
+ id: string;
2212
+ label: string;
2213
+ description: string;
2214
+ custom: boolean;
2215
+ fields: Array<{
2216
+ name: string;
2217
+ label: string;
2218
+ type: "password" | "text" | "textarea";
2219
+ optional: boolean;
2220
+ placeholder?: string;
2221
+ }>;
2222
+ connected: boolean;
2223
+ set_fields: Array<string>;
2224
+ updated_at: string | null;
2225
+ }>;
2226
+ };
2226
2227
  };
2227
- export type AuthRemoveResponse = AuthRemoveResponses[keyof AuthRemoveResponses];
2228
- export type AuthSetData = {
2229
- body?: Auth;
2228
+ export type SettingsCredentialsRemoveResponse = SettingsCredentialsRemoveResponses[keyof SettingsCredentialsRemoveResponses];
2229
+ export type SettingsCredentialsSetData = {
2230
+ body?: {
2231
+ label?: string;
2232
+ fields: {
2233
+ [key: string]: string;
2234
+ };
2235
+ };
2230
2236
  path: {
2231
- providerID: string;
2237
+ id: string;
2232
2238
  };
2233
2239
  query?: never;
2234
- url: "/auth/{providerID}";
2240
+ url: "/settings/credentials/{id}";
2235
2241
  };
2236
- export type AuthSetErrors = {
2242
+ export type SettingsCredentialsSetResponses = {
2237
2243
  /**
2238
- * Bad request
2244
+ * Services
2239
2245
  */
2240
- 400: BadRequestError;
2246
+ 200: {
2247
+ services: Array<{
2248
+ id: string;
2249
+ label: string;
2250
+ description: string;
2251
+ custom: boolean;
2252
+ fields: Array<{
2253
+ name: string;
2254
+ label: string;
2255
+ type: "password" | "text" | "textarea";
2256
+ optional: boolean;
2257
+ placeholder?: string;
2258
+ }>;
2259
+ connected: boolean;
2260
+ set_fields: Array<string>;
2261
+ updated_at: string | null;
2262
+ }>;
2263
+ };
2241
2264
  };
2242
- export type AuthSetError = AuthSetErrors[keyof AuthSetErrors];
2243
- export type AuthSetResponses = {
2265
+ export type SettingsCredentialsSetResponse = SettingsCredentialsSetResponses[keyof SettingsCredentialsSetResponses];
2266
+ export type SettingsStorageUsageData = {
2267
+ body?: never;
2268
+ path?: never;
2269
+ query?: never;
2270
+ url: "/settings/storage";
2271
+ };
2272
+ export type SettingsStorageUsageResponses = {
2244
2273
  /**
2245
- * Successfully set authentication credentials
2274
+ * Usage
2246
2275
  */
2247
- 200: boolean;
2276
+ 200: {
2277
+ data_dir: string;
2278
+ config_dir: string;
2279
+ cache_dir: string;
2280
+ state_dir: string;
2281
+ pointer: string | null;
2282
+ total_bytes: number;
2283
+ entries: Array<{
2284
+ name: string;
2285
+ path: string;
2286
+ bytes: number;
2287
+ kind: "dir" | "file";
2288
+ }>;
2289
+ };
2248
2290
  };
2249
- export type AuthSetResponse = AuthSetResponses[keyof AuthSetResponses];
2250
- export type ProjectListData = {
2291
+ export type SettingsStorageUsageResponse = SettingsStorageUsageResponses[keyof SettingsStorageUsageResponses];
2292
+ export type SettingsStorageResetLocationData = {
2251
2293
  body?: never;
2252
2294
  path?: never;
2253
- query?: {
2254
- directory?: string;
2295
+ query?: never;
2296
+ url: "/settings/storage/location";
2297
+ };
2298
+ export type SettingsStorageResetLocationResponses = {
2299
+ /**
2300
+ * Reset
2301
+ */
2302
+ 200: {
2303
+ ok: boolean;
2255
2304
  };
2256
- url: "/project";
2257
2305
  };
2258
- export type ProjectListResponses = {
2306
+ export type SettingsStorageResetLocationResponse = SettingsStorageResetLocationResponses[keyof SettingsStorageResetLocationResponses];
2307
+ export type SettingsStorageRelocateData = {
2308
+ body?: {
2309
+ path: string;
2310
+ };
2311
+ path?: never;
2312
+ query?: never;
2313
+ url: "/settings/storage/location";
2314
+ };
2315
+ export type SettingsStorageRelocateResponses = {
2259
2316
  /**
2260
- * List of projects
2317
+ * Relocated
2261
2318
  */
2262
- 200: Array<Project>;
2319
+ 200: {
2320
+ ok: boolean;
2321
+ target: string;
2322
+ restart_required: boolean;
2323
+ };
2263
2324
  };
2264
- export type ProjectListResponse = ProjectListResponses[keyof ProjectListResponses];
2265
- export type ProjectCurrentData = {
2325
+ export type SettingsStorageRelocateResponse = SettingsStorageRelocateResponses[keyof SettingsStorageRelocateResponses];
2326
+ export type SettingsComputeGetData = {
2266
2327
  body?: never;
2267
2328
  path?: never;
2268
- query?: {
2269
- directory?: string;
2329
+ query?: never;
2330
+ url: "/settings/compute";
2331
+ };
2332
+ export type SettingsComputeGetResponses = {
2333
+ /**
2334
+ * Compute settings
2335
+ */
2336
+ 200: {
2337
+ providers?: Array<{
2338
+ id: string;
2339
+ name: string;
2340
+ verified: boolean;
2341
+ placeholder: string;
2342
+ hint: string;
2343
+ connected: boolean;
2344
+ connected_at: string | null;
2345
+ last_used: string | null;
2346
+ }>;
2347
+ ssh_hosts?: Array<{
2348
+ id: string;
2349
+ label: string;
2350
+ host: string;
2351
+ user?: string;
2352
+ port?: number;
2353
+ }>;
2354
+ endpoints?: Array<{
2355
+ id: string;
2356
+ label: string;
2357
+ url: string;
2358
+ kind: "local" | "remote";
2359
+ }>;
2270
2360
  };
2271
- url: "/project/current";
2272
2361
  };
2273
- export type ProjectCurrentResponses = {
2362
+ export type SettingsComputeGetResponse = SettingsComputeGetResponses[keyof SettingsComputeGetResponses];
2363
+ export type SettingsComputeProviderDisconnectData = {
2364
+ body?: never;
2365
+ path: {
2366
+ id: string;
2367
+ };
2368
+ query?: never;
2369
+ url: "/settings/compute/provider/{id}";
2370
+ };
2371
+ export type SettingsComputeProviderDisconnectResponses = {
2274
2372
  /**
2275
- * Current project information
2373
+ * Updated
2276
2374
  */
2277
- 200: Project;
2375
+ 200: {
2376
+ providers?: Array<{
2377
+ id: string;
2378
+ name: string;
2379
+ verified: boolean;
2380
+ placeholder: string;
2381
+ hint: string;
2382
+ connected: boolean;
2383
+ connected_at: string | null;
2384
+ last_used: string | null;
2385
+ }>;
2386
+ ssh_hosts?: Array<{
2387
+ id: string;
2388
+ label: string;
2389
+ host: string;
2390
+ user?: string;
2391
+ port?: number;
2392
+ }>;
2393
+ endpoints?: Array<{
2394
+ id: string;
2395
+ label: string;
2396
+ url: string;
2397
+ kind: "local" | "remote";
2398
+ }>;
2399
+ };
2278
2400
  };
2279
- export type ProjectCurrentResponse = ProjectCurrentResponses[keyof ProjectCurrentResponses];
2280
- export type ProjectUpdateData = {
2401
+ export type SettingsComputeProviderDisconnectResponse = SettingsComputeProviderDisconnectResponses[keyof SettingsComputeProviderDisconnectResponses];
2402
+ export type SettingsComputeProviderConnectData = {
2281
2403
  body?: {
2282
- name?: string;
2283
- icon?: {
2284
- url?: string;
2285
- override?: string;
2286
- color?: string;
2287
- };
2288
- commands?: {
2289
- /**
2290
- * Startup script to run when creating a new workspace (worktree)
2291
- */
2292
- start?: string;
2293
- };
2404
+ key: string;
2294
2405
  };
2295
2406
  path: {
2296
- projectID: string;
2297
- };
2298
- query?: {
2299
- directory?: string;
2407
+ id: string;
2300
2408
  };
2301
- url: "/project/{projectID}";
2409
+ query?: never;
2410
+ url: "/settings/compute/provider/{id}";
2302
2411
  };
2303
- export type ProjectUpdateErrors = {
2412
+ export type SettingsComputeProviderConnectErrors = {
2304
2413
  /**
2305
2414
  * Bad request
2306
2415
  */
2307
2416
  400: BadRequestError;
2308
- /**
2309
- * Not found
2310
- */
2311
- 404: NotFoundError;
2312
2417
  };
2313
- export type ProjectUpdateError = ProjectUpdateErrors[keyof ProjectUpdateErrors];
2314
- export type ProjectUpdateResponses = {
2418
+ export type SettingsComputeProviderConnectError = SettingsComputeProviderConnectErrors[keyof SettingsComputeProviderConnectErrors];
2419
+ export type SettingsComputeProviderConnectResponses = {
2315
2420
  /**
2316
- * Updated project information
2421
+ * Updated
2317
2422
  */
2318
- 200: Project;
2423
+ 200: {
2424
+ providers?: Array<{
2425
+ id: string;
2426
+ name: string;
2427
+ verified: boolean;
2428
+ placeholder: string;
2429
+ hint: string;
2430
+ connected: boolean;
2431
+ connected_at: string | null;
2432
+ last_used: string | null;
2433
+ }>;
2434
+ ssh_hosts?: Array<{
2435
+ id: string;
2436
+ label: string;
2437
+ host: string;
2438
+ user?: string;
2439
+ port?: number;
2440
+ }>;
2441
+ endpoints?: Array<{
2442
+ id: string;
2443
+ label: string;
2444
+ url: string;
2445
+ kind: "local" | "remote";
2446
+ }>;
2447
+ };
2448
+ };
2449
+ export type SettingsComputeProviderConnectResponse = SettingsComputeProviderConnectResponses[keyof SettingsComputeProviderConnectResponses];
2450
+ export type SettingsComputeSshAddData = {
2451
+ body?: {
2452
+ label: string;
2453
+ host: string;
2454
+ user?: string;
2455
+ port?: number;
2456
+ };
2457
+ path?: never;
2458
+ query?: never;
2459
+ url: "/settings/compute/ssh";
2460
+ };
2461
+ export type SettingsComputeSshAddErrors = {
2462
+ /**
2463
+ * Bad request
2464
+ */
2465
+ 400: BadRequestError;
2466
+ };
2467
+ export type SettingsComputeSshAddError = SettingsComputeSshAddErrors[keyof SettingsComputeSshAddErrors];
2468
+ export type SettingsComputeSshAddResponses = {
2469
+ /**
2470
+ * Updated
2471
+ */
2472
+ 200: {
2473
+ providers?: Array<{
2474
+ id: string;
2475
+ name: string;
2476
+ verified: boolean;
2477
+ placeholder: string;
2478
+ hint: string;
2479
+ connected: boolean;
2480
+ connected_at: string | null;
2481
+ last_used: string | null;
2482
+ }>;
2483
+ ssh_hosts?: Array<{
2484
+ id: string;
2485
+ label: string;
2486
+ host: string;
2487
+ user?: string;
2488
+ port?: number;
2489
+ }>;
2490
+ endpoints?: Array<{
2491
+ id: string;
2492
+ label: string;
2493
+ url: string;
2494
+ kind: "local" | "remote";
2495
+ }>;
2496
+ };
2497
+ };
2498
+ export type SettingsComputeSshAddResponse = SettingsComputeSshAddResponses[keyof SettingsComputeSshAddResponses];
2499
+ export type SettingsComputeSshRemoveData = {
2500
+ body?: never;
2501
+ path: {
2502
+ id: string;
2503
+ };
2504
+ query?: never;
2505
+ url: "/settings/compute/ssh/{id}";
2506
+ };
2507
+ export type SettingsComputeSshRemoveResponses = {
2508
+ /**
2509
+ * Updated
2510
+ */
2511
+ 200: {
2512
+ providers?: Array<{
2513
+ id: string;
2514
+ name: string;
2515
+ verified: boolean;
2516
+ placeholder: string;
2517
+ hint: string;
2518
+ connected: boolean;
2519
+ connected_at: string | null;
2520
+ last_used: string | null;
2521
+ }>;
2522
+ ssh_hosts?: Array<{
2523
+ id: string;
2524
+ label: string;
2525
+ host: string;
2526
+ user?: string;
2527
+ port?: number;
2528
+ }>;
2529
+ endpoints?: Array<{
2530
+ id: string;
2531
+ label: string;
2532
+ url: string;
2533
+ kind: "local" | "remote";
2534
+ }>;
2535
+ };
2536
+ };
2537
+ export type SettingsComputeSshRemoveResponse = SettingsComputeSshRemoveResponses[keyof SettingsComputeSshRemoveResponses];
2538
+ export type SettingsComputeEndpointAddData = {
2539
+ body?: {
2540
+ label: string;
2541
+ url: string;
2542
+ kind: "local" | "remote";
2543
+ };
2544
+ path?: never;
2545
+ query?: never;
2546
+ url: "/settings/compute/endpoint";
2547
+ };
2548
+ export type SettingsComputeEndpointAddErrors = {
2549
+ /**
2550
+ * Bad request
2551
+ */
2552
+ 400: BadRequestError;
2553
+ };
2554
+ export type SettingsComputeEndpointAddError = SettingsComputeEndpointAddErrors[keyof SettingsComputeEndpointAddErrors];
2555
+ export type SettingsComputeEndpointAddResponses = {
2556
+ /**
2557
+ * Updated
2558
+ */
2559
+ 200: {
2560
+ providers?: Array<{
2561
+ id: string;
2562
+ name: string;
2563
+ verified: boolean;
2564
+ placeholder: string;
2565
+ hint: string;
2566
+ connected: boolean;
2567
+ connected_at: string | null;
2568
+ last_used: string | null;
2569
+ }>;
2570
+ ssh_hosts?: Array<{
2571
+ id: string;
2572
+ label: string;
2573
+ host: string;
2574
+ user?: string;
2575
+ port?: number;
2576
+ }>;
2577
+ endpoints?: Array<{
2578
+ id: string;
2579
+ label: string;
2580
+ url: string;
2581
+ kind: "local" | "remote";
2582
+ }>;
2583
+ };
2584
+ };
2585
+ export type SettingsComputeEndpointAddResponse = SettingsComputeEndpointAddResponses[keyof SettingsComputeEndpointAddResponses];
2586
+ export type SettingsComputeEndpointRemoveData = {
2587
+ body?: never;
2588
+ path: {
2589
+ id: string;
2590
+ };
2591
+ query?: never;
2592
+ url: "/settings/compute/endpoint/{id}";
2593
+ };
2594
+ export type SettingsComputeEndpointRemoveResponses = {
2595
+ /**
2596
+ * Updated
2597
+ */
2598
+ 200: {
2599
+ providers?: Array<{
2600
+ id: string;
2601
+ name: string;
2602
+ verified: boolean;
2603
+ placeholder: string;
2604
+ hint: string;
2605
+ connected: boolean;
2606
+ connected_at: string | null;
2607
+ last_used: string | null;
2608
+ }>;
2609
+ ssh_hosts?: Array<{
2610
+ id: string;
2611
+ label: string;
2612
+ host: string;
2613
+ user?: string;
2614
+ port?: number;
2615
+ }>;
2616
+ endpoints?: Array<{
2617
+ id: string;
2618
+ label: string;
2619
+ url: string;
2620
+ kind: "local" | "remote";
2621
+ }>;
2622
+ };
2623
+ };
2624
+ export type SettingsComputeEndpointRemoveResponse = SettingsComputeEndpointRemoveResponses[keyof SettingsComputeEndpointRemoveResponses];
2625
+ export type SettingsPermissionsGetData = {
2626
+ body?: never;
2627
+ path?: never;
2628
+ query?: never;
2629
+ url: "/settings/permissions";
2630
+ };
2631
+ export type SettingsPermissionsGetResponses = {
2632
+ /**
2633
+ * Registry write permissions
2634
+ */
2635
+ 200: {
2636
+ grants?: {
2637
+ [key: string]: "global" | "session" | "revoked";
2638
+ };
2639
+ };
2640
+ };
2641
+ export type SettingsPermissionsGetResponse = SettingsPermissionsGetResponses[keyof SettingsPermissionsGetResponses];
2642
+ export type SettingsPermissionsSetData = {
2643
+ body?: {
2644
+ scope: "global" | "session" | "revoked";
2645
+ };
2646
+ path: {
2647
+ action: string;
2648
+ };
2649
+ query?: never;
2650
+ url: "/settings/permissions/{action}";
2651
+ };
2652
+ export type SettingsPermissionsSetErrors = {
2653
+ /**
2654
+ * Bad request
2655
+ */
2656
+ 400: BadRequestError;
2657
+ };
2658
+ export type SettingsPermissionsSetError = SettingsPermissionsSetErrors[keyof SettingsPermissionsSetErrors];
2659
+ export type SettingsPermissionsSetResponses = {
2660
+ /**
2661
+ * Updated
2662
+ */
2663
+ 200: {
2664
+ grants?: {
2665
+ [key: string]: "global" | "session" | "revoked";
2666
+ };
2667
+ };
2668
+ };
2669
+ export type SettingsPermissionsSetResponse = SettingsPermissionsSetResponses[keyof SettingsPermissionsSetResponses];
2670
+ export type SettingsPermissionsRevokeAllData = {
2671
+ body?: {
2672
+ actions: Array<string>;
2673
+ };
2674
+ path?: never;
2675
+ query?: never;
2676
+ url: "/settings/permissions/revoke-all";
2677
+ };
2678
+ export type SettingsPermissionsRevokeAllErrors = {
2679
+ /**
2680
+ * Bad request
2681
+ */
2682
+ 400: BadRequestError;
2683
+ };
2684
+ export type SettingsPermissionsRevokeAllError = SettingsPermissionsRevokeAllErrors[keyof SettingsPermissionsRevokeAllErrors];
2685
+ export type SettingsPermissionsRevokeAllResponses = {
2686
+ /**
2687
+ * Updated
2688
+ */
2689
+ 200: {
2690
+ grants?: {
2691
+ [key: string]: "global" | "session" | "revoked";
2692
+ };
2693
+ };
2694
+ };
2695
+ export type SettingsPermissionsRevokeAllResponse = SettingsPermissionsRevokeAllResponses[keyof SettingsPermissionsRevokeAllResponses];
2696
+ export type SettingsPreferencesGetData = {
2697
+ body?: never;
2698
+ path?: never;
2699
+ query?: never;
2700
+ url: "/settings/preferences";
2701
+ };
2702
+ export type SettingsPreferencesGetResponses = {
2703
+ /**
2704
+ * Preferences
2705
+ */
2706
+ 200: {
2707
+ reasoning_effort?: "minimal" | "low" | "medium" | "high";
2708
+ intent?: "commercial" | "non-commercial";
2709
+ extra_budget_usd?: number;
2710
+ };
2711
+ };
2712
+ export type SettingsPreferencesGetResponse = SettingsPreferencesGetResponses[keyof SettingsPreferencesGetResponses];
2713
+ export type SettingsPreferencesUpdateData = {
2714
+ body?: {
2715
+ reasoning_effort?: "minimal" | "low" | "medium" | "high";
2716
+ intent?: "commercial" | "non-commercial";
2717
+ extra_budget_usd?: number;
2718
+ };
2719
+ path?: never;
2720
+ query?: never;
2721
+ url: "/settings/preferences";
2722
+ };
2723
+ export type SettingsPreferencesUpdateResponses = {
2724
+ /**
2725
+ * Updated preferences
2726
+ */
2727
+ 200: {
2728
+ reasoning_effort?: "minimal" | "low" | "medium" | "high";
2729
+ intent?: "commercial" | "non-commercial";
2730
+ extra_budget_usd?: number;
2731
+ };
2732
+ };
2733
+ export type SettingsPreferencesUpdateResponse = SettingsPreferencesUpdateResponses[keyof SettingsPreferencesUpdateResponses];
2734
+ export type SettingsBillingGetData = {
2735
+ body?: never;
2736
+ path?: never;
2737
+ query?: never;
2738
+ url: "/settings/billing";
2739
+ };
2740
+ export type SettingsBillingGetResponses = {
2741
+ /**
2742
+ * Billing state
2743
+ */
2744
+ 200: {
2745
+ llm: "managed" | "byok" | null;
2746
+ compute: "managed" | "byok";
2747
+ wallet: {
2748
+ /**
2749
+ * Whether an Atlas session (thk_ key) is available
2750
+ */
2751
+ signedIn: boolean;
2752
+ /**
2753
+ * CLI wallet balance in USD; -1 when signed out or unavailable
2754
+ */
2755
+ balanceUsd: number;
2756
+ };
2757
+ };
2758
+ };
2759
+ export type SettingsBillingGetResponse = SettingsBillingGetResponses[keyof SettingsBillingGetResponses];
2760
+ export type SettingsBillingUpdateData = {
2761
+ body?: {
2762
+ llm?: "managed" | "byok";
2763
+ compute?: "managed" | "byok";
2764
+ };
2765
+ path?: never;
2766
+ query?: never;
2767
+ url: "/settings/billing";
2768
+ };
2769
+ export type SettingsBillingUpdateResponses = {
2770
+ /**
2771
+ * Updated billing state
2772
+ */
2773
+ 200: {
2774
+ llm: "managed" | "byok" | null;
2775
+ compute: "managed" | "byok";
2776
+ wallet: {
2777
+ /**
2778
+ * Whether an Atlas session (thk_ key) is available
2779
+ */
2780
+ signedIn: boolean;
2781
+ /**
2782
+ * CLI wallet balance in USD; -1 when signed out or unavailable
2783
+ */
2784
+ balanceUsd: number;
2785
+ };
2786
+ };
2787
+ };
2788
+ export type SettingsBillingUpdateResponse = SettingsBillingUpdateResponses[keyof SettingsBillingUpdateResponses];
2789
+ export type AuthRemoveData = {
2790
+ body?: never;
2791
+ path: {
2792
+ providerID: string;
2793
+ };
2794
+ query?: never;
2795
+ url: "/auth/{providerID}";
2796
+ };
2797
+ export type AuthRemoveErrors = {
2798
+ /**
2799
+ * Bad request
2800
+ */
2801
+ 400: BadRequestError;
2802
+ };
2803
+ export type AuthRemoveError = AuthRemoveErrors[keyof AuthRemoveErrors];
2804
+ export type AuthRemoveResponses = {
2805
+ /**
2806
+ * Successfully removed authentication credentials
2807
+ */
2808
+ 200: boolean;
2809
+ };
2810
+ export type AuthRemoveResponse = AuthRemoveResponses[keyof AuthRemoveResponses];
2811
+ export type AuthSetData = {
2812
+ body?: Auth;
2813
+ path: {
2814
+ providerID: string;
2815
+ };
2816
+ query?: never;
2817
+ url: "/auth/{providerID}";
2818
+ };
2819
+ export type AuthSetErrors = {
2820
+ /**
2821
+ * Bad request
2822
+ */
2823
+ 400: BadRequestError;
2824
+ };
2825
+ export type AuthSetError = AuthSetErrors[keyof AuthSetErrors];
2826
+ export type AuthSetResponses = {
2827
+ /**
2828
+ * Successfully set authentication credentials
2829
+ */
2830
+ 200: boolean;
2831
+ };
2832
+ export type AuthSetResponse = AuthSetResponses[keyof AuthSetResponses];
2833
+ export type ProjectListData = {
2834
+ body?: never;
2835
+ path?: never;
2836
+ query?: {
2837
+ directory?: string;
2838
+ };
2839
+ url: "/project";
2840
+ };
2841
+ export type ProjectListResponses = {
2842
+ /**
2843
+ * List of projects
2844
+ */
2845
+ 200: Array<Project>;
2846
+ };
2847
+ export type ProjectListResponse = ProjectListResponses[keyof ProjectListResponses];
2848
+ export type ProjectCurrentData = {
2849
+ body?: never;
2850
+ path?: never;
2851
+ query?: {
2852
+ directory?: string;
2853
+ };
2854
+ url: "/project/current";
2855
+ };
2856
+ export type ProjectCurrentResponses = {
2857
+ /**
2858
+ * Current project information
2859
+ */
2860
+ 200: Project;
2861
+ };
2862
+ export type ProjectCurrentResponse = ProjectCurrentResponses[keyof ProjectCurrentResponses];
2863
+ export type ProjectUpdateData = {
2864
+ body?: {
2865
+ name?: string;
2866
+ icon?: {
2867
+ url?: string;
2868
+ override?: string;
2869
+ color?: string;
2870
+ };
2871
+ commands?: {
2872
+ /**
2873
+ * Startup script to run when creating a new workspace (worktree)
2874
+ */
2875
+ start?: string;
2876
+ };
2877
+ };
2878
+ path: {
2879
+ projectID: string;
2880
+ };
2881
+ query?: {
2882
+ directory?: string;
2883
+ };
2884
+ url: "/project/{projectID}";
2885
+ };
2886
+ export type ProjectUpdateErrors = {
2887
+ /**
2888
+ * Bad request
2889
+ */
2890
+ 400: BadRequestError;
2891
+ /**
2892
+ * Not found
2893
+ */
2894
+ 404: NotFoundError;
2895
+ };
2896
+ export type ProjectUpdateError = ProjectUpdateErrors[keyof ProjectUpdateErrors];
2897
+ export type ProjectUpdateResponses = {
2898
+ /**
2899
+ * Updated project information
2900
+ */
2901
+ 200: Project;
2319
2902
  };
2320
2903
  export type ProjectUpdateResponse = ProjectUpdateResponses[keyof ProjectUpdateResponses];
2321
2904
  export type PtyListData = {
@@ -3086,6 +3669,7 @@ export type SessionPromptData = {
3086
3669
  system?: string;
3087
3670
  variant?: string;
3088
3671
  tier?: "fast" | "pro" | "ultra";
3672
+ fast?: boolean;
3089
3673
  parts: Array<TextPartInput | FilePartInput | AgentPartInput | SubtaskPartInput>;
3090
3674
  };
3091
3675
  path: {
@@ -3254,6 +3838,7 @@ export type SessionPromptAsyncData = {
3254
3838
  system?: string;
3255
3839
  variant?: string;
3256
3840
  tier?: "fast" | "pro" | "ultra";
3841
+ fast?: boolean;
3257
3842
  parts: Array<TextPartInput | FilePartInput | AgentPartInput | SubtaskPartInput>;
3258
3843
  };
3259
3844
  path: {
@@ -4134,253 +4719,221 @@ export type McpDisconnectResponses = {
4134
4719
  200: boolean;
4135
4720
  };
4136
4721
  export type McpDisconnectResponse = McpDisconnectResponses[keyof McpDisconnectResponses];
4137
- export type TuiAppendPromptData = {
4722
+ export type SettingsSkillsInstallData = {
4138
4723
  body?: {
4139
- text: string;
4724
+ /**
4725
+ * Public git repository URL containing one or more SKILL.md skills
4726
+ */
4727
+ url: string;
4728
+ /**
4729
+ * Bypass the server-side Layer-3 classifier review
4730
+ */
4731
+ skipClassifier?: boolean;
4140
4732
  };
4141
4733
  path?: never;
4142
4734
  query?: {
4143
4735
  directory?: string;
4144
4736
  };
4145
- url: "/tui/append-prompt";
4737
+ url: "/settings/skills/install";
4146
4738
  };
4147
- export type TuiAppendPromptErrors = {
4739
+ export type SettingsSkillsInstallErrors = {
4148
4740
  /**
4149
4741
  * Bad request
4150
4742
  */
4151
4743
  400: BadRequestError;
4152
4744
  };
4153
- export type TuiAppendPromptError = TuiAppendPromptErrors[keyof TuiAppendPromptErrors];
4154
- export type TuiAppendPromptResponses = {
4745
+ export type SettingsSkillsInstallError = SettingsSkillsInstallErrors[keyof SettingsSkillsInstallErrors];
4746
+ export type SettingsSkillsInstallResponses = {
4155
4747
  /**
4156
- * Prompt processed successfully
4748
+ * Install result
4157
4749
  */
4158
- 200: boolean;
4159
- };
4160
- export type TuiAppendPromptResponse = TuiAppendPromptResponses[keyof TuiAppendPromptResponses];
4161
- export type TuiOpenHelpData = {
4162
- body?: never;
4163
- path?: never;
4164
- query?: {
4165
- directory?: string;
4750
+ 200: {
4751
+ installed: Array<{
4752
+ namespace: string;
4753
+ name: string;
4754
+ verdict: string;
4755
+ }>;
4756
+ rejected: Array<{
4757
+ name: string;
4758
+ reason: string;
4759
+ }>;
4760
+ warnings: Array<{
4761
+ name: string;
4762
+ pattern: string;
4763
+ }>;
4166
4764
  };
4167
- url: "/tui/open-help";
4168
- };
4169
- export type TuiOpenHelpResponses = {
4170
- /**
4171
- * Help dialog opened successfully
4172
- */
4173
- 200: boolean;
4174
4765
  };
4175
- export type TuiOpenHelpResponse = TuiOpenHelpResponses[keyof TuiOpenHelpResponses];
4176
- export type TuiOpenSessionsData = {
4766
+ export type SettingsSkillsInstallResponse = SettingsSkillsInstallResponses[keyof SettingsSkillsInstallResponses];
4767
+ export type SettingsMemoryGetData = {
4177
4768
  body?: never;
4178
4769
  path?: never;
4179
4770
  query?: {
4180
4771
  directory?: string;
4772
+ scope?: "global" | "project";
4181
4773
  };
4182
- url: "/tui/open-sessions";
4774
+ url: "/settings/memory";
4183
4775
  };
4184
- export type TuiOpenSessionsResponses = {
4776
+ export type SettingsMemoryGetResponses = {
4185
4777
  /**
4186
- * Session dialog opened successfully
4778
+ * Memory document
4187
4779
  */
4188
- 200: boolean;
4189
- };
4190
- export type TuiOpenSessionsResponse = TuiOpenSessionsResponses[keyof TuiOpenSessionsResponses];
4191
- export type TuiOpenThemesData = {
4192
- body?: never;
4193
- path?: never;
4194
- query?: {
4195
- directory?: string;
4780
+ 200: {
4781
+ enabled: boolean;
4782
+ categories: Array<{
4783
+ id: string;
4784
+ name: string;
4785
+ notes: Array<{
4786
+ id: string;
4787
+ text: string;
4788
+ createdAt: number;
4789
+ }>;
4790
+ }>;
4196
4791
  };
4197
- url: "/tui/open-themes";
4198
4792
  };
4199
- export type TuiOpenThemesResponses = {
4200
- /**
4201
- * Theme dialog opened successfully
4202
- */
4203
- 200: boolean;
4204
- };
4205
- export type TuiOpenThemesResponse = TuiOpenThemesResponses[keyof TuiOpenThemesResponses];
4206
- export type TuiOpenModelsData = {
4207
- body?: never;
4208
- path?: never;
4209
- query?: {
4210
- directory?: string;
4793
+ export type SettingsMemoryGetResponse = SettingsMemoryGetResponses[keyof SettingsMemoryGetResponses];
4794
+ export type SettingsMemorySetData = {
4795
+ body?: {
4796
+ enabled: boolean;
4797
+ categories: Array<{
4798
+ id: string;
4799
+ name: string;
4800
+ notes: Array<{
4801
+ id: string;
4802
+ text: string;
4803
+ createdAt: number;
4804
+ }>;
4805
+ }>;
4211
4806
  };
4212
- url: "/tui/open-models";
4213
- };
4214
- export type TuiOpenModelsResponses = {
4215
- /**
4216
- * Model dialog opened successfully
4217
- */
4218
- 200: boolean;
4219
- };
4220
- export type TuiOpenModelsResponse = TuiOpenModelsResponses[keyof TuiOpenModelsResponses];
4221
- export type TuiSubmitPromptData = {
4222
- body?: never;
4223
4807
  path?: never;
4224
4808
  query?: {
4225
4809
  directory?: string;
4810
+ scope?: "global" | "project";
4226
4811
  };
4227
- url: "/tui/submit-prompt";
4812
+ url: "/settings/memory";
4228
4813
  };
4229
- export type TuiSubmitPromptResponses = {
4814
+ export type SettingsMemorySetResponses = {
4230
4815
  /**
4231
- * Prompt submitted successfully
4816
+ * Updated memory document
4232
4817
  */
4233
- 200: boolean;
4818
+ 200: {
4819
+ enabled: boolean;
4820
+ categories: Array<{
4821
+ id: string;
4822
+ name: string;
4823
+ notes: Array<{
4824
+ id: string;
4825
+ text: string;
4826
+ createdAt: number;
4827
+ }>;
4828
+ }>;
4829
+ };
4234
4830
  };
4235
- export type TuiSubmitPromptResponse = TuiSubmitPromptResponses[keyof TuiSubmitPromptResponses];
4236
- export type TuiClearPromptData = {
4831
+ export type SettingsMemorySetResponse = SettingsMemorySetResponses[keyof SettingsMemorySetResponses];
4832
+ export type SettingsNetworkGetData = {
4237
4833
  body?: never;
4238
4834
  path?: never;
4239
4835
  query?: {
4240
4836
  directory?: string;
4241
4837
  };
4242
- url: "/tui/clear-prompt";
4838
+ url: "/settings/network";
4243
4839
  };
4244
- export type TuiClearPromptResponses = {
4840
+ export type SettingsNetworkGetResponses = {
4245
4841
  /**
4246
- * Prompt cleared successfully
4842
+ * Network catalog and state
4247
4843
  */
4248
- 200: boolean;
4249
- };
4250
- export type TuiClearPromptResponse = TuiClearPromptResponses[keyof TuiClearPromptResponses];
4251
- export type TuiExecuteCommandData = {
4252
- body?: {
4253
- command: string;
4254
- };
4255
- path?: never;
4256
- query?: {
4257
- directory?: string;
4844
+ 200: {
4845
+ catalog: Array<{
4846
+ id: string;
4847
+ label: string;
4848
+ description: string;
4849
+ domains: Array<string>;
4850
+ }>;
4851
+ state: {
4852
+ allowlistEnabled: boolean;
4853
+ enabled: Array<string>;
4854
+ custom: Array<string>;
4855
+ };
4856
+ allowlist: Array<string>;
4258
4857
  };
4259
- url: "/tui/execute-command";
4260
- };
4261
- export type TuiExecuteCommandErrors = {
4262
- /**
4263
- * Bad request
4264
- */
4265
- 400: BadRequestError;
4266
4858
  };
4267
- export type TuiExecuteCommandError = TuiExecuteCommandErrors[keyof TuiExecuteCommandErrors];
4268
- export type TuiExecuteCommandResponses = {
4269
- /**
4270
- * Command executed successfully
4271
- */
4272
- 200: boolean;
4273
- };
4274
- export type TuiExecuteCommandResponse = TuiExecuteCommandResponses[keyof TuiExecuteCommandResponses];
4275
- export type TuiShowToastData = {
4859
+ export type SettingsNetworkGetResponse = SettingsNetworkGetResponses[keyof SettingsNetworkGetResponses];
4860
+ export type SettingsNetworkSetData = {
4276
4861
  body?: {
4277
- title?: string;
4278
- message: string;
4279
- variant: "info" | "success" | "warning" | "error";
4280
- /**
4281
- * Duration in milliseconds
4282
- */
4283
- duration?: number;
4862
+ allowlistEnabled: boolean;
4863
+ enabled: Array<string>;
4864
+ custom: Array<string>;
4284
4865
  };
4285
4866
  path?: never;
4286
4867
  query?: {
4287
4868
  directory?: string;
4288
4869
  };
4289
- url: "/tui/show-toast";
4870
+ url: "/settings/network";
4290
4871
  };
4291
- export type TuiShowToastResponses = {
4872
+ export type SettingsNetworkSetResponses = {
4292
4873
  /**
4293
- * Toast notification shown successfully
4874
+ * Updated network state
4294
4875
  */
4295
- 200: boolean;
4296
- };
4297
- export type TuiShowToastResponse = TuiShowToastResponses[keyof TuiShowToastResponses];
4298
- export type TuiPublishData = {
4299
- body?: EventTuiPromptAppend | EventTuiCommandExecute | EventTuiToastShow | EventTuiSessionSelect;
4300
- path?: never;
4301
- query?: {
4302
- directory?: string;
4303
- };
4304
- url: "/tui/publish";
4305
- };
4306
- export type TuiPublishErrors = {
4307
- /**
4308
- * Bad request
4309
- */
4310
- 400: BadRequestError;
4311
- };
4312
- export type TuiPublishError = TuiPublishErrors[keyof TuiPublishErrors];
4313
- export type TuiPublishResponses = {
4314
- /**
4315
- * Event published successfully
4316
- */
4317
- 200: boolean;
4318
- };
4319
- export type TuiPublishResponse = TuiPublishResponses[keyof TuiPublishResponses];
4320
- export type TuiSelectSessionData = {
4321
- body?: {
4322
- /**
4323
- * Session ID to navigate to
4324
- */
4325
- sessionID: string;
4326
- };
4327
- path?: never;
4328
- query?: {
4329
- directory?: string;
4876
+ 200: {
4877
+ state: {
4878
+ allowlistEnabled: boolean;
4879
+ enabled: Array<string>;
4880
+ custom: Array<string>;
4881
+ };
4882
+ allowlist: Array<string>;
4330
4883
  };
4331
- url: "/tui/select-session";
4332
4884
  };
4333
- export type TuiSelectSessionErrors = {
4334
- /**
4335
- * Bad request
4336
- */
4337
- 400: BadRequestError;
4338
- /**
4339
- * Not found
4340
- */
4341
- 404: NotFoundError;
4342
- };
4343
- export type TuiSelectSessionError = TuiSelectSessionErrors[keyof TuiSelectSessionErrors];
4344
- export type TuiSelectSessionResponses = {
4345
- /**
4346
- * Session selected successfully
4347
- */
4348
- 200: boolean;
4349
- };
4350
- export type TuiSelectSessionResponse = TuiSelectSessionResponses[keyof TuiSelectSessionResponses];
4351
- export type TuiControlNextData = {
4885
+ export type SettingsNetworkSetResponse = SettingsNetworkSetResponses[keyof SettingsNetworkSetResponses];
4886
+ export type SettingsUsageGetData = {
4352
4887
  body?: never;
4353
4888
  path?: never;
4354
4889
  query?: {
4355
4890
  directory?: string;
4356
4891
  };
4357
- url: "/tui/control/next";
4892
+ url: "/settings/usage";
4358
4893
  };
4359
- export type TuiControlNextResponses = {
4894
+ export type SettingsUsageGetResponses = {
4360
4895
  /**
4361
- * Next TUI request
4896
+ * Usage summary
4362
4897
  */
4363
4898
  200: {
4364
- path: string;
4365
- body: unknown;
4366
- };
4367
- };
4368
- export type TuiControlNextResponse = TuiControlNextResponses[keyof TuiControlNextResponses];
4369
- export type TuiControlResponseData = {
4370
- body?: unknown;
4371
- path?: never;
4372
- query?: {
4373
- directory?: string;
4899
+ sessions: number;
4900
+ total: {
4901
+ cost: number;
4902
+ tokens: {
4903
+ input: number;
4904
+ output: number;
4905
+ reasoning: number;
4906
+ cache_read: number;
4907
+ cache_write: number;
4908
+ };
4909
+ };
4910
+ latest: {
4911
+ id: string;
4912
+ title: string;
4913
+ cost: number;
4914
+ tokens: {
4915
+ input: number;
4916
+ output: number;
4917
+ reasoning: number;
4918
+ cache_read: number;
4919
+ cache_write: number;
4920
+ };
4921
+ } | null;
4922
+ weekly: Array<{
4923
+ date: string;
4924
+ cost: number;
4925
+ tokens: number;
4926
+ }>;
4927
+ by_model: Array<{
4928
+ key: string;
4929
+ provider: string;
4930
+ model: string;
4931
+ cost: number;
4932
+ tokens: number;
4933
+ }>;
4374
4934
  };
4375
- url: "/tui/control/response";
4376
- };
4377
- export type TuiControlResponseResponses = {
4378
- /**
4379
- * Response submitted successfully
4380
- */
4381
- 200: boolean;
4382
4935
  };
4383
- export type TuiControlResponseResponse = TuiControlResponseResponses[keyof TuiControlResponseResponses];
4936
+ export type SettingsUsageGetResponse = SettingsUsageGetResponses[keyof SettingsUsageGetResponses];
4384
4937
  export type InstanceDisposeData = {
4385
4938
  body?: never;
4386
4939
  path?: never;