@idapt/browser-app-sdk 0.2.0 → 0.4.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.
@@ -1,4 +1,4 @@
1
- import { H as HttpContext, C as CallOptions, F as File$1, i as Agent, d as DeletedResponse, l as ApiKey, ak as Permission, aN as SpeechResult, aY as TranscriptionResult, aO as SpeechStreamEvent, aZ as TranscriptionStreamEvent, B as BlobObject, s as Chat, t as ChatCost, ac as MessageCosts, v as ChatStopResult, aa as Message, aE as SendMessageResult, k as AgentRunState, j as AgentRun, ay as RepromptResult, x as Computer, I as ComputerServerInfo, z as ComputerExecResult, aX as TmuxWindow, aG as SftpEntry, G as ComputerPort, L as ComputerUser, a8 as ListEnvelope, y as ComputerEnvVar, R as DatastoreEntry, f as FileUploadResult, W as WriteOptions, U as ExecutionRun, T as ExecutionBackend, X as ExecutionRunStatus, a0 as FunctionRun, $ as FunctionResource, Z as FunctionDeployment, _ as FunctionInvokeResult, a3 as ImageModel, a2 as ImageGenerationResult, a5 as LLMModel, af as Notification, ag as NotificationConfig, ah as NotificationPreference, an as ProviderEndpointKind, ar as ProviderEndpointProviderKey, am as ProviderEndpointConnectionType, au as ProviderEndpointTransport, as as ProviderEndpointRuntime, aq as ProviderEndpointProtocol, av as ProviderEndpointVisibility, ao as ProviderEndpointModality, al as ProviderEndpoint, a9 as ManagedProviderPreset, at as ProviderEndpointTestResult, aB as SearchResult, aC as Secret, aD as SecretWithValue, aF as Settings, aK as ShareResourceType, aJ as SharePermission, aH as Share, aI as ShareDeletedResult, aL as SharedWithMeItem, aR as StoreItemType, aQ as StoreItem, aP as StoreInstallResult, aT as Subscription, aV as TableCollection, aW as TableRecord, a_ as Trigger, M as CreateTriggerInput, b3 as TriggerWithSecret, b6 as UpdateTriggerInput, b1 as TriggerRun, b0 as TriggerCostStats, b9 as User, b8 as UsageSummary, b7 as UsageRecord, bf as WebSearchResponse, bj as WorkspaceMemberRole, bg as Workspace, bi as WorkspaceMember, bh as WorkspaceInvitation, m as AppFolder, P as DataFolder, w as ClientMeta, aA as RuntimeMode, aS as StoredCredential, S as EscalateRequest } from './data-BuXXki1D.cjs';
1
+ import { H as HttpContext, C as CallOptions, F as File, k as Agent, f as DeletedResponse, p as ApiKey, at as Permission, r as AudioModel, b4 as TtsVoice, v as Automation, _ as CreateAutomationInput, z as AutomationWithSecret, b6 as UpdateAutomationInput, y as AutomationRun, x as AutomationCostStats, E as Chat, G as ChatCost, al as MessageCosts, K as ChatStopResult, aj as Message, aN as SendMessageResult, m as AgentRunState, l as AgentRun, aH as RepromptResult, N as Computer, U as ComputerServerInfo, Q as ComputerExecResult, b0 as TerminalWindow, a4 as FsEntry, T as ComputerPort, Z as ComputerUser, L as ListEnvelope, P as ComputerEnvVar, h as FileUploadResult, W as WriteOptions, a9 as ImageModel, ab as LLMModel, ao as Notification, ap as NotificationConfig, aq as NotificationPreference, aw as ProviderEndpointKind, aA as ProviderEndpointProviderKey, av as ProviderEndpointConnectionType, aD as ProviderEndpointTransport, aB as ProviderEndpointRuntime, az as ProviderEndpointProtocol, aE as ProviderEndpointVisibility, ax as ProviderEndpointModality, au as ProviderEndpoint, ai as ManagedProviderPreset, aC as ProviderEndpointTestResult, aK as SearchResult, aL as Secret, aM as SecretWithValue, aO as Settings, aS as ShareResourceType, aR as SharePermission, aP as Share, aQ as ShareDeletedResult, aT as SharedWithMeItem, a_ as Subscription, b9 as User, b8 as UsageSummary, b7 as UsageRecord, bf as WebSearchResponse, bj as WorkspaceMemberRole, bg as Workspace, bi as WorkspaceMember, bh as WorkspaceInvitation, q as AppFolder, a0 as DataFolder, M as ClientMeta, aJ as RuntimeMode, aZ as StoredCredential, a2 as EscalateRequest } from './data-BEWuiL70.cjs';
2
2
 
3
3
  /**
4
4
  * Stateless low-level file operations against `/api/v1/drive/files/*`.
@@ -15,7 +15,7 @@ import { H as HttpContext, C as CallOptions, F as File$1, i as Agent, d as Delet
15
15
  */
16
16
 
17
17
  /**
18
- * `GET /v1/files` query params. Cursor-paginated (`limit` + opaque
18
+ * `GET /v1/drive/files` query params. Cursor-paginated (`limit` + opaque
19
19
  * `cursor`). There is NO `workspace_id` filter — list within a workspace by
20
20
  * passing the workspace's root folder as `parent_id`.
21
21
  *
@@ -47,11 +47,7 @@ interface CreateFolderInput {
47
47
  workspace_id?: string;
48
48
  icon?: string;
49
49
  }
50
- interface RunFileInput {
51
- timeout_seconds?: number;
52
- env?: Record<string, string>;
53
- }
54
- declare function listFiles(ctx: HttpContext, query?: ListFilesQuery, opts?: CallOptions): Promise<File$1[]>;
50
+ declare function listFiles(ctx: HttpContext, query?: ListFilesQuery, opts?: CallOptions): Promise<File[]>;
55
51
  /** GET raw text body (`expectJson: false`). UTF-8 decoded by `fetch`. */
56
52
  declare function getFileText(ctx: HttpContext, id: string, opts?: CallOptions): Promise<string>;
57
53
  /** GET raw bytes as Blob, preserving Content-Type. */
@@ -97,7 +93,6 @@ interface CreateAgentInput {
97
93
  default_model_id?: string;
98
94
  default_reasoning_effort?: number | null;
99
95
  default_auto_cost_level?: number | null;
100
- default_cost_budget_limit_usd?: number | null;
101
96
  }
102
97
  interface UpdateAgentInput {
103
98
  name?: string;
@@ -117,7 +112,6 @@ interface UpdateAgentInput {
117
112
  default_model_id?: string | null;
118
113
  default_reasoning_effort?: number | null;
119
114
  default_auto_cost_level?: number | null;
120
- default_cost_budget_limit_usd?: number | null;
121
115
  }
122
116
  interface MoveAgentInput {
123
117
  workspace_id: string;
@@ -215,117 +209,111 @@ declare class ApiKeysApi {
215
209
  }
216
210
 
217
211
  /**
218
- * AudioApi — `/api/v1/audio/*`.
212
+ * AudioApi — audio-model + voice DISCOVERY (`GET /api/v1/audio/models` +
213
+ * `/audio/voices`).
219
214
  *
220
- * Two endpoints:
221
- * - `POST /audio/speech` → text-to-speech, writes a file ref.
222
- * Responds HTTP 201 (resource created).
223
- * - `POST /audio/transcriptions` multipart upload, returns `{ text }`
224
- *
225
- * Transcription accepts any Blob/File you already have in memory (e.g.,
226
- * from a MediaRecorder session). Speech writes into the caller's workspace.
215
+ * Audio GENERATION moved to the unified inference surface — use
216
+ * `client.inference.speech({ text, workspace_id, })` for TTS and
217
+ * `client.call("inference transcribe", …)` for STT (multipart). This namespace
218
+ * now exposes only the model + voice catalogs; model discovery stays
219
+ * per-modality by design.
227
220
  */
228
221
 
229
- interface SpeakInput {
230
- text: string;
231
- workspace_id: string;
232
- model?: string;
233
- voice?: string;
234
- speed?: number;
235
- pitch?: number;
236
- emotion?: string;
237
- output_path?: string;
238
- }
239
- interface TranscribeInput {
240
- file: Blob | File;
241
- model?: string;
222
+ interface ListVoicesInput {
242
223
  language?: string;
243
- /** Override the filename attached to the multipart upload. */
244
- filename?: string;
245
- }
246
- interface SpeakStreamInput {
247
- text: string;
248
- model?: string;
249
- voice?: string;
250
- speed?: number;
224
+ gender?: "male" | "female" | "neutral";
251
225
  }
252
226
  declare class AudioApi {
253
227
  private readonly ctx;
254
228
  constructor(ctx: HttpContext);
255
- /** Text-to-speech. Responds HTTP 201 with the written file ref under `data`. */
256
- speak(input: SpeakInput, opts?: CallOptions): Promise<SpeechResult>;
257
- transcribe(input: TranscribeInput, opts?: CallOptions): Promise<TranscriptionResult>;
258
- streamSpeech(input: SpeakStreamInput, opts?: CallOptions): AsyncIterable<SpeechStreamEvent>;
259
- streamTranscribe(input: TranscribeInput, opts?: CallOptions): AsyncIterable<TranscriptionStreamEvent>;
229
+ /** List the available TTS / transcription models. */
230
+ listModels(opts?: CallOptions): Promise<AudioModel[]>;
231
+ /** List the TTS voice catalog (filter by language / gender). */
232
+ listVoices(input?: ListVoicesInput, opts?: CallOptions): Promise<TtsVoice[]>;
260
233
  }
261
234
 
262
235
  /**
263
- * BlobsApi — `/api/v1/blobs` (the object-storage data plane).
236
+ * AutomationsApi — `/api/v1/automations`.
264
237
  *
265
- * Workspace-scoped object store. Objects live under a `namespace` (a bucket you
266
- * pick) and a `key`. The companion to `client.kv` (Datastore) KV holds small
267
- * inline JSON, Blobs holds large / binary data. Surfaced as `client.blobs.*` on
268
- * `IdaptClient`.
238
+ * Automations fire actions on events (webhook or cron). The `fire` endpoint is
239
+ * unauthenticatedit validates the
240
+ * per-automation webhook secret instead of the bearer token. This SDK handles
241
+ * both modes: regular calls use `this.ctx.key`; `fire` can be called with
242
+ * an explicit secret override.
269
243
  */
270
244
 
271
- interface BlobsListOptions extends CallOptions {
272
- /** Only keys starting with this prefix. */
273
- prefix?: string;
274
- cursor?: string;
245
+ interface FireAutomationInput {
246
+ /**
247
+ * Webhook secret for this automation. Overrides the client's `ap_` key.
248
+ * Required when calling `fire` outside the creating user's session.
249
+ */
250
+ secret: string;
251
+ /** Optional context overrides forwarded to the action. */
252
+ body?: Record<string, unknown>;
253
+ }
254
+ interface ListAutomationRunsQuery {
275
255
  limit?: number;
256
+ /** Opaque pagination cursor — echo `pagination.next_cursor`. */
257
+ cursor?: string;
276
258
  }
277
- /** Per-object metadata returned by `list`. */
278
- interface BlobMeta {
279
- key: string;
280
- content_type: string;
281
- size: number;
282
- updated_at: string;
259
+ interface ListAutomationsQuery {
260
+ workspace_id?: string;
261
+ include_archived?: boolean;
262
+ archived_only?: boolean;
263
+ }
264
+ interface BulkAutomationCostStatsQuery {
265
+ workspace_id?: string;
283
266
  }
284
- declare class BlobsApi {
267
+ declare class AutomationsApi {
285
268
  private readonly ctx;
286
269
  constructor(ctx: HttpContext);
287
- /** List objects in a namespace (prefix-filterable). */
288
- list(namespace: string, opts?: BlobsListOptions): Promise<BlobMeta[]>;
270
+ list(query?: ListAutomationsQuery, opts?: CallOptions): Promise<Automation[]>;
289
271
  /**
290
- * Upload (upsert) an object's bytes. Returns its metadata.
272
+ * Create an automation. `workspace_id` is passed in the request BODY
273
+ * alongside the flat automation definition — it is not a query param. The request
274
+ * body is flat: every scheduling field (`cron_expression`, …) and agent-run
275
+ * action field (`agent_id`, `prompt_template`, …) sits at the top level —
276
+ * there are no nested `trigger_config` / `action_config` objects.
291
277
  *
292
- * Sent as `multipart/form-data` (the bytes ride a `file` part, with an
293
- * optional `content_type` field) the same upload convention as
294
- * `client.files.upload`, so it flows through the one multipart transport and
295
- * is reachable identically via `client.call("blobs put", …)`. The SDK leaves
296
- * `Content-Type` unset so the runtime picks the multipart boundary.
278
+ * For a webhook automation the response additionally carries a one-time
279
+ * plaintext `secret` (use `AutomationWithSecret`); other automation types
280
+ * resolve to a plain `Automation`.
297
281
  */
298
- put(namespace: string, key: string, content: Blob | ArrayBuffer | Uint8Array, contentType?: string, opts?: CallOptions): Promise<BlobObject>;
282
+ create(workspaceId: string, input: CreateAutomationInput, opts?: CallOptions): Promise<AutomationWithSecret | Automation>;
283
+ get(id: string, opts?: CallOptions): Promise<Automation>;
284
+ update(id: string, input: UpdateAutomationInput, opts?: CallOptions): Promise<Automation>;
285
+ delete(id: string, opts?: CallOptions): Promise<DeletedResponse>;
286
+ archive(id: string, opts?: CallOptions): Promise<Automation>;
287
+ unarchive(id: string, opts?: CallOptions): Promise<Automation>;
299
288
  /**
300
- * Download an object's raw bytes (preserving its stored Content-Type).
289
+ * Fire an automation via its webhook secret. This endpoint does NOT use the
290
+ * client's `ap_` key — the bearer is the automation's secret — so we build a
291
+ * one-off HttpContext for it rather than mutating the shared one.
301
292
  *
302
- * `GET /blobs/:ns/:key` returns JSON metadata + a signed URL by default (the
303
- * agent/CLI form); `?download=true` is the raw-bytes escape hatch this facade
304
- * uses. For the JSON reference instead, call `client.call("blobs get", …)`.
293
+ * Responds HTTP 202. The response identifies the fired automation via `id`
294
+ * only.
305
295
  */
306
- get(namespace: string, key: string, opts?: CallOptions): Promise<{
307
- blob: Blob;
308
- contentType: string;
309
- }>;
310
- /** Read an object's metadata (no bytes). */
311
- head(namespace: string, key: string, opts?: CallOptions): Promise<BlobObject>;
312
- /** Delete an object (idempotent). */
313
- delete(namespace: string, key: string, opts?: CallOptions): Promise<DeletedResponse>;
314
- /** Mint a time-limited direct-download URL for an object. */
315
- createSignedUrl(namespace: string, key: string, expiresIn?: number, opts?: CallOptions): Promise<{
316
- url: string;
317
- expires_at: string;
296
+ fire(id: string, input: FireAutomationInput, opts?: CallOptions): Promise<{
297
+ id: string;
318
298
  }>;
319
- /** List the blob namespaces in the workspace. */
320
- listNamespaces(opts?: CallOptions): Promise<string[]>;
299
+ /**
300
+ * Rotate the webhook secret. Returns the automation with a fresh one-time
301
+ * plaintext `secret` populated (`AutomationWithSecret`). The old secret
302
+ * immediately stops working.
303
+ */
304
+ rotateSecret(id: string, opts?: CallOptions): Promise<AutomationWithSecret>;
305
+ /** Recent fires + their success/error outcome. */
306
+ listRuns(id: string, query?: ListAutomationRunsQuery, opts?: CallOptions): Promise<AutomationRun[]>;
307
+ getCostStats(id: string, opts?: CallOptions): Promise<AutomationCostStats>;
308
+ getCostStatsMap(query?: BulkAutomationCostStatsQuery, opts?: CallOptions): Promise<Record<string, AutomationCostStats>>;
321
309
  }
322
310
 
323
311
  /**
324
312
  * GENERATED FILE — DO NOT EDIT BY HAND.
325
313
  *
326
314
  * Runtime command-bindings table for the SDK's generic `call(action, args)`
327
- * executor — one entry per v1 command (HTTP binding only: method, path,
328
- * pathParams, argLocation, responseKind, async, binary content types).
315
+ * executor — one entry per SDK-exposed v1 command (HTTP binding only: method,
316
+ * path, pathParams, argLocation, responseKind, async, binary content types).
329
317
  *
330
318
  * Generated from the zod contract registry
331
319
  * (`packages/api-contracts/src/v1/contracts`) by
@@ -366,7 +354,7 @@ declare const COMMAND_BINDINGS: Record<string, CommandBinding>;
366
354
  * {@link COMMAND_BINDINGS}). Used to type `client.call(action, args)` so a
367
355
  * known action autocompletes and a typo is caught at compile time.
368
356
  */
369
- type V1CommandName = "agent archive" | "agent copy-to-workspace" | "agent create" | "agent delete" | "agent get" | "agent list" | "agent move" | "agent permanent-delete" | "agent restore" | "agent unarchive" | "agent update" | "ai-gateway providers" | "ai-gateway usage" | "api-key create" | "api-key delete" | "api-key list" | "api-key rotate" | "api-key update" | "audio models" | "audio search-models" | "audio search-voices" | "audio speak" | "audio speak-stream" | "audio transcribe" | "audio transcribe-stream" | "audio voices" | "blobs delete" | "blobs get" | "blobs head" | "blobs list" | "blobs namespaces" | "blobs put" | "blobs signed-url" | "browser-app create" | "browser-app deploy" | "browser-app deployments" | "browser-app fork" | "browser-app get" | "browser-app list" | "browser-app promote" | "browser-app snapshot" | "chat archive" | "chat copy-to-agent" | "chat copy-to-workspace" | "chat cost" | "chat create" | "chat delete" | "chat export" | "chat fork-to-workspace" | "chat get" | "chat list" | "chat message-costs" | "chat messages" | "chat permanent-delete" | "chat reprompt" | "chat restore" | "chat runs" | "chat send" | "chat stop" | "chat stream" | "chat unarchive" | "chat update" | "ci cancel" | "ci get" | "ci jobs" | "ci list" | "ci run" | "computer activity" | "computer add-local-model" | "computer app-create" | "computer app-delete" | "computer app-exec" | "computer app-expose" | "computer app-external" | "computer app-get" | "computer app-logs" | "computer app-ports" | "computer app-reset" | "computer app-restart" | "computer app-run" | "computer app-runtime" | "computer app-setup-runtime" | "computer app-start" | "computer app-stop" | "computer app-unexpose" | "computer apps" | "computer archive" | "computer compose-up" | "computer create" | "computer create-user" | "computer delete" | "computer delete-user" | "computer delete-user-env" | "computer download" | "computer download-to-drive" | "computer ephemeral" | "computer exec" | "computer expose" | "computer get" | "computer get-user" | "computer hibernate" | "computer link" | "computer links" | "computer list" | "computer local-inference" | "computer local-models" | "computer manage" | "computer pair" | "computer ports" | "computer remove-local-model" | "computer set-ports" | "computer set-user-env" | "computer sftp" | "computer start" | "computer stop" | "computer test-connection" | "computer tmux" | "computer tunnels" | "computer unarchive" | "computer unexpose" | "computer unlink" | "computer update" | "computer update-user" | "computer upload" | "computer user-env" | "computer user-env-setup" | "computer user-env-setup-apply" | "computer user-env-sync" | "computer user-env-sync-repair" | "computer users" | "datastore batch" | "datastore delete" | "datastore get" | "datastore increment" | "datastore list" | "datastore namespaces" | "datastore set" | "drive content-versions" | "drive create-folder" | "drive delete" | "drive get-metadata" | "drive glob" | "drive grep" | "drive list" | "drive move" | "drive permanent-delete" | "drive read" | "drive restore" | "drive restore-version" | "drive run" | "drive update" | "drive upload" | "functions create" | "functions delete" | "functions deploy" | "functions deployments" | "functions get" | "functions invoke" | "functions list" | "functions promote" | "functions run" | "functions run-get" | "functions run-interrupt" | "functions run-list" | "functions update" | "guide get" | "hook create" | "hook delete" | "hook get" | "hook history" | "hook list" | "hook override" | "hook preview" | "hook toggle" | "hook update" | "hub install" | "hub search" | "hub submissions" | "hub submit" | "hub update" | "hub update-check" | "image generate" | "image models" | "image search" | "me get" | "me usage" | "memory box-delete" | "memory box-get" | "memory box-list" | "memory box-update" | "memory delete" | "memory index-read" | "memory index-write" | "memory list" | "memory read" | "memory search" | "memory write" | "models list" | "models search" | "notes box-create" | "notes box-delete" | "notes box-get" | "notes box-list" | "notes box-update" | "notes delete" | "notes folder-create" | "notes folder-delete" | "notes folder-list" | "notes folder-move" | "notes folder-rename" | "notes graph" | "notes import" | "notes index-read" | "notes index-write" | "notes links" | "notes list" | "notes note-move" | "notes note-rename" | "notes purge" | "notes read" | "notes restore" | "notes search" | "notes search-all" | "notes tag-list" | "notes tag-rename" | "notes trash-empty" | "notes trash-list" | "notes tree" | "notes write" | "notification config" | "notification delete" | "notification get" | "notification list" | "notification preferences" | "notification read-all" | "notification send" | "notification update" | "notification update-config" | "notification update-preferences" | "operation cancel" | "operation get" | "operation list" | "provider-endpoint create" | "provider-endpoint delete" | "provider-endpoint list" | "provider-endpoint presets" | "provider-endpoint test" | "provider-endpoint update" | "realtime broadcast" | "realtime presence" | "realtime presence-list" | "realtime subscribe" | "repos branches" | "repos clone-url" | "repos commit" | "repos commits" | "repos create" | "repos delete" | "repos get" | "repos list" | "repos read-file" | "repos set-visibility" | "search query" | "secret create" | "secret delete" | "secret get" | "secret list" | "secret reveal" | "secret update" | "settings get" | "settings update" | "share create" | "share delete" | "share list" | "share update" | "shared-with-me list" | "skill apply-update" | "skill attach" | "skill body" | "skill create" | "skill delete" | "skill detach" | "skill file-delete" | "skill file-list" | "skill file-read" | "skill file-write" | "skill fork" | "skill get" | "skill install" | "skill list" | "skill publish" | "skill render" | "skill search" | "skill update" | "skill update-check" | "subscription get" | "table create" | "table create-record" | "table delete" | "table delete-record" | "table export" | "table get" | "table get-record" | "table import" | "table list" | "table query" | "table update" | "table update-record" | "tasks ancestors" | "tasks assign" | "tasks comment" | "tasks comment-delete" | "tasks comment-list" | "tasks comment-update" | "tasks create" | "tasks delete" | "tasks depend" | "tasks dependencies" | "tasks duplicate" | "tasks events" | "tasks get" | "tasks import" | "tasks label-create" | "tasks label-delete" | "tasks label-list" | "tasks label-update" | "tasks list" | "tasks list-create" | "tasks list-delete" | "tasks list-get" | "tasks list-list" | "tasks list-update" | "tasks unassign" | "tasks undepend" | "tasks update" | "trigger archive" | "trigger cost-stats" | "trigger cost-stats-all" | "trigger create" | "trigger delete" | "trigger fire" | "trigger get" | "trigger list" | "trigger rotate-secret" | "trigger runs" | "trigger test-fire" | "trigger unarchive" | "trigger update" | "video generate" | "video models" | "video search" | "web fetch" | "web search" | "workspace add-member" | "workspace archive" | "workspace create" | "workspace delete" | "workspace get" | "workspace invitations" | "workspace invite" | "workspace list" | "workspace members" | "workspace remove-member" | "workspace revoke-invitation" | "workspace unarchive" | "workspace update" | "workspace update-member";
357
+ type V1CommandName = "agent archive" | "agent copy-to-workspace" | "agent create" | "agent delete" | "agent get" | "agent list" | "agent move" | "agent permanent-delete" | "agent restore" | "agent unarchive" | "agent update" | "ai-gateway providers" | "ai-gateway route-preview" | "ai-gateway usage" | "api-key create" | "api-key delete" | "api-key list" | "api-key rotate" | "api-key update" | "audio models" | "audio search-models" | "audio search-voices" | "audio voices" | "automation archive" | "automation cancel-run" | "automation cost-stats" | "automation cost-stats-all" | "automation create" | "automation delete" | "automation fire" | "automation get" | "automation list" | "automation retry-run" | "automation rotate-secret" | "automation runs" | "automation runs-all" | "automation test-fire" | "automation unarchive" | "automation update" | "browser-app create" | "browser-app deploy" | "browser-app deployments" | "browser-app fork" | "browser-app get" | "browser-app list" | "browser-app promote" | "browser-app snapshot" | "chat archive" | "chat copy-to-agent" | "chat copy-to-workspace" | "chat cost" | "chat create" | "chat delete" | "chat export" | "chat fork-to-workspace" | "chat get" | "chat list" | "chat message-costs" | "chat messages" | "chat permanent-delete" | "chat reprompt" | "chat restore" | "chat runs" | "chat send" | "chat stop" | "chat stream" | "chat unarchive" | "chat update" | "ci cancel" | "ci get" | "ci jobs" | "ci list" | "ci run" | "computer activity" | "computer add-exposure" | "computer add-local-model" | "computer app-create" | "computer app-delete" | "computer app-exec" | "computer app-expose" | "computer app-external" | "computer app-get" | "computer app-logs" | "computer app-ports" | "computer app-reset" | "computer app-restart" | "computer app-run" | "computer app-runtime" | "computer app-setup-runtime" | "computer app-start" | "computer app-stop" | "computer app-unexpose" | "computer apps" | "computer archive" | "computer compose-up" | "computer create" | "computer create-user" | "computer delete" | "computer delete-user" | "computer delete-user-env" | "computer download" | "computer download-to-drive" | "computer ephemeral" | "computer exec" | "computer expose" | "computer fs" | "computer get" | "computer get-user" | "computer hibernate" | "computer list" | "computer local-inference" | "computer local-models" | "computer manage" | "computer pair" | "computer ports" | "computer remove-exposure" | "computer remove-local-model" | "computer run" | "computer set-ports" | "computer set-user-env" | "computer start" | "computer stop" | "computer terminal" | "computer test-connection" | "computer transfer" | "computer tunnels" | "computer unarchive" | "computer unexpose" | "computer update" | "computer update-exposure" | "computer update-user" | "computer upload" | "computer user-env" | "computer user-env-setup" | "computer user-env-setup-apply" | "computer user-env-sync" | "computer user-env-sync-repair" | "computer users" | "custom-models create" | "custom-models delete" | "custom-models get" | "custom-models list" | "custom-models update" | "drive content-versions" | "drive create-folder" | "drive delete" | "drive get-metadata" | "drive glob" | "drive grep" | "drive list" | "drive move" | "drive permanent-delete" | "drive read" | "drive restore" | "drive restore-version" | "drive update" | "drive upload" | "guide get" | "hook create" | "hook delete" | "hook get" | "hook history" | "hook list" | "hook override" | "hook preview" | "hook toggle" | "hook update" | "image models" | "image search" | "inference image" | "inference speech" | "inference speech-stream" | "inference text" | "inference text-stream" | "inference transcribe" | "inference video" | "me get" | "me usage" | "memory box-delete" | "memory box-get" | "memory box-list" | "memory box-update" | "memory delete" | "memory index-read" | "memory index-write" | "memory list" | "memory read" | "memory search" | "memory write" | "models list" | "models search" | "notes box-create" | "notes box-delete" | "notes box-get" | "notes box-list" | "notes box-update" | "notes delete" | "notes folder-create" | "notes folder-delete" | "notes folder-list" | "notes folder-move" | "notes folder-rename" | "notes graph" | "notes import" | "notes index-read" | "notes index-write" | "notes links" | "notes list" | "notes note-move" | "notes note-rename" | "notes purge" | "notes read" | "notes restore" | "notes search" | "notes search-all" | "notes tag-list" | "notes tag-rename" | "notes trash-empty" | "notes trash-list" | "notes tree" | "notes write" | "notification config" | "notification delete" | "notification get" | "notification list" | "notification preferences" | "notification read-all" | "notification send" | "notification update" | "notification update-config" | "notification update-preferences" | "operation await" | "operation cancel" | "operation content" | "operation get" | "operation list" | "provider-endpoint create" | "provider-endpoint delete" | "provider-endpoint list" | "provider-endpoint presets" | "provider-endpoint test" | "provider-endpoint update" | "realtime broadcast" | "realtime presence" | "realtime presence-list" | "realtime subscribe" | "search query" | "secret create" | "secret delete" | "secret get" | "secret list" | "secret reveal" | "secret update" | "settings get" | "settings update" | "share create" | "share delete" | "share list" | "share update" | "shared-with-me list" | "subscription get" | "tasks ancestors" | "tasks assign" | "tasks comment" | "tasks comment-delete" | "tasks comment-list" | "tasks comment-update" | "tasks create" | "tasks delete" | "tasks depend" | "tasks dependencies" | "tasks duplicate" | "tasks events" | "tasks get" | "tasks import" | "tasks label-create" | "tasks label-delete" | "tasks label-list" | "tasks label-update" | "tasks list" | "tasks list-create" | "tasks list-delete" | "tasks list-get" | "tasks list-list" | "tasks list-update" | "tasks unassign" | "tasks undepend" | "tasks update" | "video models" | "video search" | "web fetch" | "web search" | "workspace add-member" | "workspace archive" | "workspace create" | "workspace delete" | "workspace get" | "workspace invitations" | "workspace invite" | "workspace list" | "workspace members" | "workspace remove-member" | "workspace revoke-invitation" | "workspace unarchive" | "workspace update" | "workspace update-member";
370
358
 
371
359
  /**
372
360
  * Generic, spec-driven command executor — the SDK twin of the CLI's `runSpec`.
@@ -380,11 +368,11 @@ type V1CommandName = "agent archive" | "agent copy-to-workspace" | "agent create
380
368
  * poll the operation handle to completion ({@link awaitOperation}).
381
369
  *
382
370
  * This is what powers `client.call(action, args)`: because the binding table is
383
- * generated from the same contract registry the routes are, EVERY v1 command is
384
- * reachable through this one path no per-verb code, 100% parity by
385
- * construction. It deliberately mirrors `packages/cli/src/execute.ts` so the
386
- * CLI and SDK agree on path-binding, request assembly, envelope unwrap, and
387
- * operation polling.
371
+ * generated from the SDK-exposed contract registry, every SDK-exposed v1 command
372
+ * is reachable through this one path. Pre-GA/default-off commands can opt out of
373
+ * this public dynamic surface with `sdkExposed: false`. It deliberately mirrors
374
+ * `packages/cli/src/execute.ts` so the CLI and SDK agree on path-binding,
375
+ * request assembly, envelope unwrap, and operation polling.
388
376
  */
389
377
 
390
378
  /** Options for {@link executeCommand}. */
@@ -649,27 +637,33 @@ declare class ChatsApi {
649
637
  * - CRUD — list / create pair token / get / update / delete
650
638
  * - Lifecycle — archive / unarchive / start / hibernate /
651
639
  * testConnection
652
- * - Exec — exec (one-shot daemon command)
653
- * - Tmux tmux (re-attachable windows under `idapt` session)
654
- * - SFTPsftp (dispatcher), upload / download (binary)
640
+ * - Exec — exec (one-shot daemon command, or `terminal` window)
641
+ * - Terminal terminal (persistent named tmux windows)
642
+ * - FSfs (dispatcher), upload / download (binary)
655
643
  * - Ports — listPorts / updatePort (managed only)
656
644
  * - Unix users — listUsers / createUser / updateUser / deleteUser
657
645
  * - User env vars — listUserEnvVars / createUserEnvVar /
658
646
  * deleteUserEnvVar / setupUserEnv /
659
647
  * checkUserEnvSetup / syncUserEnv / checkUserEnvSync
660
- * - Workspace links listWorkspaceLinks / linkWorkspace / unlinkWorkspace
661
- * (share a computer's LOCAL INFERENCE into other
662
- * workspaces; never shell / files / tunnels)
648
+ * - Exposures expose / updateExposure / unexpose (expose an
649
+ * actor-owned machine into a workspace with a
650
+ * per-capability grant) + transfer (move ownership)
663
651
  * - Pair — pair (daemon token bootstrap; bearer-overridden,
664
652
  * mirrors the trigger-fire pattern)
665
653
  *
666
- * Permissions on every authenticated verb default to the caller's
667
- * `computers:read` / `computers:write` scope. See `lib/computers/Computers.md`
654
+ * Authenticated verbs are split by surface: generic computer read/write covers
655
+ * metadata, while lifecycle, exec, files, tunnels, terminal, desktop, local
656
+ * inference, apps, and admin operations require their explicit computer action
657
+ * grants. See `backend/packages/computers/src/internal/computers/Computers.md`
668
658
  * for the end-to-end computer model.
669
659
  */
670
660
 
671
661
  interface ListComputersQuery {
672
- workspace_id: string;
662
+ /**
663
+ * Narrow the list to one organization the actor belongs to (its resourceId).
664
+ * Machines are actor-owned; omit for the actor's own machines + all its orgs'.
665
+ */
666
+ organization?: string;
673
667
  limit?: number;
674
668
  /** Opaque pagination cursor — echo `pagination.next_cursor`. */
675
669
  cursor?: string;
@@ -706,9 +700,9 @@ interface ExecCommandInput {
706
700
  /** Run as a different POSIX user via `sudo -u`. */
707
701
  user?: string;
708
702
  }
709
- type SftpOp = "list" | "stat" | "write" | "mkdir" | "rename" | "delete" | "chmod" | "chown";
710
- interface SftpInput {
711
- op: SftpOp;
703
+ type FsOp = "list" | "stat" | "write" | "mkdir" | "rename" | "delete" | "chmod" | "chown";
704
+ interface FsInput {
705
+ op: FsOp;
712
706
  path: string;
713
707
  /** `write` — utf-8 content. */
714
708
  content?: string;
@@ -721,11 +715,11 @@ interface SftpInput {
721
715
  /** `chown` — optional group name (appended as `owner:group`). */
722
716
  group?: string;
723
717
  }
724
- interface SftpListResult {
718
+ interface FsListResult {
725
719
  path: string;
726
- entries: SftpEntry[];
720
+ entries: FsEntry[];
727
721
  }
728
- interface SftpUploadInput {
722
+ interface FsUploadInput {
729
723
  /** Binary content. Browser `File`/`Blob` both work. */
730
724
  file: Blob;
731
725
  /** Destination path on the remote computer. */
@@ -735,19 +729,29 @@ interface SftpUploadInput {
735
729
  /** Conflict resolution. Default: `replace`. */
736
730
  conflict_mode?: "replace" | "skip";
737
731
  }
738
- type TmuxOp = "list" | "run" | "capture" | "send" | "kill";
739
- interface TmuxInput {
740
- op: TmuxOp;
741
- /** Required for run/capture/send/kill. POSIX-safe shape. */
732
+ type TerminalOp = "list" | "run" | "capture" | "send" | "kill" | "rename";
733
+ interface TerminalInput {
734
+ op: TerminalOp;
735
+ /** Target window name (required for all ops except `list`). */
742
736
  name?: string;
743
- /** `run` — the shell command. */
737
+ /** `run` — the shell command (to completion; returns a real exit code). */
744
738
  command?: string;
745
- /** `run` — optional `cd` prefix. */
739
+ /** `run` — optional working directory (persists into the window). */
746
740
  working_dir?: string;
741
+ /** `run` — non-secret env vars exported (persistently) into the window. */
742
+ env?: Record<string, string>;
743
+ /** `run` — soft timeout in seconds (clamped to ~290). */
744
+ timeout_seconds?: number;
745
+ /** `run` — return a running handle immediately; re-poll via `run_id`. */
746
+ detach?: boolean;
747
+ /** `run` — re-poll a prior detached run instead of starting a new command. */
748
+ run_id?: string;
747
749
  /** `send` — keys to inject (auto-followed by Enter). */
748
750
  keys?: string;
749
751
  /** `capture` — number of trailing lines to grab. Default 200. */
750
752
  lines?: number;
753
+ /** `rename` — the new window name. */
754
+ new_name?: string;
751
755
  }
752
756
  interface PatchPortInput {
753
757
  port: number;
@@ -802,20 +806,29 @@ interface PairComputerResult {
802
806
  domain: string;
803
807
  }
804
808
  /**
805
- * One `computer_workspace` linka computer shared INTO an additional
806
- * workspace, granting LOCAL INFERENCE ONLY (never shell / files / tunnels).
807
- * `workspace_resource_id` is the target workspace's public `ws_…` id.
809
+ * One `computer_workspace` EXPOSUREan actor-owned machine exposed INTO a
810
+ * workspace (Layer 2) with a per-capability grant. `workspace_resource_id` is
811
+ * the target workspace's public `ws_…` id; `capabilities` is the granted
812
+ * capability-slug subset.
808
813
  */
809
- interface ComputerWorkspaceLink {
814
+ interface ComputerExposure {
810
815
  id: string;
811
816
  computer_id: string;
812
817
  workspace_id: string;
813
818
  workspace_resource_id: string | null;
814
- permissions: unknown[] | null;
815
- created_by_actor_id: string;
819
+ capabilities: string[];
820
+ label: string | null;
821
+ created_by_actor_id: string | null;
816
822
  created_at: number;
817
823
  updated_at: number;
818
824
  }
825
+ /** `POST /v1/computers/{id}/expose` body. */
826
+ interface ExposeComputerInput {
827
+ /** Target workspace — public `ws_…` resourceId or slug. */
828
+ workspace_id: string;
829
+ /** Capability-slug subset to grant {local-inference, terminal, files, computer-use, tunnels, apps}. */
830
+ capabilities: string[];
831
+ }
819
832
  declare class ComputersApi {
820
833
  private readonly ctx;
821
834
  constructor(ctx: HttpContext);
@@ -845,30 +858,31 @@ declare class ComputersApi {
845
858
  }>;
846
859
  exec(id: string, input: ExecCommandInput, opts?: CallOptions): Promise<ComputerExecResult>;
847
860
  /**
848
- * tmux dispatcher. Each `op` returns a different shape — see the route
849
- * docs for the per-op payload. Common case: `op: "run"` starts a window,
861
+ * Persistent-terminal dispatcher. Each `op` returns a different shape — see
862
+ * the route docs for the per-op payload. Common case: `op: "run"` runs a
863
+ * command to completion in a named window (state persists across runs),
850
864
  * `op: "capture"` reads its output.
851
865
  */
852
- tmux(id: string, input: TmuxInput, opts?: CallOptions): Promise<Record<string, unknown>>;
853
- /** Convenience over `tmux({ op: "list" })`. */
854
- listTmuxWindows(id: string, opts?: CallOptions): Promise<TmuxWindow[]>;
866
+ terminal(id: string, input: TerminalInput, opts?: CallOptions): Promise<Record<string, unknown>>;
867
+ /** Convenience over `terminal({ op: "list" })`. */
868
+ listTerminals(id: string, opts?: CallOptions): Promise<TerminalWindow[]>;
855
869
  /**
856
- * Unified SFTP dispatcher. Returns op-shaped payload. For streaming
857
- * uploads/downloads use `sftpUpload` / `sftpDownload`.
870
+ * Unified FS dispatcher. Returns op-shaped payload. For streaming
871
+ * uploads/downloads use `fsUpload` / `fsDownload`.
858
872
  */
859
- sftp(id: string, input: SftpInput, opts?: CallOptions): Promise<Record<string, unknown>>;
860
- /** Convenience: `sftp({op:"list"})` returning the entries array directly. */
861
- sftpList(id: string, path: string, opts?: CallOptions): Promise<SftpListResult>;
873
+ fs(id: string, input: FsInput, opts?: CallOptions): Promise<Record<string, unknown>>;
874
+ /** Convenience: `fs({op:"list"})` returning the entries array directly. */
875
+ fsList(id: string, path: string, opts?: CallOptions): Promise<FsListResult>;
862
876
  /**
863
877
  * Multipart upload of a file/folder member. Falls back to single-file mode
864
878
  * when `relative_path` is omitted.
865
879
  */
866
- sftpUpload(id: string, input: SftpUploadInput, opts?: CallOptions): Promise<Record<string, unknown>>;
880
+ fsUpload(id: string, input: FsUploadInput, opts?: CallOptions): Promise<Record<string, unknown>>;
867
881
  /**
868
882
  * Stream a remote file (or a folder as `tar.gz`) as a `Blob`. The server
869
883
  * sends the real MIME type on `Content-Type`.
870
884
  */
871
- sftpDownload(id: string, remotePath: string, opts?: CallOptions): Promise<Blob>;
885
+ fsDownload(id: string, remotePath: string, opts?: CallOptions): Promise<Blob>;
872
886
  listPorts(id: string, query?: {
873
887
  refresh?: boolean;
874
888
  }, opts?: CallOptions): Promise<{
@@ -918,30 +932,37 @@ declare class ComputersApi {
918
932
  syncUserEnv(id: string, username: string, opts?: CallOptions): Promise<Record<string, unknown>>;
919
933
  checkUserEnvSync(id: string, username: string, opts?: CallOptions): Promise<Record<string, unknown>>;
920
934
  /**
921
- * List the workspaces a computer's LOCAL INFERENCE is shared into. The home
922
- * workspace is never listed (it already has full access). The route returns
923
- * the links under a `links` key (not a standard list envelope).
935
+ * Expose an actor-owned machine INTO a workspace (Layer 2) with a
936
+ * per-capability grant, so that workspace's members can use it. Requires
937
+ * machine-admin and membership of the target workspace. Rejects a duplicate
938
+ * exposure. (CLI verb: `computer add-exposure` — the bare `expose`/`unexpose`
939
+ * verbs are the tunnel port commands.)
924
940
  */
925
- listWorkspaceLinks(id: string, opts?: CallOptions): Promise<ComputerWorkspaceLink[]>;
941
+ expose(id: string, input: ExposeComputerInput, opts?: CallOptions): Promise<ComputerExposure>;
926
942
  /**
927
- * Share a computer's LOCAL INFERENCE into another workspace (never shell /
928
- * files / tunnels). `workspaceId` is the target workspace's `ws_…`
929
- * resourceId or slug. Requires EDIT on the computer's home workspace and
930
- * membership of the target. Rejects the home workspace and duplicates.
943
+ * Replace the capability grant on an existing exposure. `workspaceId` is the
944
+ * exposed workspace's `ws_…` resourceId. Requires machine-admin.
945
+ * (CLI verb: `computer update-exposure`.)
931
946
  */
932
- linkWorkspace(id: string, workspaceId: string, opts?: CallOptions): Promise<ComputerWorkspaceLink>;
947
+ updateExposure(id: string, workspaceId: string, capabilities: string[], opts?: CallOptions): Promise<ComputerExposure>;
933
948
  /**
934
- * Stop sharing a computer's local inference into a workspace. `workspaceId`
935
- * is the target workspace's `ws_…` resourceId. Idempotent unlinking a
936
- * non-existent link still succeeds.
949
+ * Stop exposing a machine into a workspace. `workspaceId` is the exposed
950
+ * workspace's `ws_…` resourceId. Allowed for machine-admin OR an admin of the
951
+ * exposed workspace. Idempotent. (CLI verb: `computer remove-exposure`.)
937
952
  */
938
- unlinkWorkspace(id: string, workspaceId: string, opts?: CallOptions): Promise<{
939
- unlinked: boolean;
953
+ unexpose(id: string, workspaceId: string, opts?: CallOptions): Promise<{
954
+ unexposed: boolean;
940
955
  }>;
956
+ /**
957
+ * Transfer an actor-owned machine to a new owner (self, or an org the caller
958
+ * administers). `owner` is the target profile's resourceId; existing workspace
959
+ * exposures are kept. Requires machine-admin. (CLI verb: `computer transfer`.)
960
+ */
961
+ transfer(id: string, owner: string, opts?: CallOptions): Promise<Computer>;
941
962
  /**
942
963
  * Redeem a one-time pair token for a long-lived computer identity. The
943
964
  * token itself is the auth — we swap the bearer for the token on this
944
- * call only (same pattern as `triggers.fire`).
965
+ * call only (same pattern as `automations.fire`).
945
966
  *
946
967
  * Used by `idapt up --token` to bootstrap a daemon. The request body is
947
968
  * snake_case; the response is wrapped in the standard `{data:{…}}`
@@ -950,55 +971,6 @@ declare class ComputersApi {
950
971
  pair(input: PairComputerInput, opts?: CallOptions): Promise<PairComputerResult>;
951
972
  }
952
973
 
953
- /**
954
- * DatastoreApi — `/api/v1/datastore` (the KV data plane).
955
- *
956
- * Workspace-scoped key/value store. Entries live under a `namespace` (a bucket
957
- * you pick) and a `key`. Surfaced as `client.kv.*` on `IdaptClient`.
958
- */
959
-
960
- interface DatastoreListOptions extends CallOptions {
961
- /** Only keys starting with this prefix. */
962
- prefix?: string;
963
- cursor?: string;
964
- limit?: number;
965
- }
966
- interface DatastoreSetOptions extends CallOptions {
967
- /** Seconds until the entry expires; omit for no expiry. */
968
- ttlSeconds?: number;
969
- }
970
- declare class DatastoreApi {
971
- private readonly ctx;
972
- constructor(ctx: HttpContext);
973
- /** List keys in a namespace (prefix-filterable). */
974
- list(namespace: string, opts?: DatastoreListOptions): Promise<{
975
- key: string;
976
- }[]>;
977
- /** Read a KV entry. */
978
- get(namespace: string, key: string, opts?: CallOptions): Promise<DatastoreEntry>;
979
- /** Upsert a KV entry (optionally with a TTL). */
980
- set(namespace: string, key: string, value: unknown, opts?: DatastoreSetOptions): Promise<DatastoreEntry>;
981
- /** Delete a KV entry (idempotent). */
982
- delete(namespace: string, key: string, opts?: CallOptions): Promise<DeletedResponse>;
983
- /** Atomically add `by` (default 1) to a numeric counter. */
984
- increment(namespace: string, key: string, by?: number, opts?: CallOptions): Promise<{
985
- key: string;
986
- value: number;
987
- }>;
988
- /** List the namespaces in the workspace. */
989
- listNamespaces(opts?: CallOptions): Promise<string[]>;
990
- /** Read several keys at once. */
991
- batchGet(namespace: string, keys: string[], opts?: CallOptions): Promise<DatastoreEntry[]>;
992
- /** Upsert several entries at once. */
993
- batchSet(namespace: string, entries: {
994
- key: string;
995
- value: unknown;
996
- ttlSeconds?: number | null;
997
- }[], opts?: CallOptions): Promise<number>;
998
- /** Delete several keys at once; returns the count removed. */
999
- batchDelete(namespace: string, keys: string[], opts?: CallOptions): Promise<number>;
1000
- }
1001
-
1002
974
  /**
1003
975
  * DocsApi — `GET /api/v1/docs`.
1004
976
  *
@@ -1027,8 +999,8 @@ declare class DocsApi {
1027
999
  * Use when:
1028
1000
  * - The app has elevated `files:*` permission and wants to touch files
1029
1001
  * outside its `.app-data` scope.
1030
- * - You need create-folder / move / run endpoints with a workspace_id /
1031
- * parent_id you choose yourself.
1002
+ * - You need create-folder / move endpoints with a workspace_id / parent_id
1003
+ * you choose yourself.
1032
1004
  *
1033
1005
  * For "save preferences in my data folder", prefer `client.data.set(name)`
1034
1006
  * — it handles name→id resolution and OCC for you.
@@ -1040,7 +1012,7 @@ declare class DocsApi {
1040
1012
  declare class FilesApi {
1041
1013
  private readonly ctx;
1042
1014
  constructor(ctx: HttpContext);
1043
- list(query?: ListFilesQuery, opts?: CallOptions): Promise<File$1[]>;
1015
+ list(query?: ListFilesQuery, opts?: CallOptions): Promise<File[]>;
1044
1016
  /** Multipart upload a Blob/File. Returns the partial file record. */
1045
1017
  upload(input: UploadInput, opts?: CallOptions): Promise<FileUploadResult>;
1046
1018
  /**
@@ -1058,180 +1030,16 @@ declare class FilesApi {
1058
1030
  * Patch file metadata or content. Supports `expectedUpdatedAt` for
1059
1031
  * optimistic concurrency — pass it when you know the version you read.
1060
1032
  */
1061
- patch(id: string, input: PatchFileInput, opts?: WriteOptions): Promise<File$1>;
1033
+ patch(id: string, input: PatchFileInput, opts?: WriteOptions): Promise<File>;
1062
1034
  delete(id: string, opts?: CallOptions): Promise<DeletedResponse>;
1063
- restore(id: string, opts?: CallOptions): Promise<File$1>;
1035
+ restore(id: string, opts?: CallOptions): Promise<File>;
1064
1036
  permanentDelete(id: string, opts?: CallOptions): Promise<DeletedResponse>;
1065
1037
  /**
1066
1038
  * Idempotent create-or-get a folder. Returns the existing folder (with
1067
1039
  * `200`) or the new one (`201`) — consumers don't need to distinguish.
1068
1040
  */
1069
- createFolder(input: CreateFolderInput, opts?: CallOptions): Promise<File$1>;
1070
- move(id: string, parentId: string | null, opts?: CallOptions): Promise<File$1>;
1071
- /**
1072
- * Execute a code file (js/ts/py/sh) in a sandboxed Lambda. Returns the
1073
- * full `ExecutionRun` record (status, stdout/stderr, exit code, timestamps).
1074
- */
1075
- run(id: string, input?: RunFileInput, opts?: CallOptions): Promise<ExecutionRun>;
1076
- }
1077
-
1078
- /**
1079
- * FunctionsApi — `/api/v1/functions` (idapt Functions).
1080
- *
1081
- * Two tiers, mirroring the v1 `functions` contract:
1082
- *
1083
- * - One-off runs — `run()` executes a script ONCE in the sandboxed Lambda
1084
- * (inline `script` XOR an existing Drive `file_id`) and returns the full
1085
- * `FunctionRun` row (the `transformExecutionRun` shape). Anything the script
1086
- * writes under `/tmp/output/` is copied into Drive and listed in
1087
- * `output_files`. Browse history via the `runs` sub-api
1088
- * (`runs.list` / `runs.get` / `runs.interrupt`).
1089
- * - Deployed functions — named, versioned, HTTP-invokable units:
1090
- * `create` → `deploy` (inline base64 bundle) → `invoke`. `promote` flips /
1091
- * rolls back the live deployment; `deployments` lists the version history.
1092
- *
1093
- * Surfaced as `client.functions.*`. Replaces the former code-execution
1094
- * surface. Wire types are snake_case over the wire.
1095
- */
1096
-
1097
- /**
1098
- * `POST /functions/runs` body — run a script once. Pass EXACTLY one of inline
1099
- * `script` (+ optional `language`) or an existing Drive `file_id`.
1100
- */
1101
- interface RunFunctionInput {
1102
- /** Inline source (≤ 1 MB). Mutually exclusive with `file_id`. */
1103
- script?: string;
1104
- /** An existing Drive file id to execute. Mutually exclusive with `script`. */
1105
- file_id?: string;
1106
- /** Language for inline `script` — drives the entrypoint extension. */
1107
- language?: "node" | "python" | "bash";
1108
- /** Hard wall-clock bound (1–300s). Default 30s server-side. */
1109
- timeout_seconds?: number;
1110
- /** Environment variables injected into the run. */
1111
- env?: Record<string, string>;
1112
- /** Workspace secret names to inject as env vars (resolved server-side). */
1113
- secrets?: string[];
1114
- }
1115
- /**
1116
- * `GET /functions/runs` query params. Cursor-paginated (opaque `cursor`);
1117
- * `backend` / `status` narrow the one-off run history.
1118
- */
1119
- interface ListFunctionRunsQuery {
1120
- limit?: number;
1121
- /** Opaque pagination cursor — echo `pagination.next_cursor`. */
1122
- cursor?: string;
1123
- backend?: ExecutionBackend;
1124
- status?: ExecutionRunStatus;
1125
- /** Scope the listing to a single workspace. */
1126
- workspace_id?: string;
1127
- }
1128
- /** `GET /functions` query params — list deployed functions. */
1129
- interface ListFunctionsQuery {
1130
- limit?: number;
1131
- }
1132
- /** One declared permission grant on a function. */
1133
- interface FunctionPermissionInput {
1134
- resource: string;
1135
- access: "read" | "write" | "admin";
1136
- scope?: string;
1137
- }
1138
- /** `POST /functions` body — create a deployed function (config only). */
1139
- interface CreateFunctionInput {
1140
- name: string;
1141
- description?: string;
1142
- runtime?: "node" | "python";
1143
- entrypoint?: string;
1144
- auth_mode?: "bearer" | "secret" | "public";
1145
- timeout_seconds?: number;
1146
- permissions?: FunctionPermissionInput[];
1147
- /** Workspace secret names to expose to the function at runtime. */
1148
- secrets?: string[];
1149
- source_repo_id?: string;
1150
- branch?: string;
1151
- browser_app_id?: string;
1152
- }
1153
- /** `PATCH /functions/:id` body — update a function's config (all optional). */
1154
- interface UpdateFunctionInput {
1155
- description?: string | null;
1156
- auth_mode?: "bearer" | "secret" | "public";
1157
- timeout_seconds?: number;
1158
- permissions?: FunctionPermissionInput[] | null;
1159
- secrets?: string[] | null;
1160
- branch?: string | null;
1161
- }
1162
- /** One file of a deploy bundle — base64-encoded content at a bundle path. */
1163
- interface DeployFunctionFile {
1164
- path: string;
1165
- content_b64: string;
1166
- }
1167
- /**
1168
- * `POST /functions/:id/deploy` body — an inline base64 bundle. Promotes the
1169
- * new deployment to live immediately unless `promote: false`.
1170
- */
1171
- interface DeployFunctionInput {
1172
- files: DeployFunctionFile[];
1173
- entrypoint?: string;
1174
- runtime?: "node" | "python";
1175
- /** Promote the new deployment to live immediately (default true). */
1176
- promote?: boolean;
1177
- }
1178
- /** `POST /functions/:id/invoke` body — the request handed to the handler. */
1179
- interface InvokeFunctionInput {
1180
- method?: string;
1181
- path?: string;
1182
- query?: Record<string, string>;
1183
- headers?: Record<string, string>;
1184
- body?: unknown;
1185
- }
1186
- /** `client.functions.runs` — browse + interrupt one-off runs. */
1187
- declare class FunctionRunsApi {
1188
- private readonly ctx;
1189
- constructor(ctx: HttpContext);
1190
- /** List one-off function runs (cursor-paginated). */
1191
- list(query?: ListFunctionRunsQuery, opts?: CallOptions): Promise<FunctionRun[]>;
1192
- /** Get a single one-off run by id. */
1193
- get(id: string, opts?: CallOptions): Promise<FunctionRun>;
1194
- /**
1195
- * Interrupt a running run. Only computer-backed runs can be interrupted;
1196
- * Lambda-backed runs return 409 (`ConflictError`).
1197
- */
1198
- interrupt(id: string, opts?: CallOptions): Promise<FunctionRun>;
1199
- }
1200
- declare class FunctionsApi {
1201
- private readonly ctx;
1202
- /** One-off run history — list / get / interrupt. */
1203
- readonly runs: FunctionRunsApi;
1204
- constructor(ctx: HttpContext);
1205
- /**
1206
- * Run a script ONCE in the sandbox. Pass EITHER inline `script` (+ optional
1207
- * `language`) OR an existing Drive `file_id`. Returns the full `FunctionRun`
1208
- * row — `id`, `status`, `stdout`, `stderr`, `exit_code`, the run timestamps,
1209
- * and any `output_files` the script wrote under `/tmp/output/`.
1210
- */
1211
- run(input: RunFunctionInput, opts?: CallOptions): Promise<FunctionRun>;
1212
- /** List deployed functions in the workspace. */
1213
- list(query?: ListFunctionsQuery, opts?: CallOptions): Promise<FunctionResource[]>;
1214
- /** Get a deployed function by its resourceId. */
1215
- get(id: string, opts?: CallOptions): Promise<FunctionResource>;
1216
- /** Create a deployed function (config only — `deploy` adds a bundle). */
1217
- create(input: CreateFunctionInput, opts?: CallOptions): Promise<FunctionResource>;
1218
- /** Update a deployed function's config. */
1219
- update(id: string, patch: UpdateFunctionInput, opts?: CallOptions): Promise<FunctionResource>;
1220
- /** Delete a deployed function + all its deployments. */
1221
- delete(id: string, opts?: CallOptions): Promise<DeletedResponse>;
1222
- /**
1223
- * Deploy a new bundle (inline base64 files). Promotes the new deployment to
1224
- * live immediately unless `promote: false`. Returns the new deployment.
1225
- */
1226
- deploy(id: string, input: DeployFunctionInput, opts?: CallOptions): Promise<FunctionDeployment>;
1227
- /** List a function's deployments (newest-first). */
1228
- deployments(id: string, opts?: CallOptions): Promise<FunctionDeployment[]>;
1229
- /** Promote (or roll back to) a deployment — flips the active one. */
1230
- promote(id: string, input: {
1231
- deployment_id: string;
1232
- }, opts?: CallOptions): Promise<FunctionResource>;
1233
- /** Invoke a deployed function synchronously; returns its response. */
1234
- invoke(id: string, input?: InvokeFunctionInput, opts?: CallOptions): Promise<FunctionInvokeResult>;
1041
+ createFolder(input: CreateFolderInput, opts?: CallOptions): Promise<File>;
1042
+ move(id: string, parentId: string | null, opts?: CallOptions): Promise<File>;
1235
1043
  }
1236
1044
 
1237
1045
  /**
@@ -1242,7 +1050,7 @@ declare class FunctionsApi {
1242
1050
  * a JSON envelope (`{ data: { content, format } }`).
1243
1051
  */
1244
1052
 
1245
- /** Payload of `GET /v1/skill` — the SKILL.md body plus its format tag. */
1053
+ /** Payload of `GET /v1/guide` — the API guide body plus its format tag. */
1246
1054
  interface GuideContent {
1247
1055
  /** The SKILL.md document body. */
1248
1056
  content: string;
@@ -1260,36 +1068,19 @@ declare class GuideApi {
1260
1068
  }
1261
1069
 
1262
1070
  /**
1263
- * ImagesApi — `/api/v1/images/*`.
1071
+ * ImagesApi — image-model DISCOVERY (`GET /api/v1/images/models`).
1264
1072
  *
1265
- * Two endpoints:
1266
- * - `GET /images/models` → catalogue of image models. Each item is
1267
- * `{id, display_name, provider, modality}`
1268
- * plus image-specific fields.
1269
- * - `POST /images/generations` → generate an image, returns a file ref.
1270
- * Responds HTTP 201 (resource created).
1271
- *
1272
- * `generate()` writes the output into the caller's workspace (required) at
1273
- * an optional path; the response includes a `file_id` you can turn around
1274
- * and pass to `files.get(id)` for the bytes, or use `url` for a signed
1275
- * download link.
1073
+ * Image GENERATION moved to the unified inference surface — use
1074
+ * `client.inference.image({ prompt, workspace_id, })`. This namespace now
1075
+ * exposes only the model catalog (`image models`); model discovery stays
1076
+ * per-modality by design.
1276
1077
  */
1277
1078
 
1278
- interface GenerateImageInput {
1279
- prompt: string;
1280
- workspace_id: string;
1281
- model?: string;
1282
- output_path?: string;
1283
- reference_image_ids?: string[];
1284
- reference_image_paths?: string[];
1285
- aspect_ratio?: string;
1286
- }
1287
1079
  declare class ImagesApi {
1288
1080
  private readonly ctx;
1289
1081
  constructor(ctx: HttpContext);
1082
+ /** List the available image-generation models. */
1290
1083
  listModels(opts?: CallOptions): Promise<ImageModel[]>;
1291
- /** Generate an image. Responds HTTP 201 with the written file ref under `data`. */
1292
- generate(input: GenerateImageInput, opts?: CallOptions): Promise<ImageGenerationResult>;
1293
1084
  }
1294
1085
 
1295
1086
  /**
@@ -1505,6 +1296,10 @@ interface ProviderEndpointModelMappingInput {
1505
1296
  model_id: string;
1506
1297
  /** Upstream provider model id. Defaults server-side to `model_id`. */
1507
1298
  api_model_id: string;
1299
+ /** Explicit serving context window for this endpoint/model pair. */
1300
+ context_length?: number;
1301
+ /** Explicit maximum completion tokens for this endpoint/model pair. */
1302
+ max_completion_tokens?: number;
1508
1303
  }
1509
1304
  interface CreateProviderEndpointInput {
1510
1305
  kind?: ProviderEndpointKind;
@@ -1831,51 +1626,6 @@ declare class SharingApi {
1831
1626
  listSharedWithMe(query?: ListSharedWithMeQuery, opts?: CallOptions): Promise<SharedWithMeItem[]>;
1832
1627
  }
1833
1628
 
1834
- /**
1835
- * StoreApi — `/api/v1/store/*`.
1836
- *
1837
- * Hub / store surface for browsing and installing community items: skills,
1838
- * agent templates, computer images, workspace templates.
1839
- *
1840
- * Both verbs are feature-gated by FF42 (Hub) server-side. With the flag
1841
- * OFF the routes 404; the SDK relays that as a `NotFoundError`. The CLI's
1842
- * `idapt store` tree gates on the same flag client-side, so visibility of
1843
- * the verbs in `idapt help` matches what the server actually accepts.
1844
- */
1845
-
1846
- interface SearchStoreQuery {
1847
- q?: string;
1848
- type?: "all" | StoreItemType;
1849
- sort?: "popular" | "recent" | "updated";
1850
- limit?: number;
1851
- /** Opaque pagination cursor — echo `pagination.next_cursor`. */
1852
- cursor?: string;
1853
- }
1854
- interface InstallStoreItemInput {
1855
- /** Destination workspace resourceId. */
1856
- workspace_id: string;
1857
- folder_name?: string;
1858
- /** Parent file resourceId to land the installed folder under. */
1859
- target_parent_id?: string | null;
1860
- }
1861
- declare class StoreApi {
1862
- private readonly ctx;
1863
- constructor(ctx: HttpContext);
1864
- /**
1865
- * Search the hub. Open envelope — items are heterogeneous (skills carry
1866
- * version/license, agents carry icons/prompts, computer templates carry
1867
- * sizing) so we surface them as `StoreItem` with an open index signature.
1868
- */
1869
- search(query?: SearchStoreQuery, opts?: CallOptions): Promise<StoreItem[]>;
1870
- /**
1871
- * Install a hub item into one of the caller's workspaces. Returns whatever
1872
- * the per-template installer produces (folder ids, agent ids, ...) —
1873
- * `StoreInstallResult` carries the common fields and leaves the rest
1874
- * open.
1875
- */
1876
- install(resourceId: string, input: InstallStoreItemInput, opts?: CallOptions): Promise<StoreInstallResult>;
1877
- }
1878
-
1879
1629
  /**
1880
1630
  * SubscriptionApi — `/api/v1/subscription`.
1881
1631
  *
@@ -1898,149 +1648,6 @@ declare class SubscriptionApi {
1898
1648
  get(opts?: CallOptions): Promise<Subscription>;
1899
1649
  }
1900
1650
 
1901
- /**
1902
- * TablesApi — `/api/v1/tables` (Idapt Tables, structured documents).
1903
- *
1904
- * Collections hold a field schema; records are JSON documents queried via the
1905
- * safe DSL. Surfaced as `client.tables.*` on `IdaptClient`.
1906
- */
1907
-
1908
- interface TableField {
1909
- key: string;
1910
- name: string;
1911
- type: string;
1912
- options?: unknown[];
1913
- required?: boolean;
1914
- default?: unknown;
1915
- }
1916
- interface CollectionSchemaInput {
1917
- fields: TableField[];
1918
- }
1919
- interface CreateCollectionInput {
1920
- name: string;
1921
- description?: string | null;
1922
- icon?: string | null;
1923
- schema?: CollectionSchemaInput;
1924
- workspace_id?: string;
1925
- }
1926
- interface UpdateCollectionInput {
1927
- name?: string;
1928
- description?: string | null;
1929
- icon?: string | null;
1930
- schema?: CollectionSchemaInput;
1931
- }
1932
- interface TableQuery {
1933
- where?: unknown;
1934
- sort?: {
1935
- field: string;
1936
- dir?: "asc" | "desc";
1937
- }[];
1938
- limit?: number;
1939
- cursor?: string;
1940
- }
1941
- declare class TablesApi {
1942
- private readonly ctx;
1943
- constructor(ctx: HttpContext);
1944
- list(opts?: CallOptions & {
1945
- workspaceId?: string;
1946
- cursor?: string;
1947
- limit?: number;
1948
- }): Promise<TableCollection[]>;
1949
- get(id: string, opts?: CallOptions): Promise<TableCollection>;
1950
- create(input: CreateCollectionInput, opts?: CallOptions): Promise<TableCollection>;
1951
- update(id: string, input: UpdateCollectionInput, opts?: CallOptions): Promise<TableCollection>;
1952
- delete(id: string, opts?: CallOptions): Promise<DeletedResponse>;
1953
- /** Query a collection's records with the filter/sort/paginate DSL. */
1954
- query(id: string, query?: TableQuery, opts?: CallOptions): Promise<TableRecord[]>;
1955
- createRecord(id: string, values: Record<string, unknown>, opts?: CallOptions): Promise<TableRecord>;
1956
- getRecord(id: string, recordId: string, opts?: CallOptions): Promise<TableRecord>;
1957
- updateRecord(id: string, recordId: string, values: Record<string, unknown>, opts?: CallOptions): Promise<TableRecord>;
1958
- deleteRecord(id: string, recordId: string, opts?: CallOptions): Promise<DeletedResponse>;
1959
- /** Export a collection's records as a CSV string (header row = field keys). */
1960
- exportCsv(id: string, opts?: CallOptions): Promise<string>;
1961
- /** Import records into a collection from a CSV string. Returns the count. */
1962
- importCsv(id: string, csv: string, opts?: CallOptions): Promise<{
1963
- imported: number;
1964
- }>;
1965
- }
1966
-
1967
- /**
1968
- * TriggersApi — `/api/v1/triggers`.
1969
- *
1970
- * Triggers fire actions (run code, run chat) on events (webhook, schedule,
1971
- * manual). The `fire` endpoint is unauthenticated — it validates the
1972
- * per-trigger webhook secret instead of the bearer token. This SDK handles
1973
- * both modes: regular calls use `this.ctx.key`; `fire` can be called with
1974
- * an explicit secret override.
1975
- */
1976
-
1977
- interface FireTriggerInput {
1978
- /**
1979
- * Webhook secret for this trigger. Overrides the client's `ap_` key.
1980
- * Required when calling `fire` outside the creating user's session.
1981
- */
1982
- secret: string;
1983
- /** Optional context overrides forwarded to the action. */
1984
- body?: Record<string, unknown>;
1985
- }
1986
- interface ListTriggerRunsQuery {
1987
- limit?: number;
1988
- /** Opaque pagination cursor — echo `pagination.next_cursor`. */
1989
- cursor?: string;
1990
- }
1991
- interface ListTriggersQuery {
1992
- workspace_id?: string;
1993
- include_archived?: boolean;
1994
- archived_only?: boolean;
1995
- }
1996
- interface BulkTriggerCostStatsQuery {
1997
- workspace_id?: string;
1998
- }
1999
- declare class TriggersApi {
2000
- private readonly ctx;
2001
- constructor(ctx: HttpContext);
2002
- list(query?: ListTriggersQuery, opts?: CallOptions): Promise<Trigger[]>;
2003
- /**
2004
- * Create a trigger. `workspace_id` is passed in the request BODY (alongside
2005
- * the flat trigger definition) — it is not a query param. The request
2006
- * body is flat: every scheduling field (`cron_expression`, …) and every
2007
- * action field (`agent_id`, `prompt_template`, `file_id`, …) sits at the
2008
- * top level — there are no nested `trigger_config` / `action_config`
2009
- * objects any more.
2010
- *
2011
- * For a `webhook` trigger the response additionally carries a one-time
2012
- * plaintext `secret` (use `TriggerWithSecret`); other trigger types
2013
- * resolve to a plain `Trigger`.
2014
- */
2015
- create(workspaceId: string, input: CreateTriggerInput, opts?: CallOptions): Promise<TriggerWithSecret | Trigger>;
2016
- get(id: string, opts?: CallOptions): Promise<Trigger>;
2017
- update(id: string, input: UpdateTriggerInput, opts?: CallOptions): Promise<Trigger>;
2018
- delete(id: string, opts?: CallOptions): Promise<DeletedResponse>;
2019
- archive(id: string, opts?: CallOptions): Promise<Trigger>;
2020
- unarchive(id: string, opts?: CallOptions): Promise<Trigger>;
2021
- /**
2022
- * Fire a trigger via its webhook secret. This endpoint does NOT use the
2023
- * client's `ap_` key — the bearer is the trigger's secret — so we build a
2024
- * one-off HttpContext for it rather than mutating the shared one.
2025
- *
2026
- * Responds HTTP 202. The response identifies the fired trigger via `id`
2027
- * only.
2028
- */
2029
- fire(id: string, input: FireTriggerInput, opts?: CallOptions): Promise<{
2030
- id: string;
2031
- }>;
2032
- /**
2033
- * Rotate the webhook secret. Returns the trigger with a fresh one-time
2034
- * plaintext `secret` populated (`TriggerWithSecret`). The old secret
2035
- * immediately stops working.
2036
- */
2037
- rotateSecret(id: string, opts?: CallOptions): Promise<TriggerWithSecret>;
2038
- /** Recent fires + their success/error outcome. */
2039
- listRuns(id: string, query?: ListTriggerRunsQuery, opts?: CallOptions): Promise<TriggerRun[]>;
2040
- getCostStats(id: string, opts?: CallOptions): Promise<TriggerCostStats>;
2041
- getCostStatsMap(query?: BulkTriggerCostStatsQuery, opts?: CallOptions): Promise<Record<string, TriggerCostStats>>;
2042
- }
2043
-
2044
1651
  /**
2045
1652
  * UserApi — identity + usage.
2046
1653
  *
@@ -2215,18 +1822,12 @@ declare class IdaptClient {
2215
1822
  readonly chats: ChatsApi;
2216
1823
  /** Workspaces CRUD + members + invitations + fork. */
2217
1824
  readonly workspaces: WorkspacesApi;
2218
- /** Triggers CRUD + fire, rotate-secret, runs. */
2219
- readonly triggers: TriggersApi;
2220
- /** Computers CRUD + lifecycle + exec/tmux/sftp + ports + users + env + pair. */
1825
+ /** Automations CRUD + fire, rotate-secret, runs. */
1826
+ readonly automations: AutomationsApi;
1827
+ /** Computers CRUD + lifecycle + exec/terminal/fs + ports + users + env + pair. */
2221
1828
  readonly computers: ComputersApi;
2222
1829
  /** Workspace secrets CRUD. */
2223
1830
  readonly secrets: SecretsApi;
2224
- /** Datastore (KV) — workspace key/value store for app + agent state. */
2225
- readonly kv: DatastoreApi;
2226
- /** Blobs — workspace object store for large / binary data. */
2227
- readonly blobs: BlobsApi;
2228
- /** Idapt Tables — structured document collections + records + query. */
2229
- readonly tables: TablesApi;
2230
1831
  /** Realtime — broadcast + presence + live SSE subscribe over channels. */
2231
1832
  readonly realtime: RealtimeApi;
2232
1833
  /** User-API-key CRUD (`uk_` keys). Header-auth (API-key transport) is rejected. */
@@ -2239,8 +1840,6 @@ declare class IdaptClient {
2239
1840
  readonly subscription: SubscriptionApi;
2240
1841
  /** Resource shares + the inverse `/shared-with-me` list. */
2241
1842
  readonly sharing: SharingApi;
2242
- /** Hub / store: search community items + install into a workspace. */
2243
- readonly store: StoreApi;
2244
1843
  /** LLM model catalogue. */
2245
1844
  readonly models: ModelsApi;
2246
1845
  /** User-owned BYOK and daemon-local model provider endpoints. */
@@ -2249,8 +1848,6 @@ declare class IdaptClient {
2249
1848
  readonly images: ImagesApi;
2250
1849
  /** Text-to-speech + transcription. */
2251
1850
  readonly audio: AudioApi;
2252
- /** Run + invoke serverless functions. */
2253
- readonly functions: FunctionsApi;
2254
1851
  /** Full-text search across user content. */
2255
1852
  readonly search: SearchApi;
2256
1853
  /** External web search. */
@@ -2327,4 +1924,4 @@ declare class IdaptClient {
2327
1924
  private navigate;
2328
1925
  }
2329
1926
 
2330
- export { type ListFilesQuery as $, type AddMemberInput as A, type BlobMeta as B, COMMAND_BINDINGS as C, DatastoreApi as D, type DeleteInvitationResult as E, type DeletedResult as F, type DeployFunctionFile as G, type DeployFunctionInput as H, IdaptClient as I, DocsApi as J, type ExecCommandInput as K, type ExecuteCommandOptions as L, FilesApi as M, type FireTriggerInput as N, type FunctionPermissionInput as O, FunctionsApi as P, type GenerateImageInput as Q, GuideApi as R, type GuideContent as S, type IdaptClientDeps as T, ImagesApi as U, type InstallStoreItemInput as V, type InvokeFunctionInput as W, type ListAgentsQuery as X, type ListApiKeysQuery as Y, type ListChatsQuery as Z, type ListComputersQuery as _, AgentsApi as a, type UpdateProviderEndpointInput as a$, type ListFunctionRunsQuery as a0, type ListFunctionsQuery as a1, type ListMessagesQuery as a2, type ListNotificationsQuery as a3, type ListResult as a4, type ListRunsQuery as a5, type ListSharedWithMeQuery as a6, type ListSharesQuery as a7, type ListTriggerRunsQuery as a8, type ListUsageHistoryQuery as a9, type SendNotificationResult as aA, SettingsApi as aB, type SftpInput as aC, type SftpListResult as aD, type SftpOp as aE, type SftpUploadInput as aF, SharingApi as aG, type SpeakInput as aH, type SseEvent as aI, StoreApi as aJ, type SubscribeOptions as aK, SubscriptionApi as aL, type TableQuery as aM, TablesApi as aN, type TmuxInput as aO, type TmuxOp as aP, type TranscribeInput as aQ, TriggersApi as aR, type UpdateAgentInput as aS, type UpdateApiKeyInput as aT, type UpdateChatInput as aU, type UpdateCollectionInput as aV, type UpdateComputerInput as aW, type UpdateComputerUserInput as aX, type UpdateFunctionInput as aY, type UpdateMemberInput as aZ, type UpdateNotificationInput as a_, ModelsApi as aa, type NotificationAudience as ab, type NotificationPreferenceUpdate as ac, NotificationsApi as ad, type PairComputerInput as ae, type PairComputerResult as af, type PatchFileInput as ag, type PatchPortInput as ah, type PresenceEntry as ai, type PresenceHeartbeatOptions as aj, type ProviderEndpointModelMappingInput as ak, ProviderEndpointsApi as al, RealtimeApi as am, type RealtimeEvent as an, type RemoveShareInput as ao, type RepromptMessageInput as ap, type RotateApiKeyInput as aq, type RotateApiKeyResult as ar, type RunFileInput as as, type RunFunctionInput as at, SearchApi as au, type SearchInput as av, type SearchStoreQuery as aw, SecretsApi as ax, type SendMessageInput as ay, type SendNotificationInput as az, ApiKeysApi as b, type UpdateSecretInput as b0, type UpdateSettingsInput as b1, type UpdateShareInput as b2, type UpdateWorkspaceInput as b3, type UploadInput as b4, UserApi as b5, type V1CommandName as b6, WebSearchApi as b7, type WebSearchInput as b8, WorkspacesApi as b9, type WritableMemberRole as ba, awaitOperation as bb, executeCommand as bc, getFileBlob as bd, getFileText as be, listFiles as bf, AudioApi as c, BlobsApi as d, type BlobsListOptions as e, type ChannelHandle as f, ChatsApi as g, type CommandBinding as h, ComputersApi as i, type CreateAgentInput as j, type CreateApiKeyInput as k, type CreateChatInput as l, type CreateCollectionInput as m, type CreateComputerInput as n, type CreateComputerUserInput as o, type CreateFolderInput as p, type CreateFunctionInput as q, type CreateInvitationInput as r, type CreateInvitationResult as s, type CreateProviderEndpointInput as t, type CreateSecretInput as u, type CreateShareInput as v, type CreateUserEnvVarInput as w, type CreateWorkspaceInput as x, type DatastoreListOptions as y, type DatastoreSetOptions as z };
1927
+ export { ModelsApi as $, type AddMemberInput as A, type FsListResult as B, COMMAND_BINDINGS as C, type DeleteInvitationResult as D, type ExecuteCommandOptions as E, FilesApi as F, type FsOp as G, type FsUploadInput as H, IdaptClient as I, GuideApi as J, type GuideContent as K, type IdaptClientDeps as L, ImagesApi as M, type ListAgentsQuery as N, type ListApiKeysQuery as O, type ListAutomationRunsQuery as P, type ListChatsQuery as Q, type ListComputersQuery as R, type ListFilesQuery as S, type ListMessagesQuery as T, type ListNotificationsQuery as U, type ListResult as V, type ListRunsQuery as W, type ListSharedWithMeQuery as X, type ListSharesQuery as Y, type ListUsageHistoryQuery as Z, type ListVoicesInput as _, AgentsApi as a, type NotificationAudience as a0, type NotificationPreferenceUpdate as a1, NotificationsApi as a2, type PairComputerInput as a3, type PairComputerResult as a4, type PatchFileInput as a5, type PatchPortInput as a6, type PresenceEntry as a7, type PresenceHeartbeatOptions as a8, type ProviderEndpointModelMappingInput as a9, type UpdateNotificationInput as aA, type UpdateProviderEndpointInput as aB, type UpdateSecretInput as aC, type UpdateSettingsInput as aD, type UpdateShareInput as aE, type UpdateWorkspaceInput as aF, type UploadInput as aG, UserApi as aH, type V1CommandName as aI, WebSearchApi as aJ, type WebSearchInput as aK, WorkspacesApi as aL, type WritableMemberRole as aM, awaitOperation as aN, executeCommand as aO, getFileBlob as aP, getFileText as aQ, listFiles as aR, ProviderEndpointsApi as aa, RealtimeApi as ab, type RealtimeEvent as ac, type RemoveShareInput as ad, type RepromptMessageInput as ae, type RotateApiKeyInput as af, type RotateApiKeyResult as ag, SearchApi as ah, type SearchInput as ai, SecretsApi as aj, type SendMessageInput as ak, type SendNotificationInput as al, type SendNotificationResult as am, SettingsApi as an, SharingApi as ao, type SseEvent as ap, type SubscribeOptions as aq, SubscriptionApi as ar, type TerminalInput as as, type TerminalOp as at, type UpdateAgentInput as au, type UpdateApiKeyInput as av, type UpdateChatInput as aw, type UpdateComputerInput as ax, type UpdateComputerUserInput as ay, type UpdateMemberInput as az, ApiKeysApi as b, AudioApi as c, AutomationsApi as d, type ChannelHandle as e, ChatsApi as f, type CommandBinding as g, ComputersApi as h, type CreateAgentInput as i, type CreateApiKeyInput as j, type CreateChatInput as k, type CreateComputerInput as l, type CreateComputerUserInput as m, type CreateFolderInput as n, type CreateInvitationInput as o, type CreateInvitationResult as p, type CreateProviderEndpointInput as q, type CreateSecretInput as r, type CreateShareInput as s, type CreateUserEnvVarInput as t, type CreateWorkspaceInput as u, type DeletedResult as v, DocsApi as w, type ExecCommandInput as x, type FireAutomationInput as y, type FsInput as z };