@ellipsis-dev/sdk 0.16.0 → 0.17.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +112 -29
- package/dist/index.js +132 -19
- package/dist/store/index.d.ts +1 -1
- package/dist/stream/index.d.ts +1 -1
- package/dist/{types-DB1hOyQE.d.ts → types--VF0yCc1.d.ts} +1118 -262
- package/package.json +1 -1
- package/schema/frames.schema.json +156 -27
- package/schema/openapi.v1.json +1788 -685
|
@@ -14,16 +14,11 @@ interface paths {
|
|
|
14
14
|
put?: never;
|
|
15
15
|
/**
|
|
16
16
|
* Create Agent Config
|
|
17
|
-
* @description Create an agent config
|
|
17
|
+
* @description Create an agent config, managed through the API: no file, live
|
|
18
|
+
* immediately. To put its definition in a repository instead, create
|
|
19
|
+
* it here and then POST /v1/agents/configs/{config_id}/link.
|
|
18
20
|
*
|
|
19
|
-
*
|
|
20
|
-
* config file to agents/ there; the agent goes live when it
|
|
21
|
-
* merges. Omit it and the agent is created here, with no file,
|
|
22
|
-
* live immediately — and every file reference in it must name the
|
|
23
|
-
* repository it lives in.
|
|
24
|
-
*
|
|
25
|
-
* Accepts an inline config or a gallery template slug. 409 when
|
|
26
|
-
* another live agent already holds the name.
|
|
21
|
+
* 409 when another live agent already holds the name.
|
|
27
22
|
*/
|
|
28
23
|
post: operations['create_agent_config'];
|
|
29
24
|
delete?: never;
|
|
@@ -418,6 +413,111 @@ interface paths {
|
|
|
418
413
|
patch?: never;
|
|
419
414
|
trace?: never;
|
|
420
415
|
};
|
|
416
|
+
'/v1/environments': {
|
|
417
|
+
parameters: {
|
|
418
|
+
query?: never;
|
|
419
|
+
header?: never;
|
|
420
|
+
path?: never;
|
|
421
|
+
cookie?: never;
|
|
422
|
+
};
|
|
423
|
+
/**
|
|
424
|
+
* List Environments
|
|
425
|
+
* @description List saved environments.
|
|
426
|
+
*/
|
|
427
|
+
get: operations['list_environments'];
|
|
428
|
+
put?: never;
|
|
429
|
+
/**
|
|
430
|
+
* Create Environment
|
|
431
|
+
* @description Create an environment, managed through the API: no file, live
|
|
432
|
+
* immediately. To define it in a repository instead, commit a
|
|
433
|
+
* `kind: environment` YAML under an agents directory.
|
|
434
|
+
*
|
|
435
|
+
* 409 when another live environment already holds the name.
|
|
436
|
+
*/
|
|
437
|
+
post: operations['create_environment'];
|
|
438
|
+
delete?: never;
|
|
439
|
+
options?: never;
|
|
440
|
+
head?: never;
|
|
441
|
+
patch?: never;
|
|
442
|
+
trace?: never;
|
|
443
|
+
};
|
|
444
|
+
'/v1/environments/defaults': {
|
|
445
|
+
parameters: {
|
|
446
|
+
query?: never;
|
|
447
|
+
header?: never;
|
|
448
|
+
path?: never;
|
|
449
|
+
cookie?: never;
|
|
450
|
+
};
|
|
451
|
+
/**
|
|
452
|
+
* List Environment Defaults
|
|
453
|
+
* @description Get the default environments.
|
|
454
|
+
*
|
|
455
|
+
* The account-wide default and the per-repository defaults, as
|
|
456
|
+
* environment ids. Repo rungs are keyed "owner/name".
|
|
457
|
+
*/
|
|
458
|
+
get: operations['list_environment_defaults'];
|
|
459
|
+
/**
|
|
460
|
+
* Put Environment Default
|
|
461
|
+
* @description Set a default environment.
|
|
462
|
+
*
|
|
463
|
+
* Addressed by rung: the account rung (repository omitted) or a
|
|
464
|
+
* repository rung ("owner/name"); the environment by id or name.
|
|
465
|
+
* Returns the full resulting ladder. Refused for sandbox tokens.
|
|
466
|
+
*/
|
|
467
|
+
put: operations['put_environment_default'];
|
|
468
|
+
post?: never;
|
|
469
|
+
/**
|
|
470
|
+
* Delete Environment Default
|
|
471
|
+
* @description Clear a default environment.
|
|
472
|
+
*
|
|
473
|
+
* Addressed by rung: the account rung (repository omitted) or a
|
|
474
|
+
* repository rung. Refused for sandbox tokens.
|
|
475
|
+
*/
|
|
476
|
+
delete: operations['delete_environment_default'];
|
|
477
|
+
options?: never;
|
|
478
|
+
head?: never;
|
|
479
|
+
patch?: never;
|
|
480
|
+
trace?: never;
|
|
481
|
+
};
|
|
482
|
+
'/v1/environments/{environment_id}': {
|
|
483
|
+
parameters: {
|
|
484
|
+
query?: never;
|
|
485
|
+
header?: never;
|
|
486
|
+
path?: never;
|
|
487
|
+
cookie?: never;
|
|
488
|
+
};
|
|
489
|
+
/**
|
|
490
|
+
* Get Environment
|
|
491
|
+
* @description Return one saved environment, by id or by name.
|
|
492
|
+
*/
|
|
493
|
+
get: operations['get_environment'];
|
|
494
|
+
/**
|
|
495
|
+
* Update Environment
|
|
496
|
+
* @description Replace an environment's definition, by id or by name.
|
|
497
|
+
*
|
|
498
|
+
* The whole definition is replaced, live at once — future sessions
|
|
499
|
+
* resolve the new body; running sessions keep the one frozen at
|
|
500
|
+
* their start. Only for environments managed through this API: one
|
|
501
|
+
* defined by a repository file is a 409.
|
|
502
|
+
*/
|
|
503
|
+
put: operations['update_environment'];
|
|
504
|
+
post?: never;
|
|
505
|
+
/**
|
|
506
|
+
* Delete Environment
|
|
507
|
+
* @description Delete an environment, by id or by name.
|
|
508
|
+
*
|
|
509
|
+
* Always succeeds, even while agents still reference it — their next
|
|
510
|
+
* session start fails with a clear error naming the missing
|
|
511
|
+
* environment. Past sessions remain readable. Only for environments
|
|
512
|
+
* managed through this API — delete the file to remove one defined
|
|
513
|
+
* by a repository.
|
|
514
|
+
*/
|
|
515
|
+
delete: operations['delete_environment'];
|
|
516
|
+
options?: never;
|
|
517
|
+
head?: never;
|
|
518
|
+
patch?: never;
|
|
519
|
+
trace?: never;
|
|
520
|
+
};
|
|
421
521
|
'/v1/files': {
|
|
422
522
|
parameters: {
|
|
423
523
|
query?: never;
|
|
@@ -911,12 +1011,13 @@ interface paths {
|
|
|
911
1011
|
* Start Agent Session
|
|
912
1012
|
* @description Start a cloud agent session.
|
|
913
1013
|
*
|
|
914
|
-
* Provide at most one of config_id (an id or an agent name)
|
|
915
|
-
* config,
|
|
916
|
-
*
|
|
917
|
-
*
|
|
918
|
-
* prompt or input. 422 when the
|
|
919
|
-
* input schema and the request's input is absent
|
|
1014
|
+
* Provide at most one of config_id (an id or an agent name) or
|
|
1015
|
+
* config; with neither, the account's default-config ladder
|
|
1016
|
+
* resolves the config. `prompt` is the first message; omit it and
|
|
1017
|
+
* the session starts idle, waiting for one. 400 when
|
|
1018
|
+
* interactive=false and there is no prompt or input. 422 when the
|
|
1019
|
+
* agent declares an input schema and the request's input is absent
|
|
1020
|
+
* or invalid.
|
|
920
1021
|
*/
|
|
921
1022
|
post: operations['start_agent_session'];
|
|
922
1023
|
delete?: never;
|
|
@@ -1225,7 +1326,6 @@ interface components {
|
|
|
1225
1326
|
/**
|
|
1226
1327
|
* @default {
|
|
1227
1328
|
* "enabled": true,
|
|
1228
|
-
* "interactive": true,
|
|
1229
1329
|
* "metadata": {
|
|
1230
1330
|
* "annotations": {},
|
|
1231
1331
|
* "labels": []
|
|
@@ -1235,21 +1335,18 @@ interface components {
|
|
|
1235
1335
|
*/
|
|
1236
1336
|
ellipsis: components['schemas']['AgentConfigEllipsis'];
|
|
1237
1337
|
/**
|
|
1338
|
+
* Environment
|
|
1238
1339
|
* @default {
|
|
1239
1340
|
* "compute": {},
|
|
1240
1341
|
* "hooks": {},
|
|
1241
1342
|
* "image": {},
|
|
1343
|
+
* "mcp_servers": [],
|
|
1242
1344
|
* "repositories": [],
|
|
1243
1345
|
* "variables": []
|
|
1244
1346
|
* }
|
|
1245
1347
|
*/
|
|
1246
|
-
environment: components['schemas']['AgentConfigEnvironment'];
|
|
1348
|
+
environment: string | components['schemas']['AgentConfigEnvironment'];
|
|
1247
1349
|
input?: components['schemas']['AgentConfigInput'] | null;
|
|
1248
|
-
/**
|
|
1249
|
-
* Mcp Servers
|
|
1250
|
-
* @default []
|
|
1251
|
-
*/
|
|
1252
|
-
mcp_servers: (string | components['schemas']['AgentConfigMcpServer'])[];
|
|
1253
1350
|
output?: components['schemas']['AgentConfigOutput'] | null;
|
|
1254
1351
|
/**
|
|
1255
1352
|
* @default {
|
|
@@ -1381,17 +1478,15 @@ interface components {
|
|
|
1381
1478
|
* AgentConfigEllipsis
|
|
1382
1479
|
* @description The Ellipsis product namespace for a config file: which schema this is
|
|
1383
1480
|
* (`version`), the human-facing identity (`name`/`description`), freeform
|
|
1384
|
-
* organizational `metadata`, whether the agent is `enabled
|
|
1385
|
-
*
|
|
1386
|
-
*
|
|
1387
|
-
*
|
|
1388
|
-
* `yaml_is_ellipsis_config`.
|
|
1481
|
+
* organizational `metadata`, and whether the agent is `enabled`. The
|
|
1482
|
+
* presence of a top-level `ellipsis:` mapping is what marks a YAML file as
|
|
1483
|
+
* an Ellipsis agent config (vs arbitrary YAML that merely lives under a
|
|
1484
|
+
* config directory) — see `yaml_is_ellipsis_config`.
|
|
1389
1485
|
*
|
|
1390
|
-
* `enabled
|
|
1391
|
-
*
|
|
1392
|
-
*
|
|
1393
|
-
*
|
|
1394
|
-
* is the trigger's job.
|
|
1486
|
+
* `enabled` is agent behavior, not freeform metadata, so it stays inside
|
|
1487
|
+
* the config `sha` (only `metadata` is sha-excluded). Whether a session
|
|
1488
|
+
* accepts messages is a per-run choice (POST /v1/sessions `interactive`),
|
|
1489
|
+
* not a config one.
|
|
1395
1490
|
*/
|
|
1396
1491
|
AgentConfigEllipsis: {
|
|
1397
1492
|
/** Description */
|
|
@@ -1401,11 +1496,6 @@ interface components {
|
|
|
1401
1496
|
* @default true
|
|
1402
1497
|
*/
|
|
1403
1498
|
enabled: boolean;
|
|
1404
|
-
/**
|
|
1405
|
-
* Interactive
|
|
1406
|
-
* @default true
|
|
1407
|
-
*/
|
|
1408
|
-
interactive: boolean;
|
|
1409
1499
|
/**
|
|
1410
1500
|
* @default {
|
|
1411
1501
|
* "annotations": {},
|
|
@@ -1453,6 +1543,11 @@ interface components {
|
|
|
1453
1543
|
hooks: components['schemas']['AgentConfigEnvironmentHooks'];
|
|
1454
1544
|
/** @default {} */
|
|
1455
1545
|
image: components['schemas']['AgentConfigEnvironmentImage'];
|
|
1546
|
+
/**
|
|
1547
|
+
* Mcp Servers
|
|
1548
|
+
* @default []
|
|
1549
|
+
*/
|
|
1550
|
+
mcp_servers: (string | components['schemas']['AgentConfigMcpServer'] | components['schemas']['AgentConfigMcpStdioServer'] | components['schemas']['AgentConfigMcpRemoteServer'])[];
|
|
1456
1551
|
/**
|
|
1457
1552
|
* Repositories
|
|
1458
1553
|
* @default []
|
|
@@ -1578,19 +1673,69 @@ interface components {
|
|
|
1578
1673
|
/** Message */
|
|
1579
1674
|
message?: string | null;
|
|
1580
1675
|
};
|
|
1676
|
+
/**
|
|
1677
|
+
* AgentConfigMcpRemoteServer
|
|
1678
|
+
* @description A bring-your-own remote MCP server: the harness talks HTTP to `url`.
|
|
1679
|
+
* Nothing runs in the sandbox image. `headers` carry static auth (e.g.
|
|
1680
|
+
* `Authorization: Bearer ${TOKEN}`); values may embed `${NAME}` secret
|
|
1681
|
+
* references, resolved at run time from the account's secrets store.
|
|
1682
|
+
*/
|
|
1683
|
+
AgentConfigMcpRemoteServer: {
|
|
1684
|
+
/**
|
|
1685
|
+
* Headers
|
|
1686
|
+
* @default {}
|
|
1687
|
+
*/
|
|
1688
|
+
headers: {
|
|
1689
|
+
[key: string]: string;
|
|
1690
|
+
};
|
|
1691
|
+
/** Name */
|
|
1692
|
+
name: string;
|
|
1693
|
+
/** Url */
|
|
1694
|
+
url: string;
|
|
1695
|
+
};
|
|
1581
1696
|
/**
|
|
1582
1697
|
* AgentConfigMcpServer
|
|
1583
1698
|
* @description One built-in MCP server this agent opts into by name (`linear`/`slack`).
|
|
1584
|
-
*
|
|
1585
|
-
*
|
|
1586
|
-
*
|
|
1587
|
-
*
|
|
1588
|
-
*
|
|
1699
|
+
* A name reference over the connected built-in set — the platform manages the
|
|
1700
|
+
* server's transport and credentials. It only matters when the named
|
|
1701
|
+
* integration is set to `opt_in` inclusion; an integration in the default
|
|
1702
|
+
* `all_sessions` mode is added regardless. For a server the platform does not
|
|
1703
|
+
* provide, define it instead (`AgentConfigMcpStdioServer` /
|
|
1704
|
+
* `AgentConfigMcpRemoteServer`).
|
|
1589
1705
|
*/
|
|
1590
1706
|
AgentConfigMcpServer: {
|
|
1591
1707
|
/** Name */
|
|
1592
1708
|
name: string;
|
|
1593
1709
|
};
|
|
1710
|
+
/**
|
|
1711
|
+
* AgentConfigMcpStdioServer
|
|
1712
|
+
* @description A bring-your-own stdio MCP server: the harness spawns `command` inside
|
|
1713
|
+
* the sandbox and speaks JSON-RPC over its stdin/stdout. The command must be
|
|
1714
|
+
* runnable in the sandbox image — install its runtime via `image.setup` /
|
|
1715
|
+
* `image.dockerfile_append` if the base image lacks it.
|
|
1716
|
+
*
|
|
1717
|
+
* `env` values may embed `${NAME}` references, resolved at run time from the
|
|
1718
|
+
* account's secrets store (see `mcp_secret_refs`); everything else is passed
|
|
1719
|
+
* literally.
|
|
1720
|
+
*/
|
|
1721
|
+
AgentConfigMcpStdioServer: {
|
|
1722
|
+
/**
|
|
1723
|
+
* Args
|
|
1724
|
+
* @default []
|
|
1725
|
+
*/
|
|
1726
|
+
args: string[];
|
|
1727
|
+
/** Command */
|
|
1728
|
+
command: string;
|
|
1729
|
+
/**
|
|
1730
|
+
* Env
|
|
1731
|
+
* @default {}
|
|
1732
|
+
*/
|
|
1733
|
+
env: {
|
|
1734
|
+
[key: string]: string;
|
|
1735
|
+
};
|
|
1736
|
+
/** Name */
|
|
1737
|
+
name: string;
|
|
1738
|
+
};
|
|
1594
1739
|
/**
|
|
1595
1740
|
* AgentConfigMemorySize
|
|
1596
1741
|
* @description A memory size as explicit units, summed (binary: 1GB = 1024MB = 1024MiB).
|
|
@@ -2874,46 +3019,19 @@ interface components {
|
|
|
2874
3019
|
};
|
|
2875
3020
|
/**
|
|
2876
3021
|
* CreateAgentConfigRequest
|
|
2877
|
-
* @description Parameters for creating an agent config.
|
|
2878
|
-
* template_id must be set.
|
|
3022
|
+
* @description Parameters for creating an agent config.
|
|
2879
3023
|
*/
|
|
2880
3024
|
CreateAgentConfigRequest: {
|
|
2881
|
-
/** @description
|
|
2882
|
-
config
|
|
2883
|
-
/**
|
|
2884
|
-
* Path
|
|
2885
|
-
* @description File path within the repo, when a repository is named. Omit for the default agents/<slug>.yaml; if set it must be a location the config sync scans (a .yaml/.yml file under agents/, .agents/, ellipsis/, or .ellipsis/ at any depth).
|
|
2886
|
-
*/
|
|
2887
|
-
path?: string | null;
|
|
2888
|
-
/**
|
|
2889
|
-
* Repository
|
|
2890
|
-
* @description Define the agent as a file in this repository: Ellipsis opens a pull request adding it, and the agent goes live when that merges. Repository name within the caller's account; the owner is always the account, so pass a bare name (e.g. "my-service"), not "owner/my-service". Omit to create the agent through the API alone, with no file and live immediately.
|
|
2891
|
-
*/
|
|
2892
|
-
repository?: string | null;
|
|
2893
|
-
/**
|
|
2894
|
-
* Template Id
|
|
2895
|
-
* @description A gallery template slug (see GET /v1/agents/templates).
|
|
2896
|
-
*/
|
|
2897
|
-
template_id?: string | null;
|
|
3025
|
+
/** @description The agent's definition. */
|
|
3026
|
+
config: components['schemas']['AgentConfig'];
|
|
2898
3027
|
};
|
|
2899
3028
|
/**
|
|
2900
|
-
*
|
|
2901
|
-
* @description
|
|
2902
|
-
* one was opened.
|
|
3029
|
+
* CreateEnvironmentRequest
|
|
3030
|
+
* @description Parameters for creating an environment.
|
|
2903
3031
|
*/
|
|
2904
|
-
|
|
2905
|
-
/** @description The
|
|
2906
|
-
|
|
2907
|
-
/**
|
|
2908
|
-
* Path
|
|
2909
|
-
* @description The file path the config was written to, or null when the agent has no file.
|
|
2910
|
-
*/
|
|
2911
|
-
path?: string | null;
|
|
2912
|
-
/**
|
|
2913
|
-
* Pull Request Url
|
|
2914
|
-
* @description The pull request that adds the config file. The agent becomes live once it merges and syncs. Null when no repository was named: the agent is already live.
|
|
2915
|
-
*/
|
|
2916
|
-
pull_request_url?: string | null;
|
|
3032
|
+
CreateEnvironmentRequest: {
|
|
3033
|
+
/** @description The environment's definition. */
|
|
3034
|
+
environment: components['schemas']['EnvironmentConfig'];
|
|
2917
3035
|
};
|
|
2918
3036
|
/**
|
|
2919
3037
|
* CreateFileRequest
|
|
@@ -3079,6 +3197,168 @@ interface components {
|
|
|
3079
3197
|
/** Match */
|
|
3080
3198
|
match?: string[] | null;
|
|
3081
3199
|
};
|
|
3200
|
+
/**
|
|
3201
|
+
* Environment
|
|
3202
|
+
* @description A saved environment: the machine agents run in (repositories,
|
|
3203
|
+
* variables, MCP servers, image, compute, hooks), defined once and
|
|
3204
|
+
* referenced by name or id from agent configs and session starts.
|
|
3205
|
+
*/
|
|
3206
|
+
Environment: {
|
|
3207
|
+
/**
|
|
3208
|
+
* Created At
|
|
3209
|
+
* Format: date-time
|
|
3210
|
+
* @description When the environment was created.
|
|
3211
|
+
*/
|
|
3212
|
+
created_at: string;
|
|
3213
|
+
/** @description The GitHub account that last edited the environment, when known. */
|
|
3214
|
+
edited_by?: components['schemas']['GithubAccountSnippet'] | null;
|
|
3215
|
+
/** @description The environment definition itself, as parsed from its YAML. */
|
|
3216
|
+
environment: components['schemas']['EnvironmentConfig'];
|
|
3217
|
+
/**
|
|
3218
|
+
* Id
|
|
3219
|
+
* @description Unique identifier of the environment.
|
|
3220
|
+
*/
|
|
3221
|
+
id: string;
|
|
3222
|
+
/**
|
|
3223
|
+
* Last Sync Error
|
|
3224
|
+
* @description The parse or validation error from the most recent sync attempt, or null when it succeeded. A non-null value means sessions run the last good definition, not the YAML currently on the branch.
|
|
3225
|
+
*/
|
|
3226
|
+
last_sync_error?: string | null;
|
|
3227
|
+
/**
|
|
3228
|
+
* Last Synced Commit Sha
|
|
3229
|
+
* @description The last commit the environment was synced from.
|
|
3230
|
+
*/
|
|
3231
|
+
last_synced_commit_sha?: string | null;
|
|
3232
|
+
/** @description "github" environments are defined by a file in a repository and are changed by editing that file; "api" environments have no file and are changed through this API. */
|
|
3233
|
+
managed_by: components['schemas']['ConfigManagedBy'];
|
|
3234
|
+
/**
|
|
3235
|
+
* Name
|
|
3236
|
+
* @description The environment's customer-unique addressable name; usable anywhere an environment is referenced, interchangeably with the id.
|
|
3237
|
+
*/
|
|
3238
|
+
name: string;
|
|
3239
|
+
/**
|
|
3240
|
+
* Sha
|
|
3241
|
+
* @description The environment's content identity fingerprint.
|
|
3242
|
+
*/
|
|
3243
|
+
sha: string;
|
|
3244
|
+
/** @description The repository, path, and branch the environment syncs from. Null for environments managed through the API. */
|
|
3245
|
+
source_details?: components['schemas']['AgentConfigSourceGithub'] | null;
|
|
3246
|
+
/**
|
|
3247
|
+
* Updated At
|
|
3248
|
+
* Format: date-time
|
|
3249
|
+
* @description When the environment was last updated.
|
|
3250
|
+
*/
|
|
3251
|
+
updated_at: string;
|
|
3252
|
+
};
|
|
3253
|
+
/**
|
|
3254
|
+
* EnvironmentConfig
|
|
3255
|
+
* @description A parsed environment document: identity plus the environment body.
|
|
3256
|
+
*
|
|
3257
|
+
* The body fields are flattened to the top level of the file (not nested
|
|
3258
|
+
* under an `environment:` key) — the file *is* the environment, so nesting
|
|
3259
|
+
* would be ceremony. `to_environment()` projects the body for substitution
|
|
3260
|
+
* into an agent config.
|
|
3261
|
+
*/
|
|
3262
|
+
EnvironmentConfig: {
|
|
3263
|
+
/** @default {} */
|
|
3264
|
+
compute: components['schemas']['AgentConfigCompute'];
|
|
3265
|
+
ellipsis: components['schemas']['EnvironmentConfigEllipsis'];
|
|
3266
|
+
/** @default {} */
|
|
3267
|
+
hooks: components['schemas']['AgentConfigEnvironmentHooks'];
|
|
3268
|
+
/** @default {} */
|
|
3269
|
+
image: components['schemas']['AgentConfigEnvironmentImage'];
|
|
3270
|
+
/**
|
|
3271
|
+
* Mcp Servers
|
|
3272
|
+
* @default []
|
|
3273
|
+
*/
|
|
3274
|
+
mcp_servers: (string | components['schemas']['AgentConfigMcpServer'] | components['schemas']['AgentConfigMcpStdioServer'] | components['schemas']['AgentConfigMcpRemoteServer'])[];
|
|
3275
|
+
/**
|
|
3276
|
+
* Repositories
|
|
3277
|
+
* @default []
|
|
3278
|
+
*/
|
|
3279
|
+
repositories: components['schemas']['AgentConfigRepository'][];
|
|
3280
|
+
/**
|
|
3281
|
+
* Variables
|
|
3282
|
+
* @default []
|
|
3283
|
+
*/
|
|
3284
|
+
variables: components['schemas']['AgentConfigEnvironmentVariable'][];
|
|
3285
|
+
};
|
|
3286
|
+
/**
|
|
3287
|
+
* EnvironmentConfigEllipsis
|
|
3288
|
+
* @description The Ellipsis namespace of an environment file. `kind: environment` is
|
|
3289
|
+
* what routes a synced YAML here instead of to the agent-config parser —
|
|
3290
|
+
* an agent config carries no `kind` (or `kind: agent`, tolerated nowhere:
|
|
3291
|
+
* absence is the agent marker).
|
|
3292
|
+
*/
|
|
3293
|
+
EnvironmentConfigEllipsis: {
|
|
3294
|
+
/** Description */
|
|
3295
|
+
description?: string | null;
|
|
3296
|
+
/**
|
|
3297
|
+
* Kind
|
|
3298
|
+
* @constant
|
|
3299
|
+
*/
|
|
3300
|
+
kind: 'environment';
|
|
3301
|
+
/**
|
|
3302
|
+
* @default {
|
|
3303
|
+
* "annotations": {},
|
|
3304
|
+
* "labels": []
|
|
3305
|
+
* }
|
|
3306
|
+
*/
|
|
3307
|
+
metadata: components['schemas']['AgentConfigMetadata'];
|
|
3308
|
+
/** Name */
|
|
3309
|
+
name?: string | null;
|
|
3310
|
+
};
|
|
3311
|
+
/**
|
|
3312
|
+
* EnvironmentDefaults
|
|
3313
|
+
* @description Which environment serves sessions whose config carries no environment
|
|
3314
|
+
* of its own: one account-wide rung, plus a rung per repository. Values are
|
|
3315
|
+
* environment ids — stable across renames, unlike names.
|
|
3316
|
+
*/
|
|
3317
|
+
EnvironmentDefaults: {
|
|
3318
|
+
/**
|
|
3319
|
+
* Account
|
|
3320
|
+
* @description Environment id serving sessions with no repository context, or null when no account default is set.
|
|
3321
|
+
*/
|
|
3322
|
+
account?: string | null;
|
|
3323
|
+
/**
|
|
3324
|
+
* Repositories
|
|
3325
|
+
* @description Environment id per repository, keyed "owner/name". A repository with no default set is absent.
|
|
3326
|
+
* @default {}
|
|
3327
|
+
*/
|
|
3328
|
+
repositories: {
|
|
3329
|
+
[key: string]: string;
|
|
3330
|
+
};
|
|
3331
|
+
};
|
|
3332
|
+
/**
|
|
3333
|
+
* EnvironmentResponse
|
|
3334
|
+
* @description One saved environment.
|
|
3335
|
+
*/
|
|
3336
|
+
EnvironmentResponse: {
|
|
3337
|
+
/** @description The saved environment. */
|
|
3338
|
+
environment: components['schemas']['Environment'];
|
|
3339
|
+
};
|
|
3340
|
+
/**
|
|
3341
|
+
* EnvironmentSource
|
|
3342
|
+
* @description How a session's environment was chosen. None (the field is nullable)
|
|
3343
|
+
* when the config carried an inline environment block and no resolution ran —
|
|
3344
|
+
* an inline environment is not a reference, so there is nothing to record.
|
|
3345
|
+
*
|
|
3346
|
+
* Not derivable from the row: `environment_id` says WHICH environment, not
|
|
3347
|
+
* how it was chosen, and is null for the built-in basic sandbox.
|
|
3348
|
+
* @enum {string}
|
|
3349
|
+
*/
|
|
3350
|
+
EnvironmentSource: 'request' | 'agent_config' | 'repo_default' | 'account_default' | 'platform_default';
|
|
3351
|
+
/**
|
|
3352
|
+
* EnvironmentsListResponse
|
|
3353
|
+
* @description The caller's saved environments.
|
|
3354
|
+
*/
|
|
3355
|
+
EnvironmentsListResponse: {
|
|
3356
|
+
/**
|
|
3357
|
+
* Environments
|
|
3358
|
+
* @description Saved environments.
|
|
3359
|
+
*/
|
|
3360
|
+
environments: components['schemas']['Environment'][];
|
|
3361
|
+
};
|
|
3082
3362
|
/** ErrorInfo */
|
|
3083
3363
|
ErrorInfo: {
|
|
3084
3364
|
/**
|
|
@@ -4417,6 +4697,23 @@ interface components {
|
|
|
4417
4697
|
*/
|
|
4418
4698
|
repository?: string | null;
|
|
4419
4699
|
};
|
|
4700
|
+
/**
|
|
4701
|
+
* PutEnvironmentDefaultRequest
|
|
4702
|
+
* @description Parameters for setting a default environment, at either the account or
|
|
4703
|
+
* the repository level.
|
|
4704
|
+
*/
|
|
4705
|
+
PutEnvironmentDefaultRequest: {
|
|
4706
|
+
/**
|
|
4707
|
+
* Environment
|
|
4708
|
+
* @description The environment to make the default: an environment id, or its customer-unique name.
|
|
4709
|
+
*/
|
|
4710
|
+
environment: string;
|
|
4711
|
+
/**
|
|
4712
|
+
* Repository
|
|
4713
|
+
* @description The rung to set: "owner/name" for a repo default; omit to set the account default. An unknown or foreign repo is a 404.
|
|
4714
|
+
*/
|
|
4715
|
+
repository?: string | null;
|
|
4716
|
+
};
|
|
4420
4717
|
/**
|
|
4421
4718
|
* PutSecretsRequest
|
|
4422
4719
|
* @description Store secrets for the account's sandboxes. Each secret is upserted by
|
|
@@ -4677,17 +4974,12 @@ interface components {
|
|
|
4677
4974
|
*/
|
|
4678
4975
|
config_id?: string | null;
|
|
4679
4976
|
/**
|
|
4680
|
-
*
|
|
4681
|
-
* @description Optional partial
|
|
4977
|
+
* Override
|
|
4978
|
+
* @description Optional partial patch on the replayed config, applied last — e.g. {"claude": {"model": "claude-opus-4-8"}} to replay the run on a different model, or {"budget": {"session": 5.0}} to raise its budget.
|
|
4682
4979
|
*/
|
|
4683
|
-
|
|
4980
|
+
override?: {
|
|
4684
4981
|
[key: string]: unknown;
|
|
4685
4982
|
} | null;
|
|
4686
|
-
/**
|
|
4687
|
-
* Config Override Yaml
|
|
4688
|
-
* @description The same partial-config override as a YAML/JSON string (e.g. read from a file). Mutually exclusive with config_override.
|
|
4689
|
-
*/
|
|
4690
|
-
config_override_yaml?: string | null;
|
|
4691
4983
|
/**
|
|
4692
4984
|
* Prompt
|
|
4693
4985
|
* @description Per-run instructions. Omit to inherit the original run's prompt (a bare replay re-runs the same instructions); pass "" to clear it.
|
|
@@ -4749,7 +5041,7 @@ interface components {
|
|
|
4749
5041
|
* routes; nothing maps to it yet.
|
|
4750
5042
|
* @enum {string}
|
|
4751
5043
|
*/
|
|
4752
|
-
Resource: 'account' | 'alerts' | 'sessions' | 'files' | 'memories' | 'reviews' | 'configs' | 'defaults' | 'secrets' | 'templates' | 'integrations' | 'tokens';
|
|
5044
|
+
Resource: 'account' | 'alerts' | 'sessions' | 'files' | 'memories' | 'reviews' | 'configs' | 'defaults' | 'environments' | 'secrets' | 'templates' | 'integrations' | 'tokens';
|
|
4753
5045
|
/**
|
|
4754
5046
|
* Review
|
|
4755
5047
|
* @description One code review: one pipeline iteration over one commit range of a pull
|
|
@@ -5972,6 +6264,8 @@ interface components {
|
|
|
5972
6264
|
* @description When the session was created.
|
|
5973
6265
|
*/
|
|
5974
6266
|
created_at: string;
|
|
6267
|
+
/** @description The environment the session resolved: the saved environment's id and how it was chosen. The environment's frozen body is inside agent.config.environment. */
|
|
6268
|
+
environment?: components['schemas']['SessionEnvironment'];
|
|
5975
6269
|
/** @description How the session ended; null until it is terminal. */
|
|
5976
6270
|
exit_status?: components['schemas']['SessionExitStatus'] | null;
|
|
5977
6271
|
/** @description What the session did to git, one entry per repository in its workspace: the commit and branch it sits on, per-file line counts for its uncommitted changes, and the pull requests it opened. Null if nothing was ever captured. */
|
|
@@ -6139,6 +6433,22 @@ interface components {
|
|
|
6139
6433
|
*/
|
|
6140
6434
|
total: number;
|
|
6141
6435
|
};
|
|
6436
|
+
/**
|
|
6437
|
+
* SessionEnvironment
|
|
6438
|
+
* @description The environment this session resolved: which saved environment (as it
|
|
6439
|
+
* exists now) and how it was chosen. The environment's frozen BODY rides
|
|
6440
|
+
* inside `agent.config.environment` — substitution happens before the config
|
|
6441
|
+
* snapshot freezes — so this object is provenance, not payload.
|
|
6442
|
+
*/
|
|
6443
|
+
SessionEnvironment: {
|
|
6444
|
+
/**
|
|
6445
|
+
* Environment Id
|
|
6446
|
+
* @description Identifier of the saved environment the session's config resolved. Null for an inline environment block or the built-in basic sandbox.
|
|
6447
|
+
*/
|
|
6448
|
+
environment_id?: string | null;
|
|
6449
|
+
/** @description How the environment was chosen (request, agent_config, repo_default, account_default, platform_default). Null when the config carried its own inline environment. */
|
|
6450
|
+
source?: components['schemas']['EnvironmentSource'] | null;
|
|
6451
|
+
};
|
|
6142
6452
|
/**
|
|
6143
6453
|
* SessionExecution
|
|
6144
6454
|
* @description One runtime attempt of a session — the initial start, a cold wake of a
|
|
@@ -6812,7 +7122,7 @@ interface components {
|
|
|
6812
7122
|
* @description Parameters for starting a new agent session.
|
|
6813
7123
|
*/
|
|
6814
7124
|
StartAgentSessionRequest: {
|
|
6815
|
-
/** @description An inline agent config to run under. */
|
|
7125
|
+
/** @description An inline agent config to run under. At most one of config_id or config may be set; if neither is, the run resolves the account's default-config ladder (repo default, then account default, then the platform default config). */
|
|
6816
7126
|
config?: components['schemas']['AgentConfig'] | null;
|
|
6817
7127
|
/**
|
|
6818
7128
|
* Config Id
|
|
@@ -6820,29 +7130,16 @@ interface components {
|
|
|
6820
7130
|
*/
|
|
6821
7131
|
config_id?: string | null;
|
|
6822
7132
|
/**
|
|
6823
|
-
*
|
|
6824
|
-
* @description
|
|
6825
|
-
*/
|
|
6826
|
-
config_override?: {
|
|
6827
|
-
[key: string]: unknown;
|
|
6828
|
-
} | null;
|
|
6829
|
-
/**
|
|
6830
|
-
* Config Override Yaml
|
|
6831
|
-
* @description The same partial-config override as a YAML/JSON string (e.g. read from a file). Mutually exclusive with config_override.
|
|
7133
|
+
* Environment
|
|
7134
|
+
* @description The environment to run in: a saved environment's id (`env_...`) or its customer-unique name. Only for sessions with no explicit config (the agent config decides its own environment; 400 when combined with config/config_id). Omitted, the default-environment ladder resolves: repo default, then account default, then the built-in basic sandbox.
|
|
6832
7135
|
*/
|
|
6833
|
-
|
|
7136
|
+
environment?: string | null;
|
|
6834
7137
|
/**
|
|
6835
7138
|
* Force Rebuild
|
|
6836
7139
|
* @description Skip the image cache for this session's initial provision: a fresh full build whose snapshot then refreshes the cache for later runs. A wake of a durable session provisions through the cache as usual. The CLI's `--rebuild`.
|
|
6837
7140
|
* @default false
|
|
6838
7141
|
*/
|
|
6839
7142
|
force_rebuild: boolean;
|
|
6840
|
-
/**
|
|
6841
|
-
* Idle Start
|
|
6842
|
-
* @description Start the session with no initial message: the sandbox spins up, the agent starts idle at the prompt, and the first message sent to the session opens turn 0. Mutually exclusive with prompt. Ignored when the resolved config is not interactive (an ephemeral run keeps its kickoff — it can never receive a message).
|
|
6843
|
-
* @default false
|
|
6844
|
-
*/
|
|
6845
|
-
idle_start: boolean;
|
|
6846
7143
|
/**
|
|
6847
7144
|
* Input
|
|
6848
7145
|
* @description The typed payload for an agent that declares input.json_schema: validated against the effective config's schema (422 on mismatch), rendered into the session's initial message (the agent's input.message template, or a JSON block). Required when the agent declares a schema; rejected when it does not.
|
|
@@ -6850,6 +7147,12 @@ interface components {
|
|
|
6850
7147
|
input?: {
|
|
6851
7148
|
[key: string]: unknown;
|
|
6852
7149
|
} | null;
|
|
7150
|
+
/**
|
|
7151
|
+
* Interactive
|
|
7152
|
+
* @description Whether the session stays open for messages after its first turn. Set false for a one-shot run that does its job and closes without holding a warm sandbox; a one-shot run must carry a prompt (or input), since nothing can ever be sent to it later. Agents on the Codex harness are one-shot regardless.
|
|
7153
|
+
* @default true
|
|
7154
|
+
*/
|
|
7155
|
+
interactive: boolean;
|
|
6853
7156
|
/**
|
|
6854
7157
|
* Metadata
|
|
6855
7158
|
* @description Arbitrary string key/value metadata stored on the session.
|
|
@@ -6859,8 +7162,15 @@ interface components {
|
|
|
6859
7162
|
[key: string]: string;
|
|
6860
7163
|
};
|
|
6861
7164
|
/**
|
|
6862
|
-
*
|
|
6863
|
-
* @description
|
|
7165
|
+
* Override
|
|
7166
|
+
* @description Optional partial patch on the RESOLVED session config, applied last — after the config and environment are chosen and the environment is substituted in. Nested objects merge key by key; scalars and arrays replace. E.g. {"environment": {"compute": {"memory": "16GB"}}} for just this session, or {"claude": {"model": "claude-opus-4-8"}}. It cannot swap in a different saved environment (it patches the resolved document; it never re-runs resolution).
|
|
7167
|
+
*/
|
|
7168
|
+
override?: {
|
|
7169
|
+
[key: string]: unknown;
|
|
7170
|
+
} | null;
|
|
7171
|
+
/**
|
|
7172
|
+
* Prompt
|
|
7173
|
+
* @description The session's first message. Omit it and the session starts idle: the sandbox spins up, the agent waits at the prompt, and the first message you send opens turn 0.
|
|
6864
7174
|
*/
|
|
6865
7175
|
prompt?: string | null;
|
|
6866
7176
|
/**
|
|
@@ -6868,11 +7178,6 @@ interface components {
|
|
|
6868
7178
|
* @description The "owner/name" repository the client is standing in (the CLI's detected git remote). Selects the repo rung of the defaults ladder, and is merged into the sandbox repository set (cloned at its default branch) regardless of which config source is used. An unknown or foreign repo is ignored.
|
|
6869
7179
|
*/
|
|
6870
7180
|
repository?: string | null;
|
|
6871
|
-
/**
|
|
6872
|
-
* Template Id
|
|
6873
|
-
* @description A maintained run-on-demand template slug (e.g. "ellipsis-helper"), resolved server-side to its config. At most one of config_id, config, or template_id may be set; if none is, the run resolves the account's default-config ladder (repo default, then account default, then the platform default config).
|
|
6874
|
-
*/
|
|
6875
|
-
template_id?: string | null;
|
|
6876
7181
|
};
|
|
6877
7182
|
/**
|
|
6878
7183
|
* StartCliAuthResponse
|
|
@@ -6975,6 +7280,14 @@ interface components {
|
|
|
6975
7280
|
/** @description The agent's new definition. Replaces the previous one wholesale — this is not a partial update. */
|
|
6976
7281
|
config: components['schemas']['AgentConfig'];
|
|
6977
7282
|
};
|
|
7283
|
+
/**
|
|
7284
|
+
* UpdateEnvironmentRequest
|
|
7285
|
+
* @description A replacement definition for an environment managed through the API.
|
|
7286
|
+
*/
|
|
7287
|
+
UpdateEnvironmentRequest: {
|
|
7288
|
+
/** @description The environment's new definition. Replaces the previous one wholesale — this is not a partial update. */
|
|
7289
|
+
environment: components['schemas']['EnvironmentConfig'];
|
|
7290
|
+
};
|
|
6978
7291
|
/**
|
|
6979
7292
|
* UsageDailyPoint
|
|
6980
7293
|
* @description One day's usage: tokens split by type, and cost split into the four
|
|
@@ -7162,15 +7475,15 @@ interface operations {
|
|
|
7162
7475
|
};
|
|
7163
7476
|
responses: {
|
|
7164
7477
|
/** @description Successful Response */
|
|
7165
|
-
|
|
7478
|
+
201: {
|
|
7166
7479
|
headers: {
|
|
7167
7480
|
[name: string]: unknown;
|
|
7168
7481
|
};
|
|
7169
7482
|
content: {
|
|
7170
|
-
'application/json': components['schemas']['
|
|
7483
|
+
'application/json': components['schemas']['AgentConfigResponse'];
|
|
7171
7484
|
};
|
|
7172
7485
|
};
|
|
7173
|
-
/** @description
|
|
7486
|
+
/** @description The config is invalid. */
|
|
7174
7487
|
400: {
|
|
7175
7488
|
headers: {
|
|
7176
7489
|
[name: string]: unknown;
|
|
@@ -7197,16 +7510,7 @@ interface operations {
|
|
|
7197
7510
|
'application/json': components['schemas']['ErrorResponse'];
|
|
7198
7511
|
};
|
|
7199
7512
|
};
|
|
7200
|
-
/** @description
|
|
7201
|
-
404: {
|
|
7202
|
-
headers: {
|
|
7203
|
-
[name: string]: unknown;
|
|
7204
|
-
};
|
|
7205
|
-
content: {
|
|
7206
|
-
'application/json': components['schemas']['ErrorResponse'];
|
|
7207
|
-
};
|
|
7208
|
-
};
|
|
7209
|
-
/** @description An agent with that name already exists, another agent is already synced from that path, or a file already exists there. */
|
|
7513
|
+
/** @description An agent with that name already exists. */
|
|
7210
7514
|
409: {
|
|
7211
7515
|
headers: {
|
|
7212
7516
|
[name: string]: unknown;
|
|
@@ -7896,7 +8200,485 @@ interface operations {
|
|
|
7896
8200
|
[name: string]: unknown;
|
|
7897
8201
|
};
|
|
7898
8202
|
content: {
|
|
7899
|
-
'application/json': components['schemas']['AlertsListResponse'];
|
|
8203
|
+
'application/json': components['schemas']['AlertsListResponse'];
|
|
8204
|
+
};
|
|
8205
|
+
};
|
|
8206
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8207
|
+
401: {
|
|
8208
|
+
headers: {
|
|
8209
|
+
[name: string]: unknown;
|
|
8210
|
+
};
|
|
8211
|
+
content: {
|
|
8212
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8213
|
+
};
|
|
8214
|
+
};
|
|
8215
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8216
|
+
403: {
|
|
8217
|
+
headers: {
|
|
8218
|
+
[name: string]: unknown;
|
|
8219
|
+
};
|
|
8220
|
+
content: {
|
|
8221
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8222
|
+
};
|
|
8223
|
+
};
|
|
8224
|
+
/** @description Validation Error */
|
|
8225
|
+
422: {
|
|
8226
|
+
headers: {
|
|
8227
|
+
[name: string]: unknown;
|
|
8228
|
+
};
|
|
8229
|
+
content: {
|
|
8230
|
+
'application/json': components['schemas']['HTTPValidationError'];
|
|
8231
|
+
};
|
|
8232
|
+
};
|
|
8233
|
+
};
|
|
8234
|
+
};
|
|
8235
|
+
get_alert: {
|
|
8236
|
+
parameters: {
|
|
8237
|
+
query?: never;
|
|
8238
|
+
header?: {
|
|
8239
|
+
'user-agent'?: string | null;
|
|
8240
|
+
};
|
|
8241
|
+
path: {
|
|
8242
|
+
alert_id: string;
|
|
8243
|
+
};
|
|
8244
|
+
cookie?: never;
|
|
8245
|
+
};
|
|
8246
|
+
requestBody?: never;
|
|
8247
|
+
responses: {
|
|
8248
|
+
/** @description Successful Response */
|
|
8249
|
+
200: {
|
|
8250
|
+
headers: {
|
|
8251
|
+
[name: string]: unknown;
|
|
8252
|
+
};
|
|
8253
|
+
content: {
|
|
8254
|
+
'application/json': components['schemas']['AlertResponse'];
|
|
8255
|
+
};
|
|
8256
|
+
};
|
|
8257
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8258
|
+
401: {
|
|
8259
|
+
headers: {
|
|
8260
|
+
[name: string]: unknown;
|
|
8261
|
+
};
|
|
8262
|
+
content: {
|
|
8263
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8264
|
+
};
|
|
8265
|
+
};
|
|
8266
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8267
|
+
403: {
|
|
8268
|
+
headers: {
|
|
8269
|
+
[name: string]: unknown;
|
|
8270
|
+
};
|
|
8271
|
+
content: {
|
|
8272
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8273
|
+
};
|
|
8274
|
+
};
|
|
8275
|
+
/** @description No such alert in your account. */
|
|
8276
|
+
404: {
|
|
8277
|
+
headers: {
|
|
8278
|
+
[name: string]: unknown;
|
|
8279
|
+
};
|
|
8280
|
+
content: {
|
|
8281
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8282
|
+
};
|
|
8283
|
+
};
|
|
8284
|
+
/** @description Validation Error */
|
|
8285
|
+
422: {
|
|
8286
|
+
headers: {
|
|
8287
|
+
[name: string]: unknown;
|
|
8288
|
+
};
|
|
8289
|
+
content: {
|
|
8290
|
+
'application/json': components['schemas']['HTTPValidationError'];
|
|
8291
|
+
};
|
|
8292
|
+
};
|
|
8293
|
+
};
|
|
8294
|
+
};
|
|
8295
|
+
dismiss_alert: {
|
|
8296
|
+
parameters: {
|
|
8297
|
+
query?: never;
|
|
8298
|
+
header?: {
|
|
8299
|
+
'user-agent'?: string | null;
|
|
8300
|
+
};
|
|
8301
|
+
path: {
|
|
8302
|
+
alert_id: string;
|
|
8303
|
+
};
|
|
8304
|
+
cookie?: never;
|
|
8305
|
+
};
|
|
8306
|
+
requestBody?: never;
|
|
8307
|
+
responses: {
|
|
8308
|
+
/** @description Successful Response */
|
|
8309
|
+
200: {
|
|
8310
|
+
headers: {
|
|
8311
|
+
[name: string]: unknown;
|
|
8312
|
+
};
|
|
8313
|
+
content: {
|
|
8314
|
+
'application/json': components['schemas']['AlertResponse'];
|
|
8315
|
+
};
|
|
8316
|
+
};
|
|
8317
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8318
|
+
401: {
|
|
8319
|
+
headers: {
|
|
8320
|
+
[name: string]: unknown;
|
|
8321
|
+
};
|
|
8322
|
+
content: {
|
|
8323
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8324
|
+
};
|
|
8325
|
+
};
|
|
8326
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8327
|
+
403: {
|
|
8328
|
+
headers: {
|
|
8329
|
+
[name: string]: unknown;
|
|
8330
|
+
};
|
|
8331
|
+
content: {
|
|
8332
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8333
|
+
};
|
|
8334
|
+
};
|
|
8335
|
+
/** @description No such alert in your account. */
|
|
8336
|
+
404: {
|
|
8337
|
+
headers: {
|
|
8338
|
+
[name: string]: unknown;
|
|
8339
|
+
};
|
|
8340
|
+
content: {
|
|
8341
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8342
|
+
};
|
|
8343
|
+
};
|
|
8344
|
+
/** @description The alert is not open. */
|
|
8345
|
+
409: {
|
|
8346
|
+
headers: {
|
|
8347
|
+
[name: string]: unknown;
|
|
8348
|
+
};
|
|
8349
|
+
content: {
|
|
8350
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8351
|
+
};
|
|
8352
|
+
};
|
|
8353
|
+
/** @description Validation Error */
|
|
8354
|
+
422: {
|
|
8355
|
+
headers: {
|
|
8356
|
+
[name: string]: unknown;
|
|
8357
|
+
};
|
|
8358
|
+
content: {
|
|
8359
|
+
'application/json': components['schemas']['HTTPValidationError'];
|
|
8360
|
+
};
|
|
8361
|
+
};
|
|
8362
|
+
};
|
|
8363
|
+
};
|
|
8364
|
+
get_analytics_metrics: {
|
|
8365
|
+
parameters: {
|
|
8366
|
+
query?: {
|
|
8367
|
+
days?: number | null;
|
|
8368
|
+
start?: string | null;
|
|
8369
|
+
end?: string | null;
|
|
8370
|
+
/** @description Filter to repositories by "owner/name". */
|
|
8371
|
+
repo?: string[] | null;
|
|
8372
|
+
/** @description Filter by PR-author login(s). */
|
|
8373
|
+
author?: string[] | null;
|
|
8374
|
+
account_type?: string;
|
|
8375
|
+
/** @description Filter by parent-PR status (open|draft|merged|closed). */
|
|
8376
|
+
status?: string[] | null;
|
|
8377
|
+
};
|
|
8378
|
+
header?: {
|
|
8379
|
+
'user-agent'?: string | null;
|
|
8380
|
+
};
|
|
8381
|
+
path?: never;
|
|
8382
|
+
cookie?: never;
|
|
8383
|
+
};
|
|
8384
|
+
requestBody?: never;
|
|
8385
|
+
responses: {
|
|
8386
|
+
/** @description Successful Response */
|
|
8387
|
+
200: {
|
|
8388
|
+
headers: {
|
|
8389
|
+
[name: string]: unknown;
|
|
8390
|
+
};
|
|
8391
|
+
content: {
|
|
8392
|
+
'application/json': components['schemas']['GetAnalyticsMetricsResponse'];
|
|
8393
|
+
};
|
|
8394
|
+
};
|
|
8395
|
+
/** @description The time window is invalid: days combined with start, a non-positive days, or end not after start. */
|
|
8396
|
+
400: {
|
|
8397
|
+
headers: {
|
|
8398
|
+
[name: string]: unknown;
|
|
8399
|
+
};
|
|
8400
|
+
content: {
|
|
8401
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8402
|
+
};
|
|
8403
|
+
};
|
|
8404
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8405
|
+
401: {
|
|
8406
|
+
headers: {
|
|
8407
|
+
[name: string]: unknown;
|
|
8408
|
+
};
|
|
8409
|
+
content: {
|
|
8410
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8411
|
+
};
|
|
8412
|
+
};
|
|
8413
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8414
|
+
403: {
|
|
8415
|
+
headers: {
|
|
8416
|
+
[name: string]: unknown;
|
|
8417
|
+
};
|
|
8418
|
+
content: {
|
|
8419
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8420
|
+
};
|
|
8421
|
+
};
|
|
8422
|
+
/** @description Validation Error */
|
|
8423
|
+
422: {
|
|
8424
|
+
headers: {
|
|
8425
|
+
[name: string]: unknown;
|
|
8426
|
+
};
|
|
8427
|
+
content: {
|
|
8428
|
+
'application/json': components['schemas']['HTTPValidationError'];
|
|
8429
|
+
};
|
|
8430
|
+
};
|
|
8431
|
+
};
|
|
8432
|
+
};
|
|
8433
|
+
get_analytics_pull_requests: {
|
|
8434
|
+
parameters: {
|
|
8435
|
+
query?: {
|
|
8436
|
+
days?: number | null;
|
|
8437
|
+
start?: string | null;
|
|
8438
|
+
end?: string | null;
|
|
8439
|
+
account_type?: string[] | null;
|
|
8440
|
+
repository_id?: number[] | null;
|
|
8441
|
+
author_id?: number[] | null;
|
|
8442
|
+
status?: string[] | null;
|
|
8443
|
+
};
|
|
8444
|
+
header?: {
|
|
8445
|
+
'user-agent'?: string | null;
|
|
8446
|
+
};
|
|
8447
|
+
path?: never;
|
|
8448
|
+
cookie?: never;
|
|
8449
|
+
};
|
|
8450
|
+
requestBody?: never;
|
|
8451
|
+
responses: {
|
|
8452
|
+
/** @description Successful Response */
|
|
8453
|
+
200: {
|
|
8454
|
+
headers: {
|
|
8455
|
+
[name: string]: unknown;
|
|
8456
|
+
};
|
|
8457
|
+
content: {
|
|
8458
|
+
'application/json': components['schemas']['GetAnalyticsPullRequestsResponse'];
|
|
8459
|
+
};
|
|
8460
|
+
};
|
|
8461
|
+
/** @description The time window is invalid: days combined with start, a non-positive days, or end not after start. */
|
|
8462
|
+
400: {
|
|
8463
|
+
headers: {
|
|
8464
|
+
[name: string]: unknown;
|
|
8465
|
+
};
|
|
8466
|
+
content: {
|
|
8467
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8468
|
+
};
|
|
8469
|
+
};
|
|
8470
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8471
|
+
401: {
|
|
8472
|
+
headers: {
|
|
8473
|
+
[name: string]: unknown;
|
|
8474
|
+
};
|
|
8475
|
+
content: {
|
|
8476
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8477
|
+
};
|
|
8478
|
+
};
|
|
8479
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8480
|
+
403: {
|
|
8481
|
+
headers: {
|
|
8482
|
+
[name: string]: unknown;
|
|
8483
|
+
};
|
|
8484
|
+
content: {
|
|
8485
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8486
|
+
};
|
|
8487
|
+
};
|
|
8488
|
+
/** @description Validation Error */
|
|
8489
|
+
422: {
|
|
8490
|
+
headers: {
|
|
8491
|
+
[name: string]: unknown;
|
|
8492
|
+
};
|
|
8493
|
+
content: {
|
|
8494
|
+
'application/json': components['schemas']['HTTPValidationError'];
|
|
8495
|
+
};
|
|
8496
|
+
};
|
|
8497
|
+
};
|
|
8498
|
+
};
|
|
8499
|
+
get_analytics_reviews: {
|
|
8500
|
+
parameters: {
|
|
8501
|
+
query?: {
|
|
8502
|
+
days?: number | null;
|
|
8503
|
+
start?: string | null;
|
|
8504
|
+
end?: string | null;
|
|
8505
|
+
repo?: string[] | null;
|
|
8506
|
+
/** @description Filter by reviewer login(s). */
|
|
8507
|
+
author?: string[] | null;
|
|
8508
|
+
account_type?: string;
|
|
8509
|
+
review_state?: string[] | null;
|
|
8510
|
+
};
|
|
8511
|
+
header?: {
|
|
8512
|
+
'user-agent'?: string | null;
|
|
8513
|
+
};
|
|
8514
|
+
path?: never;
|
|
8515
|
+
cookie?: never;
|
|
8516
|
+
};
|
|
8517
|
+
requestBody?: never;
|
|
8518
|
+
responses: {
|
|
8519
|
+
/** @description Successful Response */
|
|
8520
|
+
200: {
|
|
8521
|
+
headers: {
|
|
8522
|
+
[name: string]: unknown;
|
|
8523
|
+
};
|
|
8524
|
+
content: {
|
|
8525
|
+
'application/json': components['schemas']['GetAnalyticsReviewsResponse'];
|
|
8526
|
+
};
|
|
8527
|
+
};
|
|
8528
|
+
/** @description The time window is invalid: days combined with start, a non-positive days, or end not after start. */
|
|
8529
|
+
400: {
|
|
8530
|
+
headers: {
|
|
8531
|
+
[name: string]: unknown;
|
|
8532
|
+
};
|
|
8533
|
+
content: {
|
|
8534
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8535
|
+
};
|
|
8536
|
+
};
|
|
8537
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8538
|
+
401: {
|
|
8539
|
+
headers: {
|
|
8540
|
+
[name: string]: unknown;
|
|
8541
|
+
};
|
|
8542
|
+
content: {
|
|
8543
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8544
|
+
};
|
|
8545
|
+
};
|
|
8546
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8547
|
+
403: {
|
|
8548
|
+
headers: {
|
|
8549
|
+
[name: string]: unknown;
|
|
8550
|
+
};
|
|
8551
|
+
content: {
|
|
8552
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8553
|
+
};
|
|
8554
|
+
};
|
|
8555
|
+
/** @description Validation Error */
|
|
8556
|
+
422: {
|
|
8557
|
+
headers: {
|
|
8558
|
+
[name: string]: unknown;
|
|
8559
|
+
};
|
|
8560
|
+
content: {
|
|
8561
|
+
'application/json': components['schemas']['HTTPValidationError'];
|
|
8562
|
+
};
|
|
8563
|
+
};
|
|
8564
|
+
};
|
|
8565
|
+
};
|
|
8566
|
+
cli_auth_poll: {
|
|
8567
|
+
parameters: {
|
|
8568
|
+
query?: never;
|
|
8569
|
+
header?: never;
|
|
8570
|
+
path?: never;
|
|
8571
|
+
cookie?: never;
|
|
8572
|
+
};
|
|
8573
|
+
requestBody: {
|
|
8574
|
+
content: {
|
|
8575
|
+
'application/json': components['schemas']['CliAuthPollRequest'];
|
|
8576
|
+
};
|
|
8577
|
+
};
|
|
8578
|
+
responses: {
|
|
8579
|
+
/** @description Successful Response */
|
|
8580
|
+
200: {
|
|
8581
|
+
headers: {
|
|
8582
|
+
[name: string]: unknown;
|
|
8583
|
+
};
|
|
8584
|
+
content: {
|
|
8585
|
+
'application/json': components['schemas']['PollCliAuthResponse'];
|
|
8586
|
+
};
|
|
8587
|
+
};
|
|
8588
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8589
|
+
401: {
|
|
8590
|
+
headers: {
|
|
8591
|
+
[name: string]: unknown;
|
|
8592
|
+
};
|
|
8593
|
+
content: {
|
|
8594
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8595
|
+
};
|
|
8596
|
+
};
|
|
8597
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8598
|
+
403: {
|
|
8599
|
+
headers: {
|
|
8600
|
+
[name: string]: unknown;
|
|
8601
|
+
};
|
|
8602
|
+
content: {
|
|
8603
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8604
|
+
};
|
|
8605
|
+
};
|
|
8606
|
+
/** @description Unknown device code. */
|
|
8607
|
+
404: {
|
|
8608
|
+
headers: {
|
|
8609
|
+
[name: string]: unknown;
|
|
8610
|
+
};
|
|
8611
|
+
content: {
|
|
8612
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8613
|
+
};
|
|
8614
|
+
};
|
|
8615
|
+
/** @description Validation Error */
|
|
8616
|
+
422: {
|
|
8617
|
+
headers: {
|
|
8618
|
+
[name: string]: unknown;
|
|
8619
|
+
};
|
|
8620
|
+
content: {
|
|
8621
|
+
'application/json': components['schemas']['HTTPValidationError'];
|
|
8622
|
+
};
|
|
8623
|
+
};
|
|
8624
|
+
};
|
|
8625
|
+
};
|
|
8626
|
+
cli_auth_start: {
|
|
8627
|
+
parameters: {
|
|
8628
|
+
query?: never;
|
|
8629
|
+
header?: never;
|
|
8630
|
+
path?: never;
|
|
8631
|
+
cookie?: never;
|
|
8632
|
+
};
|
|
8633
|
+
requestBody?: never;
|
|
8634
|
+
responses: {
|
|
8635
|
+
/** @description Successful Response */
|
|
8636
|
+
201: {
|
|
8637
|
+
headers: {
|
|
8638
|
+
[name: string]: unknown;
|
|
8639
|
+
};
|
|
8640
|
+
content: {
|
|
8641
|
+
'application/json': components['schemas']['StartCliAuthResponse'];
|
|
8642
|
+
};
|
|
8643
|
+
};
|
|
8644
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8645
|
+
401: {
|
|
8646
|
+
headers: {
|
|
8647
|
+
[name: string]: unknown;
|
|
8648
|
+
};
|
|
8649
|
+
content: {
|
|
8650
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8651
|
+
};
|
|
8652
|
+
};
|
|
8653
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8654
|
+
403: {
|
|
8655
|
+
headers: {
|
|
8656
|
+
[name: string]: unknown;
|
|
8657
|
+
};
|
|
8658
|
+
content: {
|
|
8659
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8660
|
+
};
|
|
8661
|
+
};
|
|
8662
|
+
};
|
|
8663
|
+
};
|
|
8664
|
+
get_budget: {
|
|
8665
|
+
parameters: {
|
|
8666
|
+
query?: never;
|
|
8667
|
+
header?: {
|
|
8668
|
+
'user-agent'?: string | null;
|
|
8669
|
+
};
|
|
8670
|
+
path?: never;
|
|
8671
|
+
cookie?: never;
|
|
8672
|
+
};
|
|
8673
|
+
requestBody?: never;
|
|
8674
|
+
responses: {
|
|
8675
|
+
/** @description Successful Response */
|
|
8676
|
+
200: {
|
|
8677
|
+
headers: {
|
|
8678
|
+
[name: string]: unknown;
|
|
8679
|
+
};
|
|
8680
|
+
content: {
|
|
8681
|
+
'application/json': components['schemas']['BudgetSummary'];
|
|
7900
8682
|
};
|
|
7901
8683
|
};
|
|
7902
8684
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
@@ -7928,15 +8710,13 @@ interface operations {
|
|
|
7928
8710
|
};
|
|
7929
8711
|
};
|
|
7930
8712
|
};
|
|
7931
|
-
|
|
8713
|
+
list_environments: {
|
|
7932
8714
|
parameters: {
|
|
7933
8715
|
query?: never;
|
|
7934
8716
|
header?: {
|
|
7935
8717
|
'user-agent'?: string | null;
|
|
7936
8718
|
};
|
|
7937
|
-
path
|
|
7938
|
-
alert_id: string;
|
|
7939
|
-
};
|
|
8719
|
+
path?: never;
|
|
7940
8720
|
cookie?: never;
|
|
7941
8721
|
};
|
|
7942
8722
|
requestBody?: never;
|
|
@@ -7947,7 +8727,7 @@ interface operations {
|
|
|
7947
8727
|
[name: string]: unknown;
|
|
7948
8728
|
};
|
|
7949
8729
|
content: {
|
|
7950
|
-
'application/json': components['schemas']['
|
|
8730
|
+
'application/json': components['schemas']['EnvironmentsListResponse'];
|
|
7951
8731
|
};
|
|
7952
8732
|
};
|
|
7953
8733
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
@@ -7968,15 +8748,6 @@ interface operations {
|
|
|
7968
8748
|
'application/json': components['schemas']['ErrorResponse'];
|
|
7969
8749
|
};
|
|
7970
8750
|
};
|
|
7971
|
-
/** @description No such alert in your account. */
|
|
7972
|
-
404: {
|
|
7973
|
-
headers: {
|
|
7974
|
-
[name: string]: unknown;
|
|
7975
|
-
};
|
|
7976
|
-
content: {
|
|
7977
|
-
'application/json': components['schemas']['ErrorResponse'];
|
|
7978
|
-
};
|
|
7979
|
-
};
|
|
7980
8751
|
/** @description Validation Error */
|
|
7981
8752
|
422: {
|
|
7982
8753
|
headers: {
|
|
@@ -7988,30 +8759,32 @@ interface operations {
|
|
|
7988
8759
|
};
|
|
7989
8760
|
};
|
|
7990
8761
|
};
|
|
7991
|
-
|
|
8762
|
+
create_environment: {
|
|
7992
8763
|
parameters: {
|
|
7993
8764
|
query?: never;
|
|
7994
8765
|
header?: {
|
|
7995
8766
|
'user-agent'?: string | null;
|
|
7996
8767
|
};
|
|
7997
|
-
path
|
|
7998
|
-
alert_id: string;
|
|
7999
|
-
};
|
|
8768
|
+
path?: never;
|
|
8000
8769
|
cookie?: never;
|
|
8001
8770
|
};
|
|
8002
|
-
requestBody
|
|
8771
|
+
requestBody: {
|
|
8772
|
+
content: {
|
|
8773
|
+
'application/json': components['schemas']['CreateEnvironmentRequest'];
|
|
8774
|
+
};
|
|
8775
|
+
};
|
|
8003
8776
|
responses: {
|
|
8004
8777
|
/** @description Successful Response */
|
|
8005
|
-
|
|
8778
|
+
201: {
|
|
8006
8779
|
headers: {
|
|
8007
8780
|
[name: string]: unknown;
|
|
8008
8781
|
};
|
|
8009
8782
|
content: {
|
|
8010
|
-
'application/json': components['schemas']['
|
|
8783
|
+
'application/json': components['schemas']['EnvironmentResponse'];
|
|
8011
8784
|
};
|
|
8012
8785
|
};
|
|
8013
|
-
/** @description The
|
|
8014
|
-
|
|
8786
|
+
/** @description The environment is invalid. */
|
|
8787
|
+
400: {
|
|
8015
8788
|
headers: {
|
|
8016
8789
|
[name: string]: unknown;
|
|
8017
8790
|
};
|
|
@@ -8019,8 +8792,8 @@ interface operations {
|
|
|
8019
8792
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8020
8793
|
};
|
|
8021
8794
|
};
|
|
8022
|
-
/** @description The
|
|
8023
|
-
|
|
8795
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8796
|
+
401: {
|
|
8024
8797
|
headers: {
|
|
8025
8798
|
[name: string]: unknown;
|
|
8026
8799
|
};
|
|
@@ -8028,8 +8801,8 @@ interface operations {
|
|
|
8028
8801
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8029
8802
|
};
|
|
8030
8803
|
};
|
|
8031
|
-
/** @description
|
|
8032
|
-
|
|
8804
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8805
|
+
403: {
|
|
8033
8806
|
headers: {
|
|
8034
8807
|
[name: string]: unknown;
|
|
8035
8808
|
};
|
|
@@ -8037,7 +8810,7 @@ interface operations {
|
|
|
8037
8810
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8038
8811
|
};
|
|
8039
8812
|
};
|
|
8040
|
-
/** @description
|
|
8813
|
+
/** @description An environment with that name already exists. */
|
|
8041
8814
|
409: {
|
|
8042
8815
|
headers: {
|
|
8043
8816
|
[name: string]: unknown;
|
|
@@ -8046,31 +8819,20 @@ interface operations {
|
|
|
8046
8819
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8047
8820
|
};
|
|
8048
8821
|
};
|
|
8049
|
-
/** @description
|
|
8822
|
+
/** @description The environment's name is missing or malformed. */
|
|
8050
8823
|
422: {
|
|
8051
8824
|
headers: {
|
|
8052
8825
|
[name: string]: unknown;
|
|
8053
8826
|
};
|
|
8054
8827
|
content: {
|
|
8055
|
-
'application/json': components['schemas']['
|
|
8828
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8056
8829
|
};
|
|
8057
8830
|
};
|
|
8058
8831
|
};
|
|
8059
8832
|
};
|
|
8060
|
-
|
|
8833
|
+
list_environment_defaults: {
|
|
8061
8834
|
parameters: {
|
|
8062
|
-
query?:
|
|
8063
|
-
days?: number | null;
|
|
8064
|
-
start?: string | null;
|
|
8065
|
-
end?: string | null;
|
|
8066
|
-
/** @description Filter to repositories by "owner/name". */
|
|
8067
|
-
repo?: string[] | null;
|
|
8068
|
-
/** @description Filter by PR-author login(s). */
|
|
8069
|
-
author?: string[] | null;
|
|
8070
|
-
account_type?: string;
|
|
8071
|
-
/** @description Filter by parent-PR status (open|draft|merged|closed). */
|
|
8072
|
-
status?: string[] | null;
|
|
8073
|
-
};
|
|
8835
|
+
query?: never;
|
|
8074
8836
|
header?: {
|
|
8075
8837
|
'user-agent'?: string | null;
|
|
8076
8838
|
};
|
|
@@ -8085,16 +8847,7 @@ interface operations {
|
|
|
8085
8847
|
[name: string]: unknown;
|
|
8086
8848
|
};
|
|
8087
8849
|
content: {
|
|
8088
|
-
'application/json': components['schemas']['
|
|
8089
|
-
};
|
|
8090
|
-
};
|
|
8091
|
-
/** @description The time window is invalid: days combined with start, a non-positive days, or end not after start. */
|
|
8092
|
-
400: {
|
|
8093
|
-
headers: {
|
|
8094
|
-
[name: string]: unknown;
|
|
8095
|
-
};
|
|
8096
|
-
content: {
|
|
8097
|
-
'application/json': components['schemas']['ErrorResponse'];
|
|
8850
|
+
'application/json': components['schemas']['EnvironmentDefaults'];
|
|
8098
8851
|
};
|
|
8099
8852
|
};
|
|
8100
8853
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
@@ -8126,24 +8879,20 @@ interface operations {
|
|
|
8126
8879
|
};
|
|
8127
8880
|
};
|
|
8128
8881
|
};
|
|
8129
|
-
|
|
8882
|
+
put_environment_default: {
|
|
8130
8883
|
parameters: {
|
|
8131
|
-
query?:
|
|
8132
|
-
days?: number | null;
|
|
8133
|
-
start?: string | null;
|
|
8134
|
-
end?: string | null;
|
|
8135
|
-
account_type?: string[] | null;
|
|
8136
|
-
repository_id?: number[] | null;
|
|
8137
|
-
author_id?: number[] | null;
|
|
8138
|
-
status?: string[] | null;
|
|
8139
|
-
};
|
|
8884
|
+
query?: never;
|
|
8140
8885
|
header?: {
|
|
8141
8886
|
'user-agent'?: string | null;
|
|
8142
8887
|
};
|
|
8143
8888
|
path?: never;
|
|
8144
8889
|
cookie?: never;
|
|
8145
8890
|
};
|
|
8146
|
-
requestBody
|
|
8891
|
+
requestBody: {
|
|
8892
|
+
content: {
|
|
8893
|
+
'application/json': components['schemas']['PutEnvironmentDefaultRequest'];
|
|
8894
|
+
};
|
|
8895
|
+
};
|
|
8147
8896
|
responses: {
|
|
8148
8897
|
/** @description Successful Response */
|
|
8149
8898
|
200: {
|
|
@@ -8151,11 +8900,11 @@ interface operations {
|
|
|
8151
8900
|
[name: string]: unknown;
|
|
8152
8901
|
};
|
|
8153
8902
|
content: {
|
|
8154
|
-
'application/json': components['schemas']['
|
|
8903
|
+
'application/json': components['schemas']['EnvironmentDefaults'];
|
|
8155
8904
|
};
|
|
8156
8905
|
};
|
|
8157
|
-
/** @description The
|
|
8158
|
-
|
|
8906
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8907
|
+
401: {
|
|
8159
8908
|
headers: {
|
|
8160
8909
|
[name: string]: unknown;
|
|
8161
8910
|
};
|
|
@@ -8163,8 +8912,8 @@ interface operations {
|
|
|
8163
8912
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8164
8913
|
};
|
|
8165
8914
|
};
|
|
8166
|
-
/** @description The
|
|
8167
|
-
|
|
8915
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8916
|
+
403: {
|
|
8168
8917
|
headers: {
|
|
8169
8918
|
[name: string]: unknown;
|
|
8170
8919
|
};
|
|
@@ -8172,8 +8921,8 @@ interface operations {
|
|
|
8172
8921
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8173
8922
|
};
|
|
8174
8923
|
};
|
|
8175
|
-
/** @description The
|
|
8176
|
-
|
|
8924
|
+
/** @description The environment or repository was not found in your account. */
|
|
8925
|
+
404: {
|
|
8177
8926
|
headers: {
|
|
8178
8927
|
[name: string]: unknown;
|
|
8179
8928
|
};
|
|
@@ -8192,17 +8941,11 @@ interface operations {
|
|
|
8192
8941
|
};
|
|
8193
8942
|
};
|
|
8194
8943
|
};
|
|
8195
|
-
|
|
8944
|
+
delete_environment_default: {
|
|
8196
8945
|
parameters: {
|
|
8197
8946
|
query?: {
|
|
8198
|
-
|
|
8199
|
-
|
|
8200
|
-
end?: string | null;
|
|
8201
|
-
repo?: string[] | null;
|
|
8202
|
-
/** @description Filter by reviewer login(s). */
|
|
8203
|
-
author?: string[] | null;
|
|
8204
|
-
account_type?: string;
|
|
8205
|
-
review_state?: string[] | null;
|
|
8947
|
+
/** @description Repo rung to clear ("owner/name"); omit to clear the account default. */
|
|
8948
|
+
repository?: string | null;
|
|
8206
8949
|
};
|
|
8207
8950
|
header?: {
|
|
8208
8951
|
'user-agent'?: string | null;
|
|
@@ -8213,16 +8956,14 @@ interface operations {
|
|
|
8213
8956
|
requestBody?: never;
|
|
8214
8957
|
responses: {
|
|
8215
8958
|
/** @description Successful Response */
|
|
8216
|
-
|
|
8959
|
+
204: {
|
|
8217
8960
|
headers: {
|
|
8218
8961
|
[name: string]: unknown;
|
|
8219
8962
|
};
|
|
8220
|
-
content
|
|
8221
|
-
'application/json': components['schemas']['GetAnalyticsReviewsResponse'];
|
|
8222
|
-
};
|
|
8963
|
+
content?: never;
|
|
8223
8964
|
};
|
|
8224
|
-
/** @description The
|
|
8225
|
-
|
|
8965
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8966
|
+
401: {
|
|
8226
8967
|
headers: {
|
|
8227
8968
|
[name: string]: unknown;
|
|
8228
8969
|
};
|
|
@@ -8230,8 +8971,8 @@ interface operations {
|
|
|
8230
8971
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8231
8972
|
};
|
|
8232
8973
|
};
|
|
8233
|
-
/** @description The
|
|
8234
|
-
|
|
8974
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8975
|
+
403: {
|
|
8235
8976
|
headers: {
|
|
8236
8977
|
[name: string]: unknown;
|
|
8237
8978
|
};
|
|
@@ -8239,8 +8980,8 @@ interface operations {
|
|
|
8239
8980
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8240
8981
|
};
|
|
8241
8982
|
};
|
|
8242
|
-
/** @description
|
|
8243
|
-
|
|
8983
|
+
/** @description No default is set at that rung, or the repository was not found in your account. */
|
|
8984
|
+
404: {
|
|
8244
8985
|
headers: {
|
|
8245
8986
|
[name: string]: unknown;
|
|
8246
8987
|
};
|
|
@@ -8259,18 +9000,18 @@ interface operations {
|
|
|
8259
9000
|
};
|
|
8260
9001
|
};
|
|
8261
9002
|
};
|
|
8262
|
-
|
|
9003
|
+
get_environment: {
|
|
8263
9004
|
parameters: {
|
|
8264
9005
|
query?: never;
|
|
8265
|
-
header?:
|
|
8266
|
-
|
|
8267
|
-
|
|
8268
|
-
|
|
8269
|
-
|
|
8270
|
-
content: {
|
|
8271
|
-
'application/json': components['schemas']['CliAuthPollRequest'];
|
|
9006
|
+
header?: {
|
|
9007
|
+
'user-agent'?: string | null;
|
|
9008
|
+
};
|
|
9009
|
+
path: {
|
|
9010
|
+
environment_id: string;
|
|
8272
9011
|
};
|
|
9012
|
+
cookie?: never;
|
|
8273
9013
|
};
|
|
9014
|
+
requestBody?: never;
|
|
8274
9015
|
responses: {
|
|
8275
9016
|
/** @description Successful Response */
|
|
8276
9017
|
200: {
|
|
@@ -8278,7 +9019,7 @@ interface operations {
|
|
|
8278
9019
|
[name: string]: unknown;
|
|
8279
9020
|
};
|
|
8280
9021
|
content: {
|
|
8281
|
-
'application/json': components['schemas']['
|
|
9022
|
+
'application/json': components['schemas']['EnvironmentResponse'];
|
|
8282
9023
|
};
|
|
8283
9024
|
};
|
|
8284
9025
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
@@ -8299,7 +9040,7 @@ interface operations {
|
|
|
8299
9040
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8300
9041
|
};
|
|
8301
9042
|
};
|
|
8302
|
-
/** @description
|
|
9043
|
+
/** @description No such environment in your account. */
|
|
8303
9044
|
404: {
|
|
8304
9045
|
headers: {
|
|
8305
9046
|
[name: string]: unknown;
|
|
@@ -8319,22 +9060,39 @@ interface operations {
|
|
|
8319
9060
|
};
|
|
8320
9061
|
};
|
|
8321
9062
|
};
|
|
8322
|
-
|
|
9063
|
+
update_environment: {
|
|
8323
9064
|
parameters: {
|
|
8324
9065
|
query?: never;
|
|
8325
|
-
header?:
|
|
8326
|
-
|
|
9066
|
+
header?: {
|
|
9067
|
+
'user-agent'?: string | null;
|
|
9068
|
+
};
|
|
9069
|
+
path: {
|
|
9070
|
+
environment_id: string;
|
|
9071
|
+
};
|
|
8327
9072
|
cookie?: never;
|
|
8328
9073
|
};
|
|
8329
|
-
requestBody
|
|
9074
|
+
requestBody: {
|
|
9075
|
+
content: {
|
|
9076
|
+
'application/json': components['schemas']['UpdateEnvironmentRequest'];
|
|
9077
|
+
};
|
|
9078
|
+
};
|
|
8330
9079
|
responses: {
|
|
8331
9080
|
/** @description Successful Response */
|
|
8332
|
-
|
|
9081
|
+
200: {
|
|
8333
9082
|
headers: {
|
|
8334
9083
|
[name: string]: unknown;
|
|
8335
9084
|
};
|
|
8336
9085
|
content: {
|
|
8337
|
-
'application/json': components['schemas']['
|
|
9086
|
+
'application/json': components['schemas']['EnvironmentResponse'];
|
|
9087
|
+
};
|
|
9088
|
+
};
|
|
9089
|
+
/** @description The environment is invalid. */
|
|
9090
|
+
400: {
|
|
9091
|
+
headers: {
|
|
9092
|
+
[name: string]: unknown;
|
|
9093
|
+
};
|
|
9094
|
+
content: {
|
|
9095
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8338
9096
|
};
|
|
8339
9097
|
};
|
|
8340
9098
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
@@ -8355,27 +9113,54 @@ interface operations {
|
|
|
8355
9113
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8356
9114
|
};
|
|
8357
9115
|
};
|
|
9116
|
+
/** @description No such environment in your account. */
|
|
9117
|
+
404: {
|
|
9118
|
+
headers: {
|
|
9119
|
+
[name: string]: unknown;
|
|
9120
|
+
};
|
|
9121
|
+
content: {
|
|
9122
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
9123
|
+
};
|
|
9124
|
+
};
|
|
9125
|
+
/** @description The environment is defined by a file in a repository, or another live environment already holds the new name. */
|
|
9126
|
+
409: {
|
|
9127
|
+
headers: {
|
|
9128
|
+
[name: string]: unknown;
|
|
9129
|
+
};
|
|
9130
|
+
content: {
|
|
9131
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
9132
|
+
};
|
|
9133
|
+
};
|
|
9134
|
+
/** @description The environment's name is missing or malformed. */
|
|
9135
|
+
422: {
|
|
9136
|
+
headers: {
|
|
9137
|
+
[name: string]: unknown;
|
|
9138
|
+
};
|
|
9139
|
+
content: {
|
|
9140
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
9141
|
+
};
|
|
9142
|
+
};
|
|
8358
9143
|
};
|
|
8359
9144
|
};
|
|
8360
|
-
|
|
9145
|
+
delete_environment: {
|
|
8361
9146
|
parameters: {
|
|
8362
9147
|
query?: never;
|
|
8363
9148
|
header?: {
|
|
8364
9149
|
'user-agent'?: string | null;
|
|
8365
9150
|
};
|
|
8366
|
-
path
|
|
9151
|
+
path: {
|
|
9152
|
+
environment_id: string;
|
|
9153
|
+
};
|
|
8367
9154
|
cookie?: never;
|
|
8368
9155
|
};
|
|
8369
9156
|
requestBody?: never;
|
|
8370
9157
|
responses: {
|
|
8371
9158
|
/** @description Successful Response */
|
|
8372
|
-
|
|
9159
|
+
204: {
|
|
8373
9160
|
headers: {
|
|
8374
9161
|
[name: string]: unknown;
|
|
8375
9162
|
};
|
|
8376
|
-
content
|
|
8377
|
-
'application/json': components['schemas']['BudgetSummary'];
|
|
8378
|
-
};
|
|
9163
|
+
content?: never;
|
|
8379
9164
|
};
|
|
8380
9165
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8381
9166
|
401: {
|
|
@@ -8395,6 +9180,24 @@ interface operations {
|
|
|
8395
9180
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8396
9181
|
};
|
|
8397
9182
|
};
|
|
9183
|
+
/** @description No such environment in your account. */
|
|
9184
|
+
404: {
|
|
9185
|
+
headers: {
|
|
9186
|
+
[name: string]: unknown;
|
|
9187
|
+
};
|
|
9188
|
+
content: {
|
|
9189
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
9190
|
+
};
|
|
9191
|
+
};
|
|
9192
|
+
/** @description The environment is defined by a file in a repository; delete that file instead. */
|
|
9193
|
+
409: {
|
|
9194
|
+
headers: {
|
|
9195
|
+
[name: string]: unknown;
|
|
9196
|
+
};
|
|
9197
|
+
content: {
|
|
9198
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
9199
|
+
};
|
|
9200
|
+
};
|
|
8398
9201
|
/** @description Validation Error */
|
|
8399
9202
|
422: {
|
|
8400
9203
|
headers: {
|
|
@@ -9895,7 +10698,7 @@ interface operations {
|
|
|
9895
10698
|
'application/json': components['schemas']['SessionResponse'];
|
|
9896
10699
|
};
|
|
9897
10700
|
};
|
|
9898
|
-
/** @description The request combines incompatible fields (
|
|
10701
|
+
/** @description The request combines incompatible fields (both config sources, or a one-shot run with no prompt or input), or the config override is invalid. */
|
|
9899
10702
|
400: {
|
|
9900
10703
|
headers: {
|
|
9901
10704
|
[name: string]: unknown;
|
|
@@ -9922,7 +10725,7 @@ interface operations {
|
|
|
9922
10725
|
'application/json': components['schemas']['ErrorResponse'];
|
|
9923
10726
|
};
|
|
9924
10727
|
};
|
|
9925
|
-
/** @description The named agent
|
|
10728
|
+
/** @description The named agent does not exist in your account. */
|
|
9926
10729
|
404: {
|
|
9927
10730
|
headers: {
|
|
9928
10731
|
[name: string]: unknown;
|
|
@@ -10716,6 +11519,15 @@ type GithubAccountType = 'User' | 'Organization' | 'Bot' | 'Mannequin';
|
|
|
10716
11519
|
* Where the resolved budget came from.
|
|
10717
11520
|
*/
|
|
10718
11521
|
type BudgetSource = 'system' | 'account' | 'config' | 'run';
|
|
11522
|
+
/**
|
|
11523
|
+
* How a session's environment was chosen. None (the field is nullable)
|
|
11524
|
+
* when the config carried an inline environment block and no resolution ran —
|
|
11525
|
+
* an inline environment is not a reference, so there is nothing to record.
|
|
11526
|
+
*
|
|
11527
|
+
* Not derivable from the row: `environment_id` says WHICH environment, not
|
|
11528
|
+
* how it was chosen, and is null for the built-in basic sandbox.
|
|
11529
|
+
*/
|
|
11530
|
+
type EnvironmentSource = 'request' | 'agent_config' | 'repo_default' | 'account_default' | 'platform_default';
|
|
10719
11531
|
/**
|
|
10720
11532
|
* Why a terminal agent session ended — a finer-grained reason than `status`.
|
|
10721
11533
|
*
|
|
@@ -10851,6 +11663,7 @@ interface Session {
|
|
|
10851
11663
|
* When the session was created.
|
|
10852
11664
|
*/
|
|
10853
11665
|
created_at: string;
|
|
11666
|
+
environment: SessionEnvironment;
|
|
10854
11667
|
/**
|
|
10855
11668
|
* How the session ended; null until it is terminal.
|
|
10856
11669
|
*/
|
|
@@ -10934,9 +11747,8 @@ interface AgentConfig {
|
|
|
10934
11747
|
claude: AgentConfigClaude;
|
|
10935
11748
|
codex: AgentConfigCodex | null;
|
|
10936
11749
|
ellipsis: AgentConfigEllipsis;
|
|
10937
|
-
environment: AgentConfigEnvironment;
|
|
11750
|
+
environment: string | AgentConfigEnvironment;
|
|
10938
11751
|
input: AgentConfigInput | null;
|
|
10939
|
-
mcp_servers: (string | AgentConfigMcpServer)[];
|
|
10940
11752
|
output: AgentConfigOutput | null;
|
|
10941
11753
|
permissions: AgentConfigPermissions;
|
|
10942
11754
|
skills: AgentConfigSkill[];
|
|
@@ -10997,22 +11809,19 @@ interface AgentConfigCodex {
|
|
|
10997
11809
|
/**
|
|
10998
11810
|
* The Ellipsis product namespace for a config file: which schema this is
|
|
10999
11811
|
* (`version`), the human-facing identity (`name`/`description`), freeform
|
|
11000
|
-
* organizational `metadata`, whether the agent is `enabled
|
|
11001
|
-
*
|
|
11002
|
-
*
|
|
11003
|
-
*
|
|
11004
|
-
* `yaml_is_ellipsis_config`.
|
|
11812
|
+
* organizational `metadata`, and whether the agent is `enabled`. The
|
|
11813
|
+
* presence of a top-level `ellipsis:` mapping is what marks a YAML file as
|
|
11814
|
+
* an Ellipsis agent config (vs arbitrary YAML that merely lives under a
|
|
11815
|
+
* config directory) — see `yaml_is_ellipsis_config`.
|
|
11005
11816
|
*
|
|
11006
|
-
* `enabled
|
|
11007
|
-
*
|
|
11008
|
-
*
|
|
11009
|
-
*
|
|
11010
|
-
* is the trigger's job.
|
|
11817
|
+
* `enabled` is agent behavior, not freeform metadata, so it stays inside
|
|
11818
|
+
* the config `sha` (only `metadata` is sha-excluded). Whether a session
|
|
11819
|
+
* accepts messages is a per-run choice (POST /v1/sessions `interactive`),
|
|
11820
|
+
* not a config one.
|
|
11011
11821
|
*/
|
|
11012
11822
|
interface AgentConfigEllipsis {
|
|
11013
11823
|
description: string | null;
|
|
11014
11824
|
enabled: boolean;
|
|
11015
|
-
interactive: boolean;
|
|
11016
11825
|
metadata: AgentConfigMetadata;
|
|
11017
11826
|
name: string | null;
|
|
11018
11827
|
version: string;
|
|
@@ -11040,6 +11849,7 @@ interface AgentConfigEnvironment {
|
|
|
11040
11849
|
compute: AgentConfigCompute;
|
|
11041
11850
|
hooks: AgentConfigEnvironmentHooks;
|
|
11042
11851
|
image: AgentConfigEnvironmentImage;
|
|
11852
|
+
mcp_servers: (string | AgentConfigMcpServer | AgentConfigMcpStdioServer | AgentConfigMcpRemoteServer)[];
|
|
11043
11853
|
repositories: AgentConfigRepository[];
|
|
11044
11854
|
variables: AgentConfigEnvironmentVariable[];
|
|
11045
11855
|
}
|
|
@@ -11130,6 +11940,49 @@ interface AgentConfigEnvironmentImage {
|
|
|
11130
11940
|
dockerfile_append: string | null;
|
|
11131
11941
|
setup: string | null;
|
|
11132
11942
|
}
|
|
11943
|
+
/**
|
|
11944
|
+
* One built-in MCP server this agent opts into by name (`linear`/`slack`).
|
|
11945
|
+
* A name reference over the connected built-in set — the platform manages the
|
|
11946
|
+
* server's transport and credentials. It only matters when the named
|
|
11947
|
+
* integration is set to `opt_in` inclusion; an integration in the default
|
|
11948
|
+
* `all_sessions` mode is added regardless. For a server the platform does not
|
|
11949
|
+
* provide, define it instead (`AgentConfigMcpStdioServer` /
|
|
11950
|
+
* `AgentConfigMcpRemoteServer`).
|
|
11951
|
+
*/
|
|
11952
|
+
interface AgentConfigMcpServer {
|
|
11953
|
+
name: string;
|
|
11954
|
+
}
|
|
11955
|
+
/**
|
|
11956
|
+
* A bring-your-own stdio MCP server: the harness spawns `command` inside
|
|
11957
|
+
* the sandbox and speaks JSON-RPC over its stdin/stdout. The command must be
|
|
11958
|
+
* runnable in the sandbox image — install its runtime via `image.setup` /
|
|
11959
|
+
* `image.dockerfile_append` if the base image lacks it.
|
|
11960
|
+
*
|
|
11961
|
+
* `env` values may embed `${NAME}` references, resolved at run time from the
|
|
11962
|
+
* account's secrets store (see `mcp_secret_refs`); everything else is passed
|
|
11963
|
+
* literally.
|
|
11964
|
+
*/
|
|
11965
|
+
interface AgentConfigMcpStdioServer {
|
|
11966
|
+
args: string[];
|
|
11967
|
+
command: string;
|
|
11968
|
+
env: {
|
|
11969
|
+
[k: string]: string;
|
|
11970
|
+
};
|
|
11971
|
+
name: string;
|
|
11972
|
+
}
|
|
11973
|
+
/**
|
|
11974
|
+
* A bring-your-own remote MCP server: the harness talks HTTP to `url`.
|
|
11975
|
+
* Nothing runs in the sandbox image. `headers` carry static auth (e.g.
|
|
11976
|
+
* `Authorization: Bearer ${TOKEN}`); values may embed `${NAME}` secret
|
|
11977
|
+
* references, resolved at run time from the account's secrets store.
|
|
11978
|
+
*/
|
|
11979
|
+
interface AgentConfigMcpRemoteServer {
|
|
11980
|
+
headers: {
|
|
11981
|
+
[k: string]: string;
|
|
11982
|
+
};
|
|
11983
|
+
name: string;
|
|
11984
|
+
url: string;
|
|
11985
|
+
}
|
|
11133
11986
|
/**
|
|
11134
11987
|
* One environment variable injected into the agent's sandbox.
|
|
11135
11988
|
*
|
|
@@ -11165,17 +12018,6 @@ interface AgentConfigInput {
|
|
|
11165
12018
|
} | null;
|
|
11166
12019
|
message: string | null;
|
|
11167
12020
|
}
|
|
11168
|
-
/**
|
|
11169
|
-
* One built-in MCP server this agent opts into by name (`linear`/`slack`).
|
|
11170
|
-
* This is a name reference over the connected built-in set, NOT a custom-server
|
|
11171
|
-
* definition — there is no command/url/headers shape (that was the old,
|
|
11172
|
-
* removed field, and Ellipsis does not support bring-your-own MCP servers).
|
|
11173
|
-
* It only matters when the named integration is set to `opt_in` inclusion; an
|
|
11174
|
-
* integration in the default `all_sessions` mode is added regardless.
|
|
11175
|
-
*/
|
|
11176
|
-
interface AgentConfigMcpServer {
|
|
11177
|
-
name: string;
|
|
11178
|
-
}
|
|
11179
12021
|
/**
|
|
11180
12022
|
* The typed output contract: the JSON Schema the agent must exit through
|
|
11181
12023
|
* (the StructuredOutput exit tool). Read back via
|
|
@@ -11386,6 +12228,19 @@ interface SessionCost {
|
|
|
11386
12228
|
*/
|
|
11387
12229
|
total: number;
|
|
11388
12230
|
}
|
|
12231
|
+
/**
|
|
12232
|
+
* The environment the session resolved: the saved environment's id and how it was chosen. The environment's frozen body is inside agent.config.environment.
|
|
12233
|
+
*/
|
|
12234
|
+
interface SessionEnvironment {
|
|
12235
|
+
/**
|
|
12236
|
+
* Identifier of the saved environment the session's config resolved. Null for an inline environment block or the built-in basic sandbox.
|
|
12237
|
+
*/
|
|
12238
|
+
environment_id: string | null;
|
|
12239
|
+
/**
|
|
12240
|
+
* How the environment was chosen (request, agent_config, repo_default, account_default, platform_default). Null when the config carried its own inline environment.
|
|
12241
|
+
*/
|
|
12242
|
+
source: EnvironmentSource | null;
|
|
12243
|
+
}
|
|
11389
12244
|
/**
|
|
11390
12245
|
* Every repo the session touched. Small enough to ride on `agent_sessions`
|
|
11391
12246
|
* and be returned by every session read.
|
|
@@ -12036,6 +12891,7 @@ interface Session1 {
|
|
|
12036
12891
|
* When the session was created.
|
|
12037
12892
|
*/
|
|
12038
12893
|
created_at: string;
|
|
12894
|
+
environment: SessionEnvironment;
|
|
12039
12895
|
/**
|
|
12040
12896
|
* How the session ended; null until it is terminal.
|
|
12041
12897
|
*/
|