@ellipsis-dev/sdk 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -281,124 +281,106 @@ interface paths {
281
281
  patch?: never;
282
282
  trace?: never;
283
283
  };
284
- '/assets': {
284
+ '/auth/cli/poll': {
285
285
  parameters: {
286
286
  query?: never;
287
287
  header?: never;
288
288
  path?: never;
289
289
  cookie?: never;
290
290
  };
291
- /**
292
- * List Assets
293
- * @description List uploaded assets, newest first.
294
- *
295
- * Metadata only — download URLs are minted per explicit GET, not
296
- * per row. agent_session_id scopes the list to one run's uploads.
297
- */
298
- get: operations['list_assets'];
291
+ get?: never;
299
292
  put?: never;
300
293
  /**
301
- * Create Asset
302
- * @description Upload a file that outlives the sandbox.
294
+ * Cli Auth Poll
295
+ * @description Poll a device-code auth flow for its token.
303
296
  *
304
- * v1: PNG images only, base64 in the JSON body, 10 MiB cap. The
305
- * primary caller is the in-sandbox `agent asset upload` CLI (an
306
- * agent persisting a screenshot to link on a PR), but all
307
- * credential types work. Returns the org-membership-gated
308
- * dashboard URL so callers never hard-code URL shapes.
297
+ * Unauthenticated; the device code identifies the flow.
309
298
  */
310
- post: operations['create_asset'];
299
+ post: operations['cli_auth_poll'];
311
300
  delete?: never;
312
301
  options?: never;
313
302
  head?: never;
314
303
  patch?: never;
315
304
  trace?: never;
316
305
  };
317
- '/assets/{asset_id}': {
306
+ '/auth/cli/start': {
318
307
  parameters: {
319
308
  query?: never;
320
309
  header?: never;
321
310
  path?: never;
322
311
  cookie?: never;
323
312
  };
324
- /**
325
- * Get Asset
326
- * @description Return one asset's metadata and download link.
327
- *
328
- * Includes the gated dashboard URL and a short-lived presigned
329
- * `download_url`.
330
- *
331
- * To fetch the bytes locally, call this and then GET download_url
332
- * immediately — the JSON API never carries the file. The CLI's
333
- * `agent asset get` wraps exactly that two-step.
334
- */
335
- get: operations['get_asset'];
313
+ get?: never;
336
314
  put?: never;
337
- post?: never;
338
315
  /**
339
- * Delete Asset
340
- * @description Delete an asset.
316
+ * Cli Auth Start
317
+ * @description Start a device-code auth flow for the CLI.
341
318
  *
342
- * A foreign, missing, or already-deleted id is an
343
- * indistinguishable 404, so ids can't be enumerated. Sandbox
344
- * tokens get a 403 (a sandbox token sits next to
345
- * potentially-untrusted code and must not be able to destroy the
346
- * account's assets — uploading is fine, destruction is not); API
347
- * keys and user tokens may delete.
319
+ * Unauthenticated: the CLI has no credential yet — that's what
320
+ * it's obtaining. The human authorizes out-of-band in the
321
+ * dashboard.
348
322
  */
349
- delete: operations['delete_asset'];
323
+ post: operations['cli_auth_start'];
324
+ delete?: never;
350
325
  options?: never;
351
326
  head?: never;
352
327
  patch?: never;
353
328
  trace?: never;
354
329
  };
355
- '/auth/cli/poll': {
330
+ '/budget': {
356
331
  parameters: {
357
332
  query?: never;
358
333
  header?: never;
359
334
  path?: never;
360
335
  cookie?: never;
361
336
  };
362
- get?: never;
363
- put?: never;
364
337
  /**
365
- * Cli Auth Poll
366
- * @description Poll a device-code auth flow for its token.
367
- *
368
- * Unauthenticated; the device code identifies the flow.
338
+ * Get Budget
339
+ * @description Return the caller's current budget summary.
369
340
  */
370
- post: operations['cli_auth_poll'];
341
+ get: operations['get_budget'];
342
+ put?: never;
343
+ post?: never;
371
344
  delete?: never;
372
345
  options?: never;
373
346
  head?: never;
374
347
  patch?: never;
375
348
  trace?: never;
376
349
  };
377
- '/auth/cli/start': {
350
+ '/files': {
378
351
  parameters: {
379
352
  query?: never;
380
353
  header?: never;
381
354
  path?: never;
382
355
  cookie?: never;
383
356
  };
384
- get?: never;
357
+ /**
358
+ * List Files
359
+ * @description List uploaded files, newest first.
360
+ *
361
+ * Metadata only — download URLs are minted per explicit GET, not
362
+ * per row. agent_session_id scopes the list to one run's uploads.
363
+ */
364
+ get: operations['list_files'];
385
365
  put?: never;
386
366
  /**
387
- * Cli Auth Start
388
- * @description Start a device-code auth flow for the CLI.
367
+ * Create File
368
+ * @description Upload a file that outlives the sandbox.
389
369
  *
390
- * Unauthenticated: the CLI has no credential yet that's what
391
- * it's obtaining. The human authorizes out-of-band in the
392
- * dashboard.
370
+ * v1: PNG images only, base64 in the JSON body, 10 MiB cap. The
371
+ * primary caller is the in-sandbox `agent file upload` CLI (an
372
+ * agent persisting a screenshot to link on a PR), but all
373
+ * credential types work. Returns the org-membership-gated
374
+ * dashboard URL so callers never hard-code URL shapes.
393
375
  */
394
- post: operations['cli_auth_start'];
376
+ post: operations['create_file'];
395
377
  delete?: never;
396
378
  options?: never;
397
379
  head?: never;
398
380
  patch?: never;
399
381
  trace?: never;
400
382
  };
401
- '/budget': {
383
+ '/files/{file_id}': {
402
384
  parameters: {
403
385
  query?: never;
404
386
  header?: never;
@@ -406,13 +388,31 @@ interface paths {
406
388
  cookie?: never;
407
389
  };
408
390
  /**
409
- * Get Budget
410
- * @description Return the caller's current budget summary.
391
+ * Get File
392
+ * @description Return one file's metadata and download link.
393
+ *
394
+ * Includes the gated dashboard URL and a short-lived presigned
395
+ * `download_url`.
396
+ *
397
+ * To fetch the bytes locally, call this and then GET download_url
398
+ * immediately — the JSON API never carries the file. The CLI's
399
+ * `agent file get` wraps exactly that two-step.
411
400
  */
412
- get: operations['get_budget'];
401
+ get: operations['get_file'];
413
402
  put?: never;
414
403
  post?: never;
415
- delete?: never;
404
+ /**
405
+ * Delete File
406
+ * @description Delete a file.
407
+ *
408
+ * A foreign, missing, or already-deleted id is an
409
+ * indistinguishable 404, so ids can't be enumerated. Sandbox
410
+ * tokens get a 403 (a sandbox token sits next to
411
+ * potentially-untrusted code and must not be able to destroy the
412
+ * account's files — uploading is fine, destruction is not); API
413
+ * keys and user tokens may delete.
414
+ */
415
+ delete: operations['delete_file'];
416
416
  options?: never;
417
417
  head?: never;
418
418
  patch?: never;
@@ -752,8 +752,8 @@ interface paths {
752
752
  * List Agent Sessions
753
753
  * @description List cloud agent sessions.
754
754
  *
755
- * Optionally filtered by config, source, time window, and
756
- * attributed author.
755
+ * Optionally filtered by config, source, time window, attributed
756
+ * author, repository, and whether the session is still going.
757
757
  */
758
758
  get: operations['list_agent_sessions'];
759
759
  put?: never;
@@ -925,7 +925,7 @@ interface paths {
925
925
  *
926
926
  * Segments are gzip members: download in order and concatenate
927
927
  * for one file. The JSON API never carries the bytes (same
928
- * two-step as assets). /records is the paged live view of the
928
+ * two-step as files). /records is the paged live view of the
929
929
  * same data.
930
930
  */
931
931
  get: operations['get_agent_session_log'];
@@ -1371,7 +1371,7 @@ interface components {
1371
1371
  * `permissions:` block, not this one.
1372
1372
  *
1373
1373
  * Each `variables` entry names a variable to inject; with an inline `value` it
1374
- * is hardcoded, without one it is resolved from the account's sandbox-variables
1374
+ * is hardcoded, without one it is resolved from the account's sandbox-secrets
1375
1375
  * store. Only the named variables reach this agent; the rest of the account's
1376
1376
  * stored variables never do. This is how a config brings in the config and
1377
1377
  * credentials a custom CLI needs.
@@ -1457,7 +1457,7 @@ interface components {
1457
1457
  *
1458
1458
  * `value`, when set, is a literal injected as-is — use it for non-secret
1459
1459
  * config (LOG_LEVEL, an API base URL). When `value` is omitted the value is
1460
- * resolved at run time from the account's sandbox-variables store (dashboard
1460
+ * resolved at run time from the account's sandbox-secrets store (dashboard
1461
1461
  * / `PUT /secrets`) by `name`, so a secret can be injected without
1462
1462
  * ever putting it in the config file. Either way the variable only reaches
1463
1463
  * agents that name it.
@@ -2411,44 +2411,6 @@ interface components {
2411
2411
  */
2412
2412
  reviews: number;
2413
2413
  };
2414
- /**
2415
- * AssetView
2416
- * @description An asset's metadata — the file itself is fetched via a separate
2417
- * download URL.
2418
- */
2419
- AssetView: {
2420
- /**
2421
- * Agent Session Id
2422
- * @description The agent session that produced this asset, when it was uploaded from a sandbox. Null for uploads made outside an agent session.
2423
- */
2424
- agent_session_id?: string | null;
2425
- /**
2426
- * Content Type
2427
- * @description The asset's MIME type.
2428
- */
2429
- content_type: string;
2430
- /**
2431
- * Created At
2432
- * Format: date-time
2433
- * @description When the asset was uploaded.
2434
- */
2435
- created_at: string;
2436
- /**
2437
- * Filename
2438
- * @description The original file basename, for display.
2439
- */
2440
- filename: string;
2441
- /**
2442
- * Id
2443
- * @description The asset's unique identifier.
2444
- */
2445
- id: string;
2446
- /**
2447
- * Size Bytes
2448
- * @description The size of the stored file in bytes.
2449
- */
2450
- size_bytes: number;
2451
- };
2452
2414
  /**
2453
2415
  * AttributionType
2454
2416
  * @enum {string}
@@ -2618,10 +2580,10 @@ interface components {
2618
2580
  template_id?: string | null;
2619
2581
  };
2620
2582
  /**
2621
- * CreateAssetRequest
2622
- * @description Upload a file as an asset owned by the calling account.
2583
+ * CreateFileRequest
2584
+ * @description Upload a file owned by the calling account.
2623
2585
  */
2624
- CreateAssetRequest: {
2586
+ CreateFileRequest: {
2625
2587
  /**
2626
2588
  * Content Type
2627
2589
  * @description The MIME type of the file. Only image/png is currently supported, and the uploaded bytes must actually be a PNG.
@@ -2639,15 +2601,15 @@ interface components {
2639
2601
  filename: string;
2640
2602
  };
2641
2603
  /**
2642
- * CreateAssetResponse
2643
- * @description The stored asset and the shareable link to it.
2604
+ * CreateFileResponse
2605
+ * @description The stored file and the shareable link to it.
2644
2606
  */
2645
- CreateAssetResponse: {
2646
- /** @description The stored asset's metadata. */
2647
- asset: components['schemas']['AssetView'];
2607
+ CreateFileResponse: {
2608
+ /** @description The stored file's metadata. */
2609
+ file: components['schemas']['FileView'];
2648
2610
  /**
2649
2611
  * Url
2650
- * @description The asset's dashboard URL (app.ellipsis.dev/assets/{id}). Access is gated to members of the owning organization, so this link is safe to share, e.g. in a pull request comment.
2612
+ * @description The file's dashboard URL (app.ellipsis.dev/files/{id}). Access is gated to members of the owning organization, so this link is safe to share, e.g. in a pull request comment.
2651
2613
  */
2652
2614
  url: string;
2653
2615
  };
@@ -2765,7 +2727,7 @@ interface components {
2765
2727
  ErrorInfo: {
2766
2728
  /**
2767
2729
  * Code
2768
- * @description Stable machine-readable error code. Open vocabulary — handle unknown codes by HTTP status. Known values: account_blocked, asset_quota_exceeded, conflict, default_config_broken, failed_dependency, forbidden, internal_error, invalid_request, not_found, rate_limited, review_in_flight, session_closed, session_ephemeral_trigger, session_finished, session_harness_single_turn, session_laptop, session_mention_surface, session_non_interactive, unauthorized, unavailable.
2730
+ * @description Stable machine-readable error code. Open vocabulary — handle unknown codes by HTTP status. Known values: account_blocked, conflict, default_config_broken, failed_dependency, file_quota_exceeded, forbidden, internal_error, invalid_request, not_found, rate_limited, review_in_flight, session_closed, session_ephemeral_trigger, session_finished, session_harness_single_turn, session_laptop, session_mention_surface, session_non_interactive, unauthorized, unavailable.
2769
2731
  */
2770
2732
  code: string;
2771
2733
  /**
@@ -2794,6 +2756,44 @@ interface components {
2794
2756
  * @enum {string}
2795
2757
  */
2796
2758
  ExecutionStatus: 'running' | 'failed' | 'done';
2759
+ /**
2760
+ * FileView
2761
+ * @description A file's metadata — the file itself is fetched via a separate
2762
+ * download URL.
2763
+ */
2764
+ FileView: {
2765
+ /**
2766
+ * Agent Session Id
2767
+ * @description The agent session that produced this file, when it was uploaded from a sandbox. Null for uploads made outside an agent session.
2768
+ */
2769
+ agent_session_id?: string | null;
2770
+ /**
2771
+ * Content Type
2772
+ * @description The file's MIME type.
2773
+ */
2774
+ content_type: string;
2775
+ /**
2776
+ * Created At
2777
+ * Format: date-time
2778
+ * @description When the file was uploaded.
2779
+ */
2780
+ created_at: string;
2781
+ /**
2782
+ * Filename
2783
+ * @description The original file basename, for display.
2784
+ */
2785
+ filename: string;
2786
+ /**
2787
+ * Id
2788
+ * @description The file's unique identifier.
2789
+ */
2790
+ id: string;
2791
+ /**
2792
+ * Size Bytes
2793
+ * @description The size of the stored file in bytes.
2794
+ */
2795
+ size_bytes: number;
2796
+ };
2797
2797
  /**
2798
2798
  * FindingAnchor
2799
2799
  * @description Where a finding's line anchor landed relative to the PR diff.
@@ -2894,21 +2894,21 @@ interface components {
2894
2894
  totals: components['schemas']['ReviewsTotals'];
2895
2895
  };
2896
2896
  /**
2897
- * GetAssetResponse
2898
- * @description One asset's metadata plus its shareable link and a short-lived
2897
+ * GetFileResponse
2898
+ * @description One file's metadata plus its shareable link and a short-lived
2899
2899
  * download URL.
2900
2900
  */
2901
- GetAssetResponse: {
2902
- /** @description The asset's metadata. */
2903
- asset: components['schemas']['AssetView'];
2901
+ GetFileResponse: {
2904
2902
  /**
2905
2903
  * Download Url
2906
2904
  * @description A short-lived presigned URL for downloading the file bytes. Fetch it immediately — it expires within about a minute.
2907
2905
  */
2908
2906
  download_url: string;
2907
+ /** @description The file's metadata. */
2908
+ file: components['schemas']['FileView'];
2909
2909
  /**
2910
2910
  * Url
2911
- * @description The asset's dashboard URL — the same shareable link returned when the asset was created.
2911
+ * @description The file's dashboard URL — the same shareable link returned when the file was created.
2912
2912
  */
2913
2913
  url: string;
2914
2914
  };
@@ -3486,16 +3486,16 @@ interface components {
3486
3486
  alerts: components['schemas']['Alert'][];
3487
3487
  };
3488
3488
  /**
3489
- * ListAssetsResponse
3490
- * @description The calling account's assets, newest first. Metadata only — fetch an
3491
- * individual asset to get a download URL.
3489
+ * ListFilesResponse
3490
+ * @description The calling account's files, newest first. Metadata only — fetch an
3491
+ * individual file to get a download URL.
3492
3492
  */
3493
- ListAssetsResponse: {
3493
+ ListFilesResponse: {
3494
3494
  /**
3495
- * Assets
3496
- * @description The account's assets, newest first.
3495
+ * Files
3496
+ * @description The account's files, newest first.
3497
3497
  */
3498
- assets: components['schemas']['AssetView'][];
3498
+ files: components['schemas']['FileView'][];
3499
3499
  };
3500
3500
  /**
3501
3501
  * ListGithubMembersResponse
@@ -3699,10 +3699,10 @@ interface components {
3699
3699
  *
3700
3700
  * Serving path is irrelevant here. Anthropic built every Claude model, so all of
3701
3701
  * them are ANTHROPIC whether we reach them through the first-party Anthropic API
3702
- * or through Bedrock -- a choice made per deployment by ELLIPSIS_LLM_PROVIDER, so
3702
+ * or through Bedrock -- a choice made per request by the llm_providers chain, so
3703
3703
  * it is not even a fixed property of the model. Likewise the `bedrock-gpt-5.6-*`
3704
3704
  * rows are OPENAI (OpenAI's models, served by AWS), and GLM is ZAI (Z.ai's model,
3705
- * served by Wafer over an OpenAI-compatible API).
3705
+ * served by Wafer or Concentrate over an OpenAI-compatible API).
3706
3706
  *
3707
3707
  * So this is deliberately NOT derived from `EgressRoute.provider`: routing is an
3708
3708
  * infrastructure fact that changes when we move a model between providers, while
@@ -3713,7 +3713,7 @@ interface components {
3713
3713
  * an OpenAI logo on GLM.
3714
3714
  * @enum {string}
3715
3715
  */
3716
- ModelManufacturer: 'anthropic' | 'openai' | 'zai';
3716
+ ModelManufacturer: 'anthropic' | 'openai' | 'zai' | 'minimax' | 'moonshot';
3717
3717
  /** ModelRateCardApi */
3718
3718
  ModelRateCardApi: {
3719
3719
  /** Cache Read Cents Per 1M Tokens */
@@ -7179,19 +7179,18 @@ interface operations {
7179
7179
  };
7180
7180
  };
7181
7181
  };
7182
- list_assets: {
7182
+ cli_auth_poll: {
7183
7183
  parameters: {
7184
- query?: {
7185
- agent_session_id?: string | null;
7186
- limit?: number;
7187
- };
7188
- header?: {
7189
- 'user-agent'?: string | null;
7190
- };
7184
+ query?: never;
7185
+ header?: never;
7191
7186
  path?: never;
7192
7187
  cookie?: never;
7193
7188
  };
7194
- requestBody?: never;
7189
+ requestBody: {
7190
+ content: {
7191
+ 'application/json': components['schemas']['CliAuthPollRequest'];
7192
+ };
7193
+ };
7195
7194
  responses: {
7196
7195
  /** @description Successful Response */
7197
7196
  200: {
@@ -7199,7 +7198,7 @@ interface operations {
7199
7198
  [name: string]: unknown;
7200
7199
  };
7201
7200
  content: {
7202
- 'application/json': components['schemas']['ListAssetsResponse'];
7201
+ 'application/json': components['schemas']['PollCliAuthResponse'];
7203
7202
  };
7204
7203
  };
7205
7204
  /** @description The bearer token is missing, invalid, or revoked. */
@@ -7220,6 +7219,15 @@ interface operations {
7220
7219
  'application/json': components['schemas']['ErrorResponse'];
7221
7220
  };
7222
7221
  };
7222
+ /** @description Unknown device code. */
7223
+ 404: {
7224
+ headers: {
7225
+ [name: string]: unknown;
7226
+ };
7227
+ content: {
7228
+ 'application/json': components['schemas']['ErrorResponse'];
7229
+ };
7230
+ };
7223
7231
  /** @description Validation Error */
7224
7232
  422: {
7225
7233
  headers: {
@@ -7231,20 +7239,14 @@ interface operations {
7231
7239
  };
7232
7240
  };
7233
7241
  };
7234
- create_asset: {
7242
+ cli_auth_start: {
7235
7243
  parameters: {
7236
7244
  query?: never;
7237
- header?: {
7238
- 'user-agent'?: string | null;
7239
- };
7245
+ header?: never;
7240
7246
  path?: never;
7241
7247
  cookie?: never;
7242
7248
  };
7243
- requestBody: {
7244
- content: {
7245
- 'application/json': components['schemas']['CreateAssetRequest'];
7246
- };
7247
- };
7249
+ requestBody?: never;
7248
7250
  responses: {
7249
7251
  /** @description Successful Response */
7250
7252
  201: {
@@ -7252,16 +7254,7 @@ interface operations {
7252
7254
  [name: string]: unknown;
7253
7255
  };
7254
7256
  content: {
7255
- 'application/json': components['schemas']['CreateAssetResponse'];
7256
- };
7257
- };
7258
- /** @description The upload is not a valid PNG, is empty, exceeds the size limit, or is not valid base64. */
7259
- 400: {
7260
- headers: {
7261
- [name: string]: unknown;
7262
- };
7263
- content: {
7264
- 'application/json': components['schemas']['ErrorResponse'];
7257
+ 'application/json': components['schemas']['StartCliAuthResponse'];
7265
7258
  };
7266
7259
  };
7267
7260
  /** @description The bearer token is missing, invalid, or revoked. */
@@ -7282,35 +7275,15 @@ interface operations {
7282
7275
  'application/json': components['schemas']['ErrorResponse'];
7283
7276
  };
7284
7277
  };
7285
- /** @description Validation Error */
7286
- 422: {
7287
- headers: {
7288
- [name: string]: unknown;
7289
- };
7290
- content: {
7291
- 'application/json': components['schemas']['HTTPValidationError'];
7292
- };
7293
- };
7294
- /** @description An asset quota was exceeded (per-session, per-day, or account-wide). */
7295
- 429: {
7296
- headers: {
7297
- [name: string]: unknown;
7298
- };
7299
- content: {
7300
- 'application/json': components['schemas']['ErrorResponse'];
7301
- };
7302
- };
7303
7278
  };
7304
7279
  };
7305
- get_asset: {
7280
+ get_budget: {
7306
7281
  parameters: {
7307
7282
  query?: never;
7308
7283
  header?: {
7309
7284
  'user-agent'?: string | null;
7310
7285
  };
7311
- path: {
7312
- asset_id: string;
7313
- };
7286
+ path?: never;
7314
7287
  cookie?: never;
7315
7288
  };
7316
7289
  requestBody?: never;
@@ -7321,7 +7294,7 @@ interface operations {
7321
7294
  [name: string]: unknown;
7322
7295
  };
7323
7296
  content: {
7324
- 'application/json': components['schemas']['GetAssetResponse'];
7297
+ 'application/json': components['schemas']['BudgetSummary'];
7325
7298
  };
7326
7299
  };
7327
7300
  /** @description The bearer token is missing, invalid, or revoked. */
@@ -7342,15 +7315,6 @@ interface operations {
7342
7315
  'application/json': components['schemas']['ErrorResponse'];
7343
7316
  };
7344
7317
  };
7345
- /** @description No such asset in your account. */
7346
- 404: {
7347
- headers: {
7348
- [name: string]: unknown;
7349
- };
7350
- content: {
7351
- 'application/json': components['schemas']['ErrorResponse'];
7352
- };
7353
- };
7354
7318
  /** @description Validation Error */
7355
7319
  422: {
7356
7320
  headers: {
@@ -7362,25 +7326,28 @@ interface operations {
7362
7326
  };
7363
7327
  };
7364
7328
  };
7365
- delete_asset: {
7329
+ list_files: {
7366
7330
  parameters: {
7367
- query?: never;
7331
+ query?: {
7332
+ agent_session_id?: string | null;
7333
+ limit?: number;
7334
+ };
7368
7335
  header?: {
7369
7336
  'user-agent'?: string | null;
7370
7337
  };
7371
- path: {
7372
- asset_id: string;
7373
- };
7338
+ path?: never;
7374
7339
  cookie?: never;
7375
7340
  };
7376
7341
  requestBody?: never;
7377
7342
  responses: {
7378
7343
  /** @description Successful Response */
7379
- 204: {
7344
+ 200: {
7380
7345
  headers: {
7381
7346
  [name: string]: unknown;
7382
7347
  };
7383
- content?: never;
7348
+ content: {
7349
+ 'application/json': components['schemas']['ListFilesResponse'];
7350
+ };
7384
7351
  };
7385
7352
  /** @description The bearer token is missing, invalid, or revoked. */
7386
7353
  401: {
@@ -7400,15 +7367,6 @@ interface operations {
7400
7367
  'application/json': components['schemas']['ErrorResponse'];
7401
7368
  };
7402
7369
  };
7403
- /** @description No such asset in your account. */
7404
- 404: {
7405
- headers: {
7406
- [name: string]: unknown;
7407
- };
7408
- content: {
7409
- 'application/json': components['schemas']['ErrorResponse'];
7410
- };
7411
- };
7412
7370
  /** @description Validation Error */
7413
7371
  422: {
7414
7372
  headers: {
@@ -7420,30 +7378,32 @@ interface operations {
7420
7378
  };
7421
7379
  };
7422
7380
  };
7423
- cli_auth_poll: {
7381
+ create_file: {
7424
7382
  parameters: {
7425
7383
  query?: never;
7426
- header?: never;
7384
+ header?: {
7385
+ 'user-agent'?: string | null;
7386
+ };
7427
7387
  path?: never;
7428
7388
  cookie?: never;
7429
7389
  };
7430
7390
  requestBody: {
7431
7391
  content: {
7432
- 'application/json': components['schemas']['CliAuthPollRequest'];
7392
+ 'application/json': components['schemas']['CreateFileRequest'];
7433
7393
  };
7434
7394
  };
7435
7395
  responses: {
7436
7396
  /** @description Successful Response */
7437
- 200: {
7397
+ 201: {
7438
7398
  headers: {
7439
7399
  [name: string]: unknown;
7440
7400
  };
7441
7401
  content: {
7442
- 'application/json': components['schemas']['PollCliAuthResponse'];
7402
+ 'application/json': components['schemas']['CreateFileResponse'];
7443
7403
  };
7444
7404
  };
7445
- /** @description The bearer token is missing, invalid, or revoked. */
7446
- 401: {
7405
+ /** @description The upload is not a valid PNG, is empty, exceeds the size limit, or is not valid base64. */
7406
+ 400: {
7447
7407
  headers: {
7448
7408
  [name: string]: unknown;
7449
7409
  };
@@ -7451,8 +7411,8 @@ interface operations {
7451
7411
  'application/json': components['schemas']['ErrorResponse'];
7452
7412
  };
7453
7413
  };
7454
- /** @description The credential may not perform this action, or the account is blocked. */
7455
- 403: {
7414
+ /** @description The bearer token is missing, invalid, or revoked. */
7415
+ 401: {
7456
7416
  headers: {
7457
7417
  [name: string]: unknown;
7458
7418
  };
@@ -7460,8 +7420,8 @@ interface operations {
7460
7420
  'application/json': components['schemas']['ErrorResponse'];
7461
7421
  };
7462
7422
  };
7463
- /** @description Unknown device code. */
7464
- 404: {
7423
+ /** @description The credential may not perform this action, or the account is blocked. */
7424
+ 403: {
7465
7425
  headers: {
7466
7426
  [name: string]: unknown;
7467
7427
  };
@@ -7478,24 +7438,37 @@ interface operations {
7478
7438
  'application/json': components['schemas']['HTTPValidationError'];
7479
7439
  };
7480
7440
  };
7441
+ /** @description A file quota was exceeded (per-session, per-day, or account-wide). */
7442
+ 429: {
7443
+ headers: {
7444
+ [name: string]: unknown;
7445
+ };
7446
+ content: {
7447
+ 'application/json': components['schemas']['ErrorResponse'];
7448
+ };
7449
+ };
7481
7450
  };
7482
7451
  };
7483
- cli_auth_start: {
7452
+ get_file: {
7484
7453
  parameters: {
7485
7454
  query?: never;
7486
- header?: never;
7487
- path?: never;
7455
+ header?: {
7456
+ 'user-agent'?: string | null;
7457
+ };
7458
+ path: {
7459
+ file_id: string;
7460
+ };
7488
7461
  cookie?: never;
7489
7462
  };
7490
7463
  requestBody?: never;
7491
7464
  responses: {
7492
7465
  /** @description Successful Response */
7493
- 201: {
7466
+ 200: {
7494
7467
  headers: {
7495
7468
  [name: string]: unknown;
7496
7469
  };
7497
7470
  content: {
7498
- 'application/json': components['schemas']['StartCliAuthResponse'];
7471
+ 'application/json': components['schemas']['GetFileResponse'];
7499
7472
  };
7500
7473
  };
7501
7474
  /** @description The bearer token is missing, invalid, or revoked. */
@@ -7516,27 +7489,45 @@ interface operations {
7516
7489
  'application/json': components['schemas']['ErrorResponse'];
7517
7490
  };
7518
7491
  };
7492
+ /** @description No such file in your account. */
7493
+ 404: {
7494
+ headers: {
7495
+ [name: string]: unknown;
7496
+ };
7497
+ content: {
7498
+ 'application/json': components['schemas']['ErrorResponse'];
7499
+ };
7500
+ };
7501
+ /** @description Validation Error */
7502
+ 422: {
7503
+ headers: {
7504
+ [name: string]: unknown;
7505
+ };
7506
+ content: {
7507
+ 'application/json': components['schemas']['HTTPValidationError'];
7508
+ };
7509
+ };
7519
7510
  };
7520
7511
  };
7521
- get_budget: {
7512
+ delete_file: {
7522
7513
  parameters: {
7523
7514
  query?: never;
7524
7515
  header?: {
7525
7516
  'user-agent'?: string | null;
7526
7517
  };
7527
- path?: never;
7518
+ path: {
7519
+ file_id: string;
7520
+ };
7528
7521
  cookie?: never;
7529
7522
  };
7530
7523
  requestBody?: never;
7531
7524
  responses: {
7532
7525
  /** @description Successful Response */
7533
- 200: {
7526
+ 204: {
7534
7527
  headers: {
7535
7528
  [name: string]: unknown;
7536
7529
  };
7537
- content: {
7538
- 'application/json': components['schemas']['BudgetSummary'];
7539
- };
7530
+ content?: never;
7540
7531
  };
7541
7532
  /** @description The bearer token is missing, invalid, or revoked. */
7542
7533
  401: {
@@ -7556,6 +7547,15 @@ interface operations {
7556
7547
  'application/json': components['schemas']['ErrorResponse'];
7557
7548
  };
7558
7549
  };
7550
+ /** @description No such file in your account. */
7551
+ 404: {
7552
+ headers: {
7553
+ [name: string]: unknown;
7554
+ };
7555
+ content: {
7556
+ 'application/json': components['schemas']['ErrorResponse'];
7557
+ };
7558
+ };
7559
7559
  /** @description Validation Error */
7560
7560
  422: {
7561
7561
  headers: {
@@ -8421,6 +8421,10 @@ interface operations {
8421
8421
  limit?: number;
8422
8422
  /** @description A GitHub account id (see GET /v1/integrations/github/members); scopes the list to sessions attributed to that developer. */
8423
8423
  author_id?: number | null;
8424
+ /** @description "owner/name" (exact) or a bare repo name, matched the same way as on GET /v1/sessions/search. Sessions whose repository is named only inside their agent config — dashboard starts, cron, handoffs — do not match. */
8425
+ repo?: string | null;
8426
+ /** @description Keep only sessions whose conversation is still going — live or sleeping — dropping the ones that completed, errored, or were stopped or cancelled. A session parked between turns counts as unfinished. */
8427
+ unfinished?: boolean;
8424
8428
  };
8425
8429
  header?: {
8426
8430
  'user-agent'?: string | null;