@ellipsis-dev/sdk 0.15.1 → 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/chunk-RMPAMUAE.js +208 -0
- package/dist/index.d.ts +112 -29
- package/dist/index.js +132 -19
- package/dist/store/index.d.ts +45 -2
- package/dist/store/index.js +318 -4
- package/dist/stream/index.d.ts +1 -1
- package/dist/stream/index.js +18 -189
- package/dist/{types-D9g-eZui.d.ts → types--VF0yCc1.d.ts} +1207 -343
- package/package.json +1 -1
- package/schema/frames.schema.json +324 -150
- package/schema/openapi.v1.json +1956 -821
|
@@ -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
|
|
@@ -4625,16 +4922,13 @@ interface components {
|
|
|
4625
4922
|
* @description The session execution that produced the record, or null for session-scoped lifecycle records.
|
|
4626
4923
|
*/
|
|
4627
4924
|
execution_id?: string | null;
|
|
4925
|
+
/** @description What the session did to git, per repository, so a result row can show what it shipped without fetching the session. */
|
|
4926
|
+
git?: components['schemas']['SessionGit'] | null;
|
|
4628
4927
|
/**
|
|
4629
4928
|
* Id
|
|
4630
4929
|
* @description The matching record's unique identifier.
|
|
4631
4930
|
*/
|
|
4632
4931
|
id: string;
|
|
4633
|
-
/**
|
|
4634
|
-
* Output Prs
|
|
4635
|
-
* @description Pull requests the session created, so a result row can show what it shipped without fetching the session.
|
|
4636
|
-
*/
|
|
4637
|
-
output_prs?: components['schemas']['SessionPr'][] | null;
|
|
4638
4932
|
/**
|
|
4639
4933
|
* Record Type
|
|
4640
4934
|
* @description The record's event type.
|
|
@@ -4680,17 +4974,12 @@ interface components {
|
|
|
4680
4974
|
*/
|
|
4681
4975
|
config_id?: string | null;
|
|
4682
4976
|
/**
|
|
4683
|
-
*
|
|
4684
|
-
* @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.
|
|
4685
4979
|
*/
|
|
4686
|
-
|
|
4980
|
+
override?: {
|
|
4687
4981
|
[key: string]: unknown;
|
|
4688
4982
|
} | null;
|
|
4689
|
-
/**
|
|
4690
|
-
* Config Override Yaml
|
|
4691
|
-
* @description The same partial-config override as a YAML/JSON string (e.g. read from a file). Mutually exclusive with config_override.
|
|
4692
|
-
*/
|
|
4693
|
-
config_override_yaml?: string | null;
|
|
4694
4983
|
/**
|
|
4695
4984
|
* Prompt
|
|
4696
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.
|
|
@@ -4752,7 +5041,7 @@ interface components {
|
|
|
4752
5041
|
* routes; nothing maps to it yet.
|
|
4753
5042
|
* @enum {string}
|
|
4754
5043
|
*/
|
|
4755
|
-
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';
|
|
4756
5045
|
/**
|
|
4757
5046
|
* Review
|
|
4758
5047
|
* @description One code review: one pipeline iteration over one commit range of a pull
|
|
@@ -5975,8 +6264,12 @@ interface components {
|
|
|
5975
6264
|
* @description When the session was created.
|
|
5976
6265
|
*/
|
|
5977
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'];
|
|
5978
6269
|
/** @description How the session ended; null until it is terminal. */
|
|
5979
6270
|
exit_status?: components['schemas']['SessionExitStatus'] | null;
|
|
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. */
|
|
6272
|
+
git?: components['schemas']['SessionGit'] | null;
|
|
5980
6273
|
/** @description The coding-agent harness the session runs on. */
|
|
5981
6274
|
harness: components['schemas']['Harness'];
|
|
5982
6275
|
/**
|
|
@@ -6002,13 +6295,6 @@ interface components {
|
|
|
6002
6295
|
metadata: {
|
|
6003
6296
|
[key: string]: string;
|
|
6004
6297
|
};
|
|
6005
|
-
/** @description Per-file line counts for the uncommitted changes in the session's workspace. Work the session committed is not included here — see output_prs. Null if no diff was ever captured. */
|
|
6006
|
-
output_diff?: components['schemas']['SessionDiff'] | null;
|
|
6007
|
-
/**
|
|
6008
|
-
* Output Prs
|
|
6009
|
-
* @description Pull requests the session created or updated.
|
|
6010
|
-
*/
|
|
6011
|
-
output_prs?: components['schemas']['SessionPr'][] | null;
|
|
6012
6298
|
/** @description What preceded this session, if anything. */
|
|
6013
6299
|
parent?: components['schemas']['SessionParent'];
|
|
6014
6300
|
/**
|
|
@@ -6148,35 +6434,20 @@ interface components {
|
|
|
6148
6434
|
total: number;
|
|
6149
6435
|
};
|
|
6150
6436
|
/**
|
|
6151
|
-
*
|
|
6152
|
-
* @description The
|
|
6153
|
-
*
|
|
6154
|
-
*
|
|
6155
|
-
*
|
|
6156
|
-
* Scope is UNCOMMITTED work only (`git diff HEAD`), so this answers "is there
|
|
6157
|
-
* unlanded work in this sandbox?" — a session that committed and pushed shows
|
|
6158
|
-
* no files here and its created PR instead.
|
|
6159
|
-
*/
|
|
6160
|
-
SessionDiff: {
|
|
6161
|
-
/** Files */
|
|
6162
|
-
files: components['schemas']['SessionDiffFile'][];
|
|
6163
|
-
};
|
|
6164
|
-
/**
|
|
6165
|
-
* SessionDiffFile
|
|
6166
|
-
* @description One file's uncommitted change in a session's sandbox, as `git diff HEAD`
|
|
6167
|
-
* --numstat reports it (with intent-to-add so new files count).
|
|
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.
|
|
6168
6442
|
*/
|
|
6169
|
-
|
|
6170
|
-
/**
|
|
6171
|
-
|
|
6172
|
-
|
|
6173
|
-
|
|
6174
|
-
|
|
6175
|
-
|
|
6176
|
-
|
|
6177
|
-
repo: string;
|
|
6178
|
-
/** Status */
|
|
6179
|
-
status: string;
|
|
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;
|
|
6180
6451
|
};
|
|
6181
6452
|
/**
|
|
6182
6453
|
* SessionExecution
|
|
@@ -6266,6 +6537,75 @@ interface components {
|
|
|
6266
6537
|
* @enum {string}
|
|
6267
6538
|
*/
|
|
6268
6539
|
SessionExitStatus: 'completed' | 'budget_hit' | 'payment_required' | 'tool_call_failed' | 'lifecycle_hook_failed' | 'missing_repo_access' | 'missing_token_permissions' | 'missing_sandbox_variables' | 'blocked' | 'contact_email_required' | 'cancelled' | 'interrupted' | 'error' | 'stopped';
|
|
6540
|
+
/**
|
|
6541
|
+
* SessionGit
|
|
6542
|
+
* @description Every repo the session touched. Small enough to ride on `agent_sessions`
|
|
6543
|
+
* and be returned by every session read.
|
|
6544
|
+
*/
|
|
6545
|
+
SessionGit: {
|
|
6546
|
+
/**
|
|
6547
|
+
* Repos
|
|
6548
|
+
* @default []
|
|
6549
|
+
*/
|
|
6550
|
+
repos: components['schemas']['SessionGitRepo'][];
|
|
6551
|
+
};
|
|
6552
|
+
/**
|
|
6553
|
+
* SessionGitFile
|
|
6554
|
+
* @description One file's uncommitted change, as `git diff HEAD --numstat` reports it
|
|
6555
|
+
* (with intent-to-add, so a brand-new file still counts).
|
|
6556
|
+
*/
|
|
6557
|
+
SessionGitFile: {
|
|
6558
|
+
/** Additions */
|
|
6559
|
+
additions: number;
|
|
6560
|
+
/** Deletions */
|
|
6561
|
+
deletions: number;
|
|
6562
|
+
/** Path */
|
|
6563
|
+
path: string;
|
|
6564
|
+
/** Status */
|
|
6565
|
+
status: string;
|
|
6566
|
+
};
|
|
6567
|
+
/**
|
|
6568
|
+
* SessionGitPr
|
|
6569
|
+
* @description A pull request the session opened in this repo, denormalized at capture
|
|
6570
|
+
* time so a surface renders a labeled link without joining gh_prs. Live PR
|
|
6571
|
+
* state (open/merged/closed) is not stored — read gh_prs where a view needs
|
|
6572
|
+
* it. The repo is the parent object, so it is not repeated here.
|
|
6573
|
+
*/
|
|
6574
|
+
SessionGitPr: {
|
|
6575
|
+
/** Gh Pr Id */
|
|
6576
|
+
gh_pr_id?: number | null;
|
|
6577
|
+
/** Number */
|
|
6578
|
+
number: number;
|
|
6579
|
+
/** Title */
|
|
6580
|
+
title?: string | null;
|
|
6581
|
+
/** Url */
|
|
6582
|
+
url: string;
|
|
6583
|
+
};
|
|
6584
|
+
/**
|
|
6585
|
+
* SessionGitRepo
|
|
6586
|
+
* @description One checkout in the session's sandbox and everything the session did to
|
|
6587
|
+
* it, split by whether it survived the sandbox.
|
|
6588
|
+
*/
|
|
6589
|
+
SessionGitRepo: {
|
|
6590
|
+
/** Full Name */
|
|
6591
|
+
full_name: string;
|
|
6592
|
+
/** Local Commit */
|
|
6593
|
+
local_commit?: string | null;
|
|
6594
|
+
/**
|
|
6595
|
+
* Local Uncommitted Files
|
|
6596
|
+
* @default []
|
|
6597
|
+
*/
|
|
6598
|
+
local_uncommitted_files: components['schemas']['SessionGitFile'][];
|
|
6599
|
+
/**
|
|
6600
|
+
* Prs
|
|
6601
|
+
* @default []
|
|
6602
|
+
*/
|
|
6603
|
+
prs: components['schemas']['SessionGitPr'][];
|
|
6604
|
+
/** Remote Branch */
|
|
6605
|
+
remote_branch?: string | null;
|
|
6606
|
+
/** Remote Commit */
|
|
6607
|
+
remote_commit?: string | null;
|
|
6608
|
+
};
|
|
6269
6609
|
/**
|
|
6270
6610
|
* SessionLiveness
|
|
6271
6611
|
* @description The durable conversation axis (backs the surfaced `session` field).
|
|
@@ -6400,25 +6740,6 @@ interface components {
|
|
|
6400
6740
|
*/
|
|
6401
6741
|
session_id?: string | null;
|
|
6402
6742
|
};
|
|
6403
|
-
/**
|
|
6404
|
-
* SessionPr
|
|
6405
|
-
* @description A pull request this session created, denormalized at capture time so
|
|
6406
|
-
* session surfaces render a labeled link without joining gh_prs. Live PR
|
|
6407
|
-
* state (open/merged/closed) is not stored here — read it from gh_prs where
|
|
6408
|
-
* a view needs it.
|
|
6409
|
-
*/
|
|
6410
|
-
SessionPr: {
|
|
6411
|
-
/** Gh Pr Id */
|
|
6412
|
-
gh_pr_id?: number | null;
|
|
6413
|
-
/** Number */
|
|
6414
|
-
number: number;
|
|
6415
|
-
/** Repo Full Name */
|
|
6416
|
-
repo_full_name: string;
|
|
6417
|
-
/** Title */
|
|
6418
|
-
title?: string | null;
|
|
6419
|
-
/** Url */
|
|
6420
|
-
url: string;
|
|
6421
|
-
};
|
|
6422
6743
|
/**
|
|
6423
6744
|
* SessionPrompting
|
|
6424
6745
|
* @description The prompt-affordance projection. `enabled` answers "would a send work",
|
|
@@ -6801,7 +7122,7 @@ interface components {
|
|
|
6801
7122
|
* @description Parameters for starting a new agent session.
|
|
6802
7123
|
*/
|
|
6803
7124
|
StartAgentSessionRequest: {
|
|
6804
|
-
/** @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). */
|
|
6805
7126
|
config?: components['schemas']['AgentConfig'] | null;
|
|
6806
7127
|
/**
|
|
6807
7128
|
* Config Id
|
|
@@ -6809,29 +7130,16 @@ interface components {
|
|
|
6809
7130
|
*/
|
|
6810
7131
|
config_id?: string | null;
|
|
6811
7132
|
/**
|
|
6812
|
-
*
|
|
6813
|
-
* @description
|
|
6814
|
-
*/
|
|
6815
|
-
config_override?: {
|
|
6816
|
-
[key: string]: unknown;
|
|
6817
|
-
} | null;
|
|
6818
|
-
/**
|
|
6819
|
-
* Config Override Yaml
|
|
6820
|
-
* @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.
|
|
6821
7135
|
*/
|
|
6822
|
-
|
|
7136
|
+
environment?: string | null;
|
|
6823
7137
|
/**
|
|
6824
7138
|
* Force Rebuild
|
|
6825
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`.
|
|
6826
7140
|
* @default false
|
|
6827
7141
|
*/
|
|
6828
7142
|
force_rebuild: boolean;
|
|
6829
|
-
/**
|
|
6830
|
-
* Idle Start
|
|
6831
|
-
* @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).
|
|
6832
|
-
* @default false
|
|
6833
|
-
*/
|
|
6834
|
-
idle_start: boolean;
|
|
6835
7143
|
/**
|
|
6836
7144
|
* Input
|
|
6837
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.
|
|
@@ -6839,6 +7147,12 @@ interface components {
|
|
|
6839
7147
|
input?: {
|
|
6840
7148
|
[key: string]: unknown;
|
|
6841
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;
|
|
6842
7156
|
/**
|
|
6843
7157
|
* Metadata
|
|
6844
7158
|
* @description Arbitrary string key/value metadata stored on the session.
|
|
@@ -6847,9 +7161,16 @@ interface components {
|
|
|
6847
7161
|
metadata: {
|
|
6848
7162
|
[key: string]: string;
|
|
6849
7163
|
};
|
|
7164
|
+
/**
|
|
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;
|
|
6850
7171
|
/**
|
|
6851
7172
|
* Prompt
|
|
6852
|
-
* @description
|
|
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.
|
|
6853
7174
|
*/
|
|
6854
7175
|
prompt?: string | null;
|
|
6855
7176
|
/**
|
|
@@ -6857,11 +7178,6 @@ interface components {
|
|
|
6857
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.
|
|
6858
7179
|
*/
|
|
6859
7180
|
repository?: string | null;
|
|
6860
|
-
/**
|
|
6861
|
-
* Template Id
|
|
6862
|
-
* @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).
|
|
6863
|
-
*/
|
|
6864
|
-
template_id?: string | null;
|
|
6865
7181
|
};
|
|
6866
7182
|
/**
|
|
6867
7183
|
* StartCliAuthResponse
|
|
@@ -6964,6 +7280,14 @@ interface components {
|
|
|
6964
7280
|
/** @description The agent's new definition. Replaces the previous one wholesale — this is not a partial update. */
|
|
6965
7281
|
config: components['schemas']['AgentConfig'];
|
|
6966
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
|
+
};
|
|
6967
7291
|
/**
|
|
6968
7292
|
* UsageDailyPoint
|
|
6969
7293
|
* @description One day's usage: tokens split by type, and cost split into the four
|
|
@@ -7151,15 +7475,15 @@ interface operations {
|
|
|
7151
7475
|
};
|
|
7152
7476
|
responses: {
|
|
7153
7477
|
/** @description Successful Response */
|
|
7154
|
-
|
|
7478
|
+
201: {
|
|
7155
7479
|
headers: {
|
|
7156
7480
|
[name: string]: unknown;
|
|
7157
7481
|
};
|
|
7158
7482
|
content: {
|
|
7159
|
-
'application/json': components['schemas']['
|
|
7483
|
+
'application/json': components['schemas']['AgentConfigResponse'];
|
|
7160
7484
|
};
|
|
7161
7485
|
};
|
|
7162
|
-
/** @description
|
|
7486
|
+
/** @description The config is invalid. */
|
|
7163
7487
|
400: {
|
|
7164
7488
|
headers: {
|
|
7165
7489
|
[name: string]: unknown;
|
|
@@ -7186,16 +7510,7 @@ interface operations {
|
|
|
7186
7510
|
'application/json': components['schemas']['ErrorResponse'];
|
|
7187
7511
|
};
|
|
7188
7512
|
};
|
|
7189
|
-
/** @description
|
|
7190
|
-
404: {
|
|
7191
|
-
headers: {
|
|
7192
|
-
[name: string]: unknown;
|
|
7193
|
-
};
|
|
7194
|
-
content: {
|
|
7195
|
-
'application/json': components['schemas']['ErrorResponse'];
|
|
7196
|
-
};
|
|
7197
|
-
};
|
|
7198
|
-
/** @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. */
|
|
7199
7514
|
409: {
|
|
7200
7515
|
headers: {
|
|
7201
7516
|
[name: string]: unknown;
|
|
@@ -7957,8 +8272,475 @@ interface operations {
|
|
|
7957
8272
|
'application/json': components['schemas']['ErrorResponse'];
|
|
7958
8273
|
};
|
|
7959
8274
|
};
|
|
7960
|
-
/** @description No such alert in your account. */
|
|
7961
|
-
404: {
|
|
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'];
|
|
8682
|
+
};
|
|
8683
|
+
};
|
|
8684
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8685
|
+
401: {
|
|
8686
|
+
headers: {
|
|
8687
|
+
[name: string]: unknown;
|
|
8688
|
+
};
|
|
8689
|
+
content: {
|
|
8690
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8691
|
+
};
|
|
8692
|
+
};
|
|
8693
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8694
|
+
403: {
|
|
8695
|
+
headers: {
|
|
8696
|
+
[name: string]: unknown;
|
|
8697
|
+
};
|
|
8698
|
+
content: {
|
|
8699
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8700
|
+
};
|
|
8701
|
+
};
|
|
8702
|
+
/** @description Validation Error */
|
|
8703
|
+
422: {
|
|
8704
|
+
headers: {
|
|
8705
|
+
[name: string]: unknown;
|
|
8706
|
+
};
|
|
8707
|
+
content: {
|
|
8708
|
+
'application/json': components['schemas']['HTTPValidationError'];
|
|
8709
|
+
};
|
|
8710
|
+
};
|
|
8711
|
+
};
|
|
8712
|
+
};
|
|
8713
|
+
list_environments: {
|
|
8714
|
+
parameters: {
|
|
8715
|
+
query?: never;
|
|
8716
|
+
header?: {
|
|
8717
|
+
'user-agent'?: string | null;
|
|
8718
|
+
};
|
|
8719
|
+
path?: never;
|
|
8720
|
+
cookie?: never;
|
|
8721
|
+
};
|
|
8722
|
+
requestBody?: never;
|
|
8723
|
+
responses: {
|
|
8724
|
+
/** @description Successful Response */
|
|
8725
|
+
200: {
|
|
8726
|
+
headers: {
|
|
8727
|
+
[name: string]: unknown;
|
|
8728
|
+
};
|
|
8729
|
+
content: {
|
|
8730
|
+
'application/json': components['schemas']['EnvironmentsListResponse'];
|
|
8731
|
+
};
|
|
8732
|
+
};
|
|
8733
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8734
|
+
401: {
|
|
8735
|
+
headers: {
|
|
8736
|
+
[name: string]: unknown;
|
|
8737
|
+
};
|
|
8738
|
+
content: {
|
|
8739
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8740
|
+
};
|
|
8741
|
+
};
|
|
8742
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8743
|
+
403: {
|
|
7962
8744
|
headers: {
|
|
7963
8745
|
[name: string]: unknown;
|
|
7964
8746
|
};
|
|
@@ -7977,30 +8759,32 @@ interface operations {
|
|
|
7977
8759
|
};
|
|
7978
8760
|
};
|
|
7979
8761
|
};
|
|
7980
|
-
|
|
8762
|
+
create_environment: {
|
|
7981
8763
|
parameters: {
|
|
7982
8764
|
query?: never;
|
|
7983
8765
|
header?: {
|
|
7984
8766
|
'user-agent'?: string | null;
|
|
7985
8767
|
};
|
|
7986
|
-
path
|
|
7987
|
-
alert_id: string;
|
|
7988
|
-
};
|
|
8768
|
+
path?: never;
|
|
7989
8769
|
cookie?: never;
|
|
7990
8770
|
};
|
|
7991
|
-
requestBody
|
|
8771
|
+
requestBody: {
|
|
8772
|
+
content: {
|
|
8773
|
+
'application/json': components['schemas']['CreateEnvironmentRequest'];
|
|
8774
|
+
};
|
|
8775
|
+
};
|
|
7992
8776
|
responses: {
|
|
7993
8777
|
/** @description Successful Response */
|
|
7994
|
-
|
|
8778
|
+
201: {
|
|
7995
8779
|
headers: {
|
|
7996
8780
|
[name: string]: unknown;
|
|
7997
8781
|
};
|
|
7998
8782
|
content: {
|
|
7999
|
-
'application/json': components['schemas']['
|
|
8783
|
+
'application/json': components['schemas']['EnvironmentResponse'];
|
|
8000
8784
|
};
|
|
8001
8785
|
};
|
|
8002
|
-
/** @description The
|
|
8003
|
-
|
|
8786
|
+
/** @description The environment is invalid. */
|
|
8787
|
+
400: {
|
|
8004
8788
|
headers: {
|
|
8005
8789
|
[name: string]: unknown;
|
|
8006
8790
|
};
|
|
@@ -8008,8 +8792,8 @@ interface operations {
|
|
|
8008
8792
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8009
8793
|
};
|
|
8010
8794
|
};
|
|
8011
|
-
/** @description The
|
|
8012
|
-
|
|
8795
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8796
|
+
401: {
|
|
8013
8797
|
headers: {
|
|
8014
8798
|
[name: string]: unknown;
|
|
8015
8799
|
};
|
|
@@ -8017,8 +8801,8 @@ interface operations {
|
|
|
8017
8801
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8018
8802
|
};
|
|
8019
8803
|
};
|
|
8020
|
-
/** @description
|
|
8021
|
-
|
|
8804
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8805
|
+
403: {
|
|
8022
8806
|
headers: {
|
|
8023
8807
|
[name: string]: unknown;
|
|
8024
8808
|
};
|
|
@@ -8026,7 +8810,7 @@ interface operations {
|
|
|
8026
8810
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8027
8811
|
};
|
|
8028
8812
|
};
|
|
8029
|
-
/** @description
|
|
8813
|
+
/** @description An environment with that name already exists. */
|
|
8030
8814
|
409: {
|
|
8031
8815
|
headers: {
|
|
8032
8816
|
[name: string]: unknown;
|
|
@@ -8035,31 +8819,20 @@ interface operations {
|
|
|
8035
8819
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8036
8820
|
};
|
|
8037
8821
|
};
|
|
8038
|
-
/** @description
|
|
8822
|
+
/** @description The environment's name is missing or malformed. */
|
|
8039
8823
|
422: {
|
|
8040
8824
|
headers: {
|
|
8041
8825
|
[name: string]: unknown;
|
|
8042
8826
|
};
|
|
8043
8827
|
content: {
|
|
8044
|
-
'application/json': components['schemas']['
|
|
8828
|
+
'application/json': components['schemas']['ErrorResponse'];
|
|
8045
8829
|
};
|
|
8046
8830
|
};
|
|
8047
8831
|
};
|
|
8048
8832
|
};
|
|
8049
|
-
|
|
8833
|
+
list_environment_defaults: {
|
|
8050
8834
|
parameters: {
|
|
8051
|
-
query?:
|
|
8052
|
-
days?: number | null;
|
|
8053
|
-
start?: string | null;
|
|
8054
|
-
end?: string | null;
|
|
8055
|
-
/** @description Filter to repositories by "owner/name". */
|
|
8056
|
-
repo?: string[] | null;
|
|
8057
|
-
/** @description Filter by PR-author login(s). */
|
|
8058
|
-
author?: string[] | null;
|
|
8059
|
-
account_type?: string;
|
|
8060
|
-
/** @description Filter by parent-PR status (open|draft|merged|closed). */
|
|
8061
|
-
status?: string[] | null;
|
|
8062
|
-
};
|
|
8835
|
+
query?: never;
|
|
8063
8836
|
header?: {
|
|
8064
8837
|
'user-agent'?: string | null;
|
|
8065
8838
|
};
|
|
@@ -8074,16 +8847,7 @@ interface operations {
|
|
|
8074
8847
|
[name: string]: unknown;
|
|
8075
8848
|
};
|
|
8076
8849
|
content: {
|
|
8077
|
-
'application/json': components['schemas']['
|
|
8078
|
-
};
|
|
8079
|
-
};
|
|
8080
|
-
/** @description The time window is invalid: days combined with start, a non-positive days, or end not after start. */
|
|
8081
|
-
400: {
|
|
8082
|
-
headers: {
|
|
8083
|
-
[name: string]: unknown;
|
|
8084
|
-
};
|
|
8085
|
-
content: {
|
|
8086
|
-
'application/json': components['schemas']['ErrorResponse'];
|
|
8850
|
+
'application/json': components['schemas']['EnvironmentDefaults'];
|
|
8087
8851
|
};
|
|
8088
8852
|
};
|
|
8089
8853
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
@@ -8115,24 +8879,20 @@ interface operations {
|
|
|
8115
8879
|
};
|
|
8116
8880
|
};
|
|
8117
8881
|
};
|
|
8118
|
-
|
|
8882
|
+
put_environment_default: {
|
|
8119
8883
|
parameters: {
|
|
8120
|
-
query?:
|
|
8121
|
-
days?: number | null;
|
|
8122
|
-
start?: string | null;
|
|
8123
|
-
end?: string | null;
|
|
8124
|
-
account_type?: string[] | null;
|
|
8125
|
-
repository_id?: number[] | null;
|
|
8126
|
-
author_id?: number[] | null;
|
|
8127
|
-
status?: string[] | null;
|
|
8128
|
-
};
|
|
8884
|
+
query?: never;
|
|
8129
8885
|
header?: {
|
|
8130
8886
|
'user-agent'?: string | null;
|
|
8131
8887
|
};
|
|
8132
8888
|
path?: never;
|
|
8133
8889
|
cookie?: never;
|
|
8134
8890
|
};
|
|
8135
|
-
requestBody
|
|
8891
|
+
requestBody: {
|
|
8892
|
+
content: {
|
|
8893
|
+
'application/json': components['schemas']['PutEnvironmentDefaultRequest'];
|
|
8894
|
+
};
|
|
8895
|
+
};
|
|
8136
8896
|
responses: {
|
|
8137
8897
|
/** @description Successful Response */
|
|
8138
8898
|
200: {
|
|
@@ -8140,11 +8900,11 @@ interface operations {
|
|
|
8140
8900
|
[name: string]: unknown;
|
|
8141
8901
|
};
|
|
8142
8902
|
content: {
|
|
8143
|
-
'application/json': components['schemas']['
|
|
8903
|
+
'application/json': components['schemas']['EnvironmentDefaults'];
|
|
8144
8904
|
};
|
|
8145
8905
|
};
|
|
8146
|
-
/** @description The
|
|
8147
|
-
|
|
8906
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8907
|
+
401: {
|
|
8148
8908
|
headers: {
|
|
8149
8909
|
[name: string]: unknown;
|
|
8150
8910
|
};
|
|
@@ -8152,8 +8912,8 @@ interface operations {
|
|
|
8152
8912
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8153
8913
|
};
|
|
8154
8914
|
};
|
|
8155
|
-
/** @description The
|
|
8156
|
-
|
|
8915
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8916
|
+
403: {
|
|
8157
8917
|
headers: {
|
|
8158
8918
|
[name: string]: unknown;
|
|
8159
8919
|
};
|
|
@@ -8161,8 +8921,8 @@ interface operations {
|
|
|
8161
8921
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8162
8922
|
};
|
|
8163
8923
|
};
|
|
8164
|
-
/** @description The
|
|
8165
|
-
|
|
8924
|
+
/** @description The environment or repository was not found in your account. */
|
|
8925
|
+
404: {
|
|
8166
8926
|
headers: {
|
|
8167
8927
|
[name: string]: unknown;
|
|
8168
8928
|
};
|
|
@@ -8181,17 +8941,11 @@ interface operations {
|
|
|
8181
8941
|
};
|
|
8182
8942
|
};
|
|
8183
8943
|
};
|
|
8184
|
-
|
|
8944
|
+
delete_environment_default: {
|
|
8185
8945
|
parameters: {
|
|
8186
8946
|
query?: {
|
|
8187
|
-
|
|
8188
|
-
|
|
8189
|
-
end?: string | null;
|
|
8190
|
-
repo?: string[] | null;
|
|
8191
|
-
/** @description Filter by reviewer login(s). */
|
|
8192
|
-
author?: string[] | null;
|
|
8193
|
-
account_type?: string;
|
|
8194
|
-
review_state?: string[] | null;
|
|
8947
|
+
/** @description Repo rung to clear ("owner/name"); omit to clear the account default. */
|
|
8948
|
+
repository?: string | null;
|
|
8195
8949
|
};
|
|
8196
8950
|
header?: {
|
|
8197
8951
|
'user-agent'?: string | null;
|
|
@@ -8202,16 +8956,14 @@ interface operations {
|
|
|
8202
8956
|
requestBody?: never;
|
|
8203
8957
|
responses: {
|
|
8204
8958
|
/** @description Successful Response */
|
|
8205
|
-
|
|
8959
|
+
204: {
|
|
8206
8960
|
headers: {
|
|
8207
8961
|
[name: string]: unknown;
|
|
8208
8962
|
};
|
|
8209
|
-
content
|
|
8210
|
-
'application/json': components['schemas']['GetAnalyticsReviewsResponse'];
|
|
8211
|
-
};
|
|
8963
|
+
content?: never;
|
|
8212
8964
|
};
|
|
8213
|
-
/** @description The
|
|
8214
|
-
|
|
8965
|
+
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8966
|
+
401: {
|
|
8215
8967
|
headers: {
|
|
8216
8968
|
[name: string]: unknown;
|
|
8217
8969
|
};
|
|
@@ -8219,8 +8971,8 @@ interface operations {
|
|
|
8219
8971
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8220
8972
|
};
|
|
8221
8973
|
};
|
|
8222
|
-
/** @description The
|
|
8223
|
-
|
|
8974
|
+
/** @description The credential may not perform this action, or the account is blocked. */
|
|
8975
|
+
403: {
|
|
8224
8976
|
headers: {
|
|
8225
8977
|
[name: string]: unknown;
|
|
8226
8978
|
};
|
|
@@ -8228,8 +8980,8 @@ interface operations {
|
|
|
8228
8980
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8229
8981
|
};
|
|
8230
8982
|
};
|
|
8231
|
-
/** @description
|
|
8232
|
-
|
|
8983
|
+
/** @description No default is set at that rung, or the repository was not found in your account. */
|
|
8984
|
+
404: {
|
|
8233
8985
|
headers: {
|
|
8234
8986
|
[name: string]: unknown;
|
|
8235
8987
|
};
|
|
@@ -8248,18 +9000,18 @@ interface operations {
|
|
|
8248
9000
|
};
|
|
8249
9001
|
};
|
|
8250
9002
|
};
|
|
8251
|
-
|
|
9003
|
+
get_environment: {
|
|
8252
9004
|
parameters: {
|
|
8253
9005
|
query?: never;
|
|
8254
|
-
header?:
|
|
8255
|
-
|
|
8256
|
-
|
|
8257
|
-
|
|
8258
|
-
|
|
8259
|
-
content: {
|
|
8260
|
-
'application/json': components['schemas']['CliAuthPollRequest'];
|
|
9006
|
+
header?: {
|
|
9007
|
+
'user-agent'?: string | null;
|
|
9008
|
+
};
|
|
9009
|
+
path: {
|
|
9010
|
+
environment_id: string;
|
|
8261
9011
|
};
|
|
9012
|
+
cookie?: never;
|
|
8262
9013
|
};
|
|
9014
|
+
requestBody?: never;
|
|
8263
9015
|
responses: {
|
|
8264
9016
|
/** @description Successful Response */
|
|
8265
9017
|
200: {
|
|
@@ -8267,7 +9019,7 @@ interface operations {
|
|
|
8267
9019
|
[name: string]: unknown;
|
|
8268
9020
|
};
|
|
8269
9021
|
content: {
|
|
8270
|
-
'application/json': components['schemas']['
|
|
9022
|
+
'application/json': components['schemas']['EnvironmentResponse'];
|
|
8271
9023
|
};
|
|
8272
9024
|
};
|
|
8273
9025
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
@@ -8288,7 +9040,7 @@ interface operations {
|
|
|
8288
9040
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8289
9041
|
};
|
|
8290
9042
|
};
|
|
8291
|
-
/** @description
|
|
9043
|
+
/** @description No such environment in your account. */
|
|
8292
9044
|
404: {
|
|
8293
9045
|
headers: {
|
|
8294
9046
|
[name: string]: unknown;
|
|
@@ -8308,22 +9060,39 @@ interface operations {
|
|
|
8308
9060
|
};
|
|
8309
9061
|
};
|
|
8310
9062
|
};
|
|
8311
|
-
|
|
9063
|
+
update_environment: {
|
|
8312
9064
|
parameters: {
|
|
8313
9065
|
query?: never;
|
|
8314
|
-
header?:
|
|
8315
|
-
|
|
9066
|
+
header?: {
|
|
9067
|
+
'user-agent'?: string | null;
|
|
9068
|
+
};
|
|
9069
|
+
path: {
|
|
9070
|
+
environment_id: string;
|
|
9071
|
+
};
|
|
8316
9072
|
cookie?: never;
|
|
8317
9073
|
};
|
|
8318
|
-
requestBody
|
|
9074
|
+
requestBody: {
|
|
9075
|
+
content: {
|
|
9076
|
+
'application/json': components['schemas']['UpdateEnvironmentRequest'];
|
|
9077
|
+
};
|
|
9078
|
+
};
|
|
8319
9079
|
responses: {
|
|
8320
9080
|
/** @description Successful Response */
|
|
8321
|
-
|
|
9081
|
+
200: {
|
|
8322
9082
|
headers: {
|
|
8323
9083
|
[name: string]: unknown;
|
|
8324
9084
|
};
|
|
8325
9085
|
content: {
|
|
8326
|
-
'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'];
|
|
8327
9096
|
};
|
|
8328
9097
|
};
|
|
8329
9098
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
@@ -8344,27 +9113,54 @@ interface operations {
|
|
|
8344
9113
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8345
9114
|
};
|
|
8346
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
|
+
};
|
|
8347
9143
|
};
|
|
8348
9144
|
};
|
|
8349
|
-
|
|
9145
|
+
delete_environment: {
|
|
8350
9146
|
parameters: {
|
|
8351
9147
|
query?: never;
|
|
8352
9148
|
header?: {
|
|
8353
9149
|
'user-agent'?: string | null;
|
|
8354
9150
|
};
|
|
8355
|
-
path
|
|
9151
|
+
path: {
|
|
9152
|
+
environment_id: string;
|
|
9153
|
+
};
|
|
8356
9154
|
cookie?: never;
|
|
8357
9155
|
};
|
|
8358
9156
|
requestBody?: never;
|
|
8359
9157
|
responses: {
|
|
8360
9158
|
/** @description Successful Response */
|
|
8361
|
-
|
|
9159
|
+
204: {
|
|
8362
9160
|
headers: {
|
|
8363
9161
|
[name: string]: unknown;
|
|
8364
9162
|
};
|
|
8365
|
-
content
|
|
8366
|
-
'application/json': components['schemas']['BudgetSummary'];
|
|
8367
|
-
};
|
|
9163
|
+
content?: never;
|
|
8368
9164
|
};
|
|
8369
9165
|
/** @description The bearer token is missing, invalid, or revoked. */
|
|
8370
9166
|
401: {
|
|
@@ -8384,6 +9180,24 @@ interface operations {
|
|
|
8384
9180
|
'application/json': components['schemas']['ErrorResponse'];
|
|
8385
9181
|
};
|
|
8386
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
|
+
};
|
|
8387
9201
|
/** @description Validation Error */
|
|
8388
9202
|
422: {
|
|
8389
9203
|
headers: {
|
|
@@ -9884,7 +10698,7 @@ interface operations {
|
|
|
9884
10698
|
'application/json': components['schemas']['SessionResponse'];
|
|
9885
10699
|
};
|
|
9886
10700
|
};
|
|
9887
|
-
/** @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. */
|
|
9888
10702
|
400: {
|
|
9889
10703
|
headers: {
|
|
9890
10704
|
[name: string]: unknown;
|
|
@@ -9911,7 +10725,7 @@ interface operations {
|
|
|
9911
10725
|
'application/json': components['schemas']['ErrorResponse'];
|
|
9912
10726
|
};
|
|
9913
10727
|
};
|
|
9914
|
-
/** @description The named agent
|
|
10728
|
+
/** @description The named agent does not exist in your account. */
|
|
9915
10729
|
404: {
|
|
9916
10730
|
headers: {
|
|
9917
10731
|
[name: string]: unknown;
|
|
@@ -10705,6 +11519,15 @@ type GithubAccountType = 'User' | 'Organization' | 'Bot' | 'Mannequin';
|
|
|
10705
11519
|
* Where the resolved budget came from.
|
|
10706
11520
|
*/
|
|
10707
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';
|
|
10708
11531
|
/**
|
|
10709
11532
|
* Why a terminal agent session ended — a finer-grained reason than `status`.
|
|
10710
11533
|
*
|
|
@@ -10840,10 +11663,15 @@ interface Session {
|
|
|
10840
11663
|
* When the session was created.
|
|
10841
11664
|
*/
|
|
10842
11665
|
created_at: string;
|
|
11666
|
+
environment: SessionEnvironment;
|
|
10843
11667
|
/**
|
|
10844
11668
|
* How the session ended; null until it is terminal.
|
|
10845
11669
|
*/
|
|
10846
11670
|
exit_status: SessionExitStatus | null;
|
|
11671
|
+
/**
|
|
11672
|
+
* 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.
|
|
11673
|
+
*/
|
|
11674
|
+
git: SessionGit | null;
|
|
10847
11675
|
harness: Harness;
|
|
10848
11676
|
/**
|
|
10849
11677
|
* Unique identifier of the session.
|
|
@@ -10863,14 +11691,6 @@ interface Session {
|
|
|
10863
11691
|
metadata: {
|
|
10864
11692
|
[k: string]: string;
|
|
10865
11693
|
};
|
|
10866
|
-
/**
|
|
10867
|
-
* Per-file line counts for the uncommitted changes in the session's workspace. Work the session committed is not included here — see output_prs. Null if no diff was ever captured.
|
|
10868
|
-
*/
|
|
10869
|
-
output_diff: SessionDiff | null;
|
|
10870
|
-
/**
|
|
10871
|
-
* Pull requests the session created or updated.
|
|
10872
|
-
*/
|
|
10873
|
-
output_prs: SessionPr[] | null;
|
|
10874
11694
|
parent: SessionParent;
|
|
10875
11695
|
/**
|
|
10876
11696
|
* The per-session prompt the session was started with.
|
|
@@ -10927,9 +11747,8 @@ interface AgentConfig {
|
|
|
10927
11747
|
claude: AgentConfigClaude;
|
|
10928
11748
|
codex: AgentConfigCodex | null;
|
|
10929
11749
|
ellipsis: AgentConfigEllipsis;
|
|
10930
|
-
environment: AgentConfigEnvironment;
|
|
11750
|
+
environment: string | AgentConfigEnvironment;
|
|
10931
11751
|
input: AgentConfigInput | null;
|
|
10932
|
-
mcp_servers: (string | AgentConfigMcpServer)[];
|
|
10933
11752
|
output: AgentConfigOutput | null;
|
|
10934
11753
|
permissions: AgentConfigPermissions;
|
|
10935
11754
|
skills: AgentConfigSkill[];
|
|
@@ -10990,22 +11809,19 @@ interface AgentConfigCodex {
|
|
|
10990
11809
|
/**
|
|
10991
11810
|
* The Ellipsis product namespace for a config file: which schema this is
|
|
10992
11811
|
* (`version`), the human-facing identity (`name`/`description`), freeform
|
|
10993
|
-
* organizational `metadata`, whether the agent is `enabled
|
|
10994
|
-
*
|
|
10995
|
-
*
|
|
10996
|
-
*
|
|
10997
|
-
* `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`.
|
|
10998
11816
|
*
|
|
10999
|
-
* `enabled
|
|
11000
|
-
*
|
|
11001
|
-
*
|
|
11002
|
-
*
|
|
11003
|
-
* 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.
|
|
11004
11821
|
*/
|
|
11005
11822
|
interface AgentConfigEllipsis {
|
|
11006
11823
|
description: string | null;
|
|
11007
11824
|
enabled: boolean;
|
|
11008
|
-
interactive: boolean;
|
|
11009
11825
|
metadata: AgentConfigMetadata;
|
|
11010
11826
|
name: string | null;
|
|
11011
11827
|
version: string;
|
|
@@ -11033,6 +11849,7 @@ interface AgentConfigEnvironment {
|
|
|
11033
11849
|
compute: AgentConfigCompute;
|
|
11034
11850
|
hooks: AgentConfigEnvironmentHooks;
|
|
11035
11851
|
image: AgentConfigEnvironmentImage;
|
|
11852
|
+
mcp_servers: (string | AgentConfigMcpServer | AgentConfigMcpStdioServer | AgentConfigMcpRemoteServer)[];
|
|
11036
11853
|
repositories: AgentConfigRepository[];
|
|
11037
11854
|
variables: AgentConfigEnvironmentVariable[];
|
|
11038
11855
|
}
|
|
@@ -11123,6 +11940,49 @@ interface AgentConfigEnvironmentImage {
|
|
|
11123
11940
|
dockerfile_append: string | null;
|
|
11124
11941
|
setup: string | null;
|
|
11125
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
|
+
}
|
|
11126
11986
|
/**
|
|
11127
11987
|
* One environment variable injected into the agent's sandbox.
|
|
11128
11988
|
*
|
|
@@ -11158,17 +12018,6 @@ interface AgentConfigInput {
|
|
|
11158
12018
|
} | null;
|
|
11159
12019
|
message: string | null;
|
|
11160
12020
|
}
|
|
11161
|
-
/**
|
|
11162
|
-
* One built-in MCP server this agent opts into by name (`linear`/`slack`).
|
|
11163
|
-
* This is a name reference over the connected built-in set, NOT a custom-server
|
|
11164
|
-
* definition — there is no command/url/headers shape (that was the old,
|
|
11165
|
-
* removed field, and Ellipsis does not support bring-your-own MCP servers).
|
|
11166
|
-
* It only matters when the named integration is set to `opt_in` inclusion; an
|
|
11167
|
-
* integration in the default `all_sessions` mode is added regardless.
|
|
11168
|
-
*/
|
|
11169
|
-
interface AgentConfigMcpServer {
|
|
11170
|
-
name: string;
|
|
11171
|
-
}
|
|
11172
12021
|
/**
|
|
11173
12022
|
* The typed output contract: the JSON Schema the agent must exit through
|
|
11174
12023
|
* (the StructuredOutput exit tool). Read back via
|
|
@@ -11380,38 +12229,56 @@ interface SessionCost {
|
|
|
11380
12229
|
total: number;
|
|
11381
12230
|
}
|
|
11382
12231
|
/**
|
|
11383
|
-
* The
|
|
11384
|
-
* agent_sessions and be returned by every session read. The patch text lives
|
|
11385
|
-
* in `agent_session_diffs` and is fetched on demand.
|
|
11386
|
-
*
|
|
11387
|
-
* Scope is UNCOMMITTED work only (`git diff HEAD`), so this answers "is there
|
|
11388
|
-
* unlanded work in this sandbox?" — a session that committed and pushed shows
|
|
11389
|
-
* no files here and its created PR instead.
|
|
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.
|
|
11390
12233
|
*/
|
|
11391
|
-
interface
|
|
11392
|
-
|
|
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
|
+
}
|
|
12244
|
+
/**
|
|
12245
|
+
* Every repo the session touched. Small enough to ride on `agent_sessions`
|
|
12246
|
+
* and be returned by every session read.
|
|
12247
|
+
*/
|
|
12248
|
+
interface SessionGit {
|
|
12249
|
+
repos: SessionGitRepo[];
|
|
12250
|
+
}
|
|
12251
|
+
/**
|
|
12252
|
+
* One checkout in the session's sandbox and everything the session did to
|
|
12253
|
+
* it, split by whether it survived the sandbox.
|
|
12254
|
+
*/
|
|
12255
|
+
interface SessionGitRepo {
|
|
12256
|
+
full_name: string;
|
|
12257
|
+
local_commit: string | null;
|
|
12258
|
+
local_uncommitted_files: SessionGitFile[];
|
|
12259
|
+
prs: SessionGitPr[];
|
|
12260
|
+
remote_branch: string | null;
|
|
12261
|
+
remote_commit: string | null;
|
|
11393
12262
|
}
|
|
11394
12263
|
/**
|
|
11395
|
-
* One file's uncommitted change
|
|
11396
|
-
*
|
|
12264
|
+
* One file's uncommitted change, as `git diff HEAD --numstat` reports it
|
|
12265
|
+
* (with intent-to-add, so a brand-new file still counts).
|
|
11397
12266
|
*/
|
|
11398
|
-
interface
|
|
12267
|
+
interface SessionGitFile {
|
|
11399
12268
|
additions: number;
|
|
11400
12269
|
deletions: number;
|
|
11401
12270
|
path: string;
|
|
11402
|
-
repo: string;
|
|
11403
12271
|
status: string;
|
|
11404
12272
|
}
|
|
11405
12273
|
/**
|
|
11406
|
-
* A pull request
|
|
11407
|
-
*
|
|
11408
|
-
* state (open/merged/closed) is not stored
|
|
11409
|
-
*
|
|
12274
|
+
* A pull request the session opened in this repo, denormalized at capture
|
|
12275
|
+
* time so a surface renders a labeled link without joining gh_prs. Live PR
|
|
12276
|
+
* state (open/merged/closed) is not stored — read gh_prs where a view needs
|
|
12277
|
+
* it. The repo is the parent object, so it is not repeated here.
|
|
11410
12278
|
*/
|
|
11411
|
-
interface
|
|
12279
|
+
interface SessionGitPr {
|
|
11412
12280
|
gh_pr_id: number | null;
|
|
11413
12281
|
number: number;
|
|
11414
|
-
repo_full_name: string;
|
|
11415
12282
|
url: string;
|
|
11416
12283
|
}
|
|
11417
12284
|
/**
|
|
@@ -12024,10 +12891,15 @@ interface Session1 {
|
|
|
12024
12891
|
* When the session was created.
|
|
12025
12892
|
*/
|
|
12026
12893
|
created_at: string;
|
|
12894
|
+
environment: SessionEnvironment;
|
|
12027
12895
|
/**
|
|
12028
12896
|
* How the session ended; null until it is terminal.
|
|
12029
12897
|
*/
|
|
12030
12898
|
exit_status: SessionExitStatus | null;
|
|
12899
|
+
/**
|
|
12900
|
+
* 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.
|
|
12901
|
+
*/
|
|
12902
|
+
git: SessionGit | null;
|
|
12031
12903
|
harness: Harness;
|
|
12032
12904
|
/**
|
|
12033
12905
|
* Unique identifier of the session.
|
|
@@ -12047,14 +12919,6 @@ interface Session1 {
|
|
|
12047
12919
|
metadata: {
|
|
12048
12920
|
[k: string]: string;
|
|
12049
12921
|
};
|
|
12050
|
-
/**
|
|
12051
|
-
* Per-file line counts for the uncommitted changes in the session's workspace. Work the session committed is not included here — see output_prs. Null if no diff was ever captured.
|
|
12052
|
-
*/
|
|
12053
|
-
output_diff: SessionDiff | null;
|
|
12054
|
-
/**
|
|
12055
|
-
* Pull requests the session created or updated.
|
|
12056
|
-
*/
|
|
12057
|
-
output_prs: SessionPr[] | null;
|
|
12058
12922
|
parent: SessionParent;
|
|
12059
12923
|
/**
|
|
12060
12924
|
* The per-session prompt the session was started with.
|
|
@@ -12187,4 +13051,4 @@ type ReviewRequester = components['schemas']['ReviewRequester'];
|
|
|
12187
13051
|
type ReviewFinding = components['schemas']['ReviewFinding'];
|
|
12188
13052
|
type Finding = ReviewFinding;
|
|
12189
13053
|
|
|
12190
|
-
export type { SessionResponse as $, AgentConfigSource as A, BudgetSource as B, ClaudeSessionRecord as C, DeltaFrame as D, ErrorFrame as E, Finding as F, GithubAccountSnippet as G, Harness as H, SdkUserRecord as I, SendSessionMessageRequest as J, Session as K, LifecycleSessionRecord as L, SessionExecution as M, SessionExecutionsListResponse as N, SessionExitStatus as O, ParentKind as P, SessionFrame as Q, RecordsAppendFrame as R, SdkAssistantRecord as S,
|
|
13054
|
+
export type { SessionResponse as $, AgentConfigSource as A, BudgetSource as B, ClaudeSessionRecord as C, DeltaFrame as D, ErrorFrame as E, Finding as F, GithubAccountSnippet as G, Harness as H, SdkUserRecord as I, SendSessionMessageRequest as J, Session as K, LifecycleSessionRecord as L, SessionExecution as M, SessionExecutionsListResponse as N, SessionExitStatus as O, ParentKind as P, SessionFrame as Q, RecordsAppendFrame as R, SdkAssistantRecord as S, SessionGit as T, SessionLiveness as U, SessionMessage as V, SessionMessageResponse as W, SessionMessageStatus as X, SessionPrompting as Y, SessionRecord as Z, SessionRecordsListResponse as _, AttributionType as a, SessionSource as a0, SessionState as a1, SessionStatus as a2, SessionStreamFrame as a3, SessionSurface as a4, SessionsListResponse as a5, SnapshotFrame as a6, StreamFrame as a7, TokensInfo as a8, paths as a9, CodexFileChangeItem as aa, CodexMcpToolCallItem as ab, CodexEvent as b, components as c, CodexItem as d, CodexSessionRecord as e, CreateReviewRequest as f, DoneFrame as g, GithubAccountType as h, HeartbeatFrame as i, PromptBlockedReason as j, ResolvedReviewScope as k, Review as l, ReviewConfiguration as m, ReviewCounters as n, ReviewFinding as o, ReviewRequester as p, ReviewScope as q, ReviewScopeKind as r, ReviewStage as s, ReviewedCommit as t, ReviewsListResponse as u, SdkContentBlock as v, SdkRateLimitRecord as w, SdkRecord as x, SdkResultRecord as y, SdkSystemRecord as z };
|