@deepnoodle/mobius 0.0.35 → 0.0.37

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.
@@ -43,7 +43,7 @@ export interface paths {
43
43
  post?: never;
44
44
  /**
45
45
  * Delete API key
46
- * @description Permanently deletes the key. In-flight requests using this key will immediately start receiving 401.
46
+ * @description Revokes the key. In-flight requests using this key will immediately start receiving 401 while credential metadata remains available for audit history.
47
47
  */
48
48
  delete: operations["deleteAPIKey"];
49
49
  options?: never;
@@ -51,6 +51,54 @@ export interface paths {
51
51
  patch?: never;
52
52
  trace?: never;
53
53
  };
54
+ "/v1/organization/api-keys": {
55
+ parameters: {
56
+ query?: never;
57
+ header?: never;
58
+ path?: never;
59
+ cookie?: never;
60
+ };
61
+ /**
62
+ * List organization API keys
63
+ * @description Returns organization-level API keys, including pagination metadata. Requires org admin.
64
+ */
65
+ get: operations["listOrgAPIKeys"];
66
+ put?: never;
67
+ /**
68
+ * Create organization API key
69
+ * @description Creates an organization-level API key. The key authenticates as the organization's system principal and acts with the chosen `role` applied org-wide across every project (defaults to `Admin`). The raw key value is returned in `key` and is never retrievable again after this response. Requires org admin.
70
+ */
71
+ post: operations["createOrgAPIKey"];
72
+ delete?: never;
73
+ options?: never;
74
+ head?: never;
75
+ patch?: never;
76
+ trace?: never;
77
+ };
78
+ "/v1/organization/api-keys/{resource_id}": {
79
+ parameters: {
80
+ query?: never;
81
+ header?: never;
82
+ path?: never;
83
+ cookie?: never;
84
+ };
85
+ /**
86
+ * Get organization API key
87
+ * @description Returns metadata for a single organization API key without exposing the raw secret. Requires org admin.
88
+ */
89
+ get: operations["getOrgAPIKey"];
90
+ put?: never;
91
+ post?: never;
92
+ /**
93
+ * Delete organization API key
94
+ * @description Revokes the organization API key. In-flight requests using this key will immediately start receiving 401 while credential metadata remains available for audit history. Requires org admin.
95
+ */
96
+ delete: operations["deleteOrgAPIKey"];
97
+ options?: never;
98
+ head?: never;
99
+ patch?: never;
100
+ trace?: never;
101
+ };
54
102
  "/v1/projects/{project_handle}/actions": {
55
103
  parameters: {
56
104
  query?: never;
@@ -379,6 +427,26 @@ export interface paths {
379
427
  patch: operations["updateProject"];
380
428
  trace?: never;
381
429
  };
430
+ "/v1/projects/{project_handle}/capabilities": {
431
+ parameters: {
432
+ query?: never;
433
+ header?: never;
434
+ path?: never;
435
+ cookie?: never;
436
+ };
437
+ /**
438
+ * Get project capabilities
439
+ * @description Returns route-local capability booleans for the current caller and project. Clients use this response to show management affordances that match the same project-scoped authorization enforced by write endpoints.
440
+ */
441
+ get: operations["getProjectCapabilities"];
442
+ put?: never;
443
+ post?: never;
444
+ delete?: never;
445
+ options?: never;
446
+ head?: never;
447
+ patch?: never;
448
+ trace?: never;
449
+ };
382
450
  "/v1/projects/{project_handle}/webhooks": {
383
451
  parameters: {
384
452
  query?: never;
@@ -508,7 +576,7 @@ export interface paths {
508
576
  put?: never;
509
577
  /**
510
578
  * Create interaction
511
- * @description Creates a standalone or run-backed interaction. Run-backed interactions emit an `interaction.responded` event when completed; omit `run_id` and `signal_name` for interactions with no loop-run side effect.
579
+ * @description Creates a standalone or run-backed interaction. Run-backed interactions record an `interaction.responded` event when completed; omit `run_id` and `signal_name` for interactions with no loop-run association.
512
580
  */
513
581
  post: operations["createInteraction"];
514
582
  delete?: never;
@@ -836,10 +904,10 @@ export interface paths {
836
904
  };
837
905
  get?: never;
838
906
  /**
839
- * Create or update a memory entry
840
- * @description Creates or updates the memory entry identified by `memory_key`. Editing an agent's memory here is equivalent to the agent calling `mobius.memory.remember`. Provisions the store on first write.
907
+ * Save memory entry
908
+ * @description Saves the memory entry identified by `memory_key`, creating it when it does not exist. Editing memory here is equivalent to the agent calling `mobius.memory.remember`.
841
909
  */
842
- put: operations["putAgentMemoryEntry"];
910
+ put: operations["saveAgentMemoryEntry"];
843
911
  post?: never;
844
912
  /**
845
913
  * Delete a memory entry
@@ -864,6 +932,8 @@ export interface paths {
864
932
  * Invoke an agent
865
933
  * @description One compound runtime call for hosted apps: it resolves an agent, resolves or creates a session by `session_key`, appends the caller's input message, and starts an agent turn — collapsing the create-or-resolve-session plus start-turn sequence into a single retryable request. This is the entry point a product backend (an embedded app, a Slack handler, a Telegram bot) calls per inbound message; the lower-level session and turn APIs remain available for finer control.
866
934
  *
935
+ * The optional `config` block lets you send an agent definition with the request — instructions, model, effort, per-turn timeout, toolkits, and skills — instead of using the one stored in Mobius. A field you set replaces the agent's value; a field you leave out keeps it. Mobius remembers the config on the session and reuses it on later turns until you send a new one. If your organization limits values like the model or timeout, those limits still apply. Omit `config` to run the agent on its stored definition.
936
+ *
867
937
  * By default it returns `202 Accepted` immediately with a durable `after_sequence` stream cursor; the turn keeps running even if the caller disconnects. When the request sets `Accept: text/event-stream`, the response is `200 OK` and the turn's activity is streamed inline on the same connection, identical to the `POST /v1/projects/{project_handle}/sessions/{session_id}/turns` stream. A repeated call with the same `input.idempotency_key` resolves the same session and resumes the existing turn rather than starting a second one, so a webhook handler can acknowledge fast and retry safely. Requires the `mobius.agent.invoke` permission (or the agent's own backing principal).
868
938
  */
869
939
  post: operations["invokeAgent"];
@@ -1090,7 +1160,7 @@ export interface paths {
1090
1160
  put?: never;
1091
1161
  /**
1092
1162
  * Compact the session transcript now
1093
- * @description Forces a compaction pass immediately, summarizing every message appended since the last compaction regardless of the session's configured strategy or token threshold. This is the manual counterpart to the `auto` strategy and the way to drive the `manual` strategy. It is a no-op when there is nothing new to compact. Returns the updated session. Requires the `mobius.agent.invoke` permission (or the agent's own backing principal).
1163
+ * @description Compact messages appended since the last compaction immediately, regardless of the configured strategy or token threshold. This is a no-op when there is nothing new to compact. Returns the updated session.
1094
1164
  */
1095
1165
  post: operations["compactSession"];
1096
1166
  delete?: never;
@@ -1448,9 +1518,7 @@ export interface paths {
1448
1518
  put?: never;
1449
1519
  /**
1450
1520
  * Apply a blueprint to a project
1451
- * @description Creates missing resources, updates resources Mobius manages on behalf of the blueprint, adopts matching uniquely-named resources where safe, and reports the resulting changes and bindings. With `mode: preview` the request validates and returns a plan without mutating anything.
1452
- *
1453
- * Apply writes each resource together with its binding in one transaction, but is not all-or-nothing across resources: a failure in a later tier leaves earlier tiers persisted with bindings, and a re-apply converges. Loops are content-diffed, so an unchanged loop is a no-op and does not mint a new version.
1521
+ * @description Creates missing resources, updates resources Mobius manages on behalf of the blueprint, adopts matching uniquely-named resources where safe, and reports the resulting changes and bindings. With `mode: preview`, the request validates and returns a plan without mutating anything. Re-apply converges because each blueprint resource is persisted with its binding.
1454
1522
  */
1455
1523
  post: operations["applyBlueprint"];
1456
1524
  delete?: never;
@@ -1968,6 +2036,11 @@ export interface components {
1968
2036
  /** @description Model used to produce compaction summaries. */
1969
2037
  summary_model?: string;
1970
2038
  };
2039
+ /**
2040
+ * @description Reasoning-effort level for a turn, lowest (`low`) to highest (`max`). Higher effort spends more tokens on reasoning, improving quality on hard tasks at the cost of latency and credits. Levels above what the resolved model supports are clamped down. Set on an agent it is the default; set on a session or loop step it overrides the agent default. `inherit` (or omitting the field) defers to the layer below — the agent default for a session/step, or the provider's own default when nothing sets a level.
2041
+ * @enum {string}
2042
+ */
2043
+ ThinkingEffort: "inherit" | "low" | "medium" | "high" | "xhigh" | "max";
1971
2044
  /**
1972
2045
  * @description AI actor identity. An agent IS a principal (its permissions are role grants on that principal); agents are useful when loops need a named actor with instructions, configuration, and session presence.
1973
2046
  * @example {
@@ -2017,6 +2090,8 @@ export interface components {
2017
2090
  timeout_seconds?: number;
2018
2091
  /** @description Default session-compaction policy. New sessions opened against this agent inherit it (below server defaults, above explicit per-session overrides). Absent when the agent has no default. */
2019
2092
  compaction_policy?: components["schemas"]["SessionCompactionPolicy"];
2093
+ /** @description Default reasoning-effort level. New sessions and loop agent steps inherit it, above the provider default and below explicit per-session/per-step overrides. Absent when the agent has no default. */
2094
+ thinking_effort?: components["schemas"]["ThinkingEffort"];
2020
2095
  /** @description Current agent status: `active` or `inactive`. */
2021
2096
  status: components["schemas"]["AgentStatus"];
2022
2097
  /** @description Inbox address provisioned via POST /v1/projects/{project_handle}/agents/{resource_id}/inbox (opt-in; not created automatically at agent creation). The field is populated only after a successful provisioning call. Use this address to add the agent as a member on external platforms (Linear, GitHub, Slack, etc.) so the platform can deliver notifications to the agent. */
@@ -2065,6 +2140,10 @@ export interface components {
2065
2140
  key_prefix: string;
2066
2141
  /** @description Principal this key authenticates as. */
2067
2142
  principal_id: string;
2143
+ /** @description Optional role whose permissions cap this key below its principal's full grants. */
2144
+ scope_role_id?: string;
2145
+ /** @description For organization-level keys, the system role the key acts as org-wide (e.g. `Admin`). Absent for project-scoped keys. */
2146
+ org_role?: string;
2068
2147
  /**
2069
2148
  * Format: date-time
2070
2149
  * @description Hard expiry timestamp. Requests using an expired key receive 401.
@@ -2112,6 +2191,10 @@ export interface components {
2112
2191
  key_prefix: string;
2113
2192
  /** @description Principal this key authenticates as. */
2114
2193
  principal_id: string;
2194
+ /** @description Optional role whose permissions cap this key below its principal's full grants. */
2195
+ scope_role_id?: string;
2196
+ /** @description For organization-level keys, the system role the key acts as org-wide (e.g. `Admin`). Absent for project-scoped keys. */
2197
+ org_role?: string;
2115
2198
  /**
2116
2199
  * Format: date-time
2117
2200
  * @description Timestamp when this key expires. Omitted if it does not expire.
@@ -2178,6 +2261,35 @@ export interface components {
2178
2261
  name: string;
2179
2262
  /** @description Principal this key authenticates as. */
2180
2263
  principal_id: string;
2264
+ /** @description Optional role whose permissions cap this key below its principal's full grants. */
2265
+ scope_role_id?: string;
2266
+ /**
2267
+ * Format: date-time
2268
+ * @description Optional hard expiry. Omit for a non-expiring key.
2269
+ */
2270
+ expires_at?: string;
2271
+ /** @description Labels to apply to the new API key. */
2272
+ tags?: components["schemas"]["TagMap"];
2273
+ };
2274
+ /**
2275
+ * @description Request shape for creating an organization-level API key. The key authenticates as the organization's system principal and acts with the chosen `role` applied org-wide across every project.
2276
+ * @example {
2277
+ * "name": "Org automation",
2278
+ * "role": "Admin",
2279
+ * "tags": {
2280
+ * "owner": "platform"
2281
+ * }
2282
+ * }
2283
+ */
2284
+ CreateOrgAPIKeyRequest: {
2285
+ /** @description Human-readable label, unique among organization API keys. */
2286
+ name: string;
2287
+ /**
2288
+ * @description System role the key acts as, applied org-wide across every project. Defaults to `Admin`. `Owner` grants full control (including billing and org deletion); `Admin` covers org and project administration without billing; lower roles narrow to build/run, run-only, or read-only.
2289
+ * @default Admin
2290
+ * @enum {string}
2291
+ */
2292
+ role: "Owner" | "Admin" | "Editor" | "Operator" | "Viewer";
2181
2293
  /**
2182
2294
  * Format: date-time
2183
2295
  * @description Optional hard expiry. Omit for a non-expiring key.
@@ -2376,14 +2488,7 @@ export interface components {
2376
2488
  annotations?: components["schemas"]["ActionAnnotations"];
2377
2489
  /** @description Free-form labels attached to this action. */
2378
2490
  tags?: components["schemas"]["TagMap"];
2379
- /** @description Project secret reference that stores this action's signing key. Present for HTTP-backed actions. */
2380
- secret_ref?: string;
2381
- /**
2382
- * Format: int64
2383
- * @description Version of `secret_ref` created by this response. Only populated on create and rotate responses.
2384
- */
2385
- secret_version?: number;
2386
- /** @description Base64-encoded 32-byte HMAC-SHA256 signing key. Only populated on create and rotate responses; null on all other reads. Store this value securely on first receipt — it cannot be retrieved again. */
2491
+ /** @description Base64-encoded 32-byte HMAC-SHA256 signing key. Only populated on create and rotate responses; absent on all other reads. Store this value securely on first receipt — it cannot be retrieved again. */
2387
2492
  signing_secret?: string;
2388
2493
  /**
2389
2494
  * Format: date-time
@@ -2511,6 +2616,8 @@ export interface components {
2511
2616
  run_id?: string;
2512
2617
  /** @description Job that triggered this invocation, if job-backed. */
2513
2618
  job_id?: string;
2619
+ /** @description Environment that executed this invocation, if environment-backed. */
2620
+ environment_id?: string;
2514
2621
  /** @description Loop step name that triggered this invocation. */
2515
2622
  step_name?: string;
2516
2623
  /** @description Name of the action that was invoked. */
@@ -2645,7 +2752,7 @@ export interface components {
2645
2752
  recommended?: boolean;
2646
2753
  };
2647
2754
  /** @description Local LLM models advertised by online project workers. */
2648
- WorkerModelCatalogResponse: {
2755
+ WorkerModelCatalogListResponse: {
2649
2756
  items: components["schemas"]["WorkerModelCatalogItem"][];
2650
2757
  };
2651
2758
  /** @description One exact local model route available through online workers. */
@@ -2660,9 +2767,14 @@ export interface components {
2660
2767
  };
2661
2768
  /** @description Assign this route to use a local worker model. */
2662
2769
  WorkerModelRoute: {
2663
- /** @enum {string} */
2770
+ /**
2771
+ * @description Model route mode. Worker catalog routes always use `worker`.
2772
+ * @enum {string}
2773
+ */
2664
2774
  mode: "worker";
2775
+ /** @description Provider id advertised by the local worker. */
2665
2776
  provider: string;
2777
+ /** @description Model identifier advertised by the local worker. */
2666
2778
  model: string;
2667
2779
  };
2668
2780
  /**
@@ -2671,10 +2783,10 @@ export interface components {
2671
2783
  */
2672
2784
  EnvironmentProvider: "sprites" | "cloudflare_containers" | "worker";
2673
2785
  /**
2674
- * @description Providers the control plane can provision on demand: `sprites` or `cloudflare_containers`. Excludes `worker`: worker-provided environments are registered out-of-band via the attach endpoint and are never provisioned through create/acquire.
2786
+ * @description Providers the control plane can provision on demand. Worker-provided environments are registered out-of-band via the attach endpoint and are never provisioned through create/acquire.
2675
2787
  * @enum {string}
2676
2788
  */
2677
- ProvisionEnvironmentProvider: "sprites" | "cloudflare_containers";
2789
+ ProvisionEnvironmentProvider: "sprites";
2678
2790
  /**
2679
2791
  * @description Lifecycle status: `provisioning`, `ready`, `running`, `retained`, `destroying`, `destroyed`, `failed`, or `orphaned`.
2680
2792
  * @enum {string}
@@ -2755,7 +2867,7 @@ export interface components {
2755
2867
  name?: string;
2756
2868
  /** @description Optional naming scope for the environment. */
2757
2869
  scope?: components["schemas"]["ResourceScope"];
2758
- /** @description Provider to provision: `sprites` or `cloudflare_containers`. */
2870
+ /** @description Provider to provision. */
2759
2871
  provider?: components["schemas"]["ProvisionEnvironmentProvider"];
2760
2872
  /** @description Canonical user owner ID. Defaults to the authenticated user. */
2761
2873
  owned_by?: string;
@@ -2998,6 +3110,13 @@ export interface components {
2998
3110
  message_id?: components["schemas"]["WorkerSocketMessageID"];
2999
3111
  error: components["schemas"]["WorkerSocketProtocolError"];
3000
3112
  };
3113
+ /** @description Project-scoped capabilities for the current caller. These booleans are resolved inside the project authorization context and can differ from coarse organization role flags. */
3114
+ ProjectCapabilities: {
3115
+ /** @description True when the caller can update or archive this project. */
3116
+ can_manage_project: boolean;
3117
+ /** @description True when the caller can manage project members, roles, and machine identities. */
3118
+ can_manage_access: boolean;
3119
+ };
3001
3120
  /**
3002
3121
  * @example {
3003
3122
  * "name": "Product Ops",
@@ -3083,7 +3202,7 @@ export interface components {
3083
3202
  * @description Version of `secret_ref` created by this response. Only populated on create and rotate responses.
3084
3203
  */
3085
3204
  secret_version?: number;
3086
- /** @description Base64-encoded 32-byte HMAC-SHA256 signing key. Only populated on create and rotate responses; null on all other reads. Store this value securely on first receipt — it cannot be retrieved again. */
3205
+ /** @description Base64-encoded 32-byte HMAC-SHA256 signing key. Only populated on create and rotate responses; absent on all other reads. Store this value securely on first receipt — it cannot be retrieved again. */
3087
3206
  signing_secret?: string;
3088
3207
  /**
3089
3208
  * Format: date-time
@@ -3117,7 +3236,7 @@ export interface components {
3117
3236
  */
3118
3237
  WebhookListResponse: {
3119
3238
  /** @description The list of results for this page. */
3120
- items?: components["schemas"]["Webhook"][];
3239
+ items: components["schemas"]["Webhook"][];
3121
3240
  /** @description Opaque cursor to pass as `cursor` on the next request. Absent when `has_more` is false. */
3122
3241
  next_cursor?: string;
3123
3242
  /** @description Whether additional pages are available. */
@@ -3145,7 +3264,7 @@ export interface components {
3145
3264
  run_id?: string;
3146
3265
  /** @description The event type that triggered this delivery (e.g. `run.completed`). */
3147
3266
  event_type: string;
3148
- /** @description Current delivery status: `pending`, `delivered`, or `failed`. */
3267
+ /** @description Current delivery status. */
3149
3268
  status: components["schemas"]["WebhookDeliveryStatus"];
3150
3269
  /** @description Number of delivery attempts made so far. Max 10. */
3151
3270
  attempts: number;
@@ -3164,7 +3283,7 @@ export interface components {
3164
3283
  };
3165
3284
  WebhookDeliveryListResponse: {
3166
3285
  /** @description The list of results for this page. */
3167
- items?: components["schemas"]["WebhookDeliveryRecord"][];
3286
+ items: components["schemas"]["WebhookDeliveryRecord"][];
3168
3287
  /** @description Opaque cursor to pass as `cursor` on the next request. Absent when `has_more` is false. */
3169
3288
  next_cursor?: string;
3170
3289
  /** @description Whether additional pages are available. */
@@ -3189,8 +3308,8 @@ export interface components {
3189
3308
  name: string;
3190
3309
  /** @description The endpoint Mobius will POST event payloads to. May be left empty at creation time so a candidate URL can be tested via the ping endpoint before it is saved; events do not fire for webhooks with an empty URL. */
3191
3310
  url?: string;
3192
- /** @description Event types to subscribe to. Use wildcards for broad subscriptions, e.g. `["run.*"]` for all run events. An empty list subscribes to all event types. */
3193
- events: string[];
3311
+ /** @description Event types to subscribe to. Use wildcards for broad subscriptions, e.g. `["run.*"]` for all run events. Omit this field or send an empty list to subscribe to all event types. */
3312
+ events?: string[];
3194
3313
  /** @description Whether the webhook starts enabled. Defaults to true when omitted. */
3195
3314
  enabled?: boolean;
3196
3315
  /** @description Initial labels to apply to the webhook. */
@@ -3240,9 +3359,9 @@ export interface components {
3240
3359
  * @description Declarative dialog contract for rendering and validating an interaction. Used at both authoring time (inside a loop definition) and runtime (persisted on an interaction). Protocol kind is decoupled from input shape: each kind declares which spec modes are *allowed*, not which is *implied*. An approval may now legitimately use `select` mode (approve/deny/defer), for example.
3241
3360
  *
3242
3361
  * Allowed combinations:
3243
- * * `approval` → `confirm`, `select`
3244
- * * `review` → `select`, `input`
3245
- * * `request` → `select`, `multi_select`, `input`
3362
+ * * `request_approval` → `confirm`, `select`
3363
+ * * `request_review` → `select`, `input`
3364
+ * * `request_information` → `select`, `multi_select`, `input`
3246
3365
  */
3247
3366
  InteractionSpec: {
3248
3367
  /** @description UI/input mode used to render and validate the response. */
@@ -3478,8 +3597,8 @@ export interface components {
3478
3597
  CreateInteractionRequest: components["schemas"]["CreateStandaloneInteractionRequest"] | components["schemas"]["CreateRunBackedInteractionRequest"];
3479
3598
  /** @description Creates a standalone interaction. Completion records the response but does not deliver a loop signal. */
3480
3599
  CreateStandaloneInteractionRequest: {
3481
- /** @description Resolved user IDs to target directly. Agents use their agent principal IDs. */
3482
- target_user_ids?: string[];
3600
+ /** @description Resolved user IDs to target directly. At least one target is required — every interaction needs someone who can answer it, even when a machine consumer is waiting on the outcome. Agents use their agent principal IDs. */
3601
+ target_user_ids: string[];
3483
3602
  /** @description Protocol kind. */
3484
3603
  kind: components["schemas"]["InteractionKind"];
3485
3604
  /** @description Short non-empty title shown to the responder. */
@@ -3521,12 +3640,12 @@ export interface components {
3521
3640
  * This is an audit-only link: creating an interaction here does not suspend the run, and resolving it does not by itself resume a run. A run only blocks on, and resumes from, human input when the loop definition declares an interaction step — that step creates the interaction and registers the matching wait atomically. Use this endpoint to record a human decision against a run, not to drive run control flow.
3522
3641
  */
3523
3642
  CreateRunBackedInteractionRequest: {
3524
- /** @description ID of the loop run to resume when this interaction is completed. */
3643
+ /** @description ID of the loop run associated with this interaction. */
3525
3644
  run_id: string;
3526
- /** @description Signal name the interaction will complete against when run-backed. */
3645
+ /** @description Legacy signal name recorded with the run association. */
3527
3646
  signal_name: string;
3528
- /** @description Resolved user IDs to target directly. Agents use their agent principal IDs. */
3529
- target_user_ids?: string[];
3647
+ /** @description Resolved user IDs to target directly. At least one target is required. Agents use their agent principal IDs. */
3648
+ target_user_ids: string[];
3530
3649
  /** @description Protocol kind. */
3531
3650
  kind: components["schemas"]["InteractionKind"];
3532
3651
  /** @description Short non-empty title shown to the responder. */
@@ -3822,6 +3941,8 @@ export interface components {
3822
3941
  timeout_seconds?: number;
3823
3942
  /** @description Default session-compaction policy new sessions inherit from this agent. */
3824
3943
  compaction_policy?: components["schemas"]["SessionCompactionPolicy"];
3944
+ /** @description Default reasoning-effort level new sessions and loop agent steps inherit from this agent. */
3945
+ thinking_effort?: components["schemas"]["ThinkingEffort"];
3825
3946
  /** @description Initial labels used for filtering, ownership, or automation. */
3826
3947
  tags?: components["schemas"]["TagMap"];
3827
3948
  };
@@ -3855,6 +3976,8 @@ export interface components {
3855
3976
  status?: "active" | "inactive";
3856
3977
  /** @description Replacement default session-compaction policy. Send an empty object to clear the default and fall back to server defaults. */
3857
3978
  compaction_policy?: components["schemas"]["SessionCompactionPolicy"];
3979
+ /** @description Replacement default reasoning-effort level. Send `inherit` to clear the default and leave the provider default in place. */
3980
+ thinking_effort?: components["schemas"]["ThinkingEffort"];
3858
3981
  /** @description Replacement labels; send an empty object to clear all tags. */
3859
3982
  tags?: components["schemas"]["TagMap"];
3860
3983
  };
@@ -3922,9 +4045,9 @@ export interface components {
3922
4045
  next_cursor?: string;
3923
4046
  };
3924
4047
  /** @description Content for a memory entry. The key comes from the path. */
3925
- PutAgentMemoryEntryRequest: {
4048
+ SaveAgentMemoryEntryRequest: {
3926
4049
  /** @description The content to remember. */
3927
- content?: string;
4050
+ content: string;
3928
4051
  /** @description Optional short one-line summary (≤140 chars) shown in the memory index. */
3929
4052
  summary?: string;
3930
4053
  kind?: components["schemas"]["MemoryKind"];
@@ -4182,10 +4305,10 @@ export interface components {
4182
4305
  */
4183
4306
  SessionStatus: "active" | "archived" | "deleted";
4184
4307
  /**
4185
- * @description Surface that created the session: `manual`, `api`, or `loop`.
4308
+ * @description Surface that created the session: `manual`, `api`, `loop`, or `interaction`.
4186
4309
  * @enum {string}
4187
4310
  */
4188
- SessionOrigin: "manual" | "api" | "loop";
4311
+ SessionOrigin: "manual" | "api" | "loop" | "interaction";
4189
4312
  /**
4190
4313
  * @description Boundary used to resolve named sessions: `agent` or `loop`.
4191
4314
  * @enum {string}
@@ -4277,6 +4400,8 @@ export interface components {
4277
4400
  model_provider?: string;
4278
4401
  /** @description Resolved message-compaction policy in effect for this session. */
4279
4402
  compaction_policy?: components["schemas"]["SessionCompactionPolicy"];
4403
+ /** @description This session's reasoning-effort override, or absent when the session inherits the agent default. Turns resolve the effective level as agent default then this override. */
4404
+ thinking_effort?: components["schemas"]["ThinkingEffort"];
4280
4405
  /** @description The most recent compaction marker in the transcript, or null when the session has never been compacted. Delineates summarized history (sequences at or below `covers_through_sequence`) from the live tail. Returned on the single-session read; absent from list entries. */
4281
4406
  latest_compaction?: components["schemas"]["SessionCompactionBoundary"];
4282
4407
  /** @description Total messages currently in the session, including compaction summaries. */
@@ -4333,6 +4458,8 @@ export interface components {
4333
4458
  status?: components["schemas"]["SessionStatus"];
4334
4459
  /** @description Partial patch to the session's compaction policy. Only the supplied fields change; omitted fields keep their current values. */
4335
4460
  compaction_policy?: components["schemas"]["SessionCompactionPolicy"];
4461
+ /** @description Reasoning-effort override for this session. Send a level to override, or `inherit` to clear it and fall back to the agent default. Omit to leave the current value unchanged. */
4462
+ thinking_effort?: components["schemas"]["ThinkingEffort"];
4336
4463
  };
4337
4464
  /**
4338
4465
  * @description JSON payload of a single `data:` line on the session SSE stream, paired with an `event: <event type>` line.
@@ -4586,9 +4713,48 @@ export interface components {
4586
4713
  InvokeAgentRequest: {
4587
4714
  agent_ref: components["schemas"]["AgentRef"];
4588
4715
  session?: components["schemas"]["InvokeSessionSpec"];
4716
+ config?: components["schemas"]["InlineAgentConfig"];
4589
4717
  input: components["schemas"]["InvokeInput"];
4590
4718
  channel_context?: components["schemas"]["ChannelContext"];
4591
4719
  };
4720
+ /**
4721
+ * @description An agent definition sent with the invocation instead of one stored in Mobius ahead of time. Send it on the call that creates the session and it becomes that session's definition; send it again on a later turn to replace it; leave it out and the session keeps the definition it already has.
4722
+ *
4723
+ * Every field is optional. A field you set replaces the agent's value; a field you leave out keeps the agent's value. The `toolkits` and `skills` lists replace the agent's lists entirely — they are not merged item by item. If your organization sets limits on the model, effort, or timeout, those limits still apply, so a value here can never exceed them. Use `config` for one-off invocations only: loops and schedules must point to a stored agent, so creating or updating one with `config` is rejected.
4724
+ */
4725
+ InlineAgentConfig: {
4726
+ /** @description System-prompt instructions for the agent. Replaces the agent's configured system prompt for this session. Empty falls back to the generated default. */
4727
+ instructions?: string;
4728
+ /** @description LLM model identifier. Resolves through the same model routing and allow rules as a stored agent's model. */
4729
+ model?: string;
4730
+ /** @description Reasoning-effort level for the agent's turns. */
4731
+ effort?: components["schemas"]["ThinkingEffort"];
4732
+ /**
4733
+ * Format: int64
4734
+ * @description Per-turn execution timeout in seconds. Zero uses the platform default. A loop step's own timeout still overrides this.
4735
+ */
4736
+ timeout_seconds?: number;
4737
+ /** @description Toolkit selections that replace the agent's toolkit assignments for this session. Each names the actions (from this project's action catalog) the agent may call. Replaces wholesale — an omitted `toolkits` inherits the agent's assignments. */
4738
+ toolkits?: components["schemas"]["InlineToolkit"][];
4739
+ /** @description Skills that replace the agent's skill assignments for this session. Each carries its full instruction body, lazy-loaded via the invoke_skill tool. Replaces wholesale. */
4740
+ skills?: components["schemas"]["InlineSkill"][];
4741
+ };
4742
+ /** @description A toolkit selection carried in an inline agent config. */
4743
+ InlineToolkit: {
4744
+ /** @description Toolkit name. */
4745
+ name: string;
4746
+ /** @description Action names (from the project catalog) this toolkit grants. */
4747
+ actions?: string[];
4748
+ };
4749
+ /** @description A skill definition carried in an inline agent config. */
4750
+ InlineSkill: {
4751
+ /** @description Skill name, referenced by the invoke_skill tool. */
4752
+ name: string;
4753
+ /** @description One-line summary shown in the agent's skills list. */
4754
+ description?: string;
4755
+ /** @description The skill's full instructions, loaded on demand. */
4756
+ body?: string;
4757
+ };
4592
4758
  /** @description Reference to an agent in this project. Supply exactly one of `id` (the agent identifier) or `name` (the project-unique agent name). A blueprint-binding reference form is reserved for a later release and is not resolvable yet. */
4593
4759
  AgentRef: {
4594
4760
  /** @description Agent identifier. */
@@ -4610,6 +4776,8 @@ export interface components {
4610
4776
  visibility?: components["schemas"]["SessionVisibility"];
4611
4777
  /** @description Per-session compaction overrides applied when the session is first created. Merged over the agent's default policy and server defaults. Ignored when an existing session is resolved. */
4612
4778
  compaction_policy?: components["schemas"]["SessionCompactionPolicy"];
4779
+ /** @description Reasoning-effort override applied when the session is first created. Overrides the agent default. Ignored when an existing session is resolved. */
4780
+ thinking_effort?: components["schemas"]["ThinkingEffort"];
4613
4781
  /** @description Free-form caller metadata stored on a newly created session. */
4614
4782
  metadata?: {
4615
4783
  [key: string]: unknown;
@@ -4657,6 +4825,8 @@ export interface components {
4657
4825
  model?: string;
4658
4826
  /** @description Per-session compaction overrides applied when the session is first created. Merged over the agent's default policy and server defaults. Ignored when an existing session is resolved. */
4659
4827
  compaction_policy?: components["schemas"]["SessionCompactionPolicy"];
4828
+ /** @description Reasoning-effort override applied when the session is first created. Overrides the agent default. Ignored when an existing session is resolved. */
4829
+ thinking_effort?: components["schemas"]["ThinkingEffort"];
4660
4830
  /** @description Free-form caller metadata for the session. */
4661
4831
  metadata?: {
4662
4832
  [key: string]: unknown;
@@ -4799,11 +4969,6 @@ export interface components {
4799
4969
  * @description Timestamp of the most recent run start, if any.
4800
4970
  */
4801
4971
  last_run_at?: string;
4802
- /**
4803
- * Format: date-time
4804
- * @description Timestamp when this loop was deleted; absent on active loops.
4805
- */
4806
- deleted_at?: string;
4807
4972
  /**
4808
4973
  * Format: date-time
4809
4974
  * @description Record creation timestamp.
@@ -5010,6 +5175,11 @@ export interface components {
5010
5175
  ref?: string;
5011
5176
  /** @description Whether the provider reports this repository as private. */
5012
5177
  private?: boolean;
5178
+ /**
5179
+ * @description Authorize the loop's managed environment to push to this repository. Defaults to `false`: the repository is cloned read-only and a `git push` from inside the environment fails with a permission error. Set `true` to let the environment obtain a write-scoped credential for this repository. Opt in per repository so environments are never write-capable by default.
5180
+ * @default false
5181
+ */
5182
+ push: boolean;
5013
5183
  };
5014
5184
  /** @description One named input accepted by a loop spec. */
5015
5185
  LoopSpecInput: {
@@ -5253,9 +5423,9 @@ export interface components {
5253
5423
  agent_id?: string;
5254
5424
  /** @description Prompt or task instructions rendered before the agent turn starts. */
5255
5425
  instructions: string;
5256
- /** @description Optional per-step tool allow-list. When omitted, prompt-only managed agent steps default to no tools; set `disable_tools: false` to allow the agent's full granted tool set. */
5426
+ /** @description Optional per-step tool allow-list. When omitted and `disable_tools` is not true, the agent's full granted tool set is available. Send an empty array to allow no tools. */
5257
5427
  tool_names?: string[];
5258
- /** @description Disable granted action and memory tools for this agent step. Reserved runtime tools such as `invoke_skill` and structured-output submission may still be present when applicable. When omitted, the agent's granted tools are available. */
5428
+ /** @description Set true to disable granted action and memory tools for this step. When false or omitted, granted tools are available unless `tool_names` narrows the allow-list. Reserved runtime tools such as `invoke_skill` and structured-output submission may still be present when applicable. */
5259
5429
  disable_tools?: boolean;
5260
5430
  /** @description JSON Schema the agent should satisfy when returning structured output. */
5261
5431
  output_schema?: {
@@ -5270,8 +5440,6 @@ export interface components {
5270
5440
  };
5271
5441
  /** @description Durable conversation-session policy for loop agent steps. Omit to enable the product default: loop-scoped sessions keyed from the triggering conversation when Mobius can identify one, such as a Telegram chat ID. */
5272
5442
  LoopAgentSessionPolicy: {
5273
- /** @description Reserved for internal synthesized agent executions. Authored loop agent steps are session-backed; setting this to `true` is rejected. */
5274
- disabled?: boolean;
5275
5443
  /**
5276
5444
  * @description Named-session boundary. `auto` and omitted use `loop`. `agent` intentionally shares the named session across loops using the same agent.
5277
5445
  * @enum {string}
@@ -5285,6 +5453,8 @@ export interface components {
5285
5453
  visibility?: components["schemas"]["SessionVisibility"];
5286
5454
  /** @description Optional per-session compaction policy merged with server defaults when the session is first created. Existing sessions keep their current compaction policy unless edited through a session-specific operation. */
5287
5455
  compaction_policy?: components["schemas"]["SessionCompactionPolicy"];
5456
+ /** @description Optional reasoning-effort override for this step's session turns. Overrides the agent default. Set as a loop default it applies to every agent step; set on a step it overrides the loop default. */
5457
+ thinking_effort?: components["schemas"]["ThinkingEffort"];
5288
5458
  };
5289
5459
  /** @description Model-routing override for an agent step. */
5290
5460
  LoopModelRoute: {
@@ -5336,8 +5506,6 @@ export interface components {
5336
5506
  match?: {
5337
5507
  [key: string]: unknown;
5338
5508
  };
5339
- /** @description Optional expr predicate evaluated against `{ event, meta }`. */
5340
- condition?: string;
5341
5509
  /** @description Optional output mapping evaluated against `{ event, meta }`. */
5342
5510
  payload_mapping?: {
5343
5511
  [key: string]: string;
@@ -5517,8 +5685,6 @@ export interface components {
5517
5685
  label?: string;
5518
5686
  /** @description Trigger that fired this run, if any. */
5519
5687
  readonly trigger_id?: string;
5520
- /** @description Internal trigger-fire ledger id used to deduplicate trigger dispatch retries. Present only for trigger-started runs. */
5521
- readonly trigger_fire_id?: string;
5522
5688
  };
5523
5689
  /**
5524
5690
  * @description One loop run record.
@@ -6135,7 +6301,7 @@ export interface components {
6135
6301
  * @enum {string}
6136
6302
  */
6137
6303
  BlueprintChangeAction: "created" | "updated" | "adopted" | "unchanged";
6138
- /** @description A reference to a Mobius resource by direct `id`, by blueprint `key` (resolved within this apply first, then against existing bindings), or by `blueprint_ref` (namespace + key). */
6304
+ /** @description A reference to a Mobius resource by direct `id`, by blueprint `key` (resolved within this apply first, then against existing bindings), or by `blueprint_ref` (resolved by key; namespace is recorded as provenance and reserved for namespaced lookup). */
6139
6305
  BlueprintResourceRef: {
6140
6306
  /** @description Direct resource id. */
6141
6307
  id?: string;
@@ -6177,7 +6343,7 @@ export interface components {
6177
6343
  * @description Endpoint kind. Defaults to `http`. Immutable after create.
6178
6344
  * @enum {string}
6179
6345
  */
6180
- type?: "http" | "worker" | "builtin";
6346
+ type?: "http" | "worker";
6181
6347
  /** @description Endpoint URL for http actions. */
6182
6348
  endpoint?: string;
6183
6349
  title?: string;
@@ -6360,7 +6526,7 @@ export interface components {
6360
6526
  TableSchema: {
6361
6527
  /** @description Name of the required string column that uniquely identifies one row in this table. */
6362
6528
  identity_column: string;
6363
- /** @description Optional string column projected into the fixed physical `sk` column for efficient secondary lookups. It cannot be changed after creation. */
6529
+ /** @description Optional string column optimized for secondary lookups. It cannot be changed after creation. */
6364
6530
  secondary_key_column?: string;
6365
6531
  /** @description Ordered list of columns accepted in row data. */
6366
6532
  columns: components["schemas"]["ColumnDef"][];
@@ -6484,10 +6650,10 @@ export interface components {
6484
6650
  approx_data_bytes: number;
6485
6651
  /**
6486
6652
  * Format: int64
6487
- * @description Approximate proportional share of fixed table_rows index bytes.
6653
+ * @description Approximate bytes used by secondary lookup indexes.
6488
6654
  */
6489
6655
  approx_index_bytes: number;
6490
- /** @description Number of schema columns projected into fixed physical keys. */
6656
+ /** @description Number of schema columns optimized for secondary lookup. */
6491
6657
  indexed_column_count: number;
6492
6658
  /** @description Number of compatibility index declarations stored in the table schema. */
6493
6659
  declared_index_count: number;
@@ -6652,7 +6818,7 @@ export interface components {
6652
6818
  /** @description Search query. Hyphens and other punctuation split terms for keyword matching. */
6653
6819
  query: string;
6654
6820
  /**
6655
- * @description Search mode. `keyword` uses token-prefix full-text search, `semantic` uses sidecar embedding similarity, and `hybrid` combines both.
6821
+ * @description Search mode. `keyword` uses token-prefix matching, `semantic` uses similarity over indexed row text, and `hybrid` combines both.
6656
6822
  * @default keyword
6657
6823
  * @enum {string}
6658
6824
  */
@@ -6760,29 +6926,6 @@ export interface components {
6760
6926
  updated_at?: string;
6761
6927
  /** @description Principal ID of the actor who last updated this artifact. Empty for system-initiated writes. */
6762
6928
  updated_by?: string;
6763
- /** @description Thumbnail summary for the default variant, when available. Absent until thumbnail processing has produced a state for the current content. */
6764
- thumbnail?: components["schemas"]["ArtifactThumbnailSummary"];
6765
- };
6766
- /** @description Summary of the Mobius-generated thumbnail for an artifact's default variant. The UI uses `status` to decide whether to fetch the thumbnail image, render a placeholder, or show a typed fallback card. */
6767
- ArtifactThumbnailSummary: {
6768
- /**
6769
- * @description Current thumbnail state for the source artifact's content.
6770
- * @enum {string}
6771
- */
6772
- status: "queued" | "processing" | "available" | "skipped" | "failed" | "stale";
6773
- /** @description Variant name this summary describes (e.g. `card`). */
6774
- variant: string;
6775
- /** @description Thumbnail image MIME type when available (image/jpeg or image/png). */
6776
- mime_type?: string;
6777
- /** @description Thumbnail pixel width when available. */
6778
- width?: number;
6779
- /** @description Thumbnail pixel height when available. */
6780
- height?: number;
6781
- /**
6782
- * Format: date-time
6783
- * @description Time this thumbnail state was last updated.
6784
- */
6785
- updated_at?: string;
6786
6929
  };
6787
6930
  /**
6788
6931
  * @example {
@@ -7144,6 +7287,122 @@ export interface operations {
7144
7287
  429: components["responses"]["TooManyRequests"];
7145
7288
  };
7146
7289
  };
7290
+ listOrgAPIKeys: {
7291
+ parameters: {
7292
+ query?: {
7293
+ /** @description Maximum number of items to return */
7294
+ limit?: components["parameters"]["LimitParam"];
7295
+ /** @description Cursor for pagination (opaque string from previous response) */
7296
+ cursor?: components["parameters"]["CursorParam"];
7297
+ };
7298
+ header?: never;
7299
+ path?: never;
7300
+ cookie?: never;
7301
+ };
7302
+ requestBody?: never;
7303
+ responses: {
7304
+ /** @description OK */
7305
+ 200: {
7306
+ headers: {
7307
+ [name: string]: unknown;
7308
+ };
7309
+ content: {
7310
+ "application/json": components["schemas"]["APIKeyListResponse"];
7311
+ };
7312
+ };
7313
+ 401: components["responses"]["Unauthorized"];
7314
+ 403: components["responses"]["Forbidden"];
7315
+ };
7316
+ };
7317
+ createOrgAPIKey: {
7318
+ parameters: {
7319
+ query?: never;
7320
+ header?: never;
7321
+ path?: never;
7322
+ cookie?: never;
7323
+ };
7324
+ requestBody: {
7325
+ content: {
7326
+ /**
7327
+ * @example {
7328
+ * "name": "Org automation",
7329
+ * "expires_at": "2026-09-15T14:30:00Z",
7330
+ * "tags": {
7331
+ * "owner": "platform"
7332
+ * }
7333
+ * }
7334
+ */
7335
+ "application/json": components["schemas"]["CreateOrgAPIKeyRequest"];
7336
+ };
7337
+ };
7338
+ responses: {
7339
+ /** @description Created */
7340
+ 201: {
7341
+ headers: {
7342
+ [name: string]: unknown;
7343
+ };
7344
+ content: {
7345
+ "application/json": components["schemas"]["APIKeyCreateResult"];
7346
+ };
7347
+ };
7348
+ 400: components["responses"]["BadRequest"];
7349
+ 401: components["responses"]["Unauthorized"];
7350
+ 403: components["responses"]["Forbidden"];
7351
+ 409: components["responses"]["Conflict"];
7352
+ 429: components["responses"]["TooManyRequests"];
7353
+ };
7354
+ };
7355
+ getOrgAPIKey: {
7356
+ parameters: {
7357
+ query?: never;
7358
+ header?: never;
7359
+ path: {
7360
+ /** @description Resource ID. */
7361
+ resource_id: components["parameters"]["IDParam"];
7362
+ };
7363
+ cookie?: never;
7364
+ };
7365
+ requestBody?: never;
7366
+ responses: {
7367
+ /** @description OK */
7368
+ 200: {
7369
+ headers: {
7370
+ [name: string]: unknown;
7371
+ };
7372
+ content: {
7373
+ "application/json": components["schemas"]["APIKey"];
7374
+ };
7375
+ };
7376
+ 401: components["responses"]["Unauthorized"];
7377
+ 403: components["responses"]["Forbidden"];
7378
+ 404: components["responses"]["NotFound"];
7379
+ };
7380
+ };
7381
+ deleteOrgAPIKey: {
7382
+ parameters: {
7383
+ query?: never;
7384
+ header?: never;
7385
+ path: {
7386
+ /** @description Resource ID. */
7387
+ resource_id: components["parameters"]["IDParam"];
7388
+ };
7389
+ cookie?: never;
7390
+ };
7391
+ requestBody?: never;
7392
+ responses: {
7393
+ /** @description No Content */
7394
+ 204: {
7395
+ headers: {
7396
+ [name: string]: unknown;
7397
+ };
7398
+ content?: never;
7399
+ };
7400
+ 401: components["responses"]["Unauthorized"];
7401
+ 403: components["responses"]["Forbidden"];
7402
+ 404: components["responses"]["NotFound"];
7403
+ 429: components["responses"]["TooManyRequests"];
7404
+ };
7405
+ };
7147
7406
  createAction: {
7148
7407
  parameters: {
7149
7408
  query?: never;
@@ -7217,8 +7476,7 @@ export interface operations {
7217
7476
  * "tags": {
7218
7477
  * "owner": "product"
7219
7478
  * },
7220
- * "secret_ref": "mobius/action/act_8m4x9q2v7p5n3r6t",
7221
- * "secret_version": 1,
7479
+ * "signing_secret": "base64:one_time_secret",
7222
7480
  * "created_at": "2026-06-15T14:30:00Z",
7223
7481
  * "updated_at": "2026-06-15T14:30:00Z"
7224
7482
  * }
@@ -7345,6 +7603,8 @@ export interface operations {
7345
7603
  run_id?: string;
7346
7604
  /** @description Filter to invocations from a specific job. */
7347
7605
  job_id?: string;
7606
+ /** @description Filter to invocations executed in a specific environment. */
7607
+ environment_id?: string;
7348
7608
  /** @description Filter to invocations of a specific action. */
7349
7609
  action_name?: string;
7350
7610
  /** @description Filter by terminal status (e.g. "success", "failed"). */
@@ -7563,7 +7823,7 @@ export interface operations {
7563
7823
  [name: string]: unknown;
7564
7824
  };
7565
7825
  content: {
7566
- "application/json": components["schemas"]["WorkerModelCatalogResponse"];
7826
+ "application/json": components["schemas"]["WorkerModelCatalogListResponse"];
7567
7827
  };
7568
7828
  };
7569
7829
  401: components["responses"]["Unauthorized"];
@@ -7979,6 +8239,32 @@ export interface operations {
7979
8239
  429: components["responses"]["TooManyRequests"];
7980
8240
  };
7981
8241
  };
8242
+ getProjectCapabilities: {
8243
+ parameters: {
8244
+ query?: never;
8245
+ header?: never;
8246
+ path: {
8247
+ /** @description Project handle */
8248
+ project_handle: components["parameters"]["ProjectHandleParam"];
8249
+ };
8250
+ cookie?: never;
8251
+ };
8252
+ requestBody?: never;
8253
+ responses: {
8254
+ /** @description Effective capabilities for this project. */
8255
+ 200: {
8256
+ headers: {
8257
+ [name: string]: unknown;
8258
+ };
8259
+ content: {
8260
+ "application/json": components["schemas"]["ProjectCapabilities"];
8261
+ };
8262
+ };
8263
+ 401: components["responses"]["Unauthorized"];
8264
+ 403: components["responses"]["Forbidden"];
8265
+ 404: components["responses"]["NotFound"];
8266
+ };
8267
+ };
7982
8268
  listWebhooks: {
7983
8269
  parameters: {
7984
8270
  query?: {
@@ -9205,7 +9491,7 @@ export interface operations {
9205
9491
  404: components["responses"]["NotFound"];
9206
9492
  };
9207
9493
  };
9208
- putAgentMemoryEntry: {
9494
+ saveAgentMemoryEntry: {
9209
9495
  parameters: {
9210
9496
  query?: never;
9211
9497
  header?: never;
@@ -9221,7 +9507,15 @@ export interface operations {
9221
9507
  };
9222
9508
  requestBody: {
9223
9509
  content: {
9224
- "application/json": components["schemas"]["PutAgentMemoryEntryRequest"];
9510
+ /**
9511
+ * @example {
9512
+ * "content": "The production database runs in us-east-1.",
9513
+ * "summary": "Production database region",
9514
+ * "kind": "fact",
9515
+ * "importance": 80
9516
+ * }
9517
+ */
9518
+ "application/json": components["schemas"]["SaveAgentMemoryEntryRequest"];
9225
9519
  };
9226
9520
  };
9227
9521
  responses: {
@@ -9247,6 +9541,7 @@ export interface operations {
9247
9541
  401: components["responses"]["Unauthorized"];
9248
9542
  403: components["responses"]["Forbidden"];
9249
9543
  404: components["responses"]["NotFound"];
9544
+ 429: components["responses"]["TooManyRequests"];
9250
9545
  };
9251
9546
  };
9252
9547
  deleteAgentMemoryEntry: {
@@ -9275,6 +9570,7 @@ export interface operations {
9275
9570
  401: components["responses"]["Unauthorized"];
9276
9571
  403: components["responses"]["Forbidden"];
9277
9572
  404: components["responses"]["NotFound"];
9573
+ 429: components["responses"]["TooManyRequests"];
9278
9574
  };
9279
9575
  };
9280
9576
  invokeAgent: {
@@ -9303,6 +9599,20 @@ export interface operations {
9303
9599
  * "user_id": "user_456"
9304
9600
  * }
9305
9601
  * },
9602
+ * "config": {
9603
+ * "instructions": "You are Acme's support agent. Be concise and cite ticket numbers.",
9604
+ * "model": "claude-sonnet-4-6",
9605
+ * "effort": "medium",
9606
+ * "toolkits": [
9607
+ * {
9608
+ * "name": "tickets",
9609
+ * "actions": [
9610
+ * "tickets.search",
9611
+ * "tickets.get"
9612
+ * ]
9613
+ * }
9614
+ * ]
9615
+ * },
9306
9616
  * "input": {
9307
9617
  * "content": [
9308
9618
  * {
@@ -9848,6 +10158,7 @@ export interface operations {
9848
10158
  403: components["responses"]["Forbidden"];
9849
10159
  404: components["responses"]["NotFound"];
9850
10160
  409: components["responses"]["Conflict"];
10161
+ 429: components["responses"]["TooManyRequests"];
9851
10162
  };
9852
10163
  };
9853
10164
  listLoops: {
@@ -10924,6 +11235,27 @@ export interface operations {
10924
11235
  };
10925
11236
  requestBody: {
10926
11237
  content: {
11238
+ /**
11239
+ * @example {
11240
+ * "namespace": "support",
11241
+ * "blueprint_key": "triage",
11242
+ * "blueprint_version": "1",
11243
+ * "mode": "apply",
11244
+ * "resources": {
11245
+ * "actions": [
11246
+ * {
11247
+ * "key": "notify",
11248
+ * "name": "support.notify",
11249
+ * "title": "Notify support",
11250
+ * "description": "Send a support-team notification.",
11251
+ * "input_schema": {
11252
+ * "type": "object"
11253
+ * }
11254
+ * }
11255
+ * ]
11256
+ * }
11257
+ * }
11258
+ */
10927
11259
  "application/json": components["schemas"]["ApplyBlueprintRequest"];
10928
11260
  };
10929
11261
  };