@ellipsis-dev/sdk 0.11.0 → 0.13.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 +13 -59
- package/dist/index.js +67 -115
- package/dist/store/index.d.ts +1 -1
- package/dist/stream/index.d.ts +1 -1
- package/dist/{types-DDQQ1Yfh.d.ts → types-egqnpL5C.d.ts} +676 -775
- package/package.json +1 -1
- package/schema/cc_step.schema.json +6036 -0
- package/schema/frames.schema.json +1806 -224
- package/schema/openapi.v1.json +194 -887
package/schema/openapi.v1.json
CHANGED
|
@@ -29,7 +29,6 @@
|
|
|
29
29
|
"$ref": "#/components/schemas/AgentConfigEllipsis",
|
|
30
30
|
"default": {
|
|
31
31
|
"enabled": true,
|
|
32
|
-
"ide": true,
|
|
33
32
|
"interactive": true,
|
|
34
33
|
"metadata": {
|
|
35
34
|
"annotations": {},
|
|
@@ -44,12 +43,6 @@
|
|
|
44
43
|
"compute": {},
|
|
45
44
|
"hooks": {},
|
|
46
45
|
"image": {},
|
|
47
|
-
"ports": [
|
|
48
|
-
3000,
|
|
49
|
-
5173,
|
|
50
|
-
8000,
|
|
51
|
-
8080
|
|
52
|
-
],
|
|
53
46
|
"repositories": [],
|
|
54
47
|
"variables": []
|
|
55
48
|
}
|
|
@@ -277,7 +270,7 @@
|
|
|
277
270
|
"description": "The `codex:` block \u2014 run this agent on OpenAI's Codex CLI instead of\nClaude Code. Declaring the block at all is what selects the harness\n(`AgentConfig.harness`).\n\nDeliberately a small subset of `AgentConfigClaude`: the fields omitted here\nare ones Codex has no equivalent for (`effort`, `fallback_model`,\n`settings`) or that the platform does not yet wire through for this harness\n(`max_turns`, `skills`, MCP servers). They are omitted rather than\naccepted-and-ignored, because `StrictConfigModel` forbids extra keys \u2014 so a\nconfig that sets one fails loudly at parse time instead of silently not doing\nit. The budget still bounds a run regardless.",
|
|
278
271
|
"properties": {
|
|
279
272
|
"model": {
|
|
280
|
-
"default": "
|
|
273
|
+
"default": "gpt-5.6-terra",
|
|
281
274
|
"title": "Model",
|
|
282
275
|
"type": "string"
|
|
283
276
|
},
|
|
@@ -425,7 +418,7 @@
|
|
|
425
418
|
},
|
|
426
419
|
"AgentConfigEllipsis": {
|
|
427
420
|
"additionalProperties": false,
|
|
428
|
-
"description": "The Ellipsis product namespace for a config file: which schema this is\n(`version`), the human-facing identity (`name`/`description`), freeform\norganizational `metadata`, whether the agent is `enabled`, and the
|
|
421
|
+
"description": "The Ellipsis product namespace for a config file: which schema this is\n(`version`), the human-facing identity (`name`/`description`), freeform\norganizational `metadata`, whether the agent is `enabled`, and the\nhuman-access flag `interactive`. The presence of a top-level `ellipsis:`\nmapping is what marks a YAML file as an Ellipsis agent config (vs arbitrary\nYAML that merely lives under a config directory) \u2014 see\n`yaml_is_ellipsis_config`.\n\n`enabled`/`interactive` are agent behavior, not freeform metadata, so they\nstay inside the config `sha` (only `metadata` is sha-excluded).\n`interactive` lets a human `agent session connect` to a live session (CLI\nrelay). It does not decide whether a session is ephemeral or durable \u2014 that\nis the trigger's job.",
|
|
429
422
|
"properties": {
|
|
430
423
|
"description": {
|
|
431
424
|
"anyOf": [
|
|
@@ -443,11 +436,6 @@
|
|
|
443
436
|
"title": "Enabled",
|
|
444
437
|
"type": "boolean"
|
|
445
438
|
},
|
|
446
|
-
"ide": {
|
|
447
|
-
"default": true,
|
|
448
|
-
"title": "Ide",
|
|
449
|
-
"type": "boolean"
|
|
450
|
-
},
|
|
451
439
|
"interactive": {
|
|
452
440
|
"default": true,
|
|
453
441
|
"title": "Interactive",
|
|
@@ -527,19 +515,6 @@
|
|
|
527
515
|
"$ref": "#/components/schemas/AgentConfigEnvironmentImage",
|
|
528
516
|
"default": {}
|
|
529
517
|
},
|
|
530
|
-
"ports": {
|
|
531
|
-
"default": [
|
|
532
|
-
3000,
|
|
533
|
-
5173,
|
|
534
|
-
8000,
|
|
535
|
-
8080
|
|
536
|
-
],
|
|
537
|
-
"items": {
|
|
538
|
-
"type": "integer"
|
|
539
|
-
},
|
|
540
|
-
"title": "Ports",
|
|
541
|
-
"type": "array"
|
|
542
|
-
},
|
|
543
518
|
"repositories": {
|
|
544
519
|
"default": [],
|
|
545
520
|
"items": {
|
|
@@ -622,7 +597,7 @@
|
|
|
622
597
|
},
|
|
623
598
|
"AgentConfigEnvironmentVariable": {
|
|
624
599
|
"additionalProperties": false,
|
|
625
|
-
"description": "One environment variable injected into the agent's sandbox.\n\n`value`, when set, is a literal injected as-is \u2014 use it for non-secret\nconfig (LOG_LEVEL, an API base URL). When `value` is omitted the value is\nresolved at run time from the account's sandbox-secrets store (dashboard\n/ `PUT /secrets`) by `name`, so a secret can be injected without\never putting it in the config file. Either way the variable only reaches\nagents that name it.",
|
|
600
|
+
"description": "One environment variable injected into the agent's sandbox.\n\n`value`, when set, is a literal injected as-is \u2014 use it for non-secret\nconfig (LOG_LEVEL, an API base URL). When `value` is omitted the value is\nresolved at run time from the account's sandbox-secrets store (dashboard\n/ `PUT /v1/secrets`) by `name`, so a secret can be injected without\never putting it in the config file. Either way the variable only reaches\nagents that name it.",
|
|
626
601
|
"properties": {
|
|
627
602
|
"name": {
|
|
628
603
|
"title": "Name",
|
|
@@ -688,7 +663,7 @@
|
|
|
688
663
|
},
|
|
689
664
|
"AgentConfigInput": {
|
|
690
665
|
"additionalProperties": false,
|
|
691
|
-
"description": "The typed input contract: what goes INTO a session (the trigger is\nwhen it happens; this is what goes in).\n\n`json_schema` types the payload a caller-started session takes\n(`POST /sessions` `input`, validated at the door; required when\ndeclared). It is illegal on a react-triggered agent \u2014 react payloads are\nplatform-shaped (the published surface field sets), not caller-shaped.\n\n`message` is the initial-message template: exact `{{path}}` substitution\nover the caller payload (or, on a react agent, over the surface's\npublished fields), no conditionals/loops/filters. Refs are validated at\ndeploy time against the governing field set (see AgentConfig's\n`_check_input`).",
|
|
666
|
+
"description": "The typed input contract: what goes INTO a session (the trigger is\nwhen it happens; this is what goes in).\n\n`json_schema` types the payload a caller-started session takes\n(`POST /v1/sessions` `input`, validated at the door; required when\ndeclared). It is illegal on a react-triggered agent \u2014 react payloads are\nplatform-shaped (the published surface field sets), not caller-shaped.\n\n`message` is the initial-message template: exact `{{path}}` substitution\nover the caller payload (or, on a react agent, over the surface's\npublished fields), no conditionals/loops/filters. Refs are validated at\ndeploy time against the governing field set (see AgentConfig's\n`_check_input`).",
|
|
692
667
|
"properties": {
|
|
693
668
|
"json_schema": {
|
|
694
669
|
"anyOf": [
|
|
@@ -839,7 +814,7 @@
|
|
|
839
814
|
},
|
|
840
815
|
"AgentConfigOutput": {
|
|
841
816
|
"additionalProperties": false,
|
|
842
|
-
"description": "The typed output contract: the JSON Schema the agent must exit through\n(the StructuredOutput exit tool). Read back via\nGET /sessions/{id}/output.",
|
|
817
|
+
"description": "The typed output contract: the JSON Schema the agent must exit through\n(the StructuredOutput exit tool). Read back via\nGET /v1/sessions/{id}/output.",
|
|
843
818
|
"properties": {
|
|
844
819
|
"json_schema": {
|
|
845
820
|
"additionalProperties": true,
|
|
@@ -1053,6 +1028,21 @@
|
|
|
1053
1028
|
"title": "AgentConfigSkill",
|
|
1054
1029
|
"type": "object"
|
|
1055
1030
|
},
|
|
1031
|
+
"AgentConfigSource": {
|
|
1032
|
+
"description": "Where a session's config came from. Total: every session has exactly one\nsource, including the ones that never touch defaults resolution.\n\nNot derivable from the row \u2014 `agent_config_id` says WHICH saved config, not\nhow it was chosen, and is null for inline, platform-default, and built-in\nconfigs alike \u2014 so it is persisted for audit and the published wire.",
|
|
1033
|
+
"enum": [
|
|
1034
|
+
"explicit",
|
|
1035
|
+
"inline",
|
|
1036
|
+
"template",
|
|
1037
|
+
"repo_default",
|
|
1038
|
+
"account_default",
|
|
1039
|
+
"platform_default",
|
|
1040
|
+
"trigger",
|
|
1041
|
+
"builtin"
|
|
1042
|
+
],
|
|
1043
|
+
"title": "AgentConfigSource",
|
|
1044
|
+
"type": "string"
|
|
1045
|
+
},
|
|
1056
1046
|
"AgentConfigSourceGithub": {
|
|
1057
1047
|
"description": "Identifies the file a GitHub-sourced agent config is synced from.\n\nKeyed on the repository ID (not owner/name) so repository and org renames\ndon't orphan the config; resolve display names from gh_repositories at\nread time.",
|
|
1058
1048
|
"properties": {
|
|
@@ -1119,50 +1109,10 @@
|
|
|
1119
1109
|
"title": "AgentConfigsListResponse",
|
|
1120
1110
|
"type": "object"
|
|
1121
1111
|
},
|
|
1122
|
-
"
|
|
1123
|
-
"description": "
|
|
1112
|
+
"AgentDefaults": {
|
|
1113
|
+
"description": "Which agent config serves sessions started without an explicit config:\none account-wide rung, plus a rung per repository.\n\nValues are config ids \u2014 stable across renames, unlike the agent's name.\nA repo rung whose repository this installation can no longer see is absent\nfrom `repositories`; its row is left in place, so re-installing the repo\nbrings the rung back.",
|
|
1124
1114
|
"properties": {
|
|
1125
|
-
"
|
|
1126
|
-
"anyOf": [
|
|
1127
|
-
{
|
|
1128
|
-
"enum": [
|
|
1129
|
-
"config_deleted",
|
|
1130
|
-
"config_disabled",
|
|
1131
|
-
"config_pending_pr",
|
|
1132
|
-
"repo_inaccessible"
|
|
1133
|
-
],
|
|
1134
|
-
"type": "string"
|
|
1135
|
-
},
|
|
1136
|
-
{
|
|
1137
|
-
"type": "null"
|
|
1138
|
-
}
|
|
1139
|
-
],
|
|
1140
|
-
"description": "Why this default cannot serve sessions, or null when it is healthy.",
|
|
1141
|
-
"title": "Broken"
|
|
1142
|
-
},
|
|
1143
|
-
"config_id": {
|
|
1144
|
-
"description": "The agent config this default points at.",
|
|
1145
|
-
"title": "Config Id",
|
|
1146
|
-
"type": "string"
|
|
1147
|
-
},
|
|
1148
|
-
"config_name": {
|
|
1149
|
-
"anyOf": [
|
|
1150
|
-
{
|
|
1151
|
-
"type": "string"
|
|
1152
|
-
},
|
|
1153
|
-
{
|
|
1154
|
-
"type": "null"
|
|
1155
|
-
}
|
|
1156
|
-
],
|
|
1157
|
-
"description": "The pointed-at config's name; null when the config no longer exists.",
|
|
1158
|
-
"title": "Config Name"
|
|
1159
|
-
},
|
|
1160
|
-
"id": {
|
|
1161
|
-
"description": "The default's unique identifier.",
|
|
1162
|
-
"title": "Id",
|
|
1163
|
-
"type": "string"
|
|
1164
|
-
},
|
|
1165
|
-
"repository": {
|
|
1115
|
+
"account": {
|
|
1166
1116
|
"anyOf": [
|
|
1167
1117
|
{
|
|
1168
1118
|
"type": "string"
|
|
@@ -1171,54 +1121,20 @@
|
|
|
1171
1121
|
"type": "null"
|
|
1172
1122
|
}
|
|
1173
1123
|
],
|
|
1174
|
-
"description": "
|
|
1175
|
-
"title": "
|
|
1124
|
+
"description": "Config id serving sessions with no repository context, or null when no account default is set.",
|
|
1125
|
+
"title": "Account"
|
|
1176
1126
|
},
|
|
1177
|
-
"
|
|
1178
|
-
"
|
|
1179
|
-
|
|
1180
|
-
"title": "Updated At",
|
|
1181
|
-
"type": "string"
|
|
1182
|
-
}
|
|
1183
|
-
},
|
|
1184
|
-
"required": [
|
|
1185
|
-
"id",
|
|
1186
|
-
"config_id",
|
|
1187
|
-
"updated_at"
|
|
1188
|
-
],
|
|
1189
|
-
"title": "AgentDefault",
|
|
1190
|
-
"type": "object"
|
|
1191
|
-
},
|
|
1192
|
-
"AgentDefaultResponse": {
|
|
1193
|
-
"description": "One default-agent setting.",
|
|
1194
|
-
"properties": {
|
|
1195
|
-
"default": {
|
|
1196
|
-
"$ref": "#/components/schemas/AgentDefault",
|
|
1197
|
-
"description": "The default-agent setting."
|
|
1198
|
-
}
|
|
1199
|
-
},
|
|
1200
|
-
"required": [
|
|
1201
|
-
"default"
|
|
1202
|
-
],
|
|
1203
|
-
"title": "AgentDefaultResponse",
|
|
1204
|
-
"type": "object"
|
|
1205
|
-
},
|
|
1206
|
-
"AgentDefaultsListResponse": {
|
|
1207
|
-
"description": "The account's default-agent settings.",
|
|
1208
|
-
"properties": {
|
|
1209
|
-
"defaults": {
|
|
1210
|
-
"description": "The configured defaults.",
|
|
1211
|
-
"items": {
|
|
1212
|
-
"$ref": "#/components/schemas/AgentDefault"
|
|
1127
|
+
"repositories": {
|
|
1128
|
+
"additionalProperties": {
|
|
1129
|
+
"type": "string"
|
|
1213
1130
|
},
|
|
1214
|
-
"
|
|
1215
|
-
"
|
|
1131
|
+
"default": {},
|
|
1132
|
+
"description": "Config id per repository, keyed \"owner/name\". A repository with no default set is absent.",
|
|
1133
|
+
"title": "Repositories",
|
|
1134
|
+
"type": "object"
|
|
1216
1135
|
}
|
|
1217
1136
|
},
|
|
1218
|
-
"
|
|
1219
|
-
"defaults"
|
|
1220
|
-
],
|
|
1221
|
-
"title": "AgentDefaultsListResponse",
|
|
1137
|
+
"title": "AgentDefaults",
|
|
1222
1138
|
"type": "object"
|
|
1223
1139
|
},
|
|
1224
1140
|
"AgentTemplate": {
|
|
@@ -1859,7 +1775,7 @@
|
|
|
1859
1775
|
"description": "A device-flow poll from the CLI.",
|
|
1860
1776
|
"properties": {
|
|
1861
1777
|
"device_code": {
|
|
1862
|
-
"description": "The device code returned by POST /auth/cli/start.",
|
|
1778
|
+
"description": "The device code returned by POST /v1/auth/cli/start.",
|
|
1863
1779
|
"title": "Device Code",
|
|
1864
1780
|
"type": "string"
|
|
1865
1781
|
}
|
|
@@ -2149,7 +2065,7 @@
|
|
|
2149
2065
|
"type": "null"
|
|
2150
2066
|
}
|
|
2151
2067
|
],
|
|
2152
|
-
"description": "A gallery template slug (see GET /agents/templates).",
|
|
2068
|
+
"description": "A gallery template slug (see GET /v1/agents/templates).",
|
|
2153
2069
|
"title": "Template Id"
|
|
2154
2070
|
}
|
|
2155
2071
|
},
|
|
@@ -2308,16 +2224,6 @@
|
|
|
2308
2224
|
"title": "CreateReviewRequest",
|
|
2309
2225
|
"type": "object"
|
|
2310
2226
|
},
|
|
2311
|
-
"DefaultResolution": {
|
|
2312
|
-
"description": "How a session that arrived with no explicit config source resolved its\nconfig (documents/eng/DEFAULT_CONFIGS.md \u00a74). Persisted on the session so\naudit and clients can say \"ran under X (repo default)\". A session started\nwith an explicit config/config_id/template_id never enters resolution and\nstores None.",
|
|
2313
|
-
"enum": [
|
|
2314
|
-
"repo_default",
|
|
2315
|
-
"account_default",
|
|
2316
|
-
"none"
|
|
2317
|
-
],
|
|
2318
|
-
"title": "DefaultResolution",
|
|
2319
|
-
"type": "string"
|
|
2320
|
-
},
|
|
2321
2227
|
"DurationPercentiles": {
|
|
2322
2228
|
"description": "Percentiles of a duration distribution, in hours. p0 = fastest,\np100 = slowest; the spread shows how merge latency varies.",
|
|
2323
2229
|
"properties": {
|
|
@@ -2442,7 +2348,7 @@
|
|
|
2442
2348
|
"ErrorInfo": {
|
|
2443
2349
|
"properties": {
|
|
2444
2350
|
"code": {
|
|
2445
|
-
"description": "Stable machine-readable error code. Open vocabulary \u2014 handle unknown codes by HTTP status. Known values: account_blocked, conflict,
|
|
2351
|
+
"description": "Stable machine-readable error code. Open vocabulary \u2014 handle unknown codes by HTTP status. Known values: account_blocked, conflict, contact_email_required, failed_dependency, file_quota_exceeded, forbidden, internal_error, invalid_request, not_found, rate_limited, review_in_flight, session_closed, session_ephemeral_trigger, session_finished, session_harness_single_turn, session_mention_surface, session_non_interactive, unauthorized, unavailable.",
|
|
2446
2352
|
"title": "Code",
|
|
2447
2353
|
"type": "string"
|
|
2448
2354
|
},
|
|
@@ -2835,21 +2741,6 @@
|
|
|
2835
2741
|
"title": "GetIntegrationsResponse",
|
|
2836
2742
|
"type": "object"
|
|
2837
2743
|
},
|
|
2838
|
-
"GetSessionIdeResponse": {
|
|
2839
|
-
"description": "The IDE link for a session's live sandbox.",
|
|
2840
|
-
"properties": {
|
|
2841
|
-
"url": {
|
|
2842
|
-
"description": "The membership-gated dashboard page for the session's sandbox. The page performs the proxy handoff itself, so the URL carries no credential \u2014 safe to share with any org member, in a transcript, or in a Slack message.",
|
|
2843
|
-
"title": "Url",
|
|
2844
|
-
"type": "string"
|
|
2845
|
-
}
|
|
2846
|
-
},
|
|
2847
|
-
"required": [
|
|
2848
|
-
"url"
|
|
2849
|
-
],
|
|
2850
|
-
"title": "GetSessionIdeResponse",
|
|
2851
|
-
"type": "object"
|
|
2852
|
-
},
|
|
2853
2744
|
"GetSessionLogResponse": {
|
|
2854
2745
|
"description": "The session log manifest: the complete, ordered, downloadable history\nof the session \u2014 every record (agent output, tool calls, thinking,\nlifecycle events, sandbox output, message events), archived into\nseq-ranged segments. For a running session `latest_feed_seq` may exceed\n`archived_through_feed_seq`; `has_more` tells the client whether the\nmanifest is the whole story yet.",
|
|
2855
2746
|
"properties": {
|
|
@@ -2911,27 +2802,6 @@
|
|
|
2911
2802
|
"title": "GetSessionLogResponse",
|
|
2912
2803
|
"type": "object"
|
|
2913
2804
|
},
|
|
2914
|
-
"GetSessionPortResponse": {
|
|
2915
|
-
"description": "A preview link for a port in a session's live sandbox.",
|
|
2916
|
-
"properties": {
|
|
2917
|
-
"port": {
|
|
2918
|
-
"description": "The sandbox port the link previews.",
|
|
2919
|
-
"title": "Port",
|
|
2920
|
-
"type": "integer"
|
|
2921
|
-
},
|
|
2922
|
-
"url": {
|
|
2923
|
-
"description": "The same membership-gated dashboard page as the IDE URL, deep-linked to a preview port (a dev server the agent or the IDE user started).",
|
|
2924
|
-
"title": "Url",
|
|
2925
|
-
"type": "string"
|
|
2926
|
-
}
|
|
2927
|
-
},
|
|
2928
|
-
"required": [
|
|
2929
|
-
"url",
|
|
2930
|
-
"port"
|
|
2931
|
-
],
|
|
2932
|
-
"title": "GetSessionPortResponse",
|
|
2933
|
-
"type": "object"
|
|
2934
|
-
},
|
|
2935
2805
|
"GetUsageDashboardResponse": {
|
|
2936
2806
|
"description": "The account's usage over a period: token and cost totals, a per-day\nseries, and a per-model breakdown. Costs are in millicents (1000 = $0.01);\ntoken counts include cache reads and writes \u2014 everything the runs were\ncharged for.",
|
|
2937
2807
|
"properties": {
|
|
@@ -3687,45 +3557,6 @@
|
|
|
3687
3557
|
"title": "HTTPValidationError",
|
|
3688
3558
|
"type": "object"
|
|
3689
3559
|
},
|
|
3690
|
-
"HandoffAgentSessionParams": {
|
|
3691
|
-
"description": "Laptop-to-cloud handoff parameters (`agent session handoff`): start a\nfresh session on the built-in handoff config, chained to the handed-off\nsession. Mutually exclusive with config_id / config / template_id \u2014 the\nhandoff config is platform-owned.",
|
|
3692
|
-
"properties": {
|
|
3693
|
-
"parent_session_id": {
|
|
3694
|
-
"description": "The session being handed off (usually a laptop-synced session).",
|
|
3695
|
-
"title": "Parent Session Id",
|
|
3696
|
-
"type": "string"
|
|
3697
|
-
},
|
|
3698
|
-
"ref": {
|
|
3699
|
-
"anyOf": [
|
|
3700
|
-
{
|
|
3701
|
-
"type": "string"
|
|
3702
|
-
},
|
|
3703
|
-
{
|
|
3704
|
-
"type": "null"
|
|
3705
|
-
}
|
|
3706
|
-
],
|
|
3707
|
-
"description": "Where the WIP commit was pushed (refs/ellipsis/handoff/<short>); recorded as a metadata breadcrumb.",
|
|
3708
|
-
"title": "Ref"
|
|
3709
|
-
},
|
|
3710
|
-
"repo": {
|
|
3711
|
-
"description": "\"owner/name\" (or a bare name under the caller's account).",
|
|
3712
|
-
"title": "Repo",
|
|
3713
|
-
"type": "string"
|
|
3714
|
-
},
|
|
3715
|
-
"sha": {
|
|
3716
|
-
"description": "The work-in-progress commit the CLI pushed (a commit of the dirty working tree) \u2014 becomes the sandbox checkout target.",
|
|
3717
|
-
"title": "Sha",
|
|
3718
|
-
"type": "string"
|
|
3719
|
-
}
|
|
3720
|
-
},
|
|
3721
|
-
"required": [
|
|
3722
|
-
"parent_session_id",
|
|
3723
|
-
"repo",
|
|
3724
|
-
"sha"
|
|
3725
|
-
],
|
|
3726
|
-
"title": "HandoffAgentSessionParams",
|
|
3727
|
-
"type": "object"
|
|
3728
|
-
},
|
|
3729
3560
|
"Harness": {
|
|
3730
3561
|
"enum": [
|
|
3731
3562
|
"claude_code",
|
|
@@ -4212,7 +4043,7 @@
|
|
|
4212
4043
|
"type": "object"
|
|
4213
4044
|
},
|
|
4214
4045
|
"ModelManufacturer": {
|
|
4215
|
-
"description": "Who BUILT a model. Never who serves it.\n\nServing path is irrelevant here. Anthropic built every Claude model, so all of\nthem are ANTHROPIC whether we reach them through the first-party Anthropic API\nor through Bedrock -- a choice made per request by the llm_providers chain, so\nit is not even a fixed property of the model. Likewise the `
|
|
4046
|
+
"description": "Who BUILT a model. Never who serves it.\n\nServing path is irrelevant here. Anthropic built every Claude model, so all of\nthem are ANTHROPIC whether we reach them through the first-party Anthropic API\nor through Bedrock -- a choice made per request by the llm_providers chain, so\nit is not even a fixed property of the model. Likewise the `gpt-5.6-*` rows\nare OPENAI (OpenAI's models, served by AWS via bedrock-mantle), and GLM is ZAI\n(Z.ai's model, served by DeepInfra via OpenRouter).\n\nSo this is deliberately NOT derived from `EgressRoute.provider`: routing is an\ninfrastructure fact that changes when we move a model between providers, while\nthe manufacturer is a property of the model itself and never changes.\n\nThe frontend renders a vendor logo per model, which is why it needs the maker.\nKeying that UI off the egress provider would put an AWS logo on a GPT model and\nan OpenAI logo on GLM.",
|
|
4216
4047
|
"enum": [
|
|
4217
4048
|
"anthropic",
|
|
4218
4049
|
"openai",
|
|
@@ -4326,10 +4157,9 @@
|
|
|
4326
4157
|
"type": "string"
|
|
4327
4158
|
},
|
|
4328
4159
|
"ParentKind": {
|
|
4329
|
-
"description": "How a session relates to its predecessor (parent_agent_session_id) \u2014\nthe ONE \"preceded-by\" chain for every predecessor relationship. Routing\nreads this when the distinction matters.\n\nCONTINUATION \u2014 a follow-up in the same conversation surface (e.g. a Slack\nthread reply spawning a fresh session on the same thread).\
|
|
4160
|
+
"description": "How a session relates to its predecessor (parent_agent_session_id) \u2014\nthe ONE \"preceded-by\" chain for every predecessor relationship. Routing\nreads this when the distinction matters.\n\nCONTINUATION \u2014 a follow-up in the same conversation surface (e.g. a Slack\nthread reply spawning a fresh session on the same thread).\nRESUME \u2014 a conversation re-hosted on a new box after its sandbox was torn\ndown (interactive platform; later phase).",
|
|
4330
4161
|
"enum": [
|
|
4331
4162
|
"continuation",
|
|
4332
|
-
"handoff",
|
|
4333
4163
|
"resume"
|
|
4334
4164
|
],
|
|
4335
4165
|
"title": "ParentKind",
|
|
@@ -4369,8 +4199,7 @@
|
|
|
4369
4199
|
"ephemeral_trigger",
|
|
4370
4200
|
"non_interactive",
|
|
4371
4201
|
"harness_single_turn",
|
|
4372
|
-
"closed"
|
|
4373
|
-
"laptop"
|
|
4202
|
+
"closed"
|
|
4374
4203
|
],
|
|
4375
4204
|
"title": "PromptBlockedReason",
|
|
4376
4205
|
"type": "string"
|
|
@@ -5167,7 +4996,7 @@
|
|
|
5167
4996
|
"type": "null"
|
|
5168
4997
|
}
|
|
5169
4998
|
],
|
|
5170
|
-
"description": "Optional partial-config override merged onto the chosen config and re-validated \u2014 e.g. {\"claude\": {\"model\": \"claude-opus-4-8\"}} to replay the run on a different model, or {\"
|
|
4999
|
+
"description": "Optional partial-config override merged onto the chosen config and re-validated \u2014 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. Mutually exclusive with config_override_yaml.",
|
|
5171
5000
|
"title": "Config Override"
|
|
5172
5001
|
},
|
|
5173
5002
|
"config_override_yaml": {
|
|
@@ -6798,8 +6627,12 @@
|
|
|
6798
6627
|
"type": "object"
|
|
6799
6628
|
},
|
|
6800
6629
|
"Session": {
|
|
6801
|
-
"description": "An agent session: one conversation with an agent, from trigger to\nterminal state. Returned by `GET /sessions/{id}` and carried by the\nsession stream's `session`/`snapshot` frames \u2014 REST and stream never\ndisagree about what a session looks like.",
|
|
6630
|
+
"description": "An agent session: one conversation with an agent, from trigger to\nterminal state. Returned by `GET /v1/sessions/{id}` and carried by the\nsession stream's `session`/`snapshot` frames \u2014 REST and stream never\ndisagree about what a session looks like.",
|
|
6802
6631
|
"properties": {
|
|
6632
|
+
"agent": {
|
|
6633
|
+
"$ref": "#/components/schemas/SessionAgent",
|
|
6634
|
+
"description": "The agent that ran: the config the session executed, where that config came from, and any override merged into it."
|
|
6635
|
+
},
|
|
6803
6636
|
"attribution": {
|
|
6804
6637
|
"$ref": "#/components/schemas/SessionAttribution",
|
|
6805
6638
|
"description": "The principal this session is attributed to."
|
|
@@ -6808,43 +6641,6 @@
|
|
|
6808
6641
|
"$ref": "#/components/schemas/SessionBudget",
|
|
6809
6642
|
"description": "The spend budget enforced for this session."
|
|
6810
6643
|
},
|
|
6811
|
-
"client_version": {
|
|
6812
|
-
"anyOf": [
|
|
6813
|
-
{
|
|
6814
|
-
"type": "string"
|
|
6815
|
-
},
|
|
6816
|
-
{
|
|
6817
|
-
"type": "null"
|
|
6818
|
-
}
|
|
6819
|
-
],
|
|
6820
|
-
"description": "Version of the client that started the session, if reported.",
|
|
6821
|
-
"title": "Client Version"
|
|
6822
|
-
},
|
|
6823
|
-
"config_id": {
|
|
6824
|
-
"anyOf": [
|
|
6825
|
-
{
|
|
6826
|
-
"type": "string"
|
|
6827
|
-
},
|
|
6828
|
-
{
|
|
6829
|
-
"type": "null"
|
|
6830
|
-
}
|
|
6831
|
-
],
|
|
6832
|
-
"description": "Identifier of the saved agent config the session ran on, if any.",
|
|
6833
|
-
"title": "Config Id"
|
|
6834
|
-
},
|
|
6835
|
-
"config_override": {
|
|
6836
|
-
"anyOf": [
|
|
6837
|
-
{
|
|
6838
|
-
"additionalProperties": true,
|
|
6839
|
-
"type": "object"
|
|
6840
|
-
},
|
|
6841
|
-
{
|
|
6842
|
-
"type": "null"
|
|
6843
|
-
}
|
|
6844
|
-
],
|
|
6845
|
-
"description": "The partial-config diff applied for this run; null when the config was unmodified.",
|
|
6846
|
-
"title": "Config Override"
|
|
6847
|
-
},
|
|
6848
6644
|
"context_repository": {
|
|
6849
6645
|
"anyOf": [
|
|
6850
6646
|
{
|
|
@@ -6867,17 +6663,6 @@
|
|
|
6867
6663
|
"title": "Created At",
|
|
6868
6664
|
"type": "string"
|
|
6869
6665
|
},
|
|
6870
|
-
"default_resolution": {
|
|
6871
|
-
"anyOf": [
|
|
6872
|
-
{
|
|
6873
|
-
"$ref": "#/components/schemas/DefaultResolution"
|
|
6874
|
-
},
|
|
6875
|
-
{
|
|
6876
|
-
"type": "null"
|
|
6877
|
-
}
|
|
6878
|
-
],
|
|
6879
|
-
"description": "How the session's config was resolved from the account's defaults, when no explicit config was given."
|
|
6880
|
-
},
|
|
6881
6666
|
"exit_status": {
|
|
6882
6667
|
"anyOf": [
|
|
6883
6668
|
{
|
|
@@ -6924,18 +6709,6 @@
|
|
|
6924
6709
|
"description": "When the session last received a message.",
|
|
6925
6710
|
"title": "Last Message At"
|
|
6926
6711
|
},
|
|
6927
|
-
"live_summary": {
|
|
6928
|
-
"anyOf": [
|
|
6929
|
-
{
|
|
6930
|
-
"type": "string"
|
|
6931
|
-
},
|
|
6932
|
-
{
|
|
6933
|
-
"type": "null"
|
|
6934
|
-
}
|
|
6935
|
-
],
|
|
6936
|
-
"description": "A live summary of the session's progress while it runs.",
|
|
6937
|
-
"title": "Live Summary"
|
|
6938
|
-
},
|
|
6939
6712
|
"metadata": {
|
|
6940
6713
|
"additionalProperties": {
|
|
6941
6714
|
"type": "string"
|
|
@@ -6980,30 +6753,6 @@
|
|
|
6980
6753
|
"$ref": "#/components/schemas/SessionPrompting",
|
|
6981
6754
|
"description": "Whether a client may send this session a message and, when it may not, the reason to show instead of a composer."
|
|
6982
6755
|
},
|
|
6983
|
-
"sandbox_id": {
|
|
6984
|
-
"anyOf": [
|
|
6985
|
-
{
|
|
6986
|
-
"type": "string"
|
|
6987
|
-
},
|
|
6988
|
-
{
|
|
6989
|
-
"type": "null"
|
|
6990
|
-
}
|
|
6991
|
-
],
|
|
6992
|
-
"description": "Identifier of the sandbox the session runs in, if any.",
|
|
6993
|
-
"title": "Sandbox Id"
|
|
6994
|
-
},
|
|
6995
|
-
"session_key": {
|
|
6996
|
-
"anyOf": [
|
|
6997
|
-
{
|
|
6998
|
-
"type": "string"
|
|
6999
|
-
},
|
|
7000
|
-
{
|
|
7001
|
-
"type": "null"
|
|
7002
|
-
}
|
|
7003
|
-
],
|
|
7004
|
-
"description": "Key identifying the durable conversation this session belongs to, or null for single-shot sessions.",
|
|
7005
|
-
"title": "Session Key"
|
|
7006
|
-
},
|
|
7007
6756
|
"session_state": {
|
|
7008
6757
|
"anyOf": [
|
|
7009
6758
|
{
|
|
@@ -7017,7 +6766,7 @@
|
|
|
7017
6766
|
},
|
|
7018
6767
|
"source": {
|
|
7019
6768
|
"$ref": "#/components/schemas/SessionSource",
|
|
7020
|
-
"description": "Where the session came from (e.g. react, manual, api, cli, mention, cron
|
|
6769
|
+
"description": "Where the session came from (e.g. react, manual, api, cli, mention, cron)."
|
|
7021
6770
|
},
|
|
7022
6771
|
"status": {
|
|
7023
6772
|
"$ref": "#/components/schemas/SessionStatus",
|
|
@@ -7039,6 +6788,17 @@
|
|
|
7039
6788
|
"$ref": "#/components/schemas/SessionStopped",
|
|
7040
6789
|
"description": "The stop request, if the session was stopped."
|
|
7041
6790
|
},
|
|
6791
|
+
"summary": {
|
|
6792
|
+
"anyOf": [
|
|
6793
|
+
{
|
|
6794
|
+
"$ref": "#/components/schemas/SessionSummary"
|
|
6795
|
+
},
|
|
6796
|
+
{
|
|
6797
|
+
"type": "null"
|
|
6798
|
+
}
|
|
6799
|
+
],
|
|
6800
|
+
"description": "The latest live summary of the session's progress while it runs, and when it was generated."
|
|
6801
|
+
},
|
|
7042
6802
|
"surface": {
|
|
7043
6803
|
"anyOf": [
|
|
7044
6804
|
{
|
|
@@ -7048,7 +6808,7 @@
|
|
|
7048
6808
|
"type": "null"
|
|
7049
6809
|
}
|
|
7050
6810
|
],
|
|
7051
|
-
"description": "The public status projection; null
|
|
6811
|
+
"description": "The public status projection; null on list/search responses, which do not derive it."
|
|
7052
6812
|
},
|
|
7053
6813
|
"tokens": {
|
|
7054
6814
|
"$ref": "#/components/schemas/SessionTokens",
|
|
@@ -7059,8 +6819,29 @@
|
|
|
7059
6819
|
"format": "date-time",
|
|
7060
6820
|
"title": "Updated At",
|
|
7061
6821
|
"type": "string"
|
|
6822
|
+
}
|
|
6823
|
+
},
|
|
6824
|
+
"required": [
|
|
6825
|
+
"id",
|
|
6826
|
+
"created_at",
|
|
6827
|
+
"updated_at",
|
|
6828
|
+
"harness",
|
|
6829
|
+
"source",
|
|
6830
|
+
"status",
|
|
6831
|
+
"prompting",
|
|
6832
|
+
"agent"
|
|
6833
|
+
],
|
|
6834
|
+
"title": "Session",
|
|
6835
|
+
"type": "object"
|
|
6836
|
+
},
|
|
6837
|
+
"SessionAgent": {
|
|
6838
|
+
"description": "The agent this session ran: the config it actually executed, where that\nconfig came from, and the diff that was merged in \u2014 the same\neffective-value-plus-provenance shape `SessionBudget` uses.\n\n`config` is the snapshot frozen when the session was created; `config_id`\npoints at the saved config as it exists NOW. They diverge legitimately: a\nYAML edit after the session started, or any `override`, leaves the pointer\ndescribing something the session never ran.",
|
|
6839
|
+
"properties": {
|
|
6840
|
+
"config": {
|
|
6841
|
+
"$ref": "#/components/schemas/AgentConfig",
|
|
6842
|
+
"description": "The agent config the session actually ran, frozen when the session was created."
|
|
7062
6843
|
},
|
|
7063
|
-
"
|
|
6844
|
+
"config_id": {
|
|
7064
6845
|
"anyOf": [
|
|
7065
6846
|
{
|
|
7066
6847
|
"type": "string"
|
|
@@ -7069,31 +6850,32 @@
|
|
|
7069
6850
|
"type": "null"
|
|
7070
6851
|
}
|
|
7071
6852
|
],
|
|
7072
|
-
"description": "Identifier of the
|
|
7073
|
-
"title": "
|
|
6853
|
+
"description": "Identifier of the saved config this session's snapshot was taken from. Null for inline, platform-default, and built-in configs. Points at the config as it exists now, which may have changed since.",
|
|
6854
|
+
"title": "Config Id"
|
|
7074
6855
|
},
|
|
7075
|
-
"
|
|
6856
|
+
"override": {
|
|
7076
6857
|
"anyOf": [
|
|
7077
6858
|
{
|
|
7078
|
-
"
|
|
6859
|
+
"additionalProperties": true,
|
|
6860
|
+
"type": "object"
|
|
7079
6861
|
},
|
|
7080
6862
|
{
|
|
7081
6863
|
"type": "null"
|
|
7082
6864
|
}
|
|
7083
6865
|
],
|
|
7084
|
-
"description": "
|
|
6866
|
+
"description": "The partial-config override merged into `config` for this session, or null when the config ran unmodified. `config` is the merged result; this is the diff.",
|
|
6867
|
+
"title": "Override"
|
|
6868
|
+
},
|
|
6869
|
+
"source": {
|
|
6870
|
+
"$ref": "#/components/schemas/AgentConfigSource",
|
|
6871
|
+
"description": "How this session's config was chosen."
|
|
7085
6872
|
}
|
|
7086
6873
|
},
|
|
7087
6874
|
"required": [
|
|
7088
|
-
"
|
|
7089
|
-
"
|
|
7090
|
-
"updated_at",
|
|
7091
|
-
"harness",
|
|
7092
|
-
"source",
|
|
7093
|
-
"status",
|
|
7094
|
-
"prompting"
|
|
6875
|
+
"config",
|
|
6876
|
+
"source"
|
|
7095
6877
|
],
|
|
7096
|
-
"title": "
|
|
6878
|
+
"title": "SessionAgent",
|
|
7097
6879
|
"type": "object"
|
|
7098
6880
|
},
|
|
7099
6881
|
"SessionAttribution": {
|
|
@@ -7326,6 +7108,8 @@
|
|
|
7326
7108
|
"missing_repo_access",
|
|
7327
7109
|
"missing_token_permissions",
|
|
7328
7110
|
"missing_sandbox_variables",
|
|
7111
|
+
"blocked",
|
|
7112
|
+
"contact_email_required",
|
|
7329
7113
|
"cancelled",
|
|
7330
7114
|
"interrupted",
|
|
7331
7115
|
"error",
|
|
@@ -7971,8 +7755,7 @@
|
|
|
7971
7755
|
"api",
|
|
7972
7756
|
"cli",
|
|
7973
7757
|
"mention",
|
|
7974
|
-
"cron"
|
|
7975
|
-
"laptop"
|
|
7758
|
+
"cron"
|
|
7976
7759
|
],
|
|
7977
7760
|
"title": "SessionSource",
|
|
7978
7761
|
"type": "string"
|
|
@@ -8044,19 +7827,47 @@
|
|
|
8044
7827
|
"title": "SessionStopped",
|
|
8045
7828
|
"type": "object"
|
|
8046
7829
|
},
|
|
8047
|
-
"
|
|
8048
|
-
"description": "
|
|
7830
|
+
"SessionSummary": {
|
|
7831
|
+
"description": "A live one-line summary of what the session is working on, refreshed\nevery few steps while it runs.",
|
|
8049
7832
|
"properties": {
|
|
8050
|
-
"
|
|
7833
|
+
"created_at": {
|
|
8051
7834
|
"anyOf": [
|
|
8052
7835
|
{
|
|
8053
|
-
"
|
|
7836
|
+
"format": "date-time",
|
|
7837
|
+
"type": "string"
|
|
8054
7838
|
},
|
|
8055
7839
|
{
|
|
8056
7840
|
"type": "null"
|
|
8057
7841
|
}
|
|
8058
|
-
]
|
|
8059
|
-
|
|
7842
|
+
],
|
|
7843
|
+
"description": "When this summary line was generated. Null on summaries written before generation time was tracked.",
|
|
7844
|
+
"title": "Created At"
|
|
7845
|
+
},
|
|
7846
|
+
"description": {
|
|
7847
|
+
"description": "One-line description of what the session is working on.",
|
|
7848
|
+
"title": "Description",
|
|
7849
|
+
"type": "string"
|
|
7850
|
+
}
|
|
7851
|
+
},
|
|
7852
|
+
"required": [
|
|
7853
|
+
"description"
|
|
7854
|
+
],
|
|
7855
|
+
"title": "SessionSummary",
|
|
7856
|
+
"type": "object"
|
|
7857
|
+
},
|
|
7858
|
+
"SessionSurface": {
|
|
7859
|
+
"description": "The three fields we expose.\n\n`use_enum_values=True` (from CustomBaseModel) stores the members as their\nstring values, so this serializes to `{\"session\": \"alive\", \"run\": \"waiting\",\n\"status\": \"waiting\"}` \u2014 a plain object, not enum names.",
|
|
7860
|
+
"properties": {
|
|
7861
|
+
"run": {
|
|
7862
|
+
"anyOf": [
|
|
7863
|
+
{
|
|
7864
|
+
"$ref": "#/components/schemas/RunStatus"
|
|
7865
|
+
},
|
|
7866
|
+
{
|
|
7867
|
+
"type": "null"
|
|
7868
|
+
}
|
|
7869
|
+
]
|
|
7870
|
+
},
|
|
8060
7871
|
"session": {
|
|
8061
7872
|
"anyOf": [
|
|
8062
7873
|
{
|
|
@@ -8152,7 +7963,7 @@
|
|
|
8152
7963
|
"title": "Next Cursor"
|
|
8153
7964
|
},
|
|
8154
7965
|
"sessions": {
|
|
8155
|
-
"description": "Lean wire rows \u2014 the same shape GET /sessions/{id} and the stream's session frames carry. The heavy blobs (config snapshot, input/output) live on the detail endpoints.",
|
|
7966
|
+
"description": "Lean wire rows \u2014 the same shape GET /v1/sessions/{id} and the stream's session frames carry. The heavy blobs (config snapshot, input/output) live on the detail endpoints.",
|
|
8156
7967
|
"items": {
|
|
8157
7968
|
"$ref": "#/components/schemas/Session"
|
|
8158
7969
|
},
|
|
@@ -8420,7 +8231,7 @@
|
|
|
8420
8231
|
"type": "null"
|
|
8421
8232
|
}
|
|
8422
8233
|
],
|
|
8423
|
-
"description": "Optional partial-config override merged onto the chosen config and re-validated (e.g. {\"
|
|
8234
|
+
"description": "Optional partial-config override merged onto the chosen config and re-validated (e.g. {\"budget\": {\"session\": 5.0}} to raise just this session's budget). Merged onto config_id/template_id or the platform default; with an inline config, set fields directly instead. Mutually exclusive with config_override_yaml.",
|
|
8424
8235
|
"title": "Config Override"
|
|
8425
8236
|
},
|
|
8426
8237
|
"config_override_yaml": {
|
|
@@ -8441,20 +8252,9 @@
|
|
|
8441
8252
|
"title": "Force Rebuild",
|
|
8442
8253
|
"type": "boolean"
|
|
8443
8254
|
},
|
|
8444
|
-
"handoff": {
|
|
8445
|
-
"anyOf": [
|
|
8446
|
-
{
|
|
8447
|
-
"$ref": "#/components/schemas/HandoffAgentSessionParams"
|
|
8448
|
-
},
|
|
8449
|
-
{
|
|
8450
|
-
"type": "null"
|
|
8451
|
-
}
|
|
8452
|
-
],
|
|
8453
|
-
"description": "Laptop-to-cloud handoff parameters. When set, the built-in handoff config is used and config_id/config/template_id must be omitted."
|
|
8454
|
-
},
|
|
8455
8255
|
"idle_start": {
|
|
8456
8256
|
"default": false,
|
|
8457
|
-
"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
|
|
8257
|
+
"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 \u2014 it can never receive a message).",
|
|
8458
8258
|
"title": "Idle Start",
|
|
8459
8259
|
"type": "boolean"
|
|
8460
8260
|
},
|
|
@@ -8489,7 +8289,7 @@
|
|
|
8489
8289
|
"type": "null"
|
|
8490
8290
|
}
|
|
8491
8291
|
],
|
|
8492
|
-
"description": "Per-run instructions appended to the initial query after the config's shared system prompt. Applies regardless of which config source is used.
|
|
8292
|
+
"description": "Per-run instructions appended to the initial query after the config's shared system prompt. Applies regardless of which config source is used.",
|
|
8493
8293
|
"title": "Prompt"
|
|
8494
8294
|
},
|
|
8495
8295
|
"repository": {
|
|
@@ -8520,43 +8320,6 @@
|
|
|
8520
8320
|
"title": "StartAgentSessionRequest",
|
|
8521
8321
|
"type": "object"
|
|
8522
8322
|
},
|
|
8523
|
-
"StartAgentSessionResponse": {
|
|
8524
|
-
"description": "The started session, plus explicit fields describing how its config\nwas resolved.",
|
|
8525
|
-
"properties": {
|
|
8526
|
-
"resolution_source": {
|
|
8527
|
-
"anyOf": [
|
|
8528
|
-
{
|
|
8529
|
-
"$ref": "#/components/schemas/DefaultResolution"
|
|
8530
|
-
},
|
|
8531
|
-
{
|
|
8532
|
-
"type": "null"
|
|
8533
|
-
}
|
|
8534
|
-
],
|
|
8535
|
-
"description": "Which rung of the defaults ladder chose the config (repo_default | account_default | none). Null when an explicit config/config_id/template_id (or a handoff) bypassed resolution."
|
|
8536
|
-
},
|
|
8537
|
-
"resolved_config_name": {
|
|
8538
|
-
"anyOf": [
|
|
8539
|
-
{
|
|
8540
|
-
"type": "string"
|
|
8541
|
-
},
|
|
8542
|
-
{
|
|
8543
|
-
"type": "null"
|
|
8544
|
-
}
|
|
8545
|
-
],
|
|
8546
|
-
"description": "The name of the config the session runs under.",
|
|
8547
|
-
"title": "Resolved Config Name"
|
|
8548
|
-
},
|
|
8549
|
-
"session": {
|
|
8550
|
-
"$ref": "#/components/schemas/Session",
|
|
8551
|
-
"description": "The started session."
|
|
8552
|
-
}
|
|
8553
|
-
},
|
|
8554
|
-
"required": [
|
|
8555
|
-
"session"
|
|
8556
|
-
],
|
|
8557
|
-
"title": "StartAgentSessionResponse",
|
|
8558
|
-
"type": "object"
|
|
8559
|
-
},
|
|
8560
8323
|
"StartCliAuthResponse": {
|
|
8561
8324
|
"description": "A freshly minted device-code flow: show the user code (or open the\ncomplete URI) and poll with the device code.",
|
|
8562
8325
|
"properties": {
|
|
@@ -8602,106 +8365,6 @@
|
|
|
8602
8365
|
"title": "StartCliAuthResponse",
|
|
8603
8366
|
"type": "object"
|
|
8604
8367
|
},
|
|
8605
|
-
"SyncAgentSessionRequest": {
|
|
8606
|
-
"description": "One hook-driven transcript sync from a developer laptop. The CLI reads\nthe live on-disk Claude Code transcript, redacts it client-side, gzips\nit, and POSTs it here \u2014 once per turn and at termination.",
|
|
8607
|
-
"properties": {
|
|
8608
|
-
"cc_session_id": {
|
|
8609
|
-
"description": "The Claude Code session uuid (from the hook payload's session_id).",
|
|
8610
|
-
"title": "Cc Session Id",
|
|
8611
|
-
"type": "string"
|
|
8612
|
-
},
|
|
8613
|
-
"cwd": {
|
|
8614
|
-
"anyOf": [
|
|
8615
|
-
{
|
|
8616
|
-
"type": "string"
|
|
8617
|
-
},
|
|
8618
|
-
{
|
|
8619
|
-
"type": "null"
|
|
8620
|
-
}
|
|
8621
|
-
],
|
|
8622
|
-
"description": "The laptop working directory.",
|
|
8623
|
-
"title": "Cwd"
|
|
8624
|
-
},
|
|
8625
|
-
"git_branch": {
|
|
8626
|
-
"anyOf": [
|
|
8627
|
-
{
|
|
8628
|
-
"type": "string"
|
|
8629
|
-
},
|
|
8630
|
-
{
|
|
8631
|
-
"type": "null"
|
|
8632
|
-
}
|
|
8633
|
-
],
|
|
8634
|
-
"description": "The checked-out git branch.",
|
|
8635
|
-
"title": "Git Branch"
|
|
8636
|
-
},
|
|
8637
|
-
"reason": {
|
|
8638
|
-
"default": "stop",
|
|
8639
|
-
"description": "Which hook fired the sync: \"stop\" (mid-session, once per turn) or \"session_end\" (the Claude Code process terminated).",
|
|
8640
|
-
"enum": [
|
|
8641
|
-
"stop",
|
|
8642
|
-
"session_end"
|
|
8643
|
-
],
|
|
8644
|
-
"title": "Reason",
|
|
8645
|
-
"type": "string"
|
|
8646
|
-
},
|
|
8647
|
-
"repo": {
|
|
8648
|
-
"anyOf": [
|
|
8649
|
-
{
|
|
8650
|
-
"type": "string"
|
|
8651
|
-
},
|
|
8652
|
-
{
|
|
8653
|
-
"type": "null"
|
|
8654
|
-
}
|
|
8655
|
-
],
|
|
8656
|
-
"description": "The enrolled repository (\"owner/name\", from the working directory's git remote).",
|
|
8657
|
-
"title": "Repo"
|
|
8658
|
-
},
|
|
8659
|
-
"transcript_gzip_b64": {
|
|
8660
|
-
"description": "The redacted transcript JSONL, gzipped then base64-encoded.",
|
|
8661
|
-
"title": "Transcript Gzip B64",
|
|
8662
|
-
"type": "string"
|
|
8663
|
-
}
|
|
8664
|
-
},
|
|
8665
|
-
"required": [
|
|
8666
|
-
"cc_session_id",
|
|
8667
|
-
"transcript_gzip_b64"
|
|
8668
|
-
],
|
|
8669
|
-
"title": "SyncAgentSessionRequest",
|
|
8670
|
-
"type": "object"
|
|
8671
|
-
},
|
|
8672
|
-
"SyncAgentSessionResponse": {
|
|
8673
|
-
"description": "The outcome of a laptop transcript sync.",
|
|
8674
|
-
"properties": {
|
|
8675
|
-
"accepted": {
|
|
8676
|
-
"description": "False when the stored snapshot was already at least as long (longest snapshot wins) \u2014 acknowledged, nothing written.",
|
|
8677
|
-
"title": "Accepted",
|
|
8678
|
-
"type": "boolean"
|
|
8679
|
-
},
|
|
8680
|
-
"event_count": {
|
|
8681
|
-
"description": "The number of transcript events in the stored snapshot.",
|
|
8682
|
-
"title": "Event Count",
|
|
8683
|
-
"type": "integer"
|
|
8684
|
-
},
|
|
8685
|
-
"process_id": {
|
|
8686
|
-
"description": "The synced Claude Code process id.",
|
|
8687
|
-
"title": "Process Id",
|
|
8688
|
-
"type": "string"
|
|
8689
|
-
},
|
|
8690
|
-
"session_id": {
|
|
8691
|
-
"description": "The platform session the sync mapped to.",
|
|
8692
|
-
"title": "Session Id",
|
|
8693
|
-
"type": "string"
|
|
8694
|
-
}
|
|
8695
|
-
},
|
|
8696
|
-
"required": [
|
|
8697
|
-
"session_id",
|
|
8698
|
-
"process_id",
|
|
8699
|
-
"event_count",
|
|
8700
|
-
"accepted"
|
|
8701
|
-
],
|
|
8702
|
-
"title": "SyncAgentSessionResponse",
|
|
8703
|
-
"type": "object"
|
|
8704
|
-
},
|
|
8705
8368
|
"TokensInfo": {
|
|
8706
8369
|
"additionalProperties": false,
|
|
8707
8370
|
"description": "Token/cost usage, per record (one API call's counts, aggregate fields at\ntheir zero defaults) or aggregated per execution/session\n(compute_spend_from_records derives num_turns and cost_usd).\n\nStrict on purpose: this is our own persisted schema, so an unknown key is a\nwriter bug (the num_turns=0 bug shipped because a Claude Code usage dict\nvalidated leniently against this model, silently zeroing every\nnon-overlapping field). Legacy keys were dropped from persisted blobs by\nthe 2026-07-26 tokens_info migration; per-model usage lives on\n`execution.model_usage` (CC's modelUsage, verbatim).",
|
|
@@ -8919,27 +8582,6 @@
|
|
|
8919
8582
|
"title": "ValidationError",
|
|
8920
8583
|
"type": "object"
|
|
8921
8584
|
},
|
|
8922
|
-
"WebhookType": {
|
|
8923
|
-
"enum": [
|
|
8924
|
-
"github.issue",
|
|
8925
|
-
"github.issue_comment",
|
|
8926
|
-
"github.push",
|
|
8927
|
-
"github.pull_request",
|
|
8928
|
-
"github.pull_request_comment",
|
|
8929
|
-
"github.pull_request_review",
|
|
8930
|
-
"github.pull_request_review_comment",
|
|
8931
|
-
"slack.app_mention",
|
|
8932
|
-
"slack.message",
|
|
8933
|
-
"slack.channel_created",
|
|
8934
|
-
"linear.issue",
|
|
8935
|
-
"linear.issue_comment",
|
|
8936
|
-
"sentry.event_alert",
|
|
8937
|
-
"sentry.metric_alert",
|
|
8938
|
-
"user.message"
|
|
8939
|
-
],
|
|
8940
|
-
"title": "WebhookType",
|
|
8941
|
-
"type": "string"
|
|
8942
|
-
},
|
|
8943
8585
|
"WhoAmIResponse": {
|
|
8944
8586
|
"description": "The identity behind the caller's credential.",
|
|
8945
8587
|
"properties": {
|
|
@@ -9027,7 +8669,7 @@
|
|
|
9027
8669
|
},
|
|
9028
8670
|
"openapi": "3.1.0",
|
|
9029
8671
|
"paths": {
|
|
9030
|
-
"/agents/configs": {
|
|
8672
|
+
"/v1/agents/configs": {
|
|
9031
8673
|
"get": {
|
|
9032
8674
|
"description": "List saved agent configs.",
|
|
9033
8675
|
"operationId": "list_agent_configs",
|
|
@@ -9217,7 +8859,7 @@
|
|
|
9217
8859
|
"x-ellipsis-sdk-method": "agents.configs.create"
|
|
9218
8860
|
}
|
|
9219
8861
|
},
|
|
9220
|
-
"/agents/configs/{config_id}": {
|
|
8862
|
+
"/v1/agents/configs/{config_id}": {
|
|
9221
8863
|
"delete": {
|
|
9222
8864
|
"description": "Delete an agent, by id or by the agent's name.\n\nThe agent stops running and its name is freed immediately; its\npast sessions remain readable. Only for agents managed through\nthis API \u2014 delete the file to remove one defined by a\nrepository.",
|
|
9223
8865
|
"operationId": "delete_agent_config",
|
|
@@ -9531,7 +9173,7 @@
|
|
|
9531
9173
|
"x-ellipsis-sdk-method": "agents.configs.update"
|
|
9532
9174
|
}
|
|
9533
9175
|
},
|
|
9534
|
-
"/agents/configs/{config_id}/link": {
|
|
9176
|
+
"/v1/agents/configs/{config_id}/link": {
|
|
9535
9177
|
"post": {
|
|
9536
9178
|
"description": "Move an agent into a repository, by id or by the agent's name.\n\nOpens a pull request adding the agent's config file. The agent\nkeeps running unchanged meanwhile; merging hands it over to the\nfile, after which the file is what changes it. Nothing happens\nif the pull request is never merged.",
|
|
9537
9179
|
"operationId": "link_agent_config",
|
|
@@ -9656,7 +9298,7 @@
|
|
|
9656
9298
|
"x-ellipsis-sdk-method": "agents.configs.link"
|
|
9657
9299
|
}
|
|
9658
9300
|
},
|
|
9659
|
-
"/agents/configs/{config_id}/unlink": {
|
|
9301
|
+
"/v1/agents/configs/{config_id}/unlink": {
|
|
9660
9302
|
"post": {
|
|
9661
9303
|
"description": "Take over an agent from its file, by id or by the agent's name.\n\nThe file stops governing the agent immediately and further\nchanges go through this API. The file is left in place, inert \u2014\ndelete it whenever you like.",
|
|
9662
9304
|
"operationId": "unlink_agent_config",
|
|
@@ -9761,7 +9403,7 @@
|
|
|
9761
9403
|
"x-ellipsis-sdk-method": "agents.configs.unlink"
|
|
9762
9404
|
}
|
|
9763
9405
|
},
|
|
9764
|
-
"/agents/defaults": {
|
|
9406
|
+
"/v1/agents/defaults": {
|
|
9765
9407
|
"delete": {
|
|
9766
9408
|
"description": "Clear a default agent config.\n\nAddressed by rung: the account rung (repository omitted) or a\nrepository rung.\n\nRefused for sandbox tokens.",
|
|
9767
9409
|
"operationId": "delete_agent_default",
|
|
@@ -9858,7 +9500,7 @@
|
|
|
9858
9500
|
"x-ellipsis-sdk-method": "agents.defaults.delete"
|
|
9859
9501
|
},
|
|
9860
9502
|
"get": {
|
|
9861
|
-
"description": "
|
|
9503
|
+
"description": "Get the default agent configs.\n\nThe account-wide default and the per-repository defaults, as config\nids. Repo rungs are keyed \"owner/name\"; a repository this\ninstallation can no longer see is omitted.",
|
|
9862
9504
|
"operationId": "list_agent_defaults",
|
|
9863
9505
|
"parameters": [
|
|
9864
9506
|
{
|
|
@@ -9883,7 +9525,7 @@
|
|
|
9883
9525
|
"content": {
|
|
9884
9526
|
"application/json": {
|
|
9885
9527
|
"schema": {
|
|
9886
|
-
"$ref": "#/components/schemas/
|
|
9528
|
+
"$ref": "#/components/schemas/AgentDefaults"
|
|
9887
9529
|
}
|
|
9888
9530
|
}
|
|
9889
9531
|
},
|
|
@@ -9932,7 +9574,7 @@
|
|
|
9932
9574
|
"x-ellipsis-sdk-method": "agents.defaults.list"
|
|
9933
9575
|
},
|
|
9934
9576
|
"put": {
|
|
9935
|
-
"description": "Set a default agent config.\n\nAddressed by rung: the account rung (repository omitted) or a\nrepository rung (\"owner/name\"); the config by id or by the\nagent's name.\n\nRefused for sandbox tokens (potentially prompt-injected code\nmust not repoint the account's ambient default); an unknown or\nforeign repository is a 404.",
|
|
9577
|
+
"description": "Set a default agent config.\n\nAddressed by rung: the account rung (repository omitted) or a\nrepository rung (\"owner/name\"); the config by id or by the\nagent's name. Returns the full resulting ladder.\n\nRefused for sandbox tokens (potentially prompt-injected code\nmust not repoint the account's ambient default); an unknown or\nforeign repository is a 404.",
|
|
9936
9578
|
"operationId": "put_agent_default",
|
|
9937
9579
|
"parameters": [
|
|
9938
9580
|
{
|
|
@@ -9967,7 +9609,7 @@
|
|
|
9967
9609
|
"content": {
|
|
9968
9610
|
"application/json": {
|
|
9969
9611
|
"schema": {
|
|
9970
|
-
"$ref": "#/components/schemas/
|
|
9612
|
+
"$ref": "#/components/schemas/AgentDefaults"
|
|
9971
9613
|
}
|
|
9972
9614
|
}
|
|
9973
9615
|
},
|
|
@@ -10036,7 +9678,7 @@
|
|
|
10036
9678
|
"x-ellipsis-sdk-method": "agents.defaults.set"
|
|
10037
9679
|
}
|
|
10038
9680
|
},
|
|
10039
|
-
"/agents/templates": {
|
|
9681
|
+
"/v1/agents/templates": {
|
|
10040
9682
|
"get": {
|
|
10041
9683
|
"description": "List the built-in starter agent templates.\n\nBehind auth but not account-scoped \u2014 the data is static\nproduct content shared by the dashboard, landing site, and CLI.",
|
|
10042
9684
|
"operationId": "list_agent_templates",
|
|
@@ -10112,7 +9754,7 @@
|
|
|
10112
9754
|
"x-ellipsis-sdk-method": "agents.templates.list"
|
|
10113
9755
|
}
|
|
10114
9756
|
},
|
|
10115
|
-
"/agents/templates/{template_id}": {
|
|
9757
|
+
"/v1/agents/templates/{template_id}": {
|
|
10116
9758
|
"get": {
|
|
10117
9759
|
"description": "Return one built-in agent template by slug.",
|
|
10118
9760
|
"operationId": "get_agent_template",
|
|
@@ -10207,7 +9849,7 @@
|
|
|
10207
9849
|
"x-ellipsis-sdk-method": "agents.templates.get"
|
|
10208
9850
|
}
|
|
10209
9851
|
},
|
|
10210
|
-
"/alerts": {
|
|
9852
|
+
"/v1/alerts": {
|
|
10211
9853
|
"get": {
|
|
10212
9854
|
"description": "List budget alerts for the organization, newest first.\n\nOptionally filtered by status and source.\n\nAvailable to all credential types, so an agent can check \"is\nthis org near budget?\" mid-task.",
|
|
10213
9855
|
"operationId": "list_alerts",
|
|
@@ -10343,7 +9985,7 @@
|
|
|
10343
9985
|
"x-ellipsis-sdk-method": "alerts.list"
|
|
10344
9986
|
}
|
|
10345
9987
|
},
|
|
10346
|
-
"/alerts/{alert_id}": {
|
|
9988
|
+
"/v1/alerts/{alert_id}": {
|
|
10347
9989
|
"get": {
|
|
10348
9990
|
"description": "Return one alert by id.\n\n404 if it doesn't exist or belongs to another organization.",
|
|
10349
9991
|
"operationId": "get_alert",
|
|
@@ -10438,7 +10080,7 @@
|
|
|
10438
10080
|
"x-ellipsis-sdk-method": "alerts.get"
|
|
10439
10081
|
}
|
|
10440
10082
|
},
|
|
10441
|
-
"/alerts/{alert_id}/dismiss": {
|
|
10083
|
+
"/v1/alerts/{alert_id}/dismiss": {
|
|
10442
10084
|
"post": {
|
|
10443
10085
|
"description": "Dismiss an open alert and return it.\n\n409 when the alert is not open; 404 when it doesn't exist.",
|
|
10444
10086
|
"operationId": "dismiss_alert",
|
|
@@ -10543,7 +10185,7 @@
|
|
|
10543
10185
|
"x-ellipsis-sdk-method": "alerts.dismiss"
|
|
10544
10186
|
}
|
|
10545
10187
|
},
|
|
10546
|
-
"/analytics/metrics": {
|
|
10188
|
+
"/v1/analytics/metrics": {
|
|
10547
10189
|
"get": {
|
|
10548
10190
|
"description": "Return PR and review analytics metrics.\n\nThe same data as the analytics dashboard.\n\nWindowing: pass explicit start/end, or days (default: the last\n30 days). account_type in all|user|bot scopes the authors (bot =\nthe apps/agents). Available to all credential types: the\nresponses expose the organization's own GitHub PR/review activity,\nno secrets.",
|
|
10549
10191
|
"operationId": "get_analytics_metrics",
|
|
@@ -10752,7 +10394,7 @@
|
|
|
10752
10394
|
"x-ellipsis-sdk-method": "analytics.metrics"
|
|
10753
10395
|
}
|
|
10754
10396
|
},
|
|
10755
|
-
"/analytics/pull-requests": {
|
|
10397
|
+
"/v1/analytics/pull-requests": {
|
|
10756
10398
|
"get": {
|
|
10757
10399
|
"description": "Return pull-request analytics.\n\nWindowing: pass explicit start/end, or days (default: the last\n30 days).",
|
|
10758
10400
|
"operationId": "get_analytics_pull_requests",
|
|
@@ -10964,7 +10606,7 @@
|
|
|
10964
10606
|
"x-ellipsis-sdk-method": "analytics.pull_requests"
|
|
10965
10607
|
}
|
|
10966
10608
|
},
|
|
10967
|
-
"/analytics/reviews": {
|
|
10609
|
+
"/v1/analytics/reviews": {
|
|
10968
10610
|
"get": {
|
|
10969
10611
|
"description": "Return code-review analytics.\n\naccount_type scopes reviewers (bot|user|all) \u2014 e.g. \"what apps\nreview the most PRs?\" is the reviewer facets here with\naccount_type=bot. Windowing: pass explicit start/end, or days\n(default: the last 30 days).",
|
|
10970
10612
|
"operationId": "get_analytics_reviews",
|
|
@@ -11169,7 +10811,7 @@
|
|
|
11169
10811
|
"x-ellipsis-sdk-method": "analytics.reviews"
|
|
11170
10812
|
}
|
|
11171
10813
|
},
|
|
11172
|
-
"/auth/cli/poll": {
|
|
10814
|
+
"/v1/auth/cli/poll": {
|
|
11173
10815
|
"post": {
|
|
11174
10816
|
"description": "Poll a device-code auth flow for its token.\n\nUnauthenticated; the device code identifies the flow.",
|
|
11175
10817
|
"operationId": "cli_auth_poll",
|
|
@@ -11242,7 +10884,7 @@
|
|
|
11242
10884
|
"x-ellipsis-sdk-method": "auth.cli.poll"
|
|
11243
10885
|
}
|
|
11244
10886
|
},
|
|
11245
|
-
"/auth/cli/start": {
|
|
10887
|
+
"/v1/auth/cli/start": {
|
|
11246
10888
|
"post": {
|
|
11247
10889
|
"description": "Start a device-code auth flow for the CLI.\n\nUnauthenticated: the CLI has no credential yet \u2014 that's what\nit's obtaining. The human authorizes out-of-band in the\ndashboard.",
|
|
11248
10890
|
"operationId": "cli_auth_start",
|
|
@@ -11285,7 +10927,7 @@
|
|
|
11285
10927
|
"x-ellipsis-sdk-method": "auth.cli.start"
|
|
11286
10928
|
}
|
|
11287
10929
|
},
|
|
11288
|
-
"/budget": {
|
|
10930
|
+
"/v1/budget": {
|
|
11289
10931
|
"get": {
|
|
11290
10932
|
"description": "Return the caller's current budget summary.",
|
|
11291
10933
|
"operationId": "get_budget",
|
|
@@ -11361,7 +11003,7 @@
|
|
|
11361
11003
|
"x-ellipsis-sdk-method": "budget"
|
|
11362
11004
|
}
|
|
11363
11005
|
},
|
|
11364
|
-
"/files": {
|
|
11006
|
+
"/v1/files": {
|
|
11365
11007
|
"get": {
|
|
11366
11008
|
"description": "List uploaded files, newest first.\n\nMetadata only \u2014 download URLs are minted per explicit GET, not\nper row. session_id scopes the list to one run's uploads.",
|
|
11367
11009
|
"operationId": "list_files",
|
|
@@ -11585,7 +11227,7 @@
|
|
|
11585
11227
|
"x-ellipsis-sdk-method": "files.create"
|
|
11586
11228
|
}
|
|
11587
11229
|
},
|
|
11588
|
-
"/files/{file_id}": {
|
|
11230
|
+
"/v1/files/{file_id}": {
|
|
11589
11231
|
"delete": {
|
|
11590
11232
|
"description": "Delete a file.\n\nA foreign, missing, or already-deleted id is an\nindistinguishable 404, so ids can't be enumerated. Sandbox\ntokens get a 403 (a sandbox token sits next to\npotentially-untrusted code and must not be able to destroy the\naccount's files \u2014 uploading is fine, destruction is not); API\nkeys and user tokens may delete.",
|
|
11591
11233
|
"operationId": "delete_file",
|
|
@@ -11766,7 +11408,7 @@
|
|
|
11766
11408
|
"x-ellipsis-sdk-method": "files.get"
|
|
11767
11409
|
}
|
|
11768
11410
|
},
|
|
11769
|
-
"/integrations": {
|
|
11411
|
+
"/v1/integrations": {
|
|
11770
11412
|
"get": {
|
|
11771
11413
|
"description": "List connected integrations.\n\nA read-only view, so an agent authoring another agent's\nconfig can learn which repositories, channels, teams, and\norganizations it may name before POST /agents/configs.\n\nAvailable to all credential types including sandbox tokens: the\nresponses never include OAuth tokens or any other secret.",
|
|
11772
11414
|
"operationId": "get_integrations",
|
|
@@ -11842,7 +11484,7 @@
|
|
|
11842
11484
|
"x-ellipsis-sdk-method": "integrations.list"
|
|
11843
11485
|
}
|
|
11844
11486
|
},
|
|
11845
|
-
"/integrations/github/members": {
|
|
11487
|
+
"/v1/integrations/github/members": {
|
|
11846
11488
|
"get": {
|
|
11847
11489
|
"description": "List the GitHub organization roster.\n\n(Or the account itself for a personal workspace) \u2014 the universe of author_id values for\n/sessions and /sessions/search.\n\nMembers carry their linked Slack identity when a Slack-GitHub\nlink exists, and /slack/members carries the reverse link.",
|
|
11848
11490
|
"operationId": "list_github_members",
|
|
@@ -11918,7 +11560,7 @@
|
|
|
11918
11560
|
"x-ellipsis-sdk-method": "integrations.github.members"
|
|
11919
11561
|
}
|
|
11920
11562
|
},
|
|
11921
|
-
"/integrations/github/repos": {
|
|
11563
|
+
"/v1/integrations/github/repos": {
|
|
11922
11564
|
"get": {
|
|
11923
11565
|
"description": "List GitHub repositories connected to the installation.",
|
|
11924
11566
|
"operationId": "list_github_repositories",
|
|
@@ -11994,7 +11636,7 @@
|
|
|
11994
11636
|
"x-ellipsis-sdk-method": "integrations.github.repos"
|
|
11995
11637
|
}
|
|
11996
11638
|
},
|
|
11997
|
-
"/integrations/linear/teams": {
|
|
11639
|
+
"/v1/integrations/linear/teams": {
|
|
11998
11640
|
"get": {
|
|
11999
11641
|
"description": "List the teams of the connected Linear workspace.",
|
|
12000
11642
|
"operationId": "list_linear_teams",
|
|
@@ -12080,7 +11722,7 @@
|
|
|
12080
11722
|
"x-ellipsis-sdk-method": "integrations.linear.teams"
|
|
12081
11723
|
}
|
|
12082
11724
|
},
|
|
12083
|
-
"/integrations/sentry/organizations": {
|
|
11725
|
+
"/v1/integrations/sentry/organizations": {
|
|
12084
11726
|
"get": {
|
|
12085
11727
|
"description": "List the connected Sentry organizations.",
|
|
12086
11728
|
"operationId": "list_sentry_organizations",
|
|
@@ -12156,7 +11798,7 @@
|
|
|
12156
11798
|
"x-ellipsis-sdk-method": "integrations.sentry.organizations"
|
|
12157
11799
|
}
|
|
12158
11800
|
},
|
|
12159
|
-
"/integrations/slack/channels": {
|
|
11801
|
+
"/v1/integrations/slack/channels": {
|
|
12160
11802
|
"get": {
|
|
12161
11803
|
"description": "List the channels of the connected Slack workspace, fetched\nlive from the Slack API.",
|
|
12162
11804
|
"operationId": "list_slack_channels",
|
|
@@ -12242,7 +11884,7 @@
|
|
|
12242
11884
|
"x-ellipsis-sdk-method": "integrations.slack.channels"
|
|
12243
11885
|
}
|
|
12244
11886
|
},
|
|
12245
|
-
"/integrations/slack/members": {
|
|
11887
|
+
"/v1/integrations/slack/members": {
|
|
12246
11888
|
"get": {
|
|
12247
11889
|
"description": "List the members of the connected Slack workspace, fetched\nlive from the Slack API.",
|
|
12248
11890
|
"operationId": "list_slack_members",
|
|
@@ -12328,7 +11970,7 @@
|
|
|
12328
11970
|
"x-ellipsis-sdk-method": "integrations.slack.members"
|
|
12329
11971
|
}
|
|
12330
11972
|
},
|
|
12331
|
-
"/me": {
|
|
11973
|
+
"/v1/me": {
|
|
12332
11974
|
"get": {
|
|
12333
11975
|
"description": "Return the identity behind the caller's credential.",
|
|
12334
11976
|
"operationId": "whoami",
|
|
@@ -12404,7 +12046,7 @@
|
|
|
12404
12046
|
"x-ellipsis-sdk-method": "me"
|
|
12405
12047
|
}
|
|
12406
12048
|
},
|
|
12407
|
-
"/memories": {
|
|
12049
|
+
"/v1/memories": {
|
|
12408
12050
|
"get": {
|
|
12409
12051
|
"description": "List the organization's memories as a readable index.\n\nReturns the memories rendered as a markdown index (one line per\nmemory, carrying its id, path, and description) plus the same\nentries structured, each with every field except `content`. Read\nthe index, then fetch the ids whose content you want.",
|
|
12410
12052
|
"operationId": "list_memories",
|
|
@@ -12592,7 +12234,7 @@
|
|
|
12592
12234
|
"x-ellipsis-sdk-method": "memories.create"
|
|
12593
12235
|
}
|
|
12594
12236
|
},
|
|
12595
|
-
"/memories/{memory_id}": {
|
|
12237
|
+
"/v1/memories/{memory_id}": {
|
|
12596
12238
|
"delete": {
|
|
12597
12239
|
"description": "Delete a memory that is no longer true.\n\nAvailable to every credential type, agents included \u2014 a wrong\nmemory is worse than a missing one. The deleted content is kept in\nthe memory's history for forensics, not for an undo API.",
|
|
12598
12240
|
"operationId": "delete_memory",
|
|
@@ -12914,7 +12556,7 @@
|
|
|
12914
12556
|
"x-ellipsis-sdk-method": "memories.edit"
|
|
12915
12557
|
}
|
|
12916
12558
|
},
|
|
12917
|
-
"/models": {
|
|
12559
|
+
"/v1/models": {
|
|
12918
12560
|
"get": {
|
|
12919
12561
|
"description": "List selectable agent models.\n\nMost expensive first, with the platform default flagged.\n\nReads the same registry as the dashboard's rate table, so a\nclient's model picker can never drift from what's offered.\nBehind auth but not account-scoped \u2014 the selectable set is\nglobal.",
|
|
12920
12562
|
"operationId": "list_supported_models",
|
|
@@ -12990,7 +12632,7 @@
|
|
|
12990
12632
|
"x-ellipsis-sdk-method": "models.list"
|
|
12991
12633
|
}
|
|
12992
12634
|
},
|
|
12993
|
-
"/reviews": {
|
|
12635
|
+
"/v1/reviews": {
|
|
12994
12636
|
"get": {
|
|
12995
12637
|
"description": "List code reviews, newest first.\n\n`findings` is omitted (counters only).\n\nWebhook-created reviews appear here too, so this answers \"show\nme every review on this PR\".",
|
|
12996
12638
|
"operationId": "list_reviews",
|
|
@@ -13292,7 +12934,7 @@
|
|
|
13292
12934
|
"x-ellipsis-sdk-method": "reviews.create"
|
|
13293
12935
|
}
|
|
13294
12936
|
},
|
|
13295
|
-
"/reviews/{review_id}": {
|
|
12937
|
+
"/v1/reviews/{review_id}": {
|
|
13296
12938
|
"get": {
|
|
13297
12939
|
"description": "Return one review with findings and outcome.\n\nIncludes its scope, the per-stage sessions, the parsed findings,\nthe finding counters, and the posting outcome.\n\nFindings only exist after a stage session finalizes \u2014 a running\nreview honestly reports [] / null, which is why a client\nstreams a stage session and then re-fetches the review.",
|
|
13298
12940
|
"operationId": "get_review",
|
|
@@ -13387,7 +13029,7 @@
|
|
|
13387
13029
|
"x-ellipsis-sdk-method": "reviews.get"
|
|
13388
13030
|
}
|
|
13389
13031
|
},
|
|
13390
|
-
"/secrets": {
|
|
13032
|
+
"/v1/secrets": {
|
|
13391
13033
|
"get": {
|
|
13392
13034
|
"description": "List secrets.\n\nValues are write-only: the response carries only names and\ntimestamps, never the stored value.",
|
|
13393
13035
|
"operationId": "list_secrets",
|
|
@@ -13557,7 +13199,7 @@
|
|
|
13557
13199
|
"x-ellipsis-sdk-method": "secrets.set"
|
|
13558
13200
|
}
|
|
13559
13201
|
},
|
|
13560
|
-
"/secrets/{name}": {
|
|
13202
|
+
"/v1/secrets/{name}": {
|
|
13561
13203
|
"delete": {
|
|
13562
13204
|
"description": "Delete a secret by name.\n\nRefused for sandbox tokens; mutations require an API key or\nuser token.",
|
|
13563
13205
|
"operationId": "delete_secret",
|
|
@@ -13635,7 +13277,7 @@
|
|
|
13635
13277
|
"x-ellipsis-sdk-method": "secrets.delete"
|
|
13636
13278
|
}
|
|
13637
13279
|
},
|
|
13638
|
-
"/sessions": {
|
|
13280
|
+
"/v1/sessions": {
|
|
13639
13281
|
"get": {
|
|
13640
13282
|
"description": "List cloud agent sessions, newest first.\n\nOptionally filtered by config (id or `ellipsis.name`), source, time\nwindow, attributed author, repository, and whether the session is\nstill going.",
|
|
13641
13283
|
"operationId": "list_agent_sessions",
|
|
@@ -13774,7 +13416,7 @@
|
|
|
13774
13416
|
}
|
|
13775
13417
|
},
|
|
13776
13418
|
{
|
|
13777
|
-
"description": "\"owner/name\" (exact) or a bare repo name, matched the same way as on GET /v1/sessions/search. Sessions whose repository is named only inside their agent config \u2014 dashboard starts, cron
|
|
13419
|
+
"description": "\"owner/name\" (exact) or a bare repo name, matched the same way as on GET /v1/sessions/search. Sessions whose repository is named only inside their agent config \u2014 dashboard starts, cron \u2014 do not match.",
|
|
13778
13420
|
"in": "query",
|
|
13779
13421
|
"name": "repo",
|
|
13780
13422
|
"required": false,
|
|
@@ -13787,7 +13429,7 @@
|
|
|
13787
13429
|
"type": "null"
|
|
13788
13430
|
}
|
|
13789
13431
|
],
|
|
13790
|
-
"description": "\"owner/name\" (exact) or a bare repo name, matched the same way as on GET /v1/sessions/search. Sessions whose repository is named only inside their agent config \u2014 dashboard starts, cron
|
|
13432
|
+
"description": "\"owner/name\" (exact) or a bare repo name, matched the same way as on GET /v1/sessions/search. Sessions whose repository is named only inside their agent config \u2014 dashboard starts, cron \u2014 do not match.",
|
|
13791
13433
|
"title": "Repo"
|
|
13792
13434
|
}
|
|
13793
13435
|
},
|
|
@@ -13874,7 +13516,7 @@
|
|
|
13874
13516
|
"x-ellipsis-sdk-method": "sessions.list"
|
|
13875
13517
|
},
|
|
13876
13518
|
"post": {
|
|
13877
|
-
"description": "Start a cloud agent session.\n\nProvide at most one of config_id (an id or an agent name),\nconfig, or\ntemplate_id; with none, the account's default-config ladder\nresolves the config. 400 when idle_start is combined with\nprompt
|
|
13519
|
+
"description": "Start a cloud agent session.\n\nProvide at most one of config_id (an id or an agent name),\nconfig, or\ntemplate_id; with none, the account's default-config ladder\nresolves the config. 400 when idle_start is combined with\nprompt or input. 422 when the agent declares an\ninput schema and the request's input is absent or invalid.",
|
|
13878
13520
|
"operationId": "start_agent_session",
|
|
13879
13521
|
"parameters": [
|
|
13880
13522
|
{
|
|
@@ -13909,7 +13551,7 @@
|
|
|
13909
13551
|
"content": {
|
|
13910
13552
|
"application/json": {
|
|
13911
13553
|
"schema": {
|
|
13912
|
-
"$ref": "#/components/schemas/
|
|
13554
|
+
"$ref": "#/components/schemas/SessionResponse"
|
|
13913
13555
|
}
|
|
13914
13556
|
}
|
|
13915
13557
|
},
|
|
@@ -13923,7 +13565,7 @@
|
|
|
13923
13565
|
}
|
|
13924
13566
|
}
|
|
13925
13567
|
},
|
|
13926
|
-
"description": "The request combines incompatible fields (multiple config sources, idle_start with prompt/input
|
|
13568
|
+
"description": "The request combines incompatible fields (multiple config sources, idle_start with prompt/input, or both override forms), or the config override is invalid."
|
|
13927
13569
|
},
|
|
13928
13570
|
"401": {
|
|
13929
13571
|
"content": {
|
|
@@ -13953,7 +13595,7 @@
|
|
|
13953
13595
|
}
|
|
13954
13596
|
}
|
|
13955
13597
|
},
|
|
13956
|
-
"description": "The named agent
|
|
13598
|
+
"description": "The named agent or template does not exist in your account."
|
|
13957
13599
|
},
|
|
13958
13600
|
"409": {
|
|
13959
13601
|
"content": {
|
|
@@ -13988,7 +13630,7 @@
|
|
|
13988
13630
|
"x-ellipsis-sdk-method": "sessions.start"
|
|
13989
13631
|
}
|
|
13990
13632
|
},
|
|
13991
|
-
"/sessions/search": {
|
|
13633
|
+
"/v1/sessions/search": {
|
|
13992
13634
|
"get": {
|
|
13993
13635
|
"description": "Search sessions over steps, recaps, and pull requests.\n\nGrouped by session, over everything a session left behind: step text, recap text, created\nPRs, and recap-embedding similarity.\n\nThis is how an agent answers \"did Tony look into X?\": resolve\nthe author via /github/members, search, then read the winning\nsession via /sessions/{id} (recap) and /sessions/{id}/records\n(transcript).",
|
|
13994
13636
|
"operationId": "search_sessions",
|
|
@@ -14255,113 +13897,7 @@
|
|
|
14255
13897
|
"x-ellipsis-sdk-method": "sessions.search"
|
|
14256
13898
|
}
|
|
14257
13899
|
},
|
|
14258
|
-
"/sessions/
|
|
14259
|
-
"post": {
|
|
14260
|
-
"description": "Sync a local Claude Code session to Ellipsis.\n\nRequires a user token (device-flow `agent login`): the user is\npart of the sync's idempotency key, so API keys and sandbox\ntokens are rejected with a 403 rather than silently attributed.",
|
|
14261
|
-
"operationId": "sync_agent_session",
|
|
14262
|
-
"parameters": [
|
|
14263
|
-
{
|
|
14264
|
-
"in": "header",
|
|
14265
|
-
"name": "user-agent",
|
|
14266
|
-
"required": false,
|
|
14267
|
-
"schema": {
|
|
14268
|
-
"anyOf": [
|
|
14269
|
-
{
|
|
14270
|
-
"type": "string"
|
|
14271
|
-
},
|
|
14272
|
-
{
|
|
14273
|
-
"type": "null"
|
|
14274
|
-
}
|
|
14275
|
-
],
|
|
14276
|
-
"title": "User-Agent"
|
|
14277
|
-
}
|
|
14278
|
-
}
|
|
14279
|
-
],
|
|
14280
|
-
"requestBody": {
|
|
14281
|
-
"content": {
|
|
14282
|
-
"application/json": {
|
|
14283
|
-
"schema": {
|
|
14284
|
-
"$ref": "#/components/schemas/SyncAgentSessionRequest"
|
|
14285
|
-
}
|
|
14286
|
-
}
|
|
14287
|
-
},
|
|
14288
|
-
"required": true
|
|
14289
|
-
},
|
|
14290
|
-
"responses": {
|
|
14291
|
-
"200": {
|
|
14292
|
-
"content": {
|
|
14293
|
-
"application/json": {
|
|
14294
|
-
"schema": {
|
|
14295
|
-
"$ref": "#/components/schemas/SyncAgentSessionResponse"
|
|
14296
|
-
}
|
|
14297
|
-
}
|
|
14298
|
-
},
|
|
14299
|
-
"description": "Successful Response"
|
|
14300
|
-
},
|
|
14301
|
-
"400": {
|
|
14302
|
-
"content": {
|
|
14303
|
-
"application/json": {
|
|
14304
|
-
"schema": {
|
|
14305
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
14306
|
-
}
|
|
14307
|
-
}
|
|
14308
|
-
},
|
|
14309
|
-
"description": "The transcript payload is empty, or is not valid base64/gzip."
|
|
14310
|
-
},
|
|
14311
|
-
"401": {
|
|
14312
|
-
"content": {
|
|
14313
|
-
"application/json": {
|
|
14314
|
-
"schema": {
|
|
14315
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
14316
|
-
}
|
|
14317
|
-
}
|
|
14318
|
-
},
|
|
14319
|
-
"description": "The bearer token is missing, invalid, or revoked."
|
|
14320
|
-
},
|
|
14321
|
-
"403": {
|
|
14322
|
-
"content": {
|
|
14323
|
-
"application/json": {
|
|
14324
|
-
"schema": {
|
|
14325
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
14326
|
-
}
|
|
14327
|
-
}
|
|
14328
|
-
},
|
|
14329
|
-
"description": "The credential may not perform this action, or the account is blocked."
|
|
14330
|
-
},
|
|
14331
|
-
"413": {
|
|
14332
|
-
"content": {
|
|
14333
|
-
"application/json": {
|
|
14334
|
-
"schema": {
|
|
14335
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
14336
|
-
}
|
|
14337
|
-
}
|
|
14338
|
-
},
|
|
14339
|
-
"description": "The transcript exceeds the size limit (compressed or decompressed)."
|
|
14340
|
-
},
|
|
14341
|
-
"422": {
|
|
14342
|
-
"content": {
|
|
14343
|
-
"application/json": {
|
|
14344
|
-
"schema": {
|
|
14345
|
-
"$ref": "#/components/schemas/HTTPValidationError"
|
|
14346
|
-
}
|
|
14347
|
-
}
|
|
14348
|
-
},
|
|
14349
|
-
"description": "Validation Error"
|
|
14350
|
-
}
|
|
14351
|
-
},
|
|
14352
|
-
"security": [
|
|
14353
|
-
{
|
|
14354
|
-
"HTTPBearer": []
|
|
14355
|
-
}
|
|
14356
|
-
],
|
|
14357
|
-
"summary": "Sync Agent Session",
|
|
14358
|
-
"tags": [
|
|
14359
|
-
"v1"
|
|
14360
|
-
],
|
|
14361
|
-
"x-ellipsis-sdk-method": "sessions.sync"
|
|
14362
|
-
}
|
|
14363
|
-
},
|
|
14364
|
-
"/sessions/{session_id}": {
|
|
13900
|
+
"/v1/sessions/{session_id}": {
|
|
14365
13901
|
"get": {
|
|
14366
13902
|
"description": "Return one session.\n\nThe public wire shape \u2014 the same shape the stream's session\nframes carry, with attributed_user and stopped_by_user resolved\nat read time.\n\nThe heavy near-static blobs (config snapshot, input/output)\nlive on the detail endpoints, not here.",
|
|
14367
13903
|
"operationId": "get_agent_session",
|
|
@@ -14456,7 +13992,7 @@
|
|
|
14456
13992
|
"x-ellipsis-sdk-method": "sessions.get"
|
|
14457
13993
|
}
|
|
14458
13994
|
},
|
|
14459
|
-
"/sessions/{session_id}/executions": {
|
|
13995
|
+
"/v1/sessions/{session_id}/executions": {
|
|
14460
13996
|
"get": {
|
|
14461
13997
|
"description": "Return the session's executions and launch context.\n\nMost notably system_prompt_append, the text Ellipsis appends to\nClaude Code's default system prompt (platform section + response\ninstructions + the config's own instructions).\n\nPer execution because each cold wake persists its own launch\nconfig (a config edit or replay override between wakes changes\nit).",
|
|
14462
13998
|
"operationId": "get_agent_session_executions",
|
|
@@ -14551,7 +14087,7 @@
|
|
|
14551
14087
|
"x-ellipsis-sdk-method": "sessions.executions"
|
|
14552
14088
|
}
|
|
14553
14089
|
},
|
|
14554
|
-
"/sessions/{session_id}/export": {
|
|
14090
|
+
"/v1/sessions/{session_id}/export": {
|
|
14555
14091
|
"get": {
|
|
14556
14092
|
"description": "Export the complete session history.\n\nThe complete, ordered history of the session (agent output, tool calls, thinking,\nlifecycle events, sandbox output, message events) as an ordered\nmanifest of presigned segment URLs.\n\nSegments are gzip members: download in order and concatenate\nfor one file. The JSON API never carries the bytes (same\ntwo-step as files). /records is the paged live view of the\nsame data.",
|
|
14557
14093
|
"operationId": "export_agent_session",
|
|
@@ -14646,112 +14182,7 @@
|
|
|
14646
14182
|
"x-ellipsis-sdk-method": "sessions.export"
|
|
14647
14183
|
}
|
|
14648
14184
|
},
|
|
14649
|
-
"/sessions/{session_id}/
|
|
14650
|
-
"get": {
|
|
14651
|
-
"description": "Return the IDE link for the session's sandbox.\n\nThe membership-gated dashboard page, which performs the sandbox\nproxy handoff itself.\n\nNo credential is minted here \u2014 the URL grants nothing by\npossession. 409 when the sandbox isn't running (send the\nsession a message to wake it first). Backs the `agent session\nide` CLI verb.",
|
|
14652
|
-
"operationId": "get_agent_session_ide",
|
|
14653
|
-
"parameters": [
|
|
14654
|
-
{
|
|
14655
|
-
"in": "path",
|
|
14656
|
-
"name": "session_id",
|
|
14657
|
-
"required": true,
|
|
14658
|
-
"schema": {
|
|
14659
|
-
"title": "Session Id",
|
|
14660
|
-
"type": "string"
|
|
14661
|
-
}
|
|
14662
|
-
},
|
|
14663
|
-
{
|
|
14664
|
-
"in": "header",
|
|
14665
|
-
"name": "user-agent",
|
|
14666
|
-
"required": false,
|
|
14667
|
-
"schema": {
|
|
14668
|
-
"anyOf": [
|
|
14669
|
-
{
|
|
14670
|
-
"type": "string"
|
|
14671
|
-
},
|
|
14672
|
-
{
|
|
14673
|
-
"type": "null"
|
|
14674
|
-
}
|
|
14675
|
-
],
|
|
14676
|
-
"title": "User-Agent"
|
|
14677
|
-
}
|
|
14678
|
-
}
|
|
14679
|
-
],
|
|
14680
|
-
"responses": {
|
|
14681
|
-
"200": {
|
|
14682
|
-
"content": {
|
|
14683
|
-
"application/json": {
|
|
14684
|
-
"schema": {
|
|
14685
|
-
"$ref": "#/components/schemas/GetSessionIdeResponse"
|
|
14686
|
-
}
|
|
14687
|
-
}
|
|
14688
|
-
},
|
|
14689
|
-
"description": "Successful Response"
|
|
14690
|
-
},
|
|
14691
|
-
"401": {
|
|
14692
|
-
"content": {
|
|
14693
|
-
"application/json": {
|
|
14694
|
-
"schema": {
|
|
14695
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
14696
|
-
}
|
|
14697
|
-
}
|
|
14698
|
-
},
|
|
14699
|
-
"description": "The bearer token is missing, invalid, or revoked."
|
|
14700
|
-
},
|
|
14701
|
-
"403": {
|
|
14702
|
-
"content": {
|
|
14703
|
-
"application/json": {
|
|
14704
|
-
"schema": {
|
|
14705
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
14706
|
-
}
|
|
14707
|
-
}
|
|
14708
|
-
},
|
|
14709
|
-
"description": "The credential may not perform this action, or the account is blocked."
|
|
14710
|
-
},
|
|
14711
|
-
"404": {
|
|
14712
|
-
"content": {
|
|
14713
|
-
"application/json": {
|
|
14714
|
-
"schema": {
|
|
14715
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
14716
|
-
}
|
|
14717
|
-
}
|
|
14718
|
-
},
|
|
14719
|
-
"description": "No such session in your account."
|
|
14720
|
-
},
|
|
14721
|
-
"409": {
|
|
14722
|
-
"content": {
|
|
14723
|
-
"application/json": {
|
|
14724
|
-
"schema": {
|
|
14725
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
14726
|
-
}
|
|
14727
|
-
}
|
|
14728
|
-
},
|
|
14729
|
-
"description": "The session's sandbox is not running; send it a message to wake it first."
|
|
14730
|
-
},
|
|
14731
|
-
"422": {
|
|
14732
|
-
"content": {
|
|
14733
|
-
"application/json": {
|
|
14734
|
-
"schema": {
|
|
14735
|
-
"$ref": "#/components/schemas/HTTPValidationError"
|
|
14736
|
-
}
|
|
14737
|
-
}
|
|
14738
|
-
},
|
|
14739
|
-
"description": "Validation Error"
|
|
14740
|
-
}
|
|
14741
|
-
},
|
|
14742
|
-
"security": [
|
|
14743
|
-
{
|
|
14744
|
-
"HTTPBearer": []
|
|
14745
|
-
}
|
|
14746
|
-
],
|
|
14747
|
-
"summary": "Get Agent Session Ide",
|
|
14748
|
-
"tags": [
|
|
14749
|
-
"v1"
|
|
14750
|
-
],
|
|
14751
|
-
"x-ellipsis-sdk-method": "sessions.ide"
|
|
14752
|
-
}
|
|
14753
|
-
},
|
|
14754
|
-
"/sessions/{session_id}/messages": {
|
|
14185
|
+
"/v1/sessions/{session_id}/messages": {
|
|
14755
14186
|
"post": {
|
|
14756
14187
|
"description": "Send a message to a session.\n\n409 for react/cron, non-interactive, and closed sessions.\nReturns the created message so the caller can track it by id; a\nretried send with the same idempotency_key returns the original\nmessage.",
|
|
14757
14188
|
"operationId": "send_agent_session_message",
|
|
@@ -14851,7 +14282,7 @@
|
|
|
14851
14282
|
}
|
|
14852
14283
|
}
|
|
14853
14284
|
},
|
|
14854
|
-
"description": "The session cannot be messaged: it is closed, non-interactive,
|
|
14285
|
+
"description": "The session cannot be messaged: it is closed, non-interactive, or steered from its triggering surface (mention/react/cron)."
|
|
14855
14286
|
},
|
|
14856
14287
|
"422": {
|
|
14857
14288
|
"content": {
|
|
@@ -14876,9 +14307,9 @@
|
|
|
14876
14307
|
"x-ellipsis-sdk-method": "sessions.send_message"
|
|
14877
14308
|
}
|
|
14878
14309
|
},
|
|
14879
|
-
"/sessions/{session_id}/output": {
|
|
14310
|
+
"/v1/sessions/{session_id}/output": {
|
|
14880
14311
|
"get": {
|
|
14881
|
-
"description": "Return the session's typed output.\n\nThe payload the agent submitted through its config-declared\noutput.json_schema, as the raw JSON body with no envelope. 404\nwhile the session is still running (poll GET /sessions/{id}),\nwhen the agent declares no output block, or when no execution\nproduced output.",
|
|
14312
|
+
"description": "Return the session's typed output.\n\nThe payload the agent submitted through its config-declared\noutput.json_schema, as the raw JSON body with no envelope. 404\nwhile the session is still running (poll GET /v1/sessions/{id}),\nwhen the agent declares no output block, or when no execution\nproduced output.",
|
|
14882
14313
|
"operationId": "get_agent_session_output",
|
|
14883
14314
|
"parameters": [
|
|
14884
14315
|
{
|
|
@@ -14971,123 +14402,9 @@
|
|
|
14971
14402
|
"x-ellipsis-sdk-method": "sessions.output"
|
|
14972
14403
|
}
|
|
14973
14404
|
},
|
|
14974
|
-
"/sessions/{session_id}/
|
|
14975
|
-
"get": {
|
|
14976
|
-
"description": "Return a preview link for a sandbox port.\n\nFor a dev server running in the session's live sandbox: the\nsame dashboard page as the IDE, deep-linked to the port.\n\nBacks `agent session port`.",
|
|
14977
|
-
"operationId": "get_agent_session_port",
|
|
14978
|
-
"parameters": [
|
|
14979
|
-
{
|
|
14980
|
-
"in": "path",
|
|
14981
|
-
"name": "session_id",
|
|
14982
|
-
"required": true,
|
|
14983
|
-
"schema": {
|
|
14984
|
-
"title": "Session Id",
|
|
14985
|
-
"type": "string"
|
|
14986
|
-
}
|
|
14987
|
-
},
|
|
14988
|
-
{
|
|
14989
|
-
"in": "path",
|
|
14990
|
-
"name": "port",
|
|
14991
|
-
"required": true,
|
|
14992
|
-
"schema": {
|
|
14993
|
-
"title": "Port",
|
|
14994
|
-
"type": "integer"
|
|
14995
|
-
}
|
|
14996
|
-
},
|
|
14997
|
-
{
|
|
14998
|
-
"in": "header",
|
|
14999
|
-
"name": "user-agent",
|
|
15000
|
-
"required": false,
|
|
15001
|
-
"schema": {
|
|
15002
|
-
"anyOf": [
|
|
15003
|
-
{
|
|
15004
|
-
"type": "string"
|
|
15005
|
-
},
|
|
15006
|
-
{
|
|
15007
|
-
"type": "null"
|
|
15008
|
-
}
|
|
15009
|
-
],
|
|
15010
|
-
"title": "User-Agent"
|
|
15011
|
-
}
|
|
15012
|
-
}
|
|
15013
|
-
],
|
|
15014
|
-
"responses": {
|
|
15015
|
-
"200": {
|
|
15016
|
-
"content": {
|
|
15017
|
-
"application/json": {
|
|
15018
|
-
"schema": {
|
|
15019
|
-
"$ref": "#/components/schemas/GetSessionPortResponse"
|
|
15020
|
-
}
|
|
15021
|
-
}
|
|
15022
|
-
},
|
|
15023
|
-
"description": "Successful Response"
|
|
15024
|
-
},
|
|
15025
|
-
"401": {
|
|
15026
|
-
"content": {
|
|
15027
|
-
"application/json": {
|
|
15028
|
-
"schema": {
|
|
15029
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
15030
|
-
}
|
|
15031
|
-
}
|
|
15032
|
-
},
|
|
15033
|
-
"description": "The bearer token is missing, invalid, or revoked."
|
|
15034
|
-
},
|
|
15035
|
-
"403": {
|
|
15036
|
-
"content": {
|
|
15037
|
-
"application/json": {
|
|
15038
|
-
"schema": {
|
|
15039
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
15040
|
-
}
|
|
15041
|
-
}
|
|
15042
|
-
},
|
|
15043
|
-
"description": "The credential may not perform this action, or the account is blocked."
|
|
15044
|
-
},
|
|
15045
|
-
"404": {
|
|
15046
|
-
"content": {
|
|
15047
|
-
"application/json": {
|
|
15048
|
-
"schema": {
|
|
15049
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
15050
|
-
}
|
|
15051
|
-
}
|
|
15052
|
-
},
|
|
15053
|
-
"description": "No such session in your account, or the port is not a valid TCP port."
|
|
15054
|
-
},
|
|
15055
|
-
"409": {
|
|
15056
|
-
"content": {
|
|
15057
|
-
"application/json": {
|
|
15058
|
-
"schema": {
|
|
15059
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
15060
|
-
}
|
|
15061
|
-
}
|
|
15062
|
-
},
|
|
15063
|
-
"description": "The session's sandbox is not running; send it a message to wake it first."
|
|
15064
|
-
},
|
|
15065
|
-
"422": {
|
|
15066
|
-
"content": {
|
|
15067
|
-
"application/json": {
|
|
15068
|
-
"schema": {
|
|
15069
|
-
"$ref": "#/components/schemas/HTTPValidationError"
|
|
15070
|
-
}
|
|
15071
|
-
}
|
|
15072
|
-
},
|
|
15073
|
-
"description": "Validation Error"
|
|
15074
|
-
}
|
|
15075
|
-
},
|
|
15076
|
-
"security": [
|
|
15077
|
-
{
|
|
15078
|
-
"HTTPBearer": []
|
|
15079
|
-
}
|
|
15080
|
-
],
|
|
15081
|
-
"summary": "Get Agent Session Port",
|
|
15082
|
-
"tags": [
|
|
15083
|
-
"v1"
|
|
15084
|
-
],
|
|
15085
|
-
"x-ellipsis-sdk-method": "sessions.port"
|
|
15086
|
-
}
|
|
15087
|
-
},
|
|
15088
|
-
"/sessions/{session_id}/records": {
|
|
14405
|
+
"/v1/sessions/{session_id}/records": {
|
|
15089
14406
|
"get": {
|
|
15090
|
-
"description": "Return the session's stored transcript records, oldest first.\n\nPagination is opt-in (cursor/limit); a bare call returns the\nfull retained transcript. Available to sandbox tokens too: an\nagent answering \"did X look into Y?\" needs to read the session\nit found via /sessions/search, and any org member sees the same\ntranscript in the dashboard
|
|
14407
|
+
"description": "Return the session's stored transcript records, oldest first.\n\nPagination is opt-in (cursor/limit); a bare call returns the\nfull retained transcript. Available to sandbox tokens too: an\nagent answering \"did X look into Y?\" needs to read the session\nit found via /sessions/search, and any org member sees the same\ntranscript in the dashboard.",
|
|
15091
14408
|
"operationId": "get_agent_session_records",
|
|
15092
14409
|
"parameters": [
|
|
15093
14410
|
{
|
|
@@ -15214,7 +14531,7 @@
|
|
|
15214
14531
|
"x-ellipsis-sdk-method": "sessions.records"
|
|
15215
14532
|
}
|
|
15216
14533
|
},
|
|
15217
|
-
"/sessions/{session_id}/replay": {
|
|
14534
|
+
"/v1/sessions/{session_id}/replay": {
|
|
15218
14535
|
"post": {
|
|
15219
14536
|
"description": "Replay a session as a new session.\n\nReuses the original config snapshot unless config_id is given,\nand accepts the same config_override as session start \u2014 e.g.\n{\"claude\": {\"model\": ...}} to replay the same input on a\ndifferent model.",
|
|
15220
14537
|
"operationId": "replay_agent_session",
|
|
@@ -15274,7 +14591,7 @@
|
|
|
15274
14591
|
}
|
|
15275
14592
|
}
|
|
15276
14593
|
},
|
|
15277
|
-
"description": "The
|
|
14594
|
+
"description": "The named config does not exist, or the config override is invalid."
|
|
15278
14595
|
},
|
|
15279
14596
|
"401": {
|
|
15280
14597
|
"content": {
|
|
@@ -15329,7 +14646,7 @@
|
|
|
15329
14646
|
"x-ellipsis-sdk-method": "sessions.replay"
|
|
15330
14647
|
}
|
|
15331
14648
|
},
|
|
15332
|
-
"/sessions/{session_id}/stop": {
|
|
14649
|
+
"/v1/sessions/{session_id}/stop": {
|
|
15333
14650
|
"post": {
|
|
15334
14651
|
"description": "Stop an in-flight session and return it.\n\nstopped_by is recorded only when the caller's credential maps\nto a GitHub account.",
|
|
15335
14652
|
"operationId": "stop_agent_session",
|
|
@@ -15371,16 +14688,6 @@
|
|
|
15371
14688
|
},
|
|
15372
14689
|
"description": "Successful Response"
|
|
15373
14690
|
},
|
|
15374
|
-
"400": {
|
|
15375
|
-
"content": {
|
|
15376
|
-
"application/json": {
|
|
15377
|
-
"schema": {
|
|
15378
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
15379
|
-
}
|
|
15380
|
-
}
|
|
15381
|
-
},
|
|
15382
|
-
"description": "The session runs on a developer laptop and cannot be stopped from the cloud."
|
|
15383
|
-
},
|
|
15384
14691
|
"401": {
|
|
15385
14692
|
"content": {
|
|
15386
14693
|
"application/json": {
|
|
@@ -15444,7 +14751,7 @@
|
|
|
15444
14751
|
"x-ellipsis-sdk-method": "sessions.stop"
|
|
15445
14752
|
}
|
|
15446
14753
|
},
|
|
15447
|
-
"/sessions/{session_id}/transcript": {
|
|
14754
|
+
"/v1/sessions/{session_id}/transcript": {
|
|
15448
14755
|
"post": {
|
|
15449
14756
|
"description": "Append transcript lines to a session's record.\n\nThe in-sandbox tailer for interactive sessions.\n\nA sandbox token may only push its own session's transcript.\nIdempotent by transcript line uuid; tolerant of malformed lines.",
|
|
15450
14757
|
"operationId": "ingest_agent_session_transcript",
|
|
@@ -15559,7 +14866,7 @@
|
|
|
15559
14866
|
"x-ellipsis-sdk-method": "sessions.ingest_transcript"
|
|
15560
14867
|
}
|
|
15561
14868
|
},
|
|
15562
|
-
"/usage": {
|
|
14869
|
+
"/v1/usage": {
|
|
15563
14870
|
"get": {
|
|
15564
14871
|
"description": "Return the caller's usage dashboard data.",
|
|
15565
14872
|
"operationId": "get_usage_endpoint",
|