@ellipsis-dev/sdk 0.6.0 → 0.8.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 +2 -2
- package/dist/store/index.d.ts +1 -1
- package/dist/stream/index.d.ts +1 -1
- package/dist/{types-BtzdOaNv.d.ts → types-rf-NzI8E.d.ts} +793 -223
- package/package.json +1 -1
- package/schema/openapi.v1.json +994 -214
package/schema/openapi.v1.json
CHANGED
|
@@ -472,7 +472,7 @@
|
|
|
472
472
|
},
|
|
473
473
|
"AgentConfigEnvironment": {
|
|
474
474
|
"additionalProperties": false,
|
|
475
|
-
"description": "Everything about the environment (the sandbox) the agent runs in: which\n`repositories` are cloned into it, which environment `variables` it gets,\nits `compute` sizing, how its `image` is customized, and lifecycle `hooks`.\nWhat the agent may *do* from that environment is the top-level\n`permissions:` block, not this one.\n\nEach `variables` entry names a variable to inject; with an inline `value` it\nis hardcoded, without one it is resolved from the account's sandbox-
|
|
475
|
+
"description": "Everything about the environment (the sandbox) the agent runs in: which\n`repositories` are cloned into it, which environment `variables` it gets,\nits `compute` sizing, how its `image` is customized, and lifecycle `hooks`.\nWhat the agent may *do* from that environment is the top-level\n`permissions:` block, not this one.\n\nEach `variables` entry names a variable to inject; with an inline `value` it\nis hardcoded, without one it is resolved from the account's sandbox-secrets\nstore. Only the named variables reach this agent; the rest of the account's\nstored variables never do. This is how a config brings in the config and\ncredentials a custom CLI needs.",
|
|
476
476
|
"properties": {
|
|
477
477
|
"compute": {
|
|
478
478
|
"$ref": "#/components/schemas/AgentConfigCompute",
|
|
@@ -581,7 +581,7 @@
|
|
|
581
581
|
},
|
|
582
582
|
"AgentConfigEnvironmentVariable": {
|
|
583
583
|
"additionalProperties": false,
|
|
584
|
-
"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-
|
|
584
|
+
"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.",
|
|
585
585
|
"properties": {
|
|
586
586
|
"name": {
|
|
587
587
|
"title": "Name",
|
|
@@ -2273,58 +2273,6 @@
|
|
|
2273
2273
|
"title": "AnalyticsRepoUsage",
|
|
2274
2274
|
"type": "object"
|
|
2275
2275
|
},
|
|
2276
|
-
"AssetView": {
|
|
2277
|
-
"description": "An asset's metadata \u2014 the file itself is fetched via a separate\ndownload URL.",
|
|
2278
|
-
"properties": {
|
|
2279
|
-
"agent_session_id": {
|
|
2280
|
-
"anyOf": [
|
|
2281
|
-
{
|
|
2282
|
-
"type": "string"
|
|
2283
|
-
},
|
|
2284
|
-
{
|
|
2285
|
-
"type": "null"
|
|
2286
|
-
}
|
|
2287
|
-
],
|
|
2288
|
-
"description": "The agent session that produced this asset, when it was uploaded from a sandbox. Null for uploads made outside an agent session.",
|
|
2289
|
-
"title": "Agent Session Id"
|
|
2290
|
-
},
|
|
2291
|
-
"content_type": {
|
|
2292
|
-
"description": "The asset's MIME type.",
|
|
2293
|
-
"title": "Content Type",
|
|
2294
|
-
"type": "string"
|
|
2295
|
-
},
|
|
2296
|
-
"created_at": {
|
|
2297
|
-
"description": "When the asset was uploaded.",
|
|
2298
|
-
"format": "date-time",
|
|
2299
|
-
"title": "Created At",
|
|
2300
|
-
"type": "string"
|
|
2301
|
-
},
|
|
2302
|
-
"filename": {
|
|
2303
|
-
"description": "The original file basename, for display.",
|
|
2304
|
-
"title": "Filename",
|
|
2305
|
-
"type": "string"
|
|
2306
|
-
},
|
|
2307
|
-
"id": {
|
|
2308
|
-
"description": "The asset's unique identifier.",
|
|
2309
|
-
"title": "Id",
|
|
2310
|
-
"type": "string"
|
|
2311
|
-
},
|
|
2312
|
-
"size_bytes": {
|
|
2313
|
-
"description": "The size of the stored file in bytes.",
|
|
2314
|
-
"title": "Size Bytes",
|
|
2315
|
-
"type": "integer"
|
|
2316
|
-
}
|
|
2317
|
-
},
|
|
2318
|
-
"required": [
|
|
2319
|
-
"id",
|
|
2320
|
-
"filename",
|
|
2321
|
-
"content_type",
|
|
2322
|
-
"size_bytes",
|
|
2323
|
-
"created_at"
|
|
2324
|
-
],
|
|
2325
|
-
"title": "AssetView",
|
|
2326
|
-
"type": "object"
|
|
2327
|
-
},
|
|
2328
2276
|
"AttributionType": {
|
|
2329
2277
|
"enum": [
|
|
2330
2278
|
"github_user",
|
|
@@ -2588,8 +2536,8 @@
|
|
|
2588
2536
|
"title": "CreateAgentConfigRequest",
|
|
2589
2537
|
"type": "object"
|
|
2590
2538
|
},
|
|
2591
|
-
"
|
|
2592
|
-
"description": "Upload a file
|
|
2539
|
+
"CreateFileRequest": {
|
|
2540
|
+
"description": "Upload a file owned by the calling account.",
|
|
2593
2541
|
"properties": {
|
|
2594
2542
|
"content_type": {
|
|
2595
2543
|
"description": "The MIME type of the file. Only image/png is currently supported, and the uploaded bytes must actually be a PNG.",
|
|
@@ -2612,27 +2560,54 @@
|
|
|
2612
2560
|
"content_type",
|
|
2613
2561
|
"data_b64"
|
|
2614
2562
|
],
|
|
2615
|
-
"title": "
|
|
2563
|
+
"title": "CreateFileRequest",
|
|
2616
2564
|
"type": "object"
|
|
2617
2565
|
},
|
|
2618
|
-
"
|
|
2619
|
-
"description": "The stored
|
|
2566
|
+
"CreateFileResponse": {
|
|
2567
|
+
"description": "The stored file and the shareable link to it.",
|
|
2620
2568
|
"properties": {
|
|
2621
|
-
"
|
|
2622
|
-
"$ref": "#/components/schemas/
|
|
2623
|
-
"description": "The stored
|
|
2569
|
+
"file": {
|
|
2570
|
+
"$ref": "#/components/schemas/FileView",
|
|
2571
|
+
"description": "The stored file's metadata."
|
|
2624
2572
|
},
|
|
2625
2573
|
"url": {
|
|
2626
|
-
"description": "The
|
|
2574
|
+
"description": "The file's dashboard URL (app.ellipsis.dev/files/{id}). Access is gated to members of the owning organization, so this link is safe to share, e.g. in a pull request comment.",
|
|
2627
2575
|
"title": "Url",
|
|
2628
2576
|
"type": "string"
|
|
2629
2577
|
}
|
|
2630
2578
|
},
|
|
2631
2579
|
"required": [
|
|
2632
|
-
"
|
|
2580
|
+
"file",
|
|
2633
2581
|
"url"
|
|
2634
2582
|
],
|
|
2635
|
-
"title": "
|
|
2583
|
+
"title": "CreateFileResponse",
|
|
2584
|
+
"type": "object"
|
|
2585
|
+
},
|
|
2586
|
+
"CreateMemoryRequest": {
|
|
2587
|
+
"description": "Create a memory at a path that does not exist yet.",
|
|
2588
|
+
"properties": {
|
|
2589
|
+
"content": {
|
|
2590
|
+
"description": "The memory's markdown content, at most 100 KB of UTF-8.",
|
|
2591
|
+
"title": "Content",
|
|
2592
|
+
"type": "string"
|
|
2593
|
+
},
|
|
2594
|
+
"description": {
|
|
2595
|
+
"description": "A one-line summary, at most 200 characters and no newlines. This is the only thing a reader sees in the index, so make it say what the memory is for.",
|
|
2596
|
+
"title": "Description",
|
|
2597
|
+
"type": "string"
|
|
2598
|
+
},
|
|
2599
|
+
"path": {
|
|
2600
|
+
"description": "Where to store the memory. A memory path is slash-separated segments of [a-z0-9._-], with no leading or trailing slash, no empty segments, no '.' or '..' segments, at most 512 characters, ending in '.md'.",
|
|
2601
|
+
"title": "Path",
|
|
2602
|
+
"type": "string"
|
|
2603
|
+
}
|
|
2604
|
+
},
|
|
2605
|
+
"required": [
|
|
2606
|
+
"path",
|
|
2607
|
+
"description",
|
|
2608
|
+
"content"
|
|
2609
|
+
],
|
|
2610
|
+
"title": "CreateMemoryRequest",
|
|
2636
2611
|
"type": "object"
|
|
2637
2612
|
},
|
|
2638
2613
|
"CreateReviewRequest": {
|
|
@@ -2746,6 +2721,49 @@
|
|
|
2746
2721
|
"title": "DurationPercentiles",
|
|
2747
2722
|
"type": "object"
|
|
2748
2723
|
},
|
|
2724
|
+
"EditMemoryRequest": {
|
|
2725
|
+
"description": "Update an existing memory. At least one of description or content is\nrequired; this never creates a memory, and never moves it.",
|
|
2726
|
+
"properties": {
|
|
2727
|
+
"content": {
|
|
2728
|
+
"anyOf": [
|
|
2729
|
+
{
|
|
2730
|
+
"type": "string"
|
|
2731
|
+
},
|
|
2732
|
+
{
|
|
2733
|
+
"type": "null"
|
|
2734
|
+
}
|
|
2735
|
+
],
|
|
2736
|
+
"description": "Replacement markdown content. Omit to keep it.",
|
|
2737
|
+
"title": "Content"
|
|
2738
|
+
},
|
|
2739
|
+
"description": {
|
|
2740
|
+
"anyOf": [
|
|
2741
|
+
{
|
|
2742
|
+
"type": "string"
|
|
2743
|
+
},
|
|
2744
|
+
{
|
|
2745
|
+
"type": "null"
|
|
2746
|
+
}
|
|
2747
|
+
],
|
|
2748
|
+
"description": "Replacement one-line summary. Omit to keep it.",
|
|
2749
|
+
"title": "Description"
|
|
2750
|
+
},
|
|
2751
|
+
"if_sha256": {
|
|
2752
|
+
"anyOf": [
|
|
2753
|
+
{
|
|
2754
|
+
"type": "string"
|
|
2755
|
+
},
|
|
2756
|
+
{
|
|
2757
|
+
"type": "null"
|
|
2758
|
+
}
|
|
2759
|
+
],
|
|
2760
|
+
"description": "Only apply the edit if the memory's current content_sha256 matches. Returns 409 if it doesn't, so a concurrent write is a visible conflict rather than a silent overwrite.",
|
|
2761
|
+
"title": "If Sha256"
|
|
2762
|
+
}
|
|
2763
|
+
},
|
|
2764
|
+
"title": "EditMemoryRequest",
|
|
2765
|
+
"type": "object"
|
|
2766
|
+
},
|
|
2749
2767
|
"EffortLevel": {
|
|
2750
2768
|
"enum": [
|
|
2751
2769
|
"low",
|
|
@@ -2781,7 +2799,7 @@
|
|
|
2781
2799
|
"ErrorInfo": {
|
|
2782
2800
|
"properties": {
|
|
2783
2801
|
"code": {
|
|
2784
|
-
"description": "Stable machine-readable error code. Open vocabulary \u2014 handle unknown codes by HTTP status. Known values: account_blocked,
|
|
2802
|
+
"description": "Stable machine-readable error code. Open vocabulary \u2014 handle unknown codes by HTTP status. Known values: account_blocked, conflict, default_config_broken, failed_dependency, file_quota_exceeded, forbidden, internal_error, invalid_request, not_found, rate_limited, review_in_flight, session_closed, session_ephemeral_trigger, session_finished, session_harness_single_turn, session_laptop, session_mention_surface, session_non_interactive, unauthorized, unavailable.",
|
|
2785
2803
|
"title": "Code",
|
|
2786
2804
|
"type": "string"
|
|
2787
2805
|
},
|
|
@@ -2833,6 +2851,58 @@
|
|
|
2833
2851
|
"title": "ExecutionStatus",
|
|
2834
2852
|
"type": "string"
|
|
2835
2853
|
},
|
|
2854
|
+
"FileView": {
|
|
2855
|
+
"description": "A file's metadata \u2014 the file itself is fetched via a separate\ndownload URL.",
|
|
2856
|
+
"properties": {
|
|
2857
|
+
"agent_session_id": {
|
|
2858
|
+
"anyOf": [
|
|
2859
|
+
{
|
|
2860
|
+
"type": "string"
|
|
2861
|
+
},
|
|
2862
|
+
{
|
|
2863
|
+
"type": "null"
|
|
2864
|
+
}
|
|
2865
|
+
],
|
|
2866
|
+
"description": "The agent session that produced this file, when it was uploaded from a sandbox. Null for uploads made outside an agent session.",
|
|
2867
|
+
"title": "Agent Session Id"
|
|
2868
|
+
},
|
|
2869
|
+
"content_type": {
|
|
2870
|
+
"description": "The file's MIME type.",
|
|
2871
|
+
"title": "Content Type",
|
|
2872
|
+
"type": "string"
|
|
2873
|
+
},
|
|
2874
|
+
"created_at": {
|
|
2875
|
+
"description": "When the file was uploaded.",
|
|
2876
|
+
"format": "date-time",
|
|
2877
|
+
"title": "Created At",
|
|
2878
|
+
"type": "string"
|
|
2879
|
+
},
|
|
2880
|
+
"filename": {
|
|
2881
|
+
"description": "The original file basename, for display.",
|
|
2882
|
+
"title": "Filename",
|
|
2883
|
+
"type": "string"
|
|
2884
|
+
},
|
|
2885
|
+
"id": {
|
|
2886
|
+
"description": "The file's unique identifier.",
|
|
2887
|
+
"title": "Id",
|
|
2888
|
+
"type": "string"
|
|
2889
|
+
},
|
|
2890
|
+
"size_bytes": {
|
|
2891
|
+
"description": "The size of the stored file in bytes.",
|
|
2892
|
+
"title": "Size Bytes",
|
|
2893
|
+
"type": "integer"
|
|
2894
|
+
}
|
|
2895
|
+
},
|
|
2896
|
+
"required": [
|
|
2897
|
+
"id",
|
|
2898
|
+
"filename",
|
|
2899
|
+
"content_type",
|
|
2900
|
+
"size_bytes",
|
|
2901
|
+
"created_at"
|
|
2902
|
+
],
|
|
2903
|
+
"title": "FileView",
|
|
2904
|
+
"type": "object"
|
|
2905
|
+
},
|
|
2836
2906
|
"FindingAnchor": {
|
|
2837
2907
|
"description": "Where a finding's line anchor landed relative to the PR diff.",
|
|
2838
2908
|
"enum": [
|
|
@@ -3000,30 +3070,30 @@
|
|
|
3000
3070
|
"title": "GetAnalyticsReviewsResponse",
|
|
3001
3071
|
"type": "object"
|
|
3002
3072
|
},
|
|
3003
|
-
"
|
|
3004
|
-
"description": "One
|
|
3073
|
+
"GetFileResponse": {
|
|
3074
|
+
"description": "One file's metadata plus its shareable link and a short-lived\ndownload URL.",
|
|
3005
3075
|
"properties": {
|
|
3006
|
-
"asset": {
|
|
3007
|
-
"$ref": "#/components/schemas/AssetView",
|
|
3008
|
-
"description": "The asset's metadata."
|
|
3009
|
-
},
|
|
3010
3076
|
"download_url": {
|
|
3011
3077
|
"description": "A short-lived presigned URL for downloading the file bytes. Fetch it immediately \u2014 it expires within about a minute.",
|
|
3012
3078
|
"title": "Download Url",
|
|
3013
3079
|
"type": "string"
|
|
3014
3080
|
},
|
|
3081
|
+
"file": {
|
|
3082
|
+
"$ref": "#/components/schemas/FileView",
|
|
3083
|
+
"description": "The file's metadata."
|
|
3084
|
+
},
|
|
3015
3085
|
"url": {
|
|
3016
|
-
"description": "The
|
|
3086
|
+
"description": "The file's dashboard URL \u2014 the same shareable link returned when the file was created.",
|
|
3017
3087
|
"title": "Url",
|
|
3018
3088
|
"type": "string"
|
|
3019
3089
|
}
|
|
3020
3090
|
},
|
|
3021
3091
|
"required": [
|
|
3022
|
-
"
|
|
3092
|
+
"file",
|
|
3023
3093
|
"url",
|
|
3024
3094
|
"download_url"
|
|
3025
3095
|
],
|
|
3026
|
-
"title": "
|
|
3096
|
+
"title": "GetFileResponse",
|
|
3027
3097
|
"type": "object"
|
|
3028
3098
|
},
|
|
3029
3099
|
"GetIntegrationsResponse": {
|
|
@@ -4194,22 +4264,22 @@
|
|
|
4194
4264
|
"title": "ListAlertsResponse",
|
|
4195
4265
|
"type": "object"
|
|
4196
4266
|
},
|
|
4197
|
-
"
|
|
4198
|
-
"description": "The calling account's
|
|
4267
|
+
"ListFilesResponse": {
|
|
4268
|
+
"description": "The calling account's files, newest first. Metadata only \u2014 fetch an\nindividual file to get a download URL.",
|
|
4199
4269
|
"properties": {
|
|
4200
|
-
"
|
|
4201
|
-
"description": "The account's
|
|
4270
|
+
"files": {
|
|
4271
|
+
"description": "The account's files, newest first.",
|
|
4202
4272
|
"items": {
|
|
4203
|
-
"$ref": "#/components/schemas/
|
|
4273
|
+
"$ref": "#/components/schemas/FileView"
|
|
4204
4274
|
},
|
|
4205
|
-
"title": "
|
|
4275
|
+
"title": "Files",
|
|
4206
4276
|
"type": "array"
|
|
4207
4277
|
}
|
|
4208
4278
|
},
|
|
4209
4279
|
"required": [
|
|
4210
|
-
"
|
|
4280
|
+
"files"
|
|
4211
4281
|
],
|
|
4212
|
-
"title": "
|
|
4282
|
+
"title": "ListFilesResponse",
|
|
4213
4283
|
"type": "object"
|
|
4214
4284
|
},
|
|
4215
4285
|
"ListGithubMembersResponse": {
|
|
@@ -4272,6 +4342,30 @@
|
|
|
4272
4342
|
"title": "ListLinearTeamsResponse",
|
|
4273
4343
|
"type": "object"
|
|
4274
4344
|
},
|
|
4345
|
+
"ListMemoriesWireResponse": {
|
|
4346
|
+
"description": "The organization's memories: the rendered index a reader scans, plus the\nsame entries structured. Content is fetched per memory.",
|
|
4347
|
+
"properties": {
|
|
4348
|
+
"index": {
|
|
4349
|
+
"description": "The memories rendered as a markdown index \u2014 one line per memory carrying its id, path, and description, grouped by top-level prefix. Read this, then fetch the ids that matter.",
|
|
4350
|
+
"title": "Index",
|
|
4351
|
+
"type": "string"
|
|
4352
|
+
},
|
|
4353
|
+
"memories": {
|
|
4354
|
+
"description": "The same memories as structured entries, ordered by path.",
|
|
4355
|
+
"items": {
|
|
4356
|
+
"$ref": "#/components/schemas/MemoryStubWire"
|
|
4357
|
+
},
|
|
4358
|
+
"title": "Memories",
|
|
4359
|
+
"type": "array"
|
|
4360
|
+
}
|
|
4361
|
+
},
|
|
4362
|
+
"required": [
|
|
4363
|
+
"index",
|
|
4364
|
+
"memories"
|
|
4365
|
+
],
|
|
4366
|
+
"title": "ListMemoriesWireResponse",
|
|
4367
|
+
"type": "object"
|
|
4368
|
+
},
|
|
4275
4369
|
"ListReviewsResponse": {
|
|
4276
4370
|
"description": "Reviews matching the query, newest first. `findings` are omitted\n(counters only); automatically-triggered reviews are included, so this\nanswers \"show me every review on this pull request\".",
|
|
4277
4371
|
"properties": {
|
|
@@ -4576,12 +4670,163 @@
|
|
|
4576
4670
|
"title": "LogSearchHit",
|
|
4577
4671
|
"type": "object"
|
|
4578
4672
|
},
|
|
4673
|
+
"MemoryActorType": {
|
|
4674
|
+
"enum": [
|
|
4675
|
+
"agent_session",
|
|
4676
|
+
"api_key",
|
|
4677
|
+
"user"
|
|
4678
|
+
],
|
|
4679
|
+
"title": "MemoryActorType",
|
|
4680
|
+
"type": "string"
|
|
4681
|
+
},
|
|
4682
|
+
"MemoryActorWire": {
|
|
4683
|
+
"description": "Who wrote a memory, derived from their credential.",
|
|
4684
|
+
"properties": {
|
|
4685
|
+
"id": {
|
|
4686
|
+
"description": "The writer's identifier: the agent session id, the API key id, or the GitHub account id, matching `type`.",
|
|
4687
|
+
"title": "Id",
|
|
4688
|
+
"type": "string"
|
|
4689
|
+
},
|
|
4690
|
+
"type": {
|
|
4691
|
+
"$ref": "#/components/schemas/MemoryActorType",
|
|
4692
|
+
"description": "The kind of credential that wrote the memory: agent_session (an agent writing from inside its sandbox), api_key, or user."
|
|
4693
|
+
}
|
|
4694
|
+
},
|
|
4695
|
+
"required": [
|
|
4696
|
+
"type",
|
|
4697
|
+
"id"
|
|
4698
|
+
],
|
|
4699
|
+
"title": "MemoryActorWire",
|
|
4700
|
+
"type": "object"
|
|
4701
|
+
},
|
|
4702
|
+
"MemoryStubWire": {
|
|
4703
|
+
"description": "One entry in the index: a memory with every field except `content`.\n\nContent is the only omission, and it's the whole reason this shape exists \u2014\nan account can hold 2,000 memories of 100 KB each, so a listing that carried\ncontent would be a 200 MB response.",
|
|
4704
|
+
"properties": {
|
|
4705
|
+
"content_sha256": {
|
|
4706
|
+
"description": "Hex SHA-256 of the content, usable as an `if_sha256` precondition.",
|
|
4707
|
+
"title": "Content Sha256",
|
|
4708
|
+
"type": "string"
|
|
4709
|
+
},
|
|
4710
|
+
"created_at": {
|
|
4711
|
+
"description": "When the memory was created.",
|
|
4712
|
+
"format": "date-time",
|
|
4713
|
+
"title": "Created At",
|
|
4714
|
+
"type": "string"
|
|
4715
|
+
},
|
|
4716
|
+
"created_by": {
|
|
4717
|
+
"$ref": "#/components/schemas/MemoryActorWire",
|
|
4718
|
+
"description": "The credential that created the memory."
|
|
4719
|
+
},
|
|
4720
|
+
"description": {
|
|
4721
|
+
"description": "The one-line summary of the memory.",
|
|
4722
|
+
"title": "Description",
|
|
4723
|
+
"type": "string"
|
|
4724
|
+
},
|
|
4725
|
+
"id": {
|
|
4726
|
+
"description": "The memory's unique identifier.",
|
|
4727
|
+
"title": "Id",
|
|
4728
|
+
"type": "string"
|
|
4729
|
+
},
|
|
4730
|
+
"path": {
|
|
4731
|
+
"description": "The memory's address within the organization.",
|
|
4732
|
+
"title": "Path",
|
|
4733
|
+
"type": "string"
|
|
4734
|
+
},
|
|
4735
|
+
"updated_at": {
|
|
4736
|
+
"description": "When the memory was last written.",
|
|
4737
|
+
"format": "date-time",
|
|
4738
|
+
"title": "Updated At",
|
|
4739
|
+
"type": "string"
|
|
4740
|
+
},
|
|
4741
|
+
"updated_by": {
|
|
4742
|
+
"$ref": "#/components/schemas/MemoryActorWire",
|
|
4743
|
+
"description": "The credential that last wrote the memory."
|
|
4744
|
+
}
|
|
4745
|
+
},
|
|
4746
|
+
"required": [
|
|
4747
|
+
"id",
|
|
4748
|
+
"path",
|
|
4749
|
+
"description",
|
|
4750
|
+
"content_sha256",
|
|
4751
|
+
"created_by",
|
|
4752
|
+
"updated_by",
|
|
4753
|
+
"created_at",
|
|
4754
|
+
"updated_at"
|
|
4755
|
+
],
|
|
4756
|
+
"title": "MemoryStubWire",
|
|
4757
|
+
"type": "object"
|
|
4758
|
+
},
|
|
4759
|
+
"MemoryWire": {
|
|
4760
|
+
"description": "One memory, including its full markdown content.",
|
|
4761
|
+
"properties": {
|
|
4762
|
+
"content": {
|
|
4763
|
+
"description": "The memory's markdown content.",
|
|
4764
|
+
"title": "Content",
|
|
4765
|
+
"type": "string"
|
|
4766
|
+
},
|
|
4767
|
+
"content_sha256": {
|
|
4768
|
+
"description": "Hex SHA-256 of the content, computed server-side. Pass it back as `if_sha256` on an edit or delete to fail instead of overwriting a change someone else made in the meantime.",
|
|
4769
|
+
"title": "Content Sha256",
|
|
4770
|
+
"type": "string"
|
|
4771
|
+
},
|
|
4772
|
+
"created_at": {
|
|
4773
|
+
"description": "When the memory was created.",
|
|
4774
|
+
"format": "date-time",
|
|
4775
|
+
"title": "Created At",
|
|
4776
|
+
"type": "string"
|
|
4777
|
+
},
|
|
4778
|
+
"created_by": {
|
|
4779
|
+
"$ref": "#/components/schemas/MemoryActorWire",
|
|
4780
|
+
"description": "The credential that created the memory."
|
|
4781
|
+
},
|
|
4782
|
+
"description": {
|
|
4783
|
+
"description": "The one-line summary shown in the index. This is what a reader sees before deciding to open the memory.",
|
|
4784
|
+
"title": "Description",
|
|
4785
|
+
"type": "string"
|
|
4786
|
+
},
|
|
4787
|
+
"id": {
|
|
4788
|
+
"description": "The memory's unique identifier.",
|
|
4789
|
+
"title": "Id",
|
|
4790
|
+
"type": "string"
|
|
4791
|
+
},
|
|
4792
|
+
"path": {
|
|
4793
|
+
"description": "The memory's address, unique within the organization, e.g. repos/acme/deploys.md.",
|
|
4794
|
+
"title": "Path",
|
|
4795
|
+
"type": "string"
|
|
4796
|
+
},
|
|
4797
|
+
"updated_at": {
|
|
4798
|
+
"description": "When the memory was last written.",
|
|
4799
|
+
"format": "date-time",
|
|
4800
|
+
"title": "Updated At",
|
|
4801
|
+
"type": "string"
|
|
4802
|
+
},
|
|
4803
|
+
"updated_by": {
|
|
4804
|
+
"$ref": "#/components/schemas/MemoryActorWire",
|
|
4805
|
+
"description": "The credential that last wrote the memory."
|
|
4806
|
+
}
|
|
4807
|
+
},
|
|
4808
|
+
"required": [
|
|
4809
|
+
"id",
|
|
4810
|
+
"path",
|
|
4811
|
+
"description",
|
|
4812
|
+
"content",
|
|
4813
|
+
"content_sha256",
|
|
4814
|
+
"created_by",
|
|
4815
|
+
"updated_by",
|
|
4816
|
+
"created_at",
|
|
4817
|
+
"updated_at"
|
|
4818
|
+
],
|
|
4819
|
+
"title": "MemoryWire",
|
|
4820
|
+
"type": "object"
|
|
4821
|
+
},
|
|
4579
4822
|
"ModelManufacturer": {
|
|
4580
|
-
"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
|
|
4823
|
+
"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 `bedrock-gpt-5.6-*`\nrows are OPENAI (OpenAI's models, served by AWS), and GLM is ZAI (Z.ai's model,\nserved by Concentrate).\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.",
|
|
4581
4824
|
"enum": [
|
|
4582
4825
|
"anthropic",
|
|
4583
4826
|
"openai",
|
|
4584
|
-
"zai"
|
|
4827
|
+
"zai",
|
|
4828
|
+
"minimax",
|
|
4829
|
+
"moonshot"
|
|
4585
4830
|
],
|
|
4586
4831
|
"title": "ModelManufacturer",
|
|
4587
4832
|
"type": "string"
|
|
@@ -10753,11 +10998,200 @@
|
|
|
10753
10998
|
]
|
|
10754
10999
|
}
|
|
10755
11000
|
},
|
|
10756
|
-
"/
|
|
10757
|
-
"
|
|
10758
|
-
"description": "
|
|
10759
|
-
"operationId": "
|
|
10760
|
-
"
|
|
11001
|
+
"/auth/cli/poll": {
|
|
11002
|
+
"post": {
|
|
11003
|
+
"description": "Poll a device-code auth flow for its token.\n\nUnauthenticated; the device code identifies the flow.",
|
|
11004
|
+
"operationId": "cli_auth_poll",
|
|
11005
|
+
"requestBody": {
|
|
11006
|
+
"content": {
|
|
11007
|
+
"application/json": {
|
|
11008
|
+
"schema": {
|
|
11009
|
+
"$ref": "#/components/schemas/CliAuthPollRequest"
|
|
11010
|
+
}
|
|
11011
|
+
}
|
|
11012
|
+
},
|
|
11013
|
+
"required": true
|
|
11014
|
+
},
|
|
11015
|
+
"responses": {
|
|
11016
|
+
"200": {
|
|
11017
|
+
"content": {
|
|
11018
|
+
"application/json": {
|
|
11019
|
+
"schema": {
|
|
11020
|
+
"$ref": "#/components/schemas/PollCliAuthResponse"
|
|
11021
|
+
}
|
|
11022
|
+
}
|
|
11023
|
+
},
|
|
11024
|
+
"description": "Successful Response"
|
|
11025
|
+
},
|
|
11026
|
+
"401": {
|
|
11027
|
+
"content": {
|
|
11028
|
+
"application/json": {
|
|
11029
|
+
"schema": {
|
|
11030
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11031
|
+
}
|
|
11032
|
+
}
|
|
11033
|
+
},
|
|
11034
|
+
"description": "The bearer token is missing, invalid, or revoked."
|
|
11035
|
+
},
|
|
11036
|
+
"403": {
|
|
11037
|
+
"content": {
|
|
11038
|
+
"application/json": {
|
|
11039
|
+
"schema": {
|
|
11040
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11041
|
+
}
|
|
11042
|
+
}
|
|
11043
|
+
},
|
|
11044
|
+
"description": "The credential may not perform this action, or the account is blocked."
|
|
11045
|
+
},
|
|
11046
|
+
"404": {
|
|
11047
|
+
"content": {
|
|
11048
|
+
"application/json": {
|
|
11049
|
+
"schema": {
|
|
11050
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11051
|
+
}
|
|
11052
|
+
}
|
|
11053
|
+
},
|
|
11054
|
+
"description": "Unknown device code."
|
|
11055
|
+
},
|
|
11056
|
+
"422": {
|
|
11057
|
+
"content": {
|
|
11058
|
+
"application/json": {
|
|
11059
|
+
"schema": {
|
|
11060
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
11061
|
+
}
|
|
11062
|
+
}
|
|
11063
|
+
},
|
|
11064
|
+
"description": "Validation Error"
|
|
11065
|
+
}
|
|
11066
|
+
},
|
|
11067
|
+
"summary": "Cli Auth Poll",
|
|
11068
|
+
"tags": [
|
|
11069
|
+
"v1"
|
|
11070
|
+
]
|
|
11071
|
+
}
|
|
11072
|
+
},
|
|
11073
|
+
"/auth/cli/start": {
|
|
11074
|
+
"post": {
|
|
11075
|
+
"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.",
|
|
11076
|
+
"operationId": "cli_auth_start",
|
|
11077
|
+
"responses": {
|
|
11078
|
+
"201": {
|
|
11079
|
+
"content": {
|
|
11080
|
+
"application/json": {
|
|
11081
|
+
"schema": {
|
|
11082
|
+
"$ref": "#/components/schemas/StartCliAuthResponse"
|
|
11083
|
+
}
|
|
11084
|
+
}
|
|
11085
|
+
},
|
|
11086
|
+
"description": "Successful Response"
|
|
11087
|
+
},
|
|
11088
|
+
"401": {
|
|
11089
|
+
"content": {
|
|
11090
|
+
"application/json": {
|
|
11091
|
+
"schema": {
|
|
11092
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11093
|
+
}
|
|
11094
|
+
}
|
|
11095
|
+
},
|
|
11096
|
+
"description": "The bearer token is missing, invalid, or revoked."
|
|
11097
|
+
},
|
|
11098
|
+
"403": {
|
|
11099
|
+
"content": {
|
|
11100
|
+
"application/json": {
|
|
11101
|
+
"schema": {
|
|
11102
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11103
|
+
}
|
|
11104
|
+
}
|
|
11105
|
+
},
|
|
11106
|
+
"description": "The credential may not perform this action, or the account is blocked."
|
|
11107
|
+
}
|
|
11108
|
+
},
|
|
11109
|
+
"summary": "Cli Auth Start",
|
|
11110
|
+
"tags": [
|
|
11111
|
+
"v1"
|
|
11112
|
+
]
|
|
11113
|
+
}
|
|
11114
|
+
},
|
|
11115
|
+
"/budget": {
|
|
11116
|
+
"get": {
|
|
11117
|
+
"description": "Return the caller's current budget summary.",
|
|
11118
|
+
"operationId": "get_budget",
|
|
11119
|
+
"parameters": [
|
|
11120
|
+
{
|
|
11121
|
+
"in": "header",
|
|
11122
|
+
"name": "user-agent",
|
|
11123
|
+
"required": false,
|
|
11124
|
+
"schema": {
|
|
11125
|
+
"anyOf": [
|
|
11126
|
+
{
|
|
11127
|
+
"type": "string"
|
|
11128
|
+
},
|
|
11129
|
+
{
|
|
11130
|
+
"type": "null"
|
|
11131
|
+
}
|
|
11132
|
+
],
|
|
11133
|
+
"title": "User-Agent"
|
|
11134
|
+
}
|
|
11135
|
+
}
|
|
11136
|
+
],
|
|
11137
|
+
"responses": {
|
|
11138
|
+
"200": {
|
|
11139
|
+
"content": {
|
|
11140
|
+
"application/json": {
|
|
11141
|
+
"schema": {
|
|
11142
|
+
"$ref": "#/components/schemas/BudgetSummary"
|
|
11143
|
+
}
|
|
11144
|
+
}
|
|
11145
|
+
},
|
|
11146
|
+
"description": "Successful Response"
|
|
11147
|
+
},
|
|
11148
|
+
"401": {
|
|
11149
|
+
"content": {
|
|
11150
|
+
"application/json": {
|
|
11151
|
+
"schema": {
|
|
11152
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11153
|
+
}
|
|
11154
|
+
}
|
|
11155
|
+
},
|
|
11156
|
+
"description": "The bearer token is missing, invalid, or revoked."
|
|
11157
|
+
},
|
|
11158
|
+
"403": {
|
|
11159
|
+
"content": {
|
|
11160
|
+
"application/json": {
|
|
11161
|
+
"schema": {
|
|
11162
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11163
|
+
}
|
|
11164
|
+
}
|
|
11165
|
+
},
|
|
11166
|
+
"description": "The credential may not perform this action, or the account is blocked."
|
|
11167
|
+
},
|
|
11168
|
+
"422": {
|
|
11169
|
+
"content": {
|
|
11170
|
+
"application/json": {
|
|
11171
|
+
"schema": {
|
|
11172
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
11173
|
+
}
|
|
11174
|
+
}
|
|
11175
|
+
},
|
|
11176
|
+
"description": "Validation Error"
|
|
11177
|
+
}
|
|
11178
|
+
},
|
|
11179
|
+
"security": [
|
|
11180
|
+
{
|
|
11181
|
+
"HTTPBearer": []
|
|
11182
|
+
}
|
|
11183
|
+
],
|
|
11184
|
+
"summary": "Get Budget",
|
|
11185
|
+
"tags": [
|
|
11186
|
+
"v1"
|
|
11187
|
+
]
|
|
11188
|
+
}
|
|
11189
|
+
},
|
|
11190
|
+
"/files": {
|
|
11191
|
+
"get": {
|
|
11192
|
+
"description": "List uploaded files, newest first.\n\nMetadata only \u2014 download URLs are minted per explicit GET, not\nper row. agent_session_id scopes the list to one run's uploads.",
|
|
11193
|
+
"operationId": "list_files",
|
|
11194
|
+
"parameters": [
|
|
10761
11195
|
{
|
|
10762
11196
|
"in": "query",
|
|
10763
11197
|
"name": "agent_session_id",
|
|
@@ -10806,7 +11240,7 @@
|
|
|
10806
11240
|
"content": {
|
|
10807
11241
|
"application/json": {
|
|
10808
11242
|
"schema": {
|
|
10809
|
-
"$ref": "#/components/schemas/
|
|
11243
|
+
"$ref": "#/components/schemas/ListFilesResponse"
|
|
10810
11244
|
}
|
|
10811
11245
|
}
|
|
10812
11246
|
},
|
|
@@ -10848,14 +11282,14 @@
|
|
|
10848
11282
|
"HTTPBearer": []
|
|
10849
11283
|
}
|
|
10850
11284
|
],
|
|
10851
|
-
"summary": "List
|
|
11285
|
+
"summary": "List Files",
|
|
10852
11286
|
"tags": [
|
|
10853
11287
|
"v1"
|
|
10854
11288
|
]
|
|
10855
11289
|
},
|
|
10856
11290
|
"post": {
|
|
10857
|
-
"description": "Upload a file that outlives the sandbox.\n\nv1: PNG images only, base64 in the JSON body, 10 MiB cap. The\nprimary caller is the in-sandbox `agent
|
|
10858
|
-
"operationId": "
|
|
11291
|
+
"description": "Upload a file that outlives the sandbox.\n\nv1: PNG images only, base64 in the JSON body, 10 MiB cap. The\nprimary caller is the in-sandbox `agent file upload` CLI (an\nagent persisting a screenshot to link on a PR), but all\ncredential types work. Returns the org-membership-gated\ndashboard URL so callers never hard-code URL shapes.",
|
|
11292
|
+
"operationId": "create_file",
|
|
10859
11293
|
"parameters": [
|
|
10860
11294
|
{
|
|
10861
11295
|
"in": "header",
|
|
@@ -10878,7 +11312,7 @@
|
|
|
10878
11312
|
"content": {
|
|
10879
11313
|
"application/json": {
|
|
10880
11314
|
"schema": {
|
|
10881
|
-
"$ref": "#/components/schemas/
|
|
11315
|
+
"$ref": "#/components/schemas/CreateFileRequest"
|
|
10882
11316
|
}
|
|
10883
11317
|
}
|
|
10884
11318
|
},
|
|
@@ -10889,7 +11323,7 @@
|
|
|
10889
11323
|
"content": {
|
|
10890
11324
|
"application/json": {
|
|
10891
11325
|
"schema": {
|
|
10892
|
-
"$ref": "#/components/schemas/
|
|
11326
|
+
"$ref": "#/components/schemas/CreateFileResponse"
|
|
10893
11327
|
}
|
|
10894
11328
|
}
|
|
10895
11329
|
},
|
|
@@ -10943,7 +11377,7 @@
|
|
|
10943
11377
|
}
|
|
10944
11378
|
}
|
|
10945
11379
|
},
|
|
10946
|
-
"description": "
|
|
11380
|
+
"description": "A file quota was exceeded (per-session, per-day, or account-wide)."
|
|
10947
11381
|
}
|
|
10948
11382
|
},
|
|
10949
11383
|
"security": [
|
|
@@ -10951,23 +11385,23 @@
|
|
|
10951
11385
|
"HTTPBearer": []
|
|
10952
11386
|
}
|
|
10953
11387
|
],
|
|
10954
|
-
"summary": "Create
|
|
11388
|
+
"summary": "Create File",
|
|
10955
11389
|
"tags": [
|
|
10956
11390
|
"v1"
|
|
10957
11391
|
]
|
|
10958
11392
|
}
|
|
10959
11393
|
},
|
|
10960
|
-
"/
|
|
11394
|
+
"/files/{file_id}": {
|
|
10961
11395
|
"delete": {
|
|
10962
|
-
"description": "Delete
|
|
10963
|
-
"operationId": "
|
|
11396
|
+
"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.",
|
|
11397
|
+
"operationId": "delete_file",
|
|
10964
11398
|
"parameters": [
|
|
10965
11399
|
{
|
|
10966
11400
|
"in": "path",
|
|
10967
|
-
"name": "
|
|
11401
|
+
"name": "file_id",
|
|
10968
11402
|
"required": true,
|
|
10969
11403
|
"schema": {
|
|
10970
|
-
"title": "
|
|
11404
|
+
"title": "File Id",
|
|
10971
11405
|
"type": "string"
|
|
10972
11406
|
}
|
|
10973
11407
|
},
|
|
@@ -11020,7 +11454,7 @@
|
|
|
11020
11454
|
}
|
|
11021
11455
|
}
|
|
11022
11456
|
},
|
|
11023
|
-
"description": "No such
|
|
11457
|
+
"description": "No such file in your account."
|
|
11024
11458
|
},
|
|
11025
11459
|
"422": {
|
|
11026
11460
|
"content": {
|
|
@@ -11038,21 +11472,21 @@
|
|
|
11038
11472
|
"HTTPBearer": []
|
|
11039
11473
|
}
|
|
11040
11474
|
],
|
|
11041
|
-
"summary": "Delete
|
|
11475
|
+
"summary": "Delete File",
|
|
11042
11476
|
"tags": [
|
|
11043
11477
|
"v1"
|
|
11044
11478
|
]
|
|
11045
11479
|
},
|
|
11046
11480
|
"get": {
|
|
11047
|
-
"description": "Return one
|
|
11048
|
-
"operationId": "
|
|
11481
|
+
"description": "Return one file's metadata and download link.\n\nIncludes the gated dashboard URL and a short-lived presigned\n`download_url`.\n\nTo fetch the bytes locally, call this and then GET download_url\nimmediately \u2014 the JSON API never carries the file. The CLI's\n`agent file get` wraps exactly that two-step.",
|
|
11482
|
+
"operationId": "get_file",
|
|
11049
11483
|
"parameters": [
|
|
11050
11484
|
{
|
|
11051
11485
|
"in": "path",
|
|
11052
|
-
"name": "
|
|
11486
|
+
"name": "file_id",
|
|
11053
11487
|
"required": true,
|
|
11054
11488
|
"schema": {
|
|
11055
|
-
"title": "
|
|
11489
|
+
"title": "File Id",
|
|
11056
11490
|
"type": "string"
|
|
11057
11491
|
}
|
|
11058
11492
|
},
|
|
@@ -11078,7 +11512,7 @@
|
|
|
11078
11512
|
"content": {
|
|
11079
11513
|
"application/json": {
|
|
11080
11514
|
"schema": {
|
|
11081
|
-
"$ref": "#/components/schemas/
|
|
11515
|
+
"$ref": "#/components/schemas/GetFileResponse"
|
|
11082
11516
|
}
|
|
11083
11517
|
}
|
|
11084
11518
|
},
|
|
@@ -11112,7 +11546,7 @@
|
|
|
11112
11546
|
}
|
|
11113
11547
|
}
|
|
11114
11548
|
},
|
|
11115
|
-
"description": "No such
|
|
11549
|
+
"description": "No such file in your account."
|
|
11116
11550
|
},
|
|
11117
11551
|
"422": {
|
|
11118
11552
|
"content": {
|
|
@@ -11130,32 +11564,115 @@
|
|
|
11130
11564
|
"HTTPBearer": []
|
|
11131
11565
|
}
|
|
11132
11566
|
],
|
|
11133
|
-
"summary": "Get
|
|
11567
|
+
"summary": "Get File",
|
|
11134
11568
|
"tags": [
|
|
11135
11569
|
"v1"
|
|
11136
11570
|
]
|
|
11137
11571
|
}
|
|
11138
11572
|
},
|
|
11139
|
-
"/
|
|
11140
|
-
"
|
|
11141
|
-
"description": "
|
|
11142
|
-
"operationId": "
|
|
11143
|
-
"
|
|
11144
|
-
|
|
11145
|
-
"
|
|
11146
|
-
|
|
11147
|
-
|
|
11148
|
-
|
|
11573
|
+
"/integrations": {
|
|
11574
|
+
"get": {
|
|
11575
|
+
"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.",
|
|
11576
|
+
"operationId": "get_integrations",
|
|
11577
|
+
"parameters": [
|
|
11578
|
+
{
|
|
11579
|
+
"in": "header",
|
|
11580
|
+
"name": "user-agent",
|
|
11581
|
+
"required": false,
|
|
11582
|
+
"schema": {
|
|
11583
|
+
"anyOf": [
|
|
11584
|
+
{
|
|
11585
|
+
"type": "string"
|
|
11586
|
+
},
|
|
11587
|
+
{
|
|
11588
|
+
"type": "null"
|
|
11589
|
+
}
|
|
11590
|
+
],
|
|
11591
|
+
"title": "User-Agent"
|
|
11149
11592
|
}
|
|
11593
|
+
}
|
|
11594
|
+
],
|
|
11595
|
+
"responses": {
|
|
11596
|
+
"200": {
|
|
11597
|
+
"content": {
|
|
11598
|
+
"application/json": {
|
|
11599
|
+
"schema": {
|
|
11600
|
+
"$ref": "#/components/schemas/GetIntegrationsResponse"
|
|
11601
|
+
}
|
|
11602
|
+
}
|
|
11603
|
+
},
|
|
11604
|
+
"description": "Successful Response"
|
|
11150
11605
|
},
|
|
11151
|
-
"
|
|
11606
|
+
"401": {
|
|
11607
|
+
"content": {
|
|
11608
|
+
"application/json": {
|
|
11609
|
+
"schema": {
|
|
11610
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11611
|
+
}
|
|
11612
|
+
}
|
|
11613
|
+
},
|
|
11614
|
+
"description": "The bearer token is missing, invalid, or revoked."
|
|
11615
|
+
},
|
|
11616
|
+
"403": {
|
|
11617
|
+
"content": {
|
|
11618
|
+
"application/json": {
|
|
11619
|
+
"schema": {
|
|
11620
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11621
|
+
}
|
|
11622
|
+
}
|
|
11623
|
+
},
|
|
11624
|
+
"description": "The credential may not perform this action, or the account is blocked."
|
|
11625
|
+
},
|
|
11626
|
+
"422": {
|
|
11627
|
+
"content": {
|
|
11628
|
+
"application/json": {
|
|
11629
|
+
"schema": {
|
|
11630
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
11631
|
+
}
|
|
11632
|
+
}
|
|
11633
|
+
},
|
|
11634
|
+
"description": "Validation Error"
|
|
11635
|
+
}
|
|
11152
11636
|
},
|
|
11637
|
+
"security": [
|
|
11638
|
+
{
|
|
11639
|
+
"HTTPBearer": []
|
|
11640
|
+
}
|
|
11641
|
+
],
|
|
11642
|
+
"summary": "Get Integrations",
|
|
11643
|
+
"tags": [
|
|
11644
|
+
"v1"
|
|
11645
|
+
]
|
|
11646
|
+
}
|
|
11647
|
+
},
|
|
11648
|
+
"/integrations/github/members": {
|
|
11649
|
+
"get": {
|
|
11650
|
+
"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.",
|
|
11651
|
+
"operationId": "list_github_members",
|
|
11652
|
+
"parameters": [
|
|
11653
|
+
{
|
|
11654
|
+
"in": "header",
|
|
11655
|
+
"name": "user-agent",
|
|
11656
|
+
"required": false,
|
|
11657
|
+
"schema": {
|
|
11658
|
+
"anyOf": [
|
|
11659
|
+
{
|
|
11660
|
+
"type": "string"
|
|
11661
|
+
},
|
|
11662
|
+
{
|
|
11663
|
+
"type": "null"
|
|
11664
|
+
}
|
|
11665
|
+
],
|
|
11666
|
+
"title": "User-Agent"
|
|
11667
|
+
}
|
|
11668
|
+
}
|
|
11669
|
+
],
|
|
11153
11670
|
"responses": {
|
|
11154
11671
|
"200": {
|
|
11155
11672
|
"content": {
|
|
11156
11673
|
"application/json": {
|
|
11157
11674
|
"schema": {
|
|
11158
|
-
"$ref": "#/components/schemas/
|
|
11675
|
+
"$ref": "#/components/schemas/ListGithubMembersResponse"
|
|
11159
11676
|
}
|
|
11160
11677
|
}
|
|
11161
11678
|
},
|
|
@@ -11181,7 +11698,62 @@
|
|
|
11181
11698
|
},
|
|
11182
11699
|
"description": "The credential may not perform this action, or the account is blocked."
|
|
11183
11700
|
},
|
|
11184
|
-
"
|
|
11701
|
+
"422": {
|
|
11702
|
+
"content": {
|
|
11703
|
+
"application/json": {
|
|
11704
|
+
"schema": {
|
|
11705
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
11706
|
+
}
|
|
11707
|
+
}
|
|
11708
|
+
},
|
|
11709
|
+
"description": "Validation Error"
|
|
11710
|
+
}
|
|
11711
|
+
},
|
|
11712
|
+
"security": [
|
|
11713
|
+
{
|
|
11714
|
+
"HTTPBearer": []
|
|
11715
|
+
}
|
|
11716
|
+
],
|
|
11717
|
+
"summary": "List Github Members",
|
|
11718
|
+
"tags": [
|
|
11719
|
+
"v1"
|
|
11720
|
+
]
|
|
11721
|
+
}
|
|
11722
|
+
},
|
|
11723
|
+
"/integrations/github/repos": {
|
|
11724
|
+
"get": {
|
|
11725
|
+
"description": "List GitHub repositories connected to the installation.",
|
|
11726
|
+
"operationId": "list_github_repositories",
|
|
11727
|
+
"parameters": [
|
|
11728
|
+
{
|
|
11729
|
+
"in": "header",
|
|
11730
|
+
"name": "user-agent",
|
|
11731
|
+
"required": false,
|
|
11732
|
+
"schema": {
|
|
11733
|
+
"anyOf": [
|
|
11734
|
+
{
|
|
11735
|
+
"type": "string"
|
|
11736
|
+
},
|
|
11737
|
+
{
|
|
11738
|
+
"type": "null"
|
|
11739
|
+
}
|
|
11740
|
+
],
|
|
11741
|
+
"title": "User-Agent"
|
|
11742
|
+
}
|
|
11743
|
+
}
|
|
11744
|
+
],
|
|
11745
|
+
"responses": {
|
|
11746
|
+
"200": {
|
|
11747
|
+
"content": {
|
|
11748
|
+
"application/json": {
|
|
11749
|
+
"schema": {
|
|
11750
|
+
"$ref": "#/components/schemas/ListGithubRepositoriesResponse"
|
|
11751
|
+
}
|
|
11752
|
+
}
|
|
11753
|
+
},
|
|
11754
|
+
"description": "Successful Response"
|
|
11755
|
+
},
|
|
11756
|
+
"401": {
|
|
11185
11757
|
"content": {
|
|
11186
11758
|
"application/json": {
|
|
11187
11759
|
"schema": {
|
|
@@ -11189,7 +11761,17 @@
|
|
|
11189
11761
|
}
|
|
11190
11762
|
}
|
|
11191
11763
|
},
|
|
11192
|
-
"description": "
|
|
11764
|
+
"description": "The bearer token is missing, invalid, or revoked."
|
|
11765
|
+
},
|
|
11766
|
+
"403": {
|
|
11767
|
+
"content": {
|
|
11768
|
+
"application/json": {
|
|
11769
|
+
"schema": {
|
|
11770
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11771
|
+
}
|
|
11772
|
+
}
|
|
11773
|
+
},
|
|
11774
|
+
"description": "The credential may not perform this action, or the account is blocked."
|
|
11193
11775
|
},
|
|
11194
11776
|
"422": {
|
|
11195
11777
|
"content": {
|
|
@@ -11202,22 +11784,45 @@
|
|
|
11202
11784
|
"description": "Validation Error"
|
|
11203
11785
|
}
|
|
11204
11786
|
},
|
|
11205
|
-
"
|
|
11787
|
+
"security": [
|
|
11788
|
+
{
|
|
11789
|
+
"HTTPBearer": []
|
|
11790
|
+
}
|
|
11791
|
+
],
|
|
11792
|
+
"summary": "List Github Repositories",
|
|
11206
11793
|
"tags": [
|
|
11207
11794
|
"v1"
|
|
11208
11795
|
]
|
|
11209
11796
|
}
|
|
11210
11797
|
},
|
|
11211
|
-
"/
|
|
11212
|
-
"
|
|
11213
|
-
"description": "
|
|
11214
|
-
"operationId": "
|
|
11798
|
+
"/integrations/linear/teams": {
|
|
11799
|
+
"get": {
|
|
11800
|
+
"description": "List the teams of the connected Linear workspace.",
|
|
11801
|
+
"operationId": "list_linear_teams",
|
|
11802
|
+
"parameters": [
|
|
11803
|
+
{
|
|
11804
|
+
"in": "header",
|
|
11805
|
+
"name": "user-agent",
|
|
11806
|
+
"required": false,
|
|
11807
|
+
"schema": {
|
|
11808
|
+
"anyOf": [
|
|
11809
|
+
{
|
|
11810
|
+
"type": "string"
|
|
11811
|
+
},
|
|
11812
|
+
{
|
|
11813
|
+
"type": "null"
|
|
11814
|
+
}
|
|
11815
|
+
],
|
|
11816
|
+
"title": "User-Agent"
|
|
11817
|
+
}
|
|
11818
|
+
}
|
|
11819
|
+
],
|
|
11215
11820
|
"responses": {
|
|
11216
|
-
"
|
|
11821
|
+
"200": {
|
|
11217
11822
|
"content": {
|
|
11218
11823
|
"application/json": {
|
|
11219
11824
|
"schema": {
|
|
11220
|
-
"$ref": "#/components/schemas/
|
|
11825
|
+
"$ref": "#/components/schemas/ListLinearTeamsResponse"
|
|
11221
11826
|
}
|
|
11222
11827
|
}
|
|
11223
11828
|
},
|
|
@@ -11242,18 +11847,43 @@
|
|
|
11242
11847
|
}
|
|
11243
11848
|
},
|
|
11244
11849
|
"description": "The credential may not perform this action, or the account is blocked."
|
|
11850
|
+
},
|
|
11851
|
+
"404": {
|
|
11852
|
+
"content": {
|
|
11853
|
+
"application/json": {
|
|
11854
|
+
"schema": {
|
|
11855
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11856
|
+
}
|
|
11857
|
+
}
|
|
11858
|
+
},
|
|
11859
|
+
"description": "Linear is not connected for this account."
|
|
11860
|
+
},
|
|
11861
|
+
"422": {
|
|
11862
|
+
"content": {
|
|
11863
|
+
"application/json": {
|
|
11864
|
+
"schema": {
|
|
11865
|
+
"$ref": "#/components/schemas/HTTPValidationError"
|
|
11866
|
+
}
|
|
11867
|
+
}
|
|
11868
|
+
},
|
|
11869
|
+
"description": "Validation Error"
|
|
11245
11870
|
}
|
|
11246
11871
|
},
|
|
11247
|
-
"
|
|
11872
|
+
"security": [
|
|
11873
|
+
{
|
|
11874
|
+
"HTTPBearer": []
|
|
11875
|
+
}
|
|
11876
|
+
],
|
|
11877
|
+
"summary": "List Linear Teams",
|
|
11248
11878
|
"tags": [
|
|
11249
11879
|
"v1"
|
|
11250
11880
|
]
|
|
11251
11881
|
}
|
|
11252
11882
|
},
|
|
11253
|
-
"/
|
|
11883
|
+
"/integrations/sentry/organizations": {
|
|
11254
11884
|
"get": {
|
|
11255
|
-
"description": "
|
|
11256
|
-
"operationId": "
|
|
11885
|
+
"description": "List the connected Sentry organizations.",
|
|
11886
|
+
"operationId": "list_sentry_organizations",
|
|
11257
11887
|
"parameters": [
|
|
11258
11888
|
{
|
|
11259
11889
|
"in": "header",
|
|
@@ -11277,7 +11907,7 @@
|
|
|
11277
11907
|
"content": {
|
|
11278
11908
|
"application/json": {
|
|
11279
11909
|
"schema": {
|
|
11280
|
-
"$ref": "#/components/schemas/
|
|
11910
|
+
"$ref": "#/components/schemas/ListSentryOrganizationsResponse"
|
|
11281
11911
|
}
|
|
11282
11912
|
}
|
|
11283
11913
|
},
|
|
@@ -11319,16 +11949,16 @@
|
|
|
11319
11949
|
"HTTPBearer": []
|
|
11320
11950
|
}
|
|
11321
11951
|
],
|
|
11322
|
-
"summary": "
|
|
11952
|
+
"summary": "List Sentry Organizations",
|
|
11323
11953
|
"tags": [
|
|
11324
11954
|
"v1"
|
|
11325
11955
|
]
|
|
11326
11956
|
}
|
|
11327
11957
|
},
|
|
11328
|
-
"/integrations": {
|
|
11958
|
+
"/integrations/slack/channels": {
|
|
11329
11959
|
"get": {
|
|
11330
|
-
"description": "List
|
|
11331
|
-
"operationId": "
|
|
11960
|
+
"description": "List the channels of the connected Slack workspace, fetched\nlive from the Slack API.",
|
|
11961
|
+
"operationId": "list_slack_channels",
|
|
11332
11962
|
"parameters": [
|
|
11333
11963
|
{
|
|
11334
11964
|
"in": "header",
|
|
@@ -11352,7 +11982,7 @@
|
|
|
11352
11982
|
"content": {
|
|
11353
11983
|
"application/json": {
|
|
11354
11984
|
"schema": {
|
|
11355
|
-
"$ref": "#/components/schemas/
|
|
11985
|
+
"$ref": "#/components/schemas/ListSlackChannelsResponse"
|
|
11356
11986
|
}
|
|
11357
11987
|
}
|
|
11358
11988
|
},
|
|
@@ -11378,6 +12008,16 @@
|
|
|
11378
12008
|
},
|
|
11379
12009
|
"description": "The credential may not perform this action, or the account is blocked."
|
|
11380
12010
|
},
|
|
12011
|
+
"404": {
|
|
12012
|
+
"content": {
|
|
12013
|
+
"application/json": {
|
|
12014
|
+
"schema": {
|
|
12015
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
12016
|
+
}
|
|
12017
|
+
}
|
|
12018
|
+
},
|
|
12019
|
+
"description": "Slack is not connected for this account."
|
|
12020
|
+
},
|
|
11381
12021
|
"422": {
|
|
11382
12022
|
"content": {
|
|
11383
12023
|
"application/json": {
|
|
@@ -11394,16 +12034,16 @@
|
|
|
11394
12034
|
"HTTPBearer": []
|
|
11395
12035
|
}
|
|
11396
12036
|
],
|
|
11397
|
-
"summary": "
|
|
12037
|
+
"summary": "List Slack Channels",
|
|
11398
12038
|
"tags": [
|
|
11399
12039
|
"v1"
|
|
11400
12040
|
]
|
|
11401
12041
|
}
|
|
11402
12042
|
},
|
|
11403
|
-
"/integrations/
|
|
12043
|
+
"/integrations/slack/members": {
|
|
11404
12044
|
"get": {
|
|
11405
|
-
"description": "List the
|
|
11406
|
-
"operationId": "
|
|
12045
|
+
"description": "List the members of the connected Slack workspace, fetched\nlive from the Slack API.",
|
|
12046
|
+
"operationId": "list_slack_members",
|
|
11407
12047
|
"parameters": [
|
|
11408
12048
|
{
|
|
11409
12049
|
"in": "header",
|
|
@@ -11427,7 +12067,7 @@
|
|
|
11427
12067
|
"content": {
|
|
11428
12068
|
"application/json": {
|
|
11429
12069
|
"schema": {
|
|
11430
|
-
"$ref": "#/components/schemas/
|
|
12070
|
+
"$ref": "#/components/schemas/ListSlackMembersResponse"
|
|
11431
12071
|
}
|
|
11432
12072
|
}
|
|
11433
12073
|
},
|
|
@@ -11453,6 +12093,16 @@
|
|
|
11453
12093
|
},
|
|
11454
12094
|
"description": "The credential may not perform this action, or the account is blocked."
|
|
11455
12095
|
},
|
|
12096
|
+
"404": {
|
|
12097
|
+
"content": {
|
|
12098
|
+
"application/json": {
|
|
12099
|
+
"schema": {
|
|
12100
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
12101
|
+
}
|
|
12102
|
+
}
|
|
12103
|
+
},
|
|
12104
|
+
"description": "Slack is not connected for this account."
|
|
12105
|
+
},
|
|
11456
12106
|
"422": {
|
|
11457
12107
|
"content": {
|
|
11458
12108
|
"application/json": {
|
|
@@ -11469,16 +12119,16 @@
|
|
|
11469
12119
|
"HTTPBearer": []
|
|
11470
12120
|
}
|
|
11471
12121
|
],
|
|
11472
|
-
"summary": "List
|
|
12122
|
+
"summary": "List Slack Members",
|
|
11473
12123
|
"tags": [
|
|
11474
12124
|
"v1"
|
|
11475
12125
|
]
|
|
11476
12126
|
}
|
|
11477
12127
|
},
|
|
11478
|
-
"/
|
|
12128
|
+
"/me": {
|
|
11479
12129
|
"get": {
|
|
11480
|
-
"description": "
|
|
11481
|
-
"operationId": "
|
|
12130
|
+
"description": "Return the identity behind the caller's credential.",
|
|
12131
|
+
"operationId": "whoami",
|
|
11482
12132
|
"parameters": [
|
|
11483
12133
|
{
|
|
11484
12134
|
"in": "header",
|
|
@@ -11502,7 +12152,7 @@
|
|
|
11502
12152
|
"content": {
|
|
11503
12153
|
"application/json": {
|
|
11504
12154
|
"schema": {
|
|
11505
|
-
"$ref": "#/components/schemas/
|
|
12155
|
+
"$ref": "#/components/schemas/WhoAmIResponse"
|
|
11506
12156
|
}
|
|
11507
12157
|
}
|
|
11508
12158
|
},
|
|
@@ -11544,17 +12194,35 @@
|
|
|
11544
12194
|
"HTTPBearer": []
|
|
11545
12195
|
}
|
|
11546
12196
|
],
|
|
11547
|
-
"summary": "
|
|
12197
|
+
"summary": "Whoami",
|
|
11548
12198
|
"tags": [
|
|
11549
12199
|
"v1"
|
|
11550
12200
|
]
|
|
11551
12201
|
}
|
|
11552
12202
|
},
|
|
11553
|
-
"/
|
|
12203
|
+
"/memories": {
|
|
11554
12204
|
"get": {
|
|
11555
|
-
"description": "List the
|
|
11556
|
-
"operationId": "
|
|
12205
|
+
"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.",
|
|
12206
|
+
"operationId": "list_memories",
|
|
11557
12207
|
"parameters": [
|
|
12208
|
+
{
|
|
12209
|
+
"description": "Limit to memories under this path prefix, matched on whole segments \u2014 repos/acme matches repos/acme/x.md but not repos/acme2/x.md.",
|
|
12210
|
+
"in": "query",
|
|
12211
|
+
"name": "prefix",
|
|
12212
|
+
"required": false,
|
|
12213
|
+
"schema": {
|
|
12214
|
+
"anyOf": [
|
|
12215
|
+
{
|
|
12216
|
+
"type": "string"
|
|
12217
|
+
},
|
|
12218
|
+
{
|
|
12219
|
+
"type": "null"
|
|
12220
|
+
}
|
|
12221
|
+
],
|
|
12222
|
+
"description": "Limit to memories under this path prefix, matched on whole segments \u2014 repos/acme matches repos/acme/x.md but not repos/acme2/x.md.",
|
|
12223
|
+
"title": "Prefix"
|
|
12224
|
+
}
|
|
12225
|
+
},
|
|
11558
12226
|
{
|
|
11559
12227
|
"in": "header",
|
|
11560
12228
|
"name": "user-agent",
|
|
@@ -11577,7 +12245,7 @@
|
|
|
11577
12245
|
"content": {
|
|
11578
12246
|
"application/json": {
|
|
11579
12247
|
"schema": {
|
|
11580
|
-
"$ref": "#/components/schemas/
|
|
12248
|
+
"$ref": "#/components/schemas/ListMemoriesWireResponse"
|
|
11581
12249
|
}
|
|
11582
12250
|
}
|
|
11583
12251
|
},
|
|
@@ -11603,16 +12271,6 @@
|
|
|
11603
12271
|
},
|
|
11604
12272
|
"description": "The credential may not perform this action, or the account is blocked."
|
|
11605
12273
|
},
|
|
11606
|
-
"404": {
|
|
11607
|
-
"content": {
|
|
11608
|
-
"application/json": {
|
|
11609
|
-
"schema": {
|
|
11610
|
-
"$ref": "#/components/schemas/ErrorResponse"
|
|
11611
|
-
}
|
|
11612
|
-
}
|
|
11613
|
-
},
|
|
11614
|
-
"description": "Linear is not connected for this account."
|
|
11615
|
-
},
|
|
11616
12274
|
"422": {
|
|
11617
12275
|
"content": {
|
|
11618
12276
|
"application/json": {
|
|
@@ -11629,16 +12287,14 @@
|
|
|
11629
12287
|
"HTTPBearer": []
|
|
11630
12288
|
}
|
|
11631
12289
|
],
|
|
11632
|
-
"summary": "List
|
|
12290
|
+
"summary": "List Memories",
|
|
11633
12291
|
"tags": [
|
|
11634
12292
|
"v1"
|
|
11635
12293
|
]
|
|
11636
|
-
}
|
|
11637
|
-
|
|
11638
|
-
|
|
11639
|
-
|
|
11640
|
-
"description": "List the connected Sentry organizations.",
|
|
11641
|
-
"operationId": "list_sentry_organizations",
|
|
12294
|
+
},
|
|
12295
|
+
"post": {
|
|
12296
|
+
"description": "Save a memory for future agent sessions.\n\nMemories are durable lessons shared across the whole\norganization \u2014 conventions, past decisions, known gotchas that an\nagent cannot derive from the repository itself. One concise fact\nper memory; the description is what a reader sees in the index.\n\nCreating never overwrites: a path that already exists is a 409, so\ncorrecting an existing memory is an explicit edit.",
|
|
12297
|
+
"operationId": "create_memory",
|
|
11642
12298
|
"parameters": [
|
|
11643
12299
|
{
|
|
11644
12300
|
"in": "header",
|
|
@@ -11657,12 +12313,22 @@
|
|
|
11657
12313
|
}
|
|
11658
12314
|
}
|
|
11659
12315
|
],
|
|
12316
|
+
"requestBody": {
|
|
12317
|
+
"content": {
|
|
12318
|
+
"application/json": {
|
|
12319
|
+
"schema": {
|
|
12320
|
+
"$ref": "#/components/schemas/CreateMemoryRequest"
|
|
12321
|
+
}
|
|
12322
|
+
}
|
|
12323
|
+
},
|
|
12324
|
+
"required": true
|
|
12325
|
+
},
|
|
11660
12326
|
"responses": {
|
|
11661
|
-
"
|
|
12327
|
+
"201": {
|
|
11662
12328
|
"content": {
|
|
11663
12329
|
"application/json": {
|
|
11664
12330
|
"schema": {
|
|
11665
|
-
"$ref": "#/components/schemas/
|
|
12331
|
+
"$ref": "#/components/schemas/MemoryWire"
|
|
11666
12332
|
}
|
|
11667
12333
|
}
|
|
11668
12334
|
},
|
|
@@ -11688,15 +12354,25 @@
|
|
|
11688
12354
|
},
|
|
11689
12355
|
"description": "The credential may not perform this action, or the account is blocked."
|
|
11690
12356
|
},
|
|
12357
|
+
"409": {
|
|
12358
|
+
"content": {
|
|
12359
|
+
"application/json": {
|
|
12360
|
+
"schema": {
|
|
12361
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
12362
|
+
}
|
|
12363
|
+
}
|
|
12364
|
+
},
|
|
12365
|
+
"description": "A memory already exists at that path."
|
|
12366
|
+
},
|
|
11691
12367
|
"422": {
|
|
11692
12368
|
"content": {
|
|
11693
12369
|
"application/json": {
|
|
11694
12370
|
"schema": {
|
|
11695
|
-
"$ref": "#/components/schemas/
|
|
12371
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11696
12372
|
}
|
|
11697
12373
|
}
|
|
11698
12374
|
},
|
|
11699
|
-
"description": "
|
|
12375
|
+
"description": "The path violates the path grammar, the description or content exceeds its limit, or the organization is at the memory cap."
|
|
11700
12376
|
}
|
|
11701
12377
|
},
|
|
11702
12378
|
"security": [
|
|
@@ -11704,17 +12380,44 @@
|
|
|
11704
12380
|
"HTTPBearer": []
|
|
11705
12381
|
}
|
|
11706
12382
|
],
|
|
11707
|
-
"summary": "
|
|
12383
|
+
"summary": "Create Memory",
|
|
11708
12384
|
"tags": [
|
|
11709
12385
|
"v1"
|
|
11710
12386
|
]
|
|
11711
12387
|
}
|
|
11712
12388
|
},
|
|
11713
|
-
"/
|
|
11714
|
-
"
|
|
11715
|
-
"description": "
|
|
11716
|
-
"operationId": "
|
|
12389
|
+
"/memories/{memory_id}": {
|
|
12390
|
+
"delete": {
|
|
12391
|
+
"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.",
|
|
12392
|
+
"operationId": "delete_memory",
|
|
11717
12393
|
"parameters": [
|
|
12394
|
+
{
|
|
12395
|
+
"in": "path",
|
|
12396
|
+
"name": "memory_id",
|
|
12397
|
+
"required": true,
|
|
12398
|
+
"schema": {
|
|
12399
|
+
"title": "Memory Id",
|
|
12400
|
+
"type": "string"
|
|
12401
|
+
}
|
|
12402
|
+
},
|
|
12403
|
+
{
|
|
12404
|
+
"description": "Only delete if the memory's current content_sha256 matches.",
|
|
12405
|
+
"in": "query",
|
|
12406
|
+
"name": "if_sha256",
|
|
12407
|
+
"required": false,
|
|
12408
|
+
"schema": {
|
|
12409
|
+
"anyOf": [
|
|
12410
|
+
{
|
|
12411
|
+
"type": "string"
|
|
12412
|
+
},
|
|
12413
|
+
{
|
|
12414
|
+
"type": "null"
|
|
12415
|
+
}
|
|
12416
|
+
],
|
|
12417
|
+
"description": "Only delete if the memory's current content_sha256 matches.",
|
|
12418
|
+
"title": "If Sha256"
|
|
12419
|
+
}
|
|
12420
|
+
},
|
|
11718
12421
|
{
|
|
11719
12422
|
"in": "header",
|
|
11720
12423
|
"name": "user-agent",
|
|
@@ -11733,14 +12436,7 @@
|
|
|
11733
12436
|
}
|
|
11734
12437
|
],
|
|
11735
12438
|
"responses": {
|
|
11736
|
-
"
|
|
11737
|
-
"content": {
|
|
11738
|
-
"application/json": {
|
|
11739
|
-
"schema": {
|
|
11740
|
-
"$ref": "#/components/schemas/ListSlackChannelsResponse"
|
|
11741
|
-
}
|
|
11742
|
-
}
|
|
11743
|
-
},
|
|
12439
|
+
"204": {
|
|
11744
12440
|
"description": "Successful Response"
|
|
11745
12441
|
},
|
|
11746
12442
|
"401": {
|
|
@@ -11771,7 +12467,17 @@
|
|
|
11771
12467
|
}
|
|
11772
12468
|
}
|
|
11773
12469
|
},
|
|
11774
|
-
"description": "
|
|
12470
|
+
"description": "No such memory in your account."
|
|
12471
|
+
},
|
|
12472
|
+
"409": {
|
|
12473
|
+
"content": {
|
|
12474
|
+
"application/json": {
|
|
12475
|
+
"schema": {
|
|
12476
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
12477
|
+
}
|
|
12478
|
+
}
|
|
12479
|
+
},
|
|
12480
|
+
"description": "if_sha256 does not match the memory's current content."
|
|
11775
12481
|
},
|
|
11776
12482
|
"422": {
|
|
11777
12483
|
"content": {
|
|
@@ -11789,17 +12495,24 @@
|
|
|
11789
12495
|
"HTTPBearer": []
|
|
11790
12496
|
}
|
|
11791
12497
|
],
|
|
11792
|
-
"summary": "
|
|
12498
|
+
"summary": "Delete Memory",
|
|
11793
12499
|
"tags": [
|
|
11794
12500
|
"v1"
|
|
11795
12501
|
]
|
|
11796
|
-
}
|
|
11797
|
-
},
|
|
11798
|
-
"/integrations/slack/members": {
|
|
12502
|
+
},
|
|
11799
12503
|
"get": {
|
|
11800
|
-
"description": "
|
|
11801
|
-
"operationId": "
|
|
12504
|
+
"description": "Read one memory's full content.\n\nThe id comes from the index returned by listing memories.",
|
|
12505
|
+
"operationId": "get_memory",
|
|
11802
12506
|
"parameters": [
|
|
12507
|
+
{
|
|
12508
|
+
"in": "path",
|
|
12509
|
+
"name": "memory_id",
|
|
12510
|
+
"required": true,
|
|
12511
|
+
"schema": {
|
|
12512
|
+
"title": "Memory Id",
|
|
12513
|
+
"type": "string"
|
|
12514
|
+
}
|
|
12515
|
+
},
|
|
11803
12516
|
{
|
|
11804
12517
|
"in": "header",
|
|
11805
12518
|
"name": "user-agent",
|
|
@@ -11822,7 +12535,7 @@
|
|
|
11822
12535
|
"content": {
|
|
11823
12536
|
"application/json": {
|
|
11824
12537
|
"schema": {
|
|
11825
|
-
"$ref": "#/components/schemas/
|
|
12538
|
+
"$ref": "#/components/schemas/MemoryWire"
|
|
11826
12539
|
}
|
|
11827
12540
|
}
|
|
11828
12541
|
},
|
|
@@ -11856,7 +12569,7 @@
|
|
|
11856
12569
|
}
|
|
11857
12570
|
}
|
|
11858
12571
|
},
|
|
11859
|
-
"description": "
|
|
12572
|
+
"description": "No such memory in your account."
|
|
11860
12573
|
},
|
|
11861
12574
|
"422": {
|
|
11862
12575
|
"content": {
|
|
@@ -11874,17 +12587,24 @@
|
|
|
11874
12587
|
"HTTPBearer": []
|
|
11875
12588
|
}
|
|
11876
12589
|
],
|
|
11877
|
-
"summary": "
|
|
12590
|
+
"summary": "Get Memory",
|
|
11878
12591
|
"tags": [
|
|
11879
12592
|
"v1"
|
|
11880
12593
|
]
|
|
11881
|
-
}
|
|
11882
|
-
|
|
11883
|
-
|
|
11884
|
-
|
|
11885
|
-
"description": "Return the identity behind the caller's credential.",
|
|
11886
|
-
"operationId": "whoami",
|
|
12594
|
+
},
|
|
12595
|
+
"put": {
|
|
12596
|
+
"description": "Correct an existing memory in place.\n\nPass description, content, or both. This never creates a memory (an\nunknown id is a 404) and never moves one \u2014 the path is immutable, so\nrelocating a memory is a delete plus a create.\n\nPass `if_sha256` (from a previous read) to make a concurrent write\na 409 instead of silently overwriting it.",
|
|
12597
|
+
"operationId": "edit_memory",
|
|
11887
12598
|
"parameters": [
|
|
12599
|
+
{
|
|
12600
|
+
"in": "path",
|
|
12601
|
+
"name": "memory_id",
|
|
12602
|
+
"required": true,
|
|
12603
|
+
"schema": {
|
|
12604
|
+
"title": "Memory Id",
|
|
12605
|
+
"type": "string"
|
|
12606
|
+
}
|
|
12607
|
+
},
|
|
11888
12608
|
{
|
|
11889
12609
|
"in": "header",
|
|
11890
12610
|
"name": "user-agent",
|
|
@@ -11902,12 +12622,22 @@
|
|
|
11902
12622
|
}
|
|
11903
12623
|
}
|
|
11904
12624
|
],
|
|
12625
|
+
"requestBody": {
|
|
12626
|
+
"content": {
|
|
12627
|
+
"application/json": {
|
|
12628
|
+
"schema": {
|
|
12629
|
+
"$ref": "#/components/schemas/EditMemoryRequest"
|
|
12630
|
+
}
|
|
12631
|
+
}
|
|
12632
|
+
},
|
|
12633
|
+
"required": true
|
|
12634
|
+
},
|
|
11905
12635
|
"responses": {
|
|
11906
12636
|
"200": {
|
|
11907
12637
|
"content": {
|
|
11908
12638
|
"application/json": {
|
|
11909
12639
|
"schema": {
|
|
11910
|
-
"$ref": "#/components/schemas/
|
|
12640
|
+
"$ref": "#/components/schemas/MemoryWire"
|
|
11911
12641
|
}
|
|
11912
12642
|
}
|
|
11913
12643
|
},
|
|
@@ -11933,15 +12663,35 @@
|
|
|
11933
12663
|
},
|
|
11934
12664
|
"description": "The credential may not perform this action, or the account is blocked."
|
|
11935
12665
|
},
|
|
12666
|
+
"404": {
|
|
12667
|
+
"content": {
|
|
12668
|
+
"application/json": {
|
|
12669
|
+
"schema": {
|
|
12670
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
12671
|
+
}
|
|
12672
|
+
}
|
|
12673
|
+
},
|
|
12674
|
+
"description": "No such memory in your account."
|
|
12675
|
+
},
|
|
12676
|
+
"409": {
|
|
12677
|
+
"content": {
|
|
12678
|
+
"application/json": {
|
|
12679
|
+
"schema": {
|
|
12680
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
12681
|
+
}
|
|
12682
|
+
}
|
|
12683
|
+
},
|
|
12684
|
+
"description": "if_sha256 does not match the memory's current content."
|
|
12685
|
+
},
|
|
11936
12686
|
"422": {
|
|
11937
12687
|
"content": {
|
|
11938
12688
|
"application/json": {
|
|
11939
12689
|
"schema": {
|
|
11940
|
-
"$ref": "#/components/schemas/
|
|
12690
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
11941
12691
|
}
|
|
11942
12692
|
}
|
|
11943
12693
|
},
|
|
11944
|
-
"description": "
|
|
12694
|
+
"description": "Neither description nor content was provided, or one of them exceeds its limit."
|
|
11945
12695
|
}
|
|
11946
12696
|
},
|
|
11947
12697
|
"security": [
|
|
@@ -11949,7 +12699,7 @@
|
|
|
11949
12699
|
"HTTPBearer": []
|
|
11950
12700
|
}
|
|
11951
12701
|
],
|
|
11952
|
-
"summary": "
|
|
12702
|
+
"summary": "Edit Memory",
|
|
11953
12703
|
"tags": [
|
|
11954
12704
|
"v1"
|
|
11955
12705
|
]
|
|
@@ -12662,7 +13412,7 @@
|
|
|
12662
13412
|
},
|
|
12663
13413
|
"/sessions": {
|
|
12664
13414
|
"get": {
|
|
12665
|
-
"description": "List cloud agent sessions.\n\nOptionally filtered by config, source, time window,
|
|
13415
|
+
"description": "List cloud agent sessions.\n\nOptionally filtered by config, source, time window, attributed\nauthor, repository, and whether the session is still going.",
|
|
12666
13416
|
"operationId": "list_agent_sessions",
|
|
12667
13417
|
"parameters": [
|
|
12668
13418
|
{
|
|
@@ -12778,6 +13528,36 @@
|
|
|
12778
13528
|
"title": "Author Id"
|
|
12779
13529
|
}
|
|
12780
13530
|
},
|
|
13531
|
+
{
|
|
13532
|
+
"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, handoffs \u2014 do not match.",
|
|
13533
|
+
"in": "query",
|
|
13534
|
+
"name": "repo",
|
|
13535
|
+
"required": false,
|
|
13536
|
+
"schema": {
|
|
13537
|
+
"anyOf": [
|
|
13538
|
+
{
|
|
13539
|
+
"type": "string"
|
|
13540
|
+
},
|
|
13541
|
+
{
|
|
13542
|
+
"type": "null"
|
|
13543
|
+
}
|
|
13544
|
+
],
|
|
13545
|
+
"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, handoffs \u2014 do not match.",
|
|
13546
|
+
"title": "Repo"
|
|
13547
|
+
}
|
|
13548
|
+
},
|
|
13549
|
+
{
|
|
13550
|
+
"description": "Keep only sessions whose conversation is still going \u2014 live or sleeping \u2014 dropping the ones that completed, errored, or were stopped or cancelled. A session parked between turns counts as unfinished.",
|
|
13551
|
+
"in": "query",
|
|
13552
|
+
"name": "unfinished",
|
|
13553
|
+
"required": false,
|
|
13554
|
+
"schema": {
|
|
13555
|
+
"default": false,
|
|
13556
|
+
"description": "Keep only sessions whose conversation is still going \u2014 live or sleeping \u2014 dropping the ones that completed, errored, or were stopped or cancelled. A session parked between turns counts as unfinished.",
|
|
13557
|
+
"title": "Unfinished",
|
|
13558
|
+
"type": "boolean"
|
|
13559
|
+
}
|
|
13560
|
+
},
|
|
12781
13561
|
{
|
|
12782
13562
|
"in": "header",
|
|
12783
13563
|
"name": "user-agent",
|
|
@@ -13624,7 +14404,7 @@
|
|
|
13624
14404
|
},
|
|
13625
14405
|
"/sessions/{session_id}/log": {
|
|
13626
14406
|
"get": {
|
|
13627
|
-
"description": "Download the complete session log.\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
|
|
14407
|
+
"description": "Download the complete session log.\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.",
|
|
13628
14408
|
"operationId": "get_agent_session_log",
|
|
13629
14409
|
"parameters": [
|
|
13630
14410
|
{
|