@agents24/node 0.5.9 → 0.5.10

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.
@@ -476,6 +476,12 @@ type RunStatus = {
476
476
  id: string;
477
477
  status: string;
478
478
  result?: unknown;
479
+ assistant_output?: {
480
+ text: string | null;
481
+ final_output: unknown;
482
+ final_output_available: boolean;
483
+ };
484
+ model_context_summary?: Record<string, unknown>;
479
485
  failure?: FailureView | null;
480
486
  checkpoint?: Record<string, unknown> | null;
481
487
  run_usage?: Record<string, unknown>;
@@ -737,6 +743,8 @@ type ResourcePackageImportUpload = ResourcePackageUpload & {
737
743
  };
738
744
  type ResourceInstallationPlanUpload = ResourcePackageUpload & {
739
745
  prune?: boolean;
746
+ integrationMode?: "publish-only" | "bff" | "client-deployment";
747
+ primaryResourceKey?: string;
740
748
  };
741
749
  type ResourceInstallationPullChange = {
742
750
  status: "A" | "M" | "D";
@@ -975,12 +983,18 @@ type ResourceInstallationCreateRequest = {
975
983
  package_name: string;
976
984
  operation_id: string;
977
985
  };
986
+ type ResourceInstallationApplication = {
987
+ integration_mode: "publish-only" | "bff" | "client-deployment";
988
+ primary_resource_key: string | null;
989
+ };
978
990
  type ResourceInstallationPlan = {
979
991
  installation_id: string | null;
980
992
  operation_id: string;
981
993
  package_id: string;
982
994
  package_name: string;
983
995
  package_hash: string;
996
+ application: ResourceInstallationApplication;
997
+ pending_selections: Array<Record<string, unknown>>;
984
998
  actions: Array<Record<string, unknown>>;
985
999
  external_requirements: Array<Record<string, unknown>>;
986
1000
  artifact_actions: Array<Record<string, unknown>>;
@@ -1392,4 +1406,4 @@ declare class Agents24 {
1392
1406
  graph(): GraphBuilder;
1393
1407
  }
1394
1408
 
1395
- export { type EffectiveResourcePolicy as $, Agents24 as A, type BackendSessionRequestOptions as B, type ClearCustomerResourcePolicyAssignmentResult as C, type ClientDeploymentListQuery as D, type ClientDeploymentListResponse as E, type ClientNativeProfile as F, type ClientRuntimeNativeProfileInput as G, type ClientRuntimeOidcConfig as H, type ClientRuntimePolicyInput as I, type ClientSessionCredentials as J, type ControlPlaneAgentRunRequest as K, type ControlPlaneRunEventsResponse as L, type ConversationRunRequest as M, type ConversationRunResult as N, type ConversationRuntimeSelectionRequest as O, type ConversationRuntimeSelectionResult as P, type ConversationThreadOptions as Q, type CreateBackendClientSessionRequest as R, type CreateClientDeploymentRequest as S, type CustomerIdentityRequest as T, type CustomerPrincipalRefRequest as U, type CustomerProfile as V, type CustomerProfileList as W, type CustomerProfilePatch as X, type CustomerProfileSearchOptions as Y, type CustomerResourcePolicyAssignment as Z, type EffectiveCustomerResourcePolicyRequest as _, type AgentCreateRequest as a, type ResourcePackageImportPreview as a$, type EmbedAgentAliasResolution as a0, type EmbedAttachmentContentAccessRequest as a1, type EmbedCustomerPrincipalResolveRequest as a2, type EmbedCustomerPrincipalResolveResponse as a3, type EmbedResourcePolicyRequest as a4, type EmbedRunCancelOptions as a5, type EmbedRunStartRequest as a6, type EmbedRuntimeBootstrap as a7, type EmbedStreamRequest as a8, type EmbeddedResponseFeedbackInput as a9, type ResourceCallableBindingStatus as aA, type ResourceCandidateList as aB, type ResourceInstallation as aC, type ResourceInstallationApplyRequest as aD, type ResourceInstallationBinding as aE, type ResourceInstallationCreateRequest as aF, type ResourceInstallationDeploymentRequest as aG, type ResourceInstallationLinkRequest as aH, type ResourceInstallationList as aI, type ResourceInstallationOperation as aJ, type ResourceInstallationPlan as aK, type ResourceInstallationPlanUpload as aL, type ResourceInstallationPublication as aM, type ResourceInstallationPublishRequest as aN, type ResourceInstallationPullAcceptRequest as aO, type ResourceInstallationPullChange as aP, type ResourceInstallationPullPayload as aQ, type ResourceInstallationPullPlan as aR, type ResourceInstallationResourceListOptions as aS, type ResourceInstallationSecretStatus as aT, type ResourceInstallationSecretsRequest as aU, type ResourcePackageArchive as aV, type ResourcePackageCandidateOptions as aW, type ResourcePackageDependency as aX, type ResourcePackageDiagnostic as aY, type ResourcePackageExportPlan as aZ, type ResourcePackageExportRequest as a_, type FailureCategory as aa, type FailureView as ab, type FeedbackRating as ac, type FeedbackReason as ad, GraphBuilder as ae, type GraphDefinition as af, type GraphEdge as ag, type GraphHints as ah, type GraphNode as ai, type GraphValueRef as aj, type HitlAction as ak, type HitlAnswer as al, type LatestOrPinnedPolicy as am, type McpAuthStartRequest as an, type McpAuthStartResult as ao, type MultiAgentThreadListRequest as ap, type MultiAgentThreadSummaryEventOptions as aq, type NativePlatform as ar, type NodeAuthoringSpec as as, type NodeCatalogItem as at, type NodeCatalogResponse as au, type NodeSchemaResponse as av, type PortableResourceKind as aw, type RequestOptions as ax, type ResetResourcePolicyQuotaRequest as ay, type ResourceCallableBinding as az, AgentDefinitionBuilder as b, type ResourcePackageImportResult as b0, type ResourcePackageImportUpload as b1, type ResourcePackageUpload as b2, type ResourcePackageValidationResult as b3, type ResourcePolicyList as b4, type ResourcePolicyQuotaSchedule as b5, type ResourcePolicyQuotaScheduleResult as b6, type ResourcePolicySubjectRef as b7, type ResourcePolicySummary as b8, type ResourceSelector as b9, type UpdateClientDeploymentRequest as bA, type WorkflowInputDefinition as bB, type ResourceToolExport as ba, type ResponseFeedback as bb, type ResponseFeedbackResult as bc, type ResumeRunRequest as bd, type RunCancelOptions as be, type RunContextOptions as bf, type RunStatus as bg, type RunTrace as bh, type ServerAttachmentUploadOptions as bi, type ServerEmbedAttachmentUploadOptions as bj, type SetCustomerResourcePolicyAssignmentRequest as bk, type SetResourcePolicyQuotaScheduleRequest as bl, type StartRunResult as bm, type StateVariableDefinition as bn, type StreamRequestOptions as bo, type StreamResult as bp, type ThreadDeleteOptions as bq, type ThreadDetailOptions as br, type ThreadListOptions as bs, type ThreadSummaryEventOptions as bt, type TraceContent as bu, type TraceError as bv, type TraceSpan as bw, type TraceSpanKind as bx, type TraceSpanStatus as by, type TraceView as bz, type AgentDefinitionOptions as c, type AgentListResponse as d, type AgentRef as e, type AgentResponse as f, type AgentStreamRequest as g, type AgentSummary as h, type AgentToolsetAttachment as i, type AgentUpdateRequest as j, type AgentValidationIssue as k, type AgentValidationResult as l, Agents24SDKError as m, type Agents24NodeErrorKind as n, type Agents24NodeOptions as o, type Agents24Options as p, type Agents24SDKErrorKind as q, type Agents24SDKSerializedError as r, type ArtifactDevelopmentSession as s, type ArtifactDevelopmentSessionAdmission as t, type ArtifactDevelopmentSessionPrepareRequest as u, type AttachRunRequest as v, type AttachmentContentAccessRequest as w, type BranchingHint as x, type ClientAuthMode as y, type ClientDeployment as z };
1409
+ export { type EffectiveResourcePolicy as $, Agents24 as A, type BackendSessionRequestOptions as B, type ClearCustomerResourcePolicyAssignmentResult as C, type ClientDeploymentListQuery as D, type ClientDeploymentListResponse as E, type ClientNativeProfile as F, type ClientRuntimeNativeProfileInput as G, type ClientRuntimeOidcConfig as H, type ClientRuntimePolicyInput as I, type ClientSessionCredentials as J, type ControlPlaneAgentRunRequest as K, type ControlPlaneRunEventsResponse as L, type ConversationRunRequest as M, type ConversationRunResult as N, type ConversationRuntimeSelectionRequest as O, type ConversationRuntimeSelectionResult as P, type ConversationThreadOptions as Q, type CreateBackendClientSessionRequest as R, type CreateClientDeploymentRequest as S, type CustomerIdentityRequest as T, type CustomerPrincipalRefRequest as U, type CustomerProfile as V, type CustomerProfileList as W, type CustomerProfilePatch as X, type CustomerProfileSearchOptions as Y, type CustomerResourcePolicyAssignment as Z, type EffectiveCustomerResourcePolicyRequest as _, type AgentCreateRequest as a, type ResourcePackageExportRequest as a$, type EmbedAgentAliasResolution as a0, type EmbedAttachmentContentAccessRequest as a1, type EmbedCustomerPrincipalResolveRequest as a2, type EmbedCustomerPrincipalResolveResponse as a3, type EmbedResourcePolicyRequest as a4, type EmbedRunCancelOptions as a5, type EmbedRunStartRequest as a6, type EmbedRuntimeBootstrap as a7, type EmbedStreamRequest as a8, type EmbeddedResponseFeedbackInput as a9, type ResourceCallableBindingStatus as aA, type ResourceCandidateList as aB, type ResourceInstallation as aC, type ResourceInstallationApplication as aD, type ResourceInstallationApplyRequest as aE, type ResourceInstallationBinding as aF, type ResourceInstallationCreateRequest as aG, type ResourceInstallationDeploymentRequest as aH, type ResourceInstallationLinkRequest as aI, type ResourceInstallationList as aJ, type ResourceInstallationOperation as aK, type ResourceInstallationPlan as aL, type ResourceInstallationPlanUpload as aM, type ResourceInstallationPublication as aN, type ResourceInstallationPublishRequest as aO, type ResourceInstallationPullAcceptRequest as aP, type ResourceInstallationPullChange as aQ, type ResourceInstallationPullPayload as aR, type ResourceInstallationPullPlan as aS, type ResourceInstallationResourceListOptions as aT, type ResourceInstallationSecretStatus as aU, type ResourceInstallationSecretsRequest as aV, type ResourcePackageArchive as aW, type ResourcePackageCandidateOptions as aX, type ResourcePackageDependency as aY, type ResourcePackageDiagnostic as aZ, type ResourcePackageExportPlan as a_, type FailureCategory as aa, type FailureView as ab, type FeedbackRating as ac, type FeedbackReason as ad, GraphBuilder as ae, type GraphDefinition as af, type GraphEdge as ag, type GraphHints as ah, type GraphNode as ai, type GraphValueRef as aj, type HitlAction as ak, type HitlAnswer as al, type LatestOrPinnedPolicy as am, type McpAuthStartRequest as an, type McpAuthStartResult as ao, type MultiAgentThreadListRequest as ap, type MultiAgentThreadSummaryEventOptions as aq, type NativePlatform as ar, type NodeAuthoringSpec as as, type NodeCatalogItem as at, type NodeCatalogResponse as au, type NodeSchemaResponse as av, type PortableResourceKind as aw, type RequestOptions as ax, type ResetResourcePolicyQuotaRequest as ay, type ResourceCallableBinding as az, AgentDefinitionBuilder as b, type ResourcePackageImportPreview as b0, type ResourcePackageImportResult as b1, type ResourcePackageImportUpload as b2, type ResourcePackageUpload as b3, type ResourcePackageValidationResult as b4, type ResourcePolicyList as b5, type ResourcePolicyQuotaSchedule as b6, type ResourcePolicyQuotaScheduleResult as b7, type ResourcePolicySubjectRef as b8, type ResourcePolicySummary as b9, type TraceView as bA, type UpdateClientDeploymentRequest as bB, type WorkflowInputDefinition as bC, type ResourceSelector as ba, type ResourceToolExport as bb, type ResponseFeedback as bc, type ResponseFeedbackResult as bd, type ResumeRunRequest as be, type RunCancelOptions as bf, type RunContextOptions as bg, type RunStatus as bh, type RunTrace as bi, type ServerAttachmentUploadOptions as bj, type ServerEmbedAttachmentUploadOptions as bk, type SetCustomerResourcePolicyAssignmentRequest as bl, type SetResourcePolicyQuotaScheduleRequest as bm, type StartRunResult as bn, type StateVariableDefinition as bo, type StreamRequestOptions as bp, type StreamResult as bq, type ThreadDeleteOptions as br, type ThreadDetailOptions as bs, type ThreadListOptions as bt, type ThreadSummaryEventOptions as bu, type TraceContent as bv, type TraceError as bw, type TraceSpan as bx, type TraceSpanKind as by, type TraceSpanStatus as bz, type AgentDefinitionOptions as c, type AgentListResponse as d, type AgentRef as e, type AgentResponse as f, type AgentStreamRequest as g, type AgentSummary as h, type AgentToolsetAttachment as i, type AgentUpdateRequest as j, type AgentValidationIssue as k, type AgentValidationResult as l, Agents24SDKError as m, type Agents24NodeErrorKind as n, type Agents24NodeOptions as o, type Agents24Options as p, type Agents24SDKErrorKind as q, type Agents24SDKSerializedError as r, type ArtifactDevelopmentSession as s, type ArtifactDevelopmentSessionAdmission as t, type ArtifactDevelopmentSessionPrepareRequest as u, type AttachRunRequest as v, type AttachmentContentAccessRequest as w, type BranchingHint as x, type ClientAuthMode as y, type ClientDeployment as z };
package/dist/index.cjs CHANGED
@@ -768,7 +768,9 @@ var ResourceInstallationsNamespace = class {
768
768
  formData.append("file", new Blob([archiveBytes]), filename);
769
769
  const response = await this.http.fetchOrThrow(
770
770
  this.http.url("/resource-installations/plan", {
771
- prune: upload.prune
771
+ prune: upload.prune,
772
+ integration_mode: upload.integrationMode,
773
+ primary_resource_key: upload.primaryResourceKey
772
774
  }),
773
775
  { method: "POST", headers: this.http.multipartHeaders(void 0, void 0, false), body: formData },
774
776
  "Failed to upload the Agents24 resource package."
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/errors.ts","../src/http.ts","../src/streams.ts","../src/agents.ts","../src/builders.ts","../src/client-runtime-admin.ts","../src/embed.ts","../src/generated/resourcePackages.ts","../src/generated/resourceInstallations.ts","../src/runs.ts","../src/generated/instructions.ts","../src/generated/resourcePolicies.ts","../src/generated/customerProfiles.ts","../src/client.ts","../src/generated/manifest.ts"],"names":["randomUUID","createSseParser","parseRuntimeSsePayload","parseThreadSummarySsePayload"],"mappings":"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","file":"index.cjs","sourcesContent":["export type Agents24SDKErrorKind = \"protocol\" | \"network\" | \"http\";\nexport type Agents24NodeErrorKind = Agents24SDKErrorKind;\nimport type { FailureView } from \"./types.js\";\n\nexport class Agents24SDKError extends Error {\n readonly kind: Agents24SDKErrorKind;\n readonly status?: number;\n readonly failure?: FailureView;\n readonly responseHeaders?: Readonly<Record<string, string>>;\n\n constructor(\n message: string,\n options: {\n kind: Agents24SDKErrorKind;\n status?: number;\n failure?: FailureView;\n responseHeaders?: Readonly<Record<string, string>>;\n cause?: unknown;\n },\n ) {\n super(message, { cause: options.cause });\n this.name = \"Agents24SDKError\";\n this.kind = options.kind;\n this.status = options.status;\n this.failure = options.failure;\n this.responseHeaders = options.responseHeaders;\n }\n\n get code(): string | undefined { return this.failure?.code; }\n get category(): string | undefined { return this.failure?.category; }\n get failureId(): string | undefined { return this.failure?.failure_id; }\n get requestId(): string | undefined { return this.failure?.request_id ?? undefined; }\n get retryable(): boolean { return this.failure?.retryable ?? false; }\n get retryAfterMs(): number | undefined { return this.failure?.retry_after_ms ?? undefined; }\n get details(): Readonly<Record<string, unknown>> { return this.failure?.details ?? {}; }\n}\n\nexport { Agents24SDKError as Agents24NodeError };\n","import { randomUUID } from \"node:crypto\";\n\nimport { Agents24SDKError } from \"./errors.js\";\nimport type { Agents24NodeOptions, FailureView, RequestOptions } from \"./types.js\";\n\nfunction required(value: string, name: string): string {\n const normalized = String(value || \"\").trim();\n if (!normalized) throw new Agents24SDKError(`Agents24 requires ${name}.`, { kind: \"protocol\" });\n return normalized;\n}\n\nfunction normalizeBaseUrl(value: string): string {\n try {\n return new URL(required(value, \"baseUrl\")).toString().replace(/\\/+$/, \"\");\n } catch (cause) {\n if (cause instanceof Agents24SDKError) throw cause;\n throw new Agents24SDKError(\"Agents24 received an invalid baseUrl.\", { kind: \"protocol\", cause });\n }\n}\n\nasync function errorDetails(response: Response): Promise<unknown> {\n const text = await response.text().catch(() => \"\");\n if (!text) return null;\n try { return JSON.parse(text) as unknown; }\n catch { return text; }\n}\n\nfunction failureView(value: unknown): FailureView | undefined {\n if (!value || typeof value !== \"object\" || Array.isArray(value)) return undefined;\n const candidate = value as Record<string, unknown>;\n return candidate.schema_version === \"agents24.failure.v1\"\n && typeof candidate.failure_id === \"string\"\n && typeof candidate.code === \"string\"\n && typeof candidate.category === \"string\"\n && typeof candidate.message === \"string\"\n && typeof candidate.retryable === \"boolean\"\n && candidate.details !== null\n && typeof candidate.details === \"object\"\n && !Array.isArray(candidate.details)\n ? candidate as FailureView\n : undefined;\n}\n\nfunction responseHeaders(response: Response): Record<string, string> {\n const headers: Record<string, string> = {};\n for (const name of [\"dpop-nonce\", \"retry-after\", \"www-authenticate\", \"x-request-id\"]) {\n const value = response.headers.get(name);\n if (value) headers[name] = value;\n }\n return headers;\n}\n\nexport async function assertOk(response: Response): Promise<void> {\n if (response.ok) return;\n const failure = failureView(await errorDetails(response));\n throw new Agents24SDKError(failure?.message || \"Agents24 request failed.\", {\n kind: \"http\",\n status: response.status,\n failure,\n responseHeaders: responseHeaders(response),\n });\n}\n\nexport type RequestConfig = {\n method?: string;\n query?: Record<string, unknown>;\n body?: unknown;\n headers?: HeadersInit;\n options?: RequestOptions;\n mutation?: boolean;\n};\n\nexport class Agents24HttpClient {\n private readonly base: string;\n private readonly apiKey: string;\n private readonly fetchImpl: typeof fetch;\n\n constructor(options: Agents24NodeOptions) {\n if (typeof process === \"undefined\" || process.release?.name !== \"node\") {\n throw new Agents24SDKError(\"@agents24/node is for trusted server runtimes only.\", { kind: \"protocol\" });\n }\n this.base = normalizeBaseUrl(options.baseUrl);\n this.apiKey = required(options.apiKey, \"apiKey\");\n if (typeof options.fetchImpl !== \"function\" && typeof fetch !== \"function\") {\n throw new Agents24SDKError(\"No fetch implementation is available. Use Node 22 or 24.\", { kind: \"protocol\" });\n }\n this.fetchImpl = options.fetchImpl || fetch;\n }\n\n url(requestPath: string, query?: Record<string, unknown>): string {\n const url = new URL(`${this.base}${requestPath}`);\n for (const [key, value] of Object.entries(query || {})) {\n if (value === undefined || value === null || value === \"\") continue;\n if (Array.isArray(value)) {\n for (const item of value) {\n if (item !== undefined && item !== null && item !== \"\") url.searchParams.append(key, String(item));\n }\n } else {\n url.searchParams.set(key, String(value));\n }\n }\n return url.toString();\n }\n\n jsonHeaders(extra?: HeadersInit, options?: RequestOptions, mutation = false): HeadersInit {\n return {\n Authorization: `Bearer ${this.apiKey}`,\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n \"X-SDK-Contract\": \"1\",\n ...(mutation ? { \"Idempotency-Key\": options?.idempotencyKey || randomUUID() } : {}),\n ...(options?.requestMetadata ? { \"X-Request-Metadata\": JSON.stringify(options.requestMetadata) } : {}),\n ...(extra || {}),\n };\n }\n\n streamHeaders(extra?: HeadersInit, options?: RequestOptions, mutation = false): HeadersInit {\n return this.jsonHeaders({ Accept: \"text/event-stream\", ...(extra || {}) }, options, mutation);\n }\n\n multipartHeaders(extra?: HeadersInit, options?: RequestOptions, mutation = false): HeadersInit {\n return {\n Authorization: `Bearer ${this.apiKey}`,\n Accept: \"application/json\",\n \"X-SDK-Contract\": \"1\",\n ...(mutation ? { \"Idempotency-Key\": options?.idempotencyKey || randomUUID() } : {}),\n ...(extra || {}),\n };\n }\n\n async requestJson<T>(requestPath: string, config: RequestConfig = {}): Promise<T> {\n const query = { ...(config.query || {}) };\n if (config.options?.dryRun !== undefined) query.dry_run = config.options.dryRun;\n if (config.options?.validateOnly !== undefined) query.validate_only = config.options.validateOnly;\n const response = await this.fetchOrThrow(this.url(requestPath, query), {\n method: config.method || \"GET\",\n headers: this.jsonHeaders(config.headers, config.options, Boolean(config.mutation)),\n ...(config.body === undefined ? {} : { body: JSON.stringify(config.body) }),\n }, \"Failed to connect to the Agents24 API.\");\n await assertOk(response);\n return await response.json() as T;\n }\n\n async fetchOrThrow(url: string, init: RequestInit, message: string): Promise<Response> {\n try { return await this.fetchImpl(url, init); }\n catch (cause) {\n if (cause instanceof Agents24SDKError) throw cause;\n throw new Agents24SDKError(message, { kind: \"network\", cause });\n }\n }\n}\n","import {\n createSseParser,\n parseRuntimeSsePayload,\n parseThreadSummarySsePayload,\n} from \"@agents24/client/protocol\";\nimport type { RuntimeEvent, ThreadSummaryEvent } from \"@agents24/client/protocol\";\n\nimport { Agents24SDKError } from \"./errors.js\";\n\nasync function consumePayloads(\n response: Response,\n onPayload: (payload: string) => void | Promise<void>,\n signal?: AbortSignal,\n): Promise<void> {\n if (!response.body) {\n throw new Agents24SDKError(\"Stream response did not include a readable body.\", { kind: \"protocol\" });\n }\n const reader = response.body.getReader();\n const parser = createSseParser({ decoder: new TextDecoder(), onPayload, signal });\n const abort = () => { void reader.cancel(signal?.reason).catch(() => undefined); };\n if (signal?.aborted) return abort();\n signal?.addEventListener(\"abort\", abort, { once: true });\n try {\n while (!signal?.aborted) {\n const { done, value } = await reader.read();\n if (value) await parser.push(value);\n if (done) break;\n }\n if (!signal?.aborted) await parser.finish();\n } finally {\n signal?.removeEventListener(\"abort\", abort);\n reader.releaseLock();\n }\n}\n\nexport async function consumeRuntimeEventStream(\n response: Response,\n onEvent?: (event: RuntimeEvent) => void | Promise<void>,\n signal?: AbortSignal,\n): Promise<void> {\n await consumePayloads(response, async (payload) => {\n const event = parseRuntimeSsePayload(payload);\n if (onEvent) await onEvent(event);\n }, signal);\n}\n\nexport async function consumeThreadSummaryEventStream(\n response: Response,\n onEvent: (event: ThreadSummaryEvent) => void | Promise<void>,\n signal?: AbortSignal,\n): Promise<void> {\n await consumePayloads(response, async (payload) => {\n await onEvent(parseThreadSummarySsePayload(payload));\n }, signal);\n}\n","import { assertOk, type Agents24HttpClient } from \"./http.js\";\nimport { consumeRuntimeEventStream } from \"./streams.js\";\nimport type {\n AgentCreateRequest,\n AgentListResponse,\n AgentResponse,\n AgentStreamRequest,\n ControlPlaneAgentRunRequest,\n AgentUpdateRequest,\n AttachmentUploadResult,\n AttachmentContentAccess,\n AttachmentContentAccessRequest,\n GraphDefinition,\n NodeCatalogResponse,\n NodeSchemaResponse,\n AgentValidationResult,\n RequestOptions,\n RunCancelOptions,\n RunCancelResult,\n RuntimeEvent,\n ServerAttachmentUploadOptions,\n StartRunResult,\n StreamRequestOptions,\n StreamResult,\n} from \"./types.js\";\n\nexport type ListAgentsOptions = { status?: string; skip?: number; limit?: number; view?: \"summary\" | \"full\" | string };\n\nexport class AgentsNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n\n list(options: ListAgentsOptions = {}): Promise<AgentListResponse> {\n return this.http.requestJson(\"/agents\", { query: { status: options.status, skip: options.skip ?? 0, limit: options.limit ?? 20, view: options.view ?? \"summary\" } });\n }\n get(agentId: string): Promise<AgentResponse> { return this.http.requestJson(`/agents/${agentId}`); }\n create(request: AgentCreateRequest, options?: RequestOptions): Promise<AgentResponse> {\n return this.http.requestJson(\"/agents\", { method: \"POST\", body: request, options, mutation: true });\n }\n update(agentId: string, request: AgentUpdateRequest, options?: RequestOptions): Promise<AgentResponse> {\n return this.http.requestJson(`/agents/${agentId}`, { method: \"PATCH\", body: request, options, mutation: true });\n }\n updateGraph(agentId: string, graph: GraphDefinition, options?: RequestOptions): Promise<AgentResponse> {\n return this.http.requestJson(`/agents/${agentId}/graph`, { method: \"PUT\", body: graph, options, mutation: true });\n }\n delete(agentId: string, options?: RequestOptions): Promise<unknown> {\n return this.http.requestJson(`/agents/${agentId}`, { method: \"DELETE\", options, mutation: true });\n }\n catalog(): Promise<NodeCatalogResponse> { return this.http.requestJson(\"/agents/nodes/catalog\"); }\n schema(nodeTypes: string[]): Promise<NodeSchemaResponse> {\n return this.http.requestJson(\"/agents/nodes/schema\", { method: \"POST\", body: { node_types: nodeTypes } });\n }\n validate(agentId: string): Promise<AgentValidationResult> {\n return this.http.requestJson(`/agents/${agentId}/validate`, { method: \"POST\", body: {} });\n }\n publish(agentId: string, options?: RequestOptions): Promise<AgentResponse> {\n return this.http.requestJson(`/agents/${agentId}/publish`, { method: \"POST\", body: {}, options, mutation: true });\n }\n startRun(agentId: string, payload: ControlPlaneAgentRunRequest, options?: RequestOptions): Promise<StartRunResult> {\n return this.http.requestJson(`/agents/${agentId}/run`, { method: \"POST\", body: payload, options, mutation: true });\n }\n async stream(\n agentId: string,\n payload: AgentStreamRequest,\n onEvent?: (event: RuntimeEvent) => void | Promise<void>,\n mode?: \"debug\" | \"production\" | string,\n options: StreamRequestOptions = {},\n ): Promise<StreamResult> {\n const response = await this.http.fetchOrThrow(this.http.url(`/agents/${agentId}/stream`, { mode }), {\n method: \"POST\", headers: this.http.streamHeaders(), body: JSON.stringify(payload), signal: options.signal,\n }, \"Failed to connect to the agent stream endpoint.\");\n await assertOk(response);\n let runId = response.headers.get(\"X-Run-ID\");\n await consumeRuntimeEventStream(response, async (event) => { runId ||= event.run_id; if (onEvent) await onEvent(event); }, options.signal);\n return { threadId: response.headers.get(\"X-Thread-ID\"), runId };\n }\n resumeRun(runId: string, payload: Record<string, unknown>, options?: RequestOptions): Promise<Record<string, unknown>> {\n return this.http.requestJson(`/agents/runs/${runId}/resume`, { method: \"POST\", body: payload, options, mutation: true });\n }\n cancelRun(runId: string, options: RunCancelOptions = {}): Promise<RunCancelResult> {\n return this.http.requestJson(`/agents/runs/${runId}/cancel`, { method: \"POST\", body: { assistant_output_text: options.assistantOutputText }, mutation: true });\n }\n async uploadAttachments(agentId: string, options: ServerAttachmentUploadOptions): Promise<AttachmentUploadResult> {\n const form = new FormData();\n if (options.threadId) form.set(\"thread_id\", options.threadId);\n if (options.agentVersionId) form.set(\"agent_version_id\", options.agentVersionId);\n for (const file of options.files) form.append(\"files\", file, file.name);\n const response = await this.http.fetchOrThrow(this.http.url(`/agents/${agentId}/attachments/upload`), {\n method: \"POST\", headers: this.http.multipartHeaders(), body: form,\n }, \"Failed to connect to the agent attachment endpoint.\");\n await assertOk(response);\n return await response.json() as AttachmentUploadResult;\n }\n createAttachmentContentAccess(\n agentId: string,\n attachmentId: string,\n request: AttachmentContentAccessRequest,\n options?: RequestOptions,\n ): Promise<AttachmentContentAccess> {\n return this.http.requestJson(\n `/agents/${agentId}/attachments/${attachmentId}/content-access`,\n { method: \"POST\", body: request, options, mutation: true },\n );\n }\n}\n","import type { AgentsNamespace } from \"./agents.js\";\nimport type {\n AgentCreateRequest,\n AgentDefinitionOptions,\n AgentRef,\n AgentResponse,\n GraphDefinition,\n GraphEdge,\n GraphNode,\n RequestOptions,\n} from \"./types.js\";\n\nfunction refId(ref: AgentRef): string { return typeof ref === \"string\" ? ref : ref.id; }\nfunction refs(values: AgentRef[] | undefined): string[] { return [...new Set((values || []).map(refId).filter(Boolean))]; }\nfunction graphNode(id: string, type: string, x: number, y: number, config: Record<string, unknown> = {}): GraphNode {\n return { id, type, position: { x, y }, config };\n}\n\nfunction toolsetAttachments(options: AgentDefinitionOptions): Array<Record<string, unknown>> {\n const seen = new Set<string>();\n return (options.toolsetAttachments || []).flatMap((attachment) => {\n const id = refId(attachment.toolset);\n if (!id || seen.has(id)) return [];\n seen.add(id);\n const normalized: Record<string, unknown> = {\n toolset_id: id,\n loading_mode: attachment.loadingMode || \"static\",\n };\n const policy = attachment.versionPolicy;\n if (policy) {\n normalized.version_policy = policy.mode === \"pinned\"\n ? { mode: \"pinned\", version_id: policy.versionId }\n : { mode: \"latest_published\" };\n }\n return [normalized];\n });\n}\n\nexport class AgentDefinitionBuilder {\n constructor(private readonly agents: AgentsNamespace, private readonly options: AgentDefinitionOptions) {}\n toGraph(): GraphDefinition {\n const agentConfig: Record<string, unknown> = {\n instructions: this.options.instructions || \"\",\n tools: refs(this.options.tools),\n toolset_attachments: toolsetAttachments(this.options),\n input_sources: [{ id: \"workflow-text\", value_ref: { namespace: \"workflow_input\", key: \"text\", label: \"Workflow input / Text\" } }],\n };\n if (this.options.model) agentConfig.model_id = refId(this.options.model);\n return {\n spec_version: \"4.0\",\n graph_type: \"agent\",\n workflow_contract: { inputs: [] },\n state_contract: { variables: [] },\n nodes: [\n graphNode(\"start\", \"start\", 0, 0),\n graphNode(\"agent\", \"agent\", 260, 0, agentConfig),\n graphNode(\"end\", \"end\", 520, 0, {\n output_schema: {\n name: \"workflow_result\", mode: \"simple\",\n schema: { type: \"object\", additionalProperties: false, properties: { response: { type: \"string\" } }, required: [\"response\"] },\n },\n output_bindings: [{ json_pointer: \"/response\", value_ref: { namespace: \"node_output\", node_id: \"agent\", key: \"output_text\", label: \"Agent response\" } }],\n }),\n ],\n edges: [\n { id: \"start-agent\", source: \"start\", target: \"agent\", type: \"control\" },\n { id: \"agent-end\", source: \"agent\", target: \"end\", type: \"control\" },\n ],\n };\n }\n toCreateRequest(): AgentCreateRequest {\n const knowledge = refs(this.options.knowledge);\n return {\n name: this.options.name,\n description: this.options.description ?? null,\n graph_definition: this.toGraph(),\n memory_config: {\n ...(this.options.memory || {}),\n ...(knowledge.length ? { long_term_enabled: true, long_term_index_id: knowledge[0], knowledge_refs: knowledge } : {}),\n },\n execution_constraints: this.options.execution || {},\n };\n }\n create(options?: RequestOptions): Promise<AgentResponse> { return this.agents.create(this.toCreateRequest(), options); }\n}\n\nexport class GraphBuilder {\n private readonly nodes = new Map<string, GraphNode>();\n private readonly edges: GraphEdge[] = [];\n node(type: string, config: Record<string, unknown> = {}, options: { id?: string; x?: number; y?: number; label?: string } = {}): GraphNode {\n const id = options.id || `${type}_${this.nodes.size + 1}`;\n if (this.nodes.has(id)) throw new Error(`Duplicate graph node id: ${id}`);\n const value = graphNode(id, type, options.x ?? this.nodes.size * 260, options.y ?? 0, config);\n if (options.label) value.label = options.label;\n this.nodes.set(id, value);\n return value;\n }\n connect(source: GraphNode | string, target: GraphNode | string, options: { id?: string; sourceHandle?: string; targetHandle?: string; type?: \"control\" | \"data\"; condition?: string } = {}): this {\n const sourceId = typeof source === \"string\" ? source : source.id;\n const targetId = typeof target === \"string\" ? target : target.id;\n if (!this.nodes.has(sourceId)) throw new Error(`Unknown source node id: ${sourceId}`);\n if (!this.nodes.has(targetId)) throw new Error(`Unknown target node id: ${targetId}`);\n this.edges.push({\n id: options.id || `${sourceId}-${targetId}`, source: sourceId, target: targetId, type: options.type || \"control\",\n source_handle: options.sourceHandle, target_handle: options.targetHandle,\n condition: options.condition,\n });\n return this;\n }\n toGraph(): GraphDefinition {\n return {\n spec_version: \"4.0\", graph_type: \"agent\", workflow_contract: { inputs: [] }, state_contract: { variables: [] },\n nodes: [...this.nodes.values()], edges: [...this.edges],\n };\n }\n}\n","import type { Agents24HttpClient } from \"./http.js\";\nimport type {\n BackendSessionRequestOptions,\n ClientDeployment,\n ClientDeploymentListQuery,\n ClientDeploymentListResponse,\n ClientSessionCredentials,\n CreateBackendClientSessionRequest,\n CreateClientDeploymentRequest,\n RequestOptions,\n UpdateClientDeploymentRequest,\n} from \"./types.js\";\n\nexport class ClientDeploymentsNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n\n create(request: CreateClientDeploymentRequest, options?: RequestOptions): Promise<ClientDeployment> {\n return this.http.requestJson<ClientDeployment>(\"/client-runtime/deployments\", {\n method: \"POST\", body: request, options, mutation: true,\n });\n }\n\n list(query: ClientDeploymentListQuery): Promise<ClientDeploymentListResponse> {\n const params = new URLSearchParams({ agent_id: query.agentId });\n if (query.lifecycleStatus) params.set(\"lifecycle_status\", query.lifecycleStatus);\n if (query.cursor) params.set(\"cursor\", query.cursor);\n if (query.limit !== undefined) params.set(\"limit\", String(query.limit));\n return this.http.requestJson<ClientDeploymentListResponse>(\n `/client-runtime/deployments?${params.toString()}`,\n );\n }\n\n get(deploymentId: string): Promise<ClientDeployment> {\n return this.http.requestJson<ClientDeployment>(`/client-runtime/deployments/${deploymentId}`);\n }\n\n update(deploymentId: string, request: UpdateClientDeploymentRequest, options?: RequestOptions): Promise<ClientDeployment> {\n return this.http.requestJson<ClientDeployment>(`/client-runtime/deployments/${deploymentId}`, {\n method: \"PATCH\", body: request, options, mutation: true,\n });\n }\n\n delete(deploymentId: string, options?: RequestOptions): Promise<ClientDeployment> {\n return this.http.requestJson<ClientDeployment>(`/client-runtime/deployments/${deploymentId}`, {\n method: \"DELETE\", options, mutation: true,\n });\n }\n}\n\nexport class ClientSessionsNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n\n createBackendSession(\n deploymentId: string,\n request: CreateBackendClientSessionRequest,\n options?: BackendSessionRequestOptions,\n ): Promise<ClientSessionCredentials> {\n return this.http.requestJson<ClientSessionCredentials>(\n `/client-runtime/deployments/${deploymentId}/session-tokens`,\n {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n headers: options?.dpopProof ? { DPoP: options.dpopProof } : undefined,\n },\n );\n }\n}\n","import { assertOk, type Agents24HttpClient } from \"./http.js\";\nimport { consumeRuntimeEventStream, consumeThreadSummaryEventStream } from \"./streams.js\";\nimport type {\n AttachRunRequest,\n AttachmentUploadResult,\n AttachmentContentAccess,\n EmbedAttachmentContentAccessRequest,\n EmbedRuntimeBootstrap,\n EmbedAgentAliasResolution,\n EmbeddedResponseFeedbackInput,\n EmbedCustomerPrincipalResolveRequest,\n EmbedCustomerPrincipalResolveResponse,\n EmbedResourcePolicyRequest,\n EmbedRunCancelOptions,\n EmbedStreamRequest,\n EmbedRunStartRequest,\n McpAuthStartRequest,\n McpAuthStartResult,\n MultiAgentThreadListRequest,\n ConversationRuntimeSelectionRequest,\n ConversationRuntimeSelectionResult,\n ConversationRunRequest,\n ConversationRunResult,\n ConversationThreadOptions,\n MultiAgentThreadSummaryEventOptions,\n RequestOptions,\n ResumeRunRequest,\n RunCancelResult,\n RunContext,\n RunContextOptions,\n RunResumeResult,\n EffectiveResourcePolicy,\n ResponseFeedbackResult,\n RuntimeEvent,\n ServerEmbedAttachmentUploadOptions,\n StreamRequestOptions,\n StreamResult,\n StartRunResult,\n ThreadDeleteOptions,\n ThreadDeleteResult,\n ThreadDetail,\n ThreadDetailOptions,\n ThreadListOptions,\n ThreadSummaryEvent,\n ThreadSummaryEventOptions,\n ThreadsResponse,\n} from \"./types.js\";\n\nexport class EmbedNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n\n async streamAgent(\n agentId: string,\n payload: EmbedStreamRequest,\n onEvent?: (event: RuntimeEvent) => void | Promise<void>,\n options: StreamRequestOptions = {},\n ): Promise<StreamResult> {\n return this.stream(`/public/embed/agents/${agentId}/chat/stream`, payload, onEvent, options);\n }\n\n startAgentRun(\n agentId: string,\n payload: EmbedRunStartRequest,\n options?: RequestOptions,\n ): Promise<StartRunResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs`, {\n method: \"POST\",\n body: payload,\n options,\n mutation: true,\n });\n }\n\n async attachAgentRun(\n agentId: string,\n runId: string,\n payload: AttachRunRequest,\n onEvent?: (event: RuntimeEvent) => void | Promise<void>,\n options: StreamRequestOptions = {},\n ): Promise<StreamResult> {\n return this.stream(`/public/embed/agents/${agentId}/runs/${runId}/stream`, payload, onEvent, options);\n }\n\n private async stream(\n path: string,\n payload: unknown,\n onEvent: ((event: RuntimeEvent) => void | Promise<void>) | undefined,\n options: StreamRequestOptions,\n ): Promise<StreamResult> {\n const response = await this.http.fetchOrThrow(this.http.url(path), {\n method: \"POST\",\n headers: this.http.streamHeaders(undefined, options, true),\n body: JSON.stringify(payload),\n signal: options.signal,\n }, \"Failed to connect to the embedded-agent stream endpoint.\");\n await assertOk(response);\n let runId = response.headers.get(\"X-Run-ID\");\n await consumeRuntimeEventStream(response, async (event) => { runId ||= event.run_id; if (onEvent) await onEvent(event); }, options.signal);\n return { threadId: response.headers.get(\"X-Thread-ID\"), runId };\n }\n\n resumeAgentRun(agentId: string, runId: string, payload: ResumeRunRequest, options?: RequestOptions): Promise<RunResumeResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs/${runId}/resume`, { method: \"POST\", body: payload, options, mutation: true });\n }\n startAgentRunMcpAuth(agentId: string, runId: string, serverId: string, payload: McpAuthStartRequest, options?: RequestOptions): Promise<McpAuthStartResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs/${runId}/mcp/servers/${serverId}/auth/start`, { method: \"POST\", body: payload, options, mutation: true });\n }\n getRuntimeBootstrap(agentId: string, agentVersionId?: string, runtimeTarget: \"draft\" | \"published\" = \"published\"): Promise<EmbedRuntimeBootstrap> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runtime/bootstrap`, {\n query: { agent_version_id: agentVersionId, runtime_target: runtimeTarget },\n });\n }\n resolveAgentAlias(agentAlias: string): Promise<EmbedAgentAliasResolution> {\n return this.http.requestJson(\"/public/embed/resolve-agent-alias\", {\n method: \"POST\",\n body: { agent_alias: agentAlias },\n });\n }\n resolveCustomerPrincipal(request: EmbedCustomerPrincipalResolveRequest): Promise<EmbedCustomerPrincipalResolveResponse> {\n return this.http.requestJson(\"/public/embed/customer-principals/resolve\", {\n method: \"POST\",\n body: request,\n });\n }\n getResourcePolicy(agentId: string, request: EmbedResourcePolicyRequest): Promise<EffectiveResourcePolicy> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/resource-policy`, {\n method: \"POST\",\n body: request,\n });\n }\n listAgentThreads(agentId: string, options: ThreadListOptions): Promise<ThreadsResponse> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/threads`, { query: {\n external_user_id: options.externalUserId,\n external_session_id: options.externalSessionId,\n skip: options.skip ?? 0,\n limit: options.limit ?? 20,\n runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n } });\n }\n listAgentThreadsMulti(options: MultiAgentThreadListRequest): Promise<ThreadsResponse> {\n return this.http.requestJson(\"/public/embed/threads/query\", { method: \"POST\", body: options });\n }\n async subscribeAgentThreadEvents(\n agentId: string,\n options: ThreadSummaryEventOptions,\n onEvent: (event: ThreadSummaryEvent) => void | Promise<void>,\n ): Promise<void> {\n const response = await this.http.fetchOrThrow(this.http.url(`/public/embed/agents/${agentId}/threads/events`, {\n external_user_id: options.externalUserId, external_session_id: options.externalSessionId, cursor: options.cursor,\n runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n }), { method: \"GET\", headers: this.http.streamHeaders(), signal: options.signal }, \"Failed to connect to the embedded-agent thread event endpoint.\");\n await assertOk(response);\n await consumeThreadSummaryEventStream(response, onEvent, options.signal);\n }\n async subscribeAgentThreadEventsMulti(\n options: MultiAgentThreadSummaryEventOptions,\n onEvent: (event: ThreadSummaryEvent) => void | Promise<void>,\n ): Promise<void> {\n const response = await this.http.fetchOrThrow(this.http.url(\"/public/embed/threads/events\", {\n agent_ids: options.agentIds, external_user_id: options.externalUserId, external_session_id: options.externalSessionId, cursor: options.cursor,\n runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n }), { method: \"GET\", headers: this.http.streamHeaders(), signal: options.signal }, \"Failed to connect to the embedded-agent thread event endpoint.\");\n await assertOk(response);\n await consumeThreadSummaryEventStream(response, onEvent, options.signal);\n }\n getConversationThread(threadId: string, options: ConversationThreadOptions): Promise<ThreadDetail> {\n return this.http.requestJson(`/public/embed/threads/${threadId}`, { query: {\n agent_ids: options.agentIds,\n external_user_id: options.externalUserId,\n external_session_id: options.externalSessionId,\n integration_id: options.integrationId,\n before_turn_index: options.beforeTurnIndex,\n limit: options.limit,\n runtime_target: options.runtimeTarget,\n } });\n }\n setConversationRuntimeSelection(threadId: string, request: ConversationRuntimeSelectionRequest): Promise<ConversationRuntimeSelectionResult> {\n return this.http.requestJson(`/public/embed/threads/${threadId}/runtime-selection`, { method: \"PATCH\", body: request, mutation: true });\n }\n resolveConversationRun(runId: string, request: ConversationRunRequest): Promise<ConversationRunResult> {\n return this.http.requestJson(`/public/embed/runs/${runId}/resolve`, { method: \"POST\", body: request });\n }\n deleteConversationThread(threadId: string, options: ConversationThreadOptions, requestOptions?: RequestOptions): Promise<ThreadDeleteResult> {\n return this.http.requestJson(`/public/embed/threads/${threadId}`, { method: \"DELETE\", query: {\n agent_ids: options.agentIds,\n external_user_id: options.externalUserId,\n external_session_id: options.externalSessionId,\n integration_id: options.integrationId,\n runtime_target: options.runtimeTarget,\n }, options: requestOptions, mutation: true });\n }\n getAgentThread(agentId: string, threadId: string, options: ThreadDetailOptions): Promise<ThreadDetail> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/threads/${threadId}`, { query: {\n external_user_id: options.externalUserId,\n external_session_id: options.externalSessionId,\n before_turn_index: options.beforeTurnIndex,\n limit: options.limit,\n include_subthreads: options.includeSubthreads,\n subthread_depth: options.subthreadDepth,\n subthread_turn_limit: options.subthreadTurnLimit,\n subthread_child_limit: options.subthreadChildLimit,\n runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n } });\n }\n deleteAgentThread(\n agentId: string,\n threadId: string,\n options: ThreadDeleteOptions,\n requestOptions?: RequestOptions,\n ): Promise<ThreadDeleteResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/threads/${threadId}`, { method: \"DELETE\", query: {\n external_user_id: options.externalUserId, external_session_id: options.externalSessionId, runtime_target: options.runtimeTarget, integration_id: options.integrationId,\n }, options: requestOptions, mutation: true });\n }\n getAgentRunContext(agentId: string, runId: string, options: RunContextOptions): Promise<RunContext> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs/${runId}/context`, { query: {\n external_user_id: options.externalUserId, external_session_id: options.externalSessionId, runtime_target: options.runtimeTarget, integration_id: options.integrationId,\n } });\n }\n cancelAgentRun(\n agentId: string,\n runId: string,\n options: EmbedRunCancelOptions,\n requestOptions?: RequestOptions,\n ): Promise<RunCancelResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs/${runId}/cancel`, { method: \"POST\", query: {\n external_user_id: options.externalUserId, external_session_id: options.externalSessionId, runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n }, body: {}, options: requestOptions, mutation: true });\n }\n setAgentRunFeedback(\n agentId: string,\n runId: string,\n payload: EmbeddedResponseFeedbackInput,\n ): Promise<ResponseFeedbackResult> {\n return this.http.requestJson(\n `/public/embed/agents/${agentId}/runs/${runId}/feedback`,\n { method: \"PUT\", body: payload, mutation: true },\n );\n }\n async uploadAgentAttachments(agentId: string, options: ServerEmbedAttachmentUploadOptions): Promise<AttachmentUploadResult> {\n const form = new FormData();\n form.set(\"external_user_id\", options.externalUserId);\n if (options.externalSessionId) form.set(\"external_session_id\", options.externalSessionId);\n if (options.threadId) form.set(\"thread_id\", options.threadId);\n if (options.runtimeTarget) form.set(\"runtime_target\", options.runtimeTarget);\n if (options.integrationId) form.set(\"integration_id\", options.integrationId);\n for (const file of options.files) form.append(\"files\", file, file.name);\n const response = await this.http.fetchOrThrow(this.http.url(`/public/embed/agents/${agentId}/attachments/upload`), {\n method: \"POST\",\n headers: this.http.multipartHeaders(undefined, { idempotencyKey: options.idempotencyKey }, true),\n body: form,\n }, \"Failed to connect to the embedded-agent attachment endpoint.\");\n await assertOk(response);\n return await response.json() as AttachmentUploadResult;\n }\n createAttachmentContentAccess(\n agentId: string,\n attachmentId: string,\n request: EmbedAttachmentContentAccessRequest,\n options?: RequestOptions,\n ): Promise<AttachmentContentAccess> {\n return this.http.requestJson(\n `/public/embed/agents/${agentId}/attachments/${attachmentId}/content-access`,\n { method: \"POST\", body: request, options, mutation: true },\n );\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: c8dfce18f633a53461f27cd14d0af66526765ad321dd98cb50d79288a6ef54f0\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n RequestOptions,\n ResourceCandidateList,\n ResourcePackageArchive,\n ResourcePackageCandidateOptions,\n ResourcePackageExportPlan,\n ResourcePackageExportRequest,\n ResourcePackageImportPreview,\n ResourcePackageImportResult,\n ResourcePackageImportUpload,\n ResourcePackageUpload,\n ResourcePackageValidationResult\n} from \"../types\";\n\nexport class ResourcePackagesNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n getExportability(): Promise<Record<string, unknown>> {\n return this.http.requestJson<Record<string, unknown>>(\"/resource-packages/exportability\");\n }\n\n exportPlan(request: ResourcePackageExportRequest): Promise<ResourcePackageExportPlan> {\n return this.http.requestJson<ResourcePackageExportPlan>(\"/resource-packages/export/plan\", {\n method: \"POST\",\n body: request,\n });\n }\n\n async exportPackage(request: ResourcePackageExportRequest): Promise<ResourcePackageArchive> {\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-packages/export\"),\n { method: \"POST\", headers: this.http.jsonHeaders(), body: JSON.stringify(request) },\n \"Failed to export the Agents24 resource package.\",\n );\n await assertOk(response);\n const disposition = response.headers.get(\"content-disposition\") || \"\";\n const candidate = /filename=\"?([^\";]+)\"?/i.exec(disposition)?.[1] || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n return { data: new Uint8Array(await response.arrayBuffer()), filename };\n }\n\n async validatePackage(upload: ResourcePackageUpload): Promise<ResourcePackageValidationResult> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-packages/validate\", undefined),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, undefined, false), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourcePackageValidationResult;\n }\n\n async importPreview(upload: ResourcePackageImportUpload): Promise<ResourcePackageImportPreview> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n formData.set(\"mappings\", JSON.stringify(upload.mappings || {}));\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-packages/import/preview\", undefined),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, undefined, false), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourcePackageImportPreview;\n }\n\n async importPackage(upload: ResourcePackageImportUpload, options: RequestOptions = {}): Promise<ResourcePackageImportResult> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n formData.set(\"mappings\", JSON.stringify(upload.mappings || {}));\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-packages/import\", undefined),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, options, true), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourcePackageImportResult;\n }\n\n candidates(options: ResourcePackageCandidateOptions): Promise<ResourceCandidateList> {\n return this.http.requestJson<ResourceCandidateList>(\"/resource-packages/import/candidates\", {\n query: {\n kind: options.kind,\n q: options.query,\n limit: options.limit,\n offset: options.offset,\n required_capability: options.requiredCapability,\n },\n });\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: c8dfce18f633a53461f27cd14d0af66526765ad321dd98cb50d79288a6ef54f0\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n ArtifactDevelopmentSession,\n ArtifactDevelopmentSessionAdmission,\n ArtifactDevelopmentSessionPrepareRequest,\n RequestOptions,\n ResourceCandidateList,\n ResourceInstallation,\n ResourceInstallationApplyRequest,\n ResourceInstallationBinding,\n ResourceInstallationCreateRequest,\n ResourceInstallationDeploymentRequest,\n ResourceInstallationLinkRequest,\n ResourceInstallationList,\n ResourceInstallationOperation,\n ResourceInstallationPlan,\n ResourceInstallationPlanUpload,\n ResourceInstallationPublication,\n ResourceInstallationPublishRequest,\n ResourceInstallationPullAcceptRequest,\n ResourceInstallationPullPayload,\n ResourceInstallationPullPlan,\n ResourceInstallationResourceListOptions,\n ResourceInstallationSecretStatus,\n ResourceInstallationSecretsRequest,\n ResourcePackageUpload\n} from \"../types\";\n\nexport class ResourceInstallationsNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n list(): Promise<ResourceInstallationList> {\n return this.http.requestJson<ResourceInstallationList>(\"/resource-installations\");\n }\n\n create(request: ResourceInstallationCreateRequest, options?: RequestOptions): Promise<ResourceInstallation> {\n return this.http.requestJson<ResourceInstallation>(\"/resource-installations\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n get(installationId: string): Promise<ResourceInstallation> {\n return this.http.requestJson<ResourceInstallation>(`/resource-installations/${installationId}`);\n }\n\n getByPackageId(packageId: string): Promise<ResourceInstallation> {\n return this.http.requestJson<ResourceInstallation>(`/resource-installations/by-package/${packageId}`);\n }\n\n async plan(upload: ResourceInstallationPlanUpload): Promise<ResourceInstallationPlan> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-installations/plan\", {\n prune: upload.prune,\n }),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, undefined, false), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourceInstallationPlan;\n }\n\n async planPull(installationId: string, upload: ResourcePackageUpload): Promise<ResourceInstallationPullPlan> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n const response = await this.http.fetchOrThrow(\n this.http.url(`/resource-installations/${installationId}/pull/plan`, undefined),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, undefined, false), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourceInstallationPullPlan;\n }\n\n downloadPull(installationId: string, pullId: string): Promise<ResourceInstallationPullPayload> {\n return this.http.requestJson<ResourceInstallationPullPayload>(`/resource-installations/${installationId}/pull/${pullId}/download`);\n }\n\n acceptPull(installationId: string, pullId: string, request: ResourceInstallationPullAcceptRequest, options?: RequestOptions): Promise<ResourceInstallationPullPlan> {\n return this.http.requestJson<ResourceInstallationPullPlan>(`/resource-installations/${installationId}/pull/${pullId}/accept`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n link(installationId: string, request: ResourceInstallationLinkRequest, options?: RequestOptions): Promise<ResourceInstallationBinding> {\n return this.http.requestJson<ResourceInstallationBinding>(`/resource-installations/${installationId}/link`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n configureSecrets(installationId: string, request: ResourceInstallationSecretsRequest, options?: RequestOptions): Promise<ResourceInstallationSecretStatus> {\n return this.http.requestJson<ResourceInstallationSecretStatus>(`/resource-installations/${installationId}/secrets`, {\n method: \"PUT\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n apply(operationId: string, request: ResourceInstallationApplyRequest, options?: RequestOptions): Promise<ResourceInstallationOperation> {\n return this.http.requestJson<ResourceInstallationOperation>(`/resource-installations/operations/${operationId}/apply`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n operationStatus(operationId: string): Promise<ResourceInstallationOperation> {\n return this.http.requestJson<ResourceInstallationOperation>(`/resource-installations/operations/${operationId}/status`);\n }\n\n publish(installationId: string, request: ResourceInstallationPublishRequest, options?: RequestOptions): Promise<ResourceInstallationPublication> {\n return this.http.requestJson<ResourceInstallationPublication>(`/resource-installations/${installationId}/publish`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n prepareDevelopmentSession(installationId: string, request: ArtifactDevelopmentSessionPrepareRequest, options?: RequestOptions): Promise<ArtifactDevelopmentSessionAdmission> {\n return this.http.requestJson<ArtifactDevelopmentSessionAdmission>(`/resource-installations/${installationId}/artifact-development-sessions`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n developmentSessionStatus(installationId: string, resourceKey: string): Promise<ArtifactDevelopmentSession> {\n return this.http.requestJson<ArtifactDevelopmentSession>(`/resource-installations/${installationId}/artifact-development-sessions/${resourceKey}`);\n }\n\n revokeDevelopmentSession(installationId: string, sessionId: string, options?: RequestOptions): Promise<ArtifactDevelopmentSession> {\n return this.http.requestJson<ArtifactDevelopmentSession>(`/resource-installations/${installationId}/artifact-development-sessions/${sessionId}`, {\n method: \"DELETE\",\n options,\n mutation: true,\n });\n }\n\n bindDeployment(installationId: string, request: ResourceInstallationDeploymentRequest, options?: RequestOptions): Promise<ResourceInstallation> {\n return this.http.requestJson<ResourceInstallation>(`/resource-installations/${installationId}/deployment`, {\n method: \"PUT\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n resources(options: ResourceInstallationResourceListOptions): Promise<ResourceCandidateList> {\n return this.http.requestJson<ResourceCandidateList>(\"/resource-installations/resources/list\", {\n query: {\n kind: options.kind,\n query: options.query,\n limit: options.limit,\n },\n });\n }\n}\n","import type { Agents24HttpClient } from \"./http.js\";\nimport type { ControlPlaneRunEventsResponse, RunContext, RunStatus, TraceView } from \"./types.js\";\n\nexport class RunsNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n get(runId: string, options: { includeTree?: boolean } = {}): Promise<RunStatus> {\n return this.http.requestJson(`/agents/runs/${runId}`, { query: { include_tree: options.includeTree } });\n }\n getTree(runId: string): Promise<Record<string, unknown>> { return this.http.requestJson(`/agents/runs/${runId}/tree`); }\n getEvents(runId: string, options: { afterSequence?: number; limit?: number } = {}): Promise<ControlPlaneRunEventsResponse> {\n return this.http.requestJson(`/agents/runs/${runId}/events`, { query: { after_sequence: options.afterSequence, limit: options.limit } });\n }\n getContext(runId: string): Promise<RunContext> { return this.http.requestJson(`/agents/runs/${runId}/context`); }\n getTrace(runId: string, options: { includeDiagnostics?: boolean } = {}): Promise<TraceView> {\n return this.http.requestJson(`/agents/runs/${runId}/trace`, {\n query: { include_diagnostics: options.includeDiagnostics },\n });\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: c8dfce18f633a53461f27cd14d0af66526765ad321dd98cb50d79288a6ef54f0\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n RequestOptions\n} from \"../types\";\n\nexport class InstructionsNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n publish(instructionId: string, options?: RequestOptions): Promise<Record<string, unknown>> {\n return this.http.requestJson<Record<string, unknown>>(`/prompts/${instructionId}/publish`, {\n method: \"POST\",\n body: {},\n options,\n mutation: true,\n });\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: c8dfce18f633a53461f27cd14d0af66526765ad321dd98cb50d79288a6ef54f0\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n ClearCustomerResourcePolicyAssignmentResult,\n CustomerPrincipalRefRequest,\n CustomerResourcePolicyAssignment,\n EffectiveCustomerResourcePolicyRequest,\n EffectiveResourcePolicy,\n RequestOptions,\n ResetResourcePolicyQuotaRequest,\n ResourcePolicyList,\n ResourcePolicyQuotaScheduleResult,\n SetCustomerResourcePolicyAssignmentRequest,\n SetResourcePolicyQuotaScheduleRequest\n} from \"../types\";\n\nexport class ResourcePoliciesNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n list(): Promise<ResourcePolicyList> {\n return this.http.requestJson<ResourcePolicyList>(\"/admin/security/resource-policies/sets\");\n }\n\n setCustomerAssignment(request: SetCustomerResourcePolicyAssignmentRequest, options?: RequestOptions): Promise<CustomerResourcePolicyAssignment> {\n return this.http.requestJson<CustomerResourcePolicyAssignment>(\"/admin/security/resource-policies/customer-assignments/set\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n getCustomerAssignment(request: CustomerPrincipalRefRequest): Promise<CustomerResourcePolicyAssignment> {\n return this.http.requestJson<CustomerResourcePolicyAssignment>(\"/admin/security/resource-policies/customer-assignments/get\", {\n method: \"POST\",\n body: request,\n });\n }\n\n clearCustomerAssignment(request: CustomerPrincipalRefRequest, options?: RequestOptions): Promise<ClearCustomerResourcePolicyAssignmentResult> {\n return this.http.requestJson<ClearCustomerResourcePolicyAssignmentResult>(\"/admin/security/resource-policies/customer-assignments/clear\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n getEffectiveCustomerPolicy(request: EffectiveCustomerResourcePolicyRequest): Promise<EffectiveResourcePolicy> {\n return this.http.requestJson<EffectiveResourcePolicy>(\"/admin/security/resource-policies/customers/effective\", {\n method: \"POST\",\n body: request,\n });\n }\n\n setQuotaSchedule(request: SetResourcePolicyQuotaScheduleRequest, options?: RequestOptions): Promise<ResourcePolicyQuotaScheduleResult> {\n return this.http.requestJson<ResourcePolicyQuotaScheduleResult>(\"/admin/security/resource-policies/quota-schedules/set\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n resetQuotaNow(request: ResetResourcePolicyQuotaRequest, options?: RequestOptions): Promise<ResourcePolicyQuotaScheduleResult> {\n return this.http.requestJson<ResourcePolicyQuotaScheduleResult>(\"/admin/security/resource-policies/quota-schedules/reset-now\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: c8dfce18f633a53461f27cd14d0af66526765ad321dd98cb50d79288a6ef54f0\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n CustomerProfile,\n CustomerProfileList,\n CustomerProfileSearchOptions,\n EmbedCustomerPrincipalResolveRequest,\n EmbedCustomerPrincipalResolveResponse,\n RequestOptions\n} from \"../types\";\n\nexport class CustomerProfilesNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n upsert(request: EmbedCustomerPrincipalResolveRequest, options?: RequestOptions): Promise<EmbedCustomerPrincipalResolveResponse> {\n return this.http.requestJson<EmbedCustomerPrincipalResolveResponse>(\"/public/embed/customer-principals/resolve\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n get(customerPrincipalRef: string): Promise<CustomerProfile> {\n return this.http.requestJson<CustomerProfile>(`/public/embed/customer-principals/${customerPrincipalRef}/profile`);\n }\n\n clear(customerPrincipalRef: string, options?: RequestOptions): Promise<unknown> {\n return this.http.requestJson<unknown>(`/public/embed/customer-principals/${customerPrincipalRef}/profile`, {\n method: \"DELETE\",\n options,\n mutation: true,\n });\n }\n\n search(options: CustomerProfileSearchOptions): Promise<CustomerProfileList> {\n return this.http.requestJson<CustomerProfileList>(\"/public/embed/customer-principals\", {\n query: {\n q: options.query,\n integration_id: options.integrationId,\n limit: options.limit ?? 25,\n },\n });\n }\n}\n","import { AgentsNamespace } from \"./agents.js\";\nimport { AgentDefinitionBuilder, GraphBuilder } from \"./builders.js\";\nimport { ClientDeploymentsNamespace, ClientSessionsNamespace } from \"./client-runtime-admin.js\";\nimport { EmbedNamespace } from \"./embed.js\";\nimport { ResourcePackagesNamespace } from \"./generated/resourcePackages.js\";\nimport { ResourceInstallationsNamespace } from \"./generated/resourceInstallations.js\";\nimport { Agents24HttpClient } from \"./http.js\";\nimport { RunsNamespace } from \"./runs.js\";\nimport { InstructionsNamespace } from \"./generated/instructions.js\";\nimport { ResourcePoliciesNamespace } from \"./generated/resourcePolicies.js\";\nimport { CustomerProfilesNamespace } from \"./generated/customerProfiles.js\";\nimport type { AgentDefinitionOptions, Agents24NodeOptions } from \"./types.js\";\n\nexport class Agents24 {\n readonly agents: AgentsNamespace;\n readonly embed: EmbedNamespace;\n readonly runs: RunsNamespace;\n readonly resourcePackages: ResourcePackagesNamespace;\n readonly resourceInstallations: ResourceInstallationsNamespace;\n readonly clientDeployments: ClientDeploymentsNamespace;\n readonly clientSessions: ClientSessionsNamespace;\n readonly instructions: InstructionsNamespace;\n readonly resourcePolicies: ResourcePoliciesNamespace;\n readonly customerProfiles: CustomerProfilesNamespace;\n\n constructor(options: Agents24NodeOptions) {\n const http = new Agents24HttpClient(options);\n this.agents = new AgentsNamespace(http);\n this.embed = new EmbedNamespace(http);\n this.runs = new RunsNamespace(http);\n this.resourcePackages = new ResourcePackagesNamespace(http);\n this.resourceInstallations = new ResourceInstallationsNamespace(http);\n this.clientDeployments = new ClientDeploymentsNamespace(http);\n this.clientSessions = new ClientSessionsNamespace(http);\n this.instructions = new InstructionsNamespace(http);\n this.resourcePolicies = new ResourcePoliciesNamespace(http);\n this.customerProfiles = new CustomerProfilesNamespace(http);\n }\n\n agent(options: AgentDefinitionOptions): AgentDefinitionBuilder {\n return new AgentDefinitionBuilder(this.agents, options);\n }\n\n graph(): GraphBuilder { return new GraphBuilder(); }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: c8dfce18f633a53461f27cd14d0af66526765ad321dd98cb50d79288a6ef54f0\nexport const SDK_OPERATION_IDS = [\n \"agents.cancel_run\",\n \"agents.catalog\",\n \"agents.create\",\n \"agents.create_attachment_content_access\",\n \"agents.delete\",\n \"agents.get\",\n \"agents.list\",\n \"agents.publish\",\n \"agents.resume_run\",\n \"agents.schema\",\n \"agents.start_run\",\n \"agents.stream\",\n \"agents.update\",\n \"agents.update_graph\",\n \"agents.upload_attachments\",\n \"agents.validate\",\n \"client.attachments.create_content_access\",\n \"client.attachments.upload\",\n \"client.bootstrap\",\n \"client.chat.stream\",\n \"client.deployments.create\",\n \"client.deployments.delete\",\n \"client.deployments.get\",\n \"client.deployments.list\",\n \"client.deployments.update\",\n \"client.hitl.resume\",\n \"client.jwks\",\n \"client.mcp.redeem\",\n \"client.mcp.start\",\n \"client.resource_policy\",\n \"client.runs.attach\",\n \"client.runs.cancel\",\n \"client.runs.set_feedback\",\n \"client.sessions.anonymous\",\n \"client.sessions.backendExchange\",\n \"client.sessions.refresh\",\n \"client.sessions.revoke\",\n \"client.threads.delete\",\n \"client.threads.events\",\n \"client.threads.get\",\n \"client.threads.list\",\n \"customer_profiles.clear\",\n \"customer_profiles.get\",\n \"customer_profiles.search\",\n \"customer_profiles.upsert\",\n \"embed.attach_agent_run\",\n \"embed.cancel_agent_run\",\n \"embed.create_attachment_content_access\",\n \"embed.delete_agent_thread\",\n \"embed.delete_conversation_thread\",\n \"embed.get_agent_run_context\",\n \"embed.get_agent_thread\",\n \"embed.get_conversation_thread\",\n \"embed.get_resource_policy\",\n \"embed.get_runtime_bootstrap\",\n \"embed.list_agent_threads\",\n \"embed.list_agent_threads_multi\",\n \"embed.resolve_agent_alias\",\n \"embed.resolve_conversation_run\",\n \"embed.resolve_customer_principal\",\n \"embed.resume_agent_run\",\n \"embed.set_agent_run_feedback\",\n \"embed.set_conversation_runtime_selection\",\n \"embed.start_agent_run\",\n \"embed.start_agent_run_mcp_auth\",\n \"embed.stream_agent\",\n \"embed.stream_agent_thread_events\",\n \"embed.stream_agent_thread_events_multi\",\n \"embed.upload_agent_attachments\",\n \"instructions.publish\",\n \"resource_installations.accept_pull\",\n \"resource_installations.apply\",\n \"resource_installations.bind_deployment\",\n \"resource_installations.configure_secrets\",\n \"resource_installations.create\",\n \"resource_installations.development_session_status\",\n \"resource_installations.download_pull\",\n \"resource_installations.get\",\n \"resource_installations.get_by_package_id\",\n \"resource_installations.link\",\n \"resource_installations.list\",\n \"resource_installations.operation_status\",\n \"resource_installations.plan\",\n \"resource_installations.plan_pull\",\n \"resource_installations.prepare_development_session\",\n \"resource_installations.publish\",\n \"resource_installations.resources\",\n \"resource_installations.revoke_development_session\",\n \"resource_packages.candidates\",\n \"resource_packages.export\",\n \"resource_packages.export_plan\",\n \"resource_packages.exportability\",\n \"resource_packages.import\",\n \"resource_packages.import_preview\",\n \"resource_packages.validate\",\n \"resource_policies.clear_customer_assignment\",\n \"resource_policies.get_customer_assignment\",\n \"resource_policies.get_effective_customer_policy\",\n \"resource_policies.list\",\n \"resource_policies.reset_quota_now\",\n \"resource_policies.set_customer_assignment\",\n \"resource_policies.set_quota_schedule\",\n \"runs.get\",\n \"runs.get_context\",\n \"runs.get_events\",\n \"runs.get_trace\",\n \"runs.get_tree\"\n] as const;\n\nexport type SDKOperationId = (typeof SDK_OPERATION_IDS)[number];\n"]}
1
+ {"version":3,"sources":["../src/errors.ts","../src/http.ts","../src/streams.ts","../src/agents.ts","../src/builders.ts","../src/client-runtime-admin.ts","../src/embed.ts","../src/generated/resourcePackages.ts","../src/generated/resourceInstallations.ts","../src/runs.ts","../src/generated/instructions.ts","../src/generated/resourcePolicies.ts","../src/generated/customerProfiles.ts","../src/client.ts","../src/generated/manifest.ts"],"names":["randomUUID","createSseParser","parseRuntimeSsePayload","parseThreadSummarySsePayload"],"mappings":"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","file":"index.cjs","sourcesContent":["export type Agents24SDKErrorKind = \"protocol\" | \"network\" | \"http\";\nexport type Agents24NodeErrorKind = Agents24SDKErrorKind;\nimport type { FailureView } from \"./types.js\";\n\nexport class Agents24SDKError extends Error {\n readonly kind: Agents24SDKErrorKind;\n readonly status?: number;\n readonly failure?: FailureView;\n readonly responseHeaders?: Readonly<Record<string, string>>;\n\n constructor(\n message: string,\n options: {\n kind: Agents24SDKErrorKind;\n status?: number;\n failure?: FailureView;\n responseHeaders?: Readonly<Record<string, string>>;\n cause?: unknown;\n },\n ) {\n super(message, { cause: options.cause });\n this.name = \"Agents24SDKError\";\n this.kind = options.kind;\n this.status = options.status;\n this.failure = options.failure;\n this.responseHeaders = options.responseHeaders;\n }\n\n get code(): string | undefined { return this.failure?.code; }\n get category(): string | undefined { return this.failure?.category; }\n get failureId(): string | undefined { return this.failure?.failure_id; }\n get requestId(): string | undefined { return this.failure?.request_id ?? undefined; }\n get retryable(): boolean { return this.failure?.retryable ?? false; }\n get retryAfterMs(): number | undefined { return this.failure?.retry_after_ms ?? undefined; }\n get details(): Readonly<Record<string, unknown>> { return this.failure?.details ?? {}; }\n}\n\nexport { Agents24SDKError as Agents24NodeError };\n","import { randomUUID } from \"node:crypto\";\n\nimport { Agents24SDKError } from \"./errors.js\";\nimport type { Agents24NodeOptions, FailureView, RequestOptions } from \"./types.js\";\n\nfunction required(value: string, name: string): string {\n const normalized = String(value || \"\").trim();\n if (!normalized) throw new Agents24SDKError(`Agents24 requires ${name}.`, { kind: \"protocol\" });\n return normalized;\n}\n\nfunction normalizeBaseUrl(value: string): string {\n try {\n return new URL(required(value, \"baseUrl\")).toString().replace(/\\/+$/, \"\");\n } catch (cause) {\n if (cause instanceof Agents24SDKError) throw cause;\n throw new Agents24SDKError(\"Agents24 received an invalid baseUrl.\", { kind: \"protocol\", cause });\n }\n}\n\nasync function errorDetails(response: Response): Promise<unknown> {\n const text = await response.text().catch(() => \"\");\n if (!text) return null;\n try { return JSON.parse(text) as unknown; }\n catch { return text; }\n}\n\nfunction failureView(value: unknown): FailureView | undefined {\n if (!value || typeof value !== \"object\" || Array.isArray(value)) return undefined;\n const candidate = value as Record<string, unknown>;\n return candidate.schema_version === \"agents24.failure.v1\"\n && typeof candidate.failure_id === \"string\"\n && typeof candidate.code === \"string\"\n && typeof candidate.category === \"string\"\n && typeof candidate.message === \"string\"\n && typeof candidate.retryable === \"boolean\"\n && candidate.details !== null\n && typeof candidate.details === \"object\"\n && !Array.isArray(candidate.details)\n ? candidate as FailureView\n : undefined;\n}\n\nfunction responseHeaders(response: Response): Record<string, string> {\n const headers: Record<string, string> = {};\n for (const name of [\"dpop-nonce\", \"retry-after\", \"www-authenticate\", \"x-request-id\"]) {\n const value = response.headers.get(name);\n if (value) headers[name] = value;\n }\n return headers;\n}\n\nexport async function assertOk(response: Response): Promise<void> {\n if (response.ok) return;\n const failure = failureView(await errorDetails(response));\n throw new Agents24SDKError(failure?.message || \"Agents24 request failed.\", {\n kind: \"http\",\n status: response.status,\n failure,\n responseHeaders: responseHeaders(response),\n });\n}\n\nexport type RequestConfig = {\n method?: string;\n query?: Record<string, unknown>;\n body?: unknown;\n headers?: HeadersInit;\n options?: RequestOptions;\n mutation?: boolean;\n};\n\nexport class Agents24HttpClient {\n private readonly base: string;\n private readonly apiKey: string;\n private readonly fetchImpl: typeof fetch;\n\n constructor(options: Agents24NodeOptions) {\n if (typeof process === \"undefined\" || process.release?.name !== \"node\") {\n throw new Agents24SDKError(\"@agents24/node is for trusted server runtimes only.\", { kind: \"protocol\" });\n }\n this.base = normalizeBaseUrl(options.baseUrl);\n this.apiKey = required(options.apiKey, \"apiKey\");\n if (typeof options.fetchImpl !== \"function\" && typeof fetch !== \"function\") {\n throw new Agents24SDKError(\"No fetch implementation is available. Use Node 22 or 24.\", { kind: \"protocol\" });\n }\n this.fetchImpl = options.fetchImpl || fetch;\n }\n\n url(requestPath: string, query?: Record<string, unknown>): string {\n const url = new URL(`${this.base}${requestPath}`);\n for (const [key, value] of Object.entries(query || {})) {\n if (value === undefined || value === null || value === \"\") continue;\n if (Array.isArray(value)) {\n for (const item of value) {\n if (item !== undefined && item !== null && item !== \"\") url.searchParams.append(key, String(item));\n }\n } else {\n url.searchParams.set(key, String(value));\n }\n }\n return url.toString();\n }\n\n jsonHeaders(extra?: HeadersInit, options?: RequestOptions, mutation = false): HeadersInit {\n return {\n Authorization: `Bearer ${this.apiKey}`,\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n \"X-SDK-Contract\": \"1\",\n ...(mutation ? { \"Idempotency-Key\": options?.idempotencyKey || randomUUID() } : {}),\n ...(options?.requestMetadata ? { \"X-Request-Metadata\": JSON.stringify(options.requestMetadata) } : {}),\n ...(extra || {}),\n };\n }\n\n streamHeaders(extra?: HeadersInit, options?: RequestOptions, mutation = false): HeadersInit {\n return this.jsonHeaders({ Accept: \"text/event-stream\", ...(extra || {}) }, options, mutation);\n }\n\n multipartHeaders(extra?: HeadersInit, options?: RequestOptions, mutation = false): HeadersInit {\n return {\n Authorization: `Bearer ${this.apiKey}`,\n Accept: \"application/json\",\n \"X-SDK-Contract\": \"1\",\n ...(mutation ? { \"Idempotency-Key\": options?.idempotencyKey || randomUUID() } : {}),\n ...(extra || {}),\n };\n }\n\n async requestJson<T>(requestPath: string, config: RequestConfig = {}): Promise<T> {\n const query = { ...(config.query || {}) };\n if (config.options?.dryRun !== undefined) query.dry_run = config.options.dryRun;\n if (config.options?.validateOnly !== undefined) query.validate_only = config.options.validateOnly;\n const response = await this.fetchOrThrow(this.url(requestPath, query), {\n method: config.method || \"GET\",\n headers: this.jsonHeaders(config.headers, config.options, Boolean(config.mutation)),\n ...(config.body === undefined ? {} : { body: JSON.stringify(config.body) }),\n }, \"Failed to connect to the Agents24 API.\");\n await assertOk(response);\n return await response.json() as T;\n }\n\n async fetchOrThrow(url: string, init: RequestInit, message: string): Promise<Response> {\n try { return await this.fetchImpl(url, init); }\n catch (cause) {\n if (cause instanceof Agents24SDKError) throw cause;\n throw new Agents24SDKError(message, { kind: \"network\", cause });\n }\n }\n}\n","import {\n createSseParser,\n parseRuntimeSsePayload,\n parseThreadSummarySsePayload,\n} from \"@agents24/client/protocol\";\nimport type { RuntimeEvent, ThreadSummaryEvent } from \"@agents24/client/protocol\";\n\nimport { Agents24SDKError } from \"./errors.js\";\n\nasync function consumePayloads(\n response: Response,\n onPayload: (payload: string) => void | Promise<void>,\n signal?: AbortSignal,\n): Promise<void> {\n if (!response.body) {\n throw new Agents24SDKError(\"Stream response did not include a readable body.\", { kind: \"protocol\" });\n }\n const reader = response.body.getReader();\n const parser = createSseParser({ decoder: new TextDecoder(), onPayload, signal });\n const abort = () => { void reader.cancel(signal?.reason).catch(() => undefined); };\n if (signal?.aborted) return abort();\n signal?.addEventListener(\"abort\", abort, { once: true });\n try {\n while (!signal?.aborted) {\n const { done, value } = await reader.read();\n if (value) await parser.push(value);\n if (done) break;\n }\n if (!signal?.aborted) await parser.finish();\n } finally {\n signal?.removeEventListener(\"abort\", abort);\n reader.releaseLock();\n }\n}\n\nexport async function consumeRuntimeEventStream(\n response: Response,\n onEvent?: (event: RuntimeEvent) => void | Promise<void>,\n signal?: AbortSignal,\n): Promise<void> {\n await consumePayloads(response, async (payload) => {\n const event = parseRuntimeSsePayload(payload);\n if (onEvent) await onEvent(event);\n }, signal);\n}\n\nexport async function consumeThreadSummaryEventStream(\n response: Response,\n onEvent: (event: ThreadSummaryEvent) => void | Promise<void>,\n signal?: AbortSignal,\n): Promise<void> {\n await consumePayloads(response, async (payload) => {\n await onEvent(parseThreadSummarySsePayload(payload));\n }, signal);\n}\n","import { assertOk, type Agents24HttpClient } from \"./http.js\";\nimport { consumeRuntimeEventStream } from \"./streams.js\";\nimport type {\n AgentCreateRequest,\n AgentListResponse,\n AgentResponse,\n AgentStreamRequest,\n ControlPlaneAgentRunRequest,\n AgentUpdateRequest,\n AttachmentUploadResult,\n AttachmentContentAccess,\n AttachmentContentAccessRequest,\n GraphDefinition,\n NodeCatalogResponse,\n NodeSchemaResponse,\n AgentValidationResult,\n RequestOptions,\n RunCancelOptions,\n RunCancelResult,\n RuntimeEvent,\n ServerAttachmentUploadOptions,\n StartRunResult,\n StreamRequestOptions,\n StreamResult,\n} from \"./types.js\";\n\nexport type ListAgentsOptions = { status?: string; skip?: number; limit?: number; view?: \"summary\" | \"full\" | string };\n\nexport class AgentsNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n\n list(options: ListAgentsOptions = {}): Promise<AgentListResponse> {\n return this.http.requestJson(\"/agents\", { query: { status: options.status, skip: options.skip ?? 0, limit: options.limit ?? 20, view: options.view ?? \"summary\" } });\n }\n get(agentId: string): Promise<AgentResponse> { return this.http.requestJson(`/agents/${agentId}`); }\n create(request: AgentCreateRequest, options?: RequestOptions): Promise<AgentResponse> {\n return this.http.requestJson(\"/agents\", { method: \"POST\", body: request, options, mutation: true });\n }\n update(agentId: string, request: AgentUpdateRequest, options?: RequestOptions): Promise<AgentResponse> {\n return this.http.requestJson(`/agents/${agentId}`, { method: \"PATCH\", body: request, options, mutation: true });\n }\n updateGraph(agentId: string, graph: GraphDefinition, options?: RequestOptions): Promise<AgentResponse> {\n return this.http.requestJson(`/agents/${agentId}/graph`, { method: \"PUT\", body: graph, options, mutation: true });\n }\n delete(agentId: string, options?: RequestOptions): Promise<unknown> {\n return this.http.requestJson(`/agents/${agentId}`, { method: \"DELETE\", options, mutation: true });\n }\n catalog(): Promise<NodeCatalogResponse> { return this.http.requestJson(\"/agents/nodes/catalog\"); }\n schema(nodeTypes: string[]): Promise<NodeSchemaResponse> {\n return this.http.requestJson(\"/agents/nodes/schema\", { method: \"POST\", body: { node_types: nodeTypes } });\n }\n validate(agentId: string): Promise<AgentValidationResult> {\n return this.http.requestJson(`/agents/${agentId}/validate`, { method: \"POST\", body: {} });\n }\n publish(agentId: string, options?: RequestOptions): Promise<AgentResponse> {\n return this.http.requestJson(`/agents/${agentId}/publish`, { method: \"POST\", body: {}, options, mutation: true });\n }\n startRun(agentId: string, payload: ControlPlaneAgentRunRequest, options?: RequestOptions): Promise<StartRunResult> {\n return this.http.requestJson(`/agents/${agentId}/run`, { method: \"POST\", body: payload, options, mutation: true });\n }\n async stream(\n agentId: string,\n payload: AgentStreamRequest,\n onEvent?: (event: RuntimeEvent) => void | Promise<void>,\n mode?: \"debug\" | \"production\" | string,\n options: StreamRequestOptions = {},\n ): Promise<StreamResult> {\n const response = await this.http.fetchOrThrow(this.http.url(`/agents/${agentId}/stream`, { mode }), {\n method: \"POST\", headers: this.http.streamHeaders(), body: JSON.stringify(payload), signal: options.signal,\n }, \"Failed to connect to the agent stream endpoint.\");\n await assertOk(response);\n let runId = response.headers.get(\"X-Run-ID\");\n await consumeRuntimeEventStream(response, async (event) => { runId ||= event.run_id; if (onEvent) await onEvent(event); }, options.signal);\n return { threadId: response.headers.get(\"X-Thread-ID\"), runId };\n }\n resumeRun(runId: string, payload: Record<string, unknown>, options?: RequestOptions): Promise<Record<string, unknown>> {\n return this.http.requestJson(`/agents/runs/${runId}/resume`, { method: \"POST\", body: payload, options, mutation: true });\n }\n cancelRun(runId: string, options: RunCancelOptions = {}): Promise<RunCancelResult> {\n return this.http.requestJson(`/agents/runs/${runId}/cancel`, { method: \"POST\", body: { assistant_output_text: options.assistantOutputText }, mutation: true });\n }\n async uploadAttachments(agentId: string, options: ServerAttachmentUploadOptions): Promise<AttachmentUploadResult> {\n const form = new FormData();\n if (options.threadId) form.set(\"thread_id\", options.threadId);\n if (options.agentVersionId) form.set(\"agent_version_id\", options.agentVersionId);\n for (const file of options.files) form.append(\"files\", file, file.name);\n const response = await this.http.fetchOrThrow(this.http.url(`/agents/${agentId}/attachments/upload`), {\n method: \"POST\", headers: this.http.multipartHeaders(), body: form,\n }, \"Failed to connect to the agent attachment endpoint.\");\n await assertOk(response);\n return await response.json() as AttachmentUploadResult;\n }\n createAttachmentContentAccess(\n agentId: string,\n attachmentId: string,\n request: AttachmentContentAccessRequest,\n options?: RequestOptions,\n ): Promise<AttachmentContentAccess> {\n return this.http.requestJson(\n `/agents/${agentId}/attachments/${attachmentId}/content-access`,\n { method: \"POST\", body: request, options, mutation: true },\n );\n }\n}\n","import type { AgentsNamespace } from \"./agents.js\";\nimport type {\n AgentCreateRequest,\n AgentDefinitionOptions,\n AgentRef,\n AgentResponse,\n GraphDefinition,\n GraphEdge,\n GraphNode,\n RequestOptions,\n} from \"./types.js\";\n\nfunction refId(ref: AgentRef): string { return typeof ref === \"string\" ? ref : ref.id; }\nfunction refs(values: AgentRef[] | undefined): string[] { return [...new Set((values || []).map(refId).filter(Boolean))]; }\nfunction graphNode(id: string, type: string, x: number, y: number, config: Record<string, unknown> = {}): GraphNode {\n return { id, type, position: { x, y }, config };\n}\n\nfunction toolsetAttachments(options: AgentDefinitionOptions): Array<Record<string, unknown>> {\n const seen = new Set<string>();\n return (options.toolsetAttachments || []).flatMap((attachment) => {\n const id = refId(attachment.toolset);\n if (!id || seen.has(id)) return [];\n seen.add(id);\n const normalized: Record<string, unknown> = {\n toolset_id: id,\n loading_mode: attachment.loadingMode || \"static\",\n };\n const policy = attachment.versionPolicy;\n if (policy) {\n normalized.version_policy = policy.mode === \"pinned\"\n ? { mode: \"pinned\", version_id: policy.versionId }\n : { mode: \"latest_published\" };\n }\n return [normalized];\n });\n}\n\nexport class AgentDefinitionBuilder {\n constructor(private readonly agents: AgentsNamespace, private readonly options: AgentDefinitionOptions) {}\n toGraph(): GraphDefinition {\n const agentConfig: Record<string, unknown> = {\n instructions: this.options.instructions || \"\",\n tools: refs(this.options.tools),\n toolset_attachments: toolsetAttachments(this.options),\n input_sources: [{ id: \"workflow-text\", value_ref: { namespace: \"workflow_input\", key: \"text\", label: \"Workflow input / Text\" } }],\n };\n if (this.options.model) agentConfig.model_id = refId(this.options.model);\n return {\n spec_version: \"4.0\",\n graph_type: \"agent\",\n workflow_contract: { inputs: [] },\n state_contract: { variables: [] },\n nodes: [\n graphNode(\"start\", \"start\", 0, 0),\n graphNode(\"agent\", \"agent\", 260, 0, agentConfig),\n graphNode(\"end\", \"end\", 520, 0, {\n output_schema: {\n name: \"workflow_result\", mode: \"simple\",\n schema: { type: \"object\", additionalProperties: false, properties: { response: { type: \"string\" } }, required: [\"response\"] },\n },\n output_bindings: [{ json_pointer: \"/response\", value_ref: { namespace: \"node_output\", node_id: \"agent\", key: \"output_text\", label: \"Agent response\" } }],\n }),\n ],\n edges: [\n { id: \"start-agent\", source: \"start\", target: \"agent\", type: \"control\" },\n { id: \"agent-end\", source: \"agent\", target: \"end\", type: \"control\" },\n ],\n };\n }\n toCreateRequest(): AgentCreateRequest {\n const knowledge = refs(this.options.knowledge);\n return {\n name: this.options.name,\n description: this.options.description ?? null,\n graph_definition: this.toGraph(),\n memory_config: {\n ...(this.options.memory || {}),\n ...(knowledge.length ? { long_term_enabled: true, long_term_index_id: knowledge[0], knowledge_refs: knowledge } : {}),\n },\n execution_constraints: this.options.execution || {},\n };\n }\n create(options?: RequestOptions): Promise<AgentResponse> { return this.agents.create(this.toCreateRequest(), options); }\n}\n\nexport class GraphBuilder {\n private readonly nodes = new Map<string, GraphNode>();\n private readonly edges: GraphEdge[] = [];\n node(type: string, config: Record<string, unknown> = {}, options: { id?: string; x?: number; y?: number; label?: string } = {}): GraphNode {\n const id = options.id || `${type}_${this.nodes.size + 1}`;\n if (this.nodes.has(id)) throw new Error(`Duplicate graph node id: ${id}`);\n const value = graphNode(id, type, options.x ?? this.nodes.size * 260, options.y ?? 0, config);\n if (options.label) value.label = options.label;\n this.nodes.set(id, value);\n return value;\n }\n connect(source: GraphNode | string, target: GraphNode | string, options: { id?: string; sourceHandle?: string; targetHandle?: string; type?: \"control\" | \"data\"; condition?: string } = {}): this {\n const sourceId = typeof source === \"string\" ? source : source.id;\n const targetId = typeof target === \"string\" ? target : target.id;\n if (!this.nodes.has(sourceId)) throw new Error(`Unknown source node id: ${sourceId}`);\n if (!this.nodes.has(targetId)) throw new Error(`Unknown target node id: ${targetId}`);\n this.edges.push({\n id: options.id || `${sourceId}-${targetId}`, source: sourceId, target: targetId, type: options.type || \"control\",\n source_handle: options.sourceHandle, target_handle: options.targetHandle,\n condition: options.condition,\n });\n return this;\n }\n toGraph(): GraphDefinition {\n return {\n spec_version: \"4.0\", graph_type: \"agent\", workflow_contract: { inputs: [] }, state_contract: { variables: [] },\n nodes: [...this.nodes.values()], edges: [...this.edges],\n };\n }\n}\n","import type { Agents24HttpClient } from \"./http.js\";\nimport type {\n BackendSessionRequestOptions,\n ClientDeployment,\n ClientDeploymentListQuery,\n ClientDeploymentListResponse,\n ClientSessionCredentials,\n CreateBackendClientSessionRequest,\n CreateClientDeploymentRequest,\n RequestOptions,\n UpdateClientDeploymentRequest,\n} from \"./types.js\";\n\nexport class ClientDeploymentsNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n\n create(request: CreateClientDeploymentRequest, options?: RequestOptions): Promise<ClientDeployment> {\n return this.http.requestJson<ClientDeployment>(\"/client-runtime/deployments\", {\n method: \"POST\", body: request, options, mutation: true,\n });\n }\n\n list(query: ClientDeploymentListQuery): Promise<ClientDeploymentListResponse> {\n const params = new URLSearchParams({ agent_id: query.agentId });\n if (query.lifecycleStatus) params.set(\"lifecycle_status\", query.lifecycleStatus);\n if (query.cursor) params.set(\"cursor\", query.cursor);\n if (query.limit !== undefined) params.set(\"limit\", String(query.limit));\n return this.http.requestJson<ClientDeploymentListResponse>(\n `/client-runtime/deployments?${params.toString()}`,\n );\n }\n\n get(deploymentId: string): Promise<ClientDeployment> {\n return this.http.requestJson<ClientDeployment>(`/client-runtime/deployments/${deploymentId}`);\n }\n\n update(deploymentId: string, request: UpdateClientDeploymentRequest, options?: RequestOptions): Promise<ClientDeployment> {\n return this.http.requestJson<ClientDeployment>(`/client-runtime/deployments/${deploymentId}`, {\n method: \"PATCH\", body: request, options, mutation: true,\n });\n }\n\n delete(deploymentId: string, options?: RequestOptions): Promise<ClientDeployment> {\n return this.http.requestJson<ClientDeployment>(`/client-runtime/deployments/${deploymentId}`, {\n method: \"DELETE\", options, mutation: true,\n });\n }\n}\n\nexport class ClientSessionsNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n\n createBackendSession(\n deploymentId: string,\n request: CreateBackendClientSessionRequest,\n options?: BackendSessionRequestOptions,\n ): Promise<ClientSessionCredentials> {\n return this.http.requestJson<ClientSessionCredentials>(\n `/client-runtime/deployments/${deploymentId}/session-tokens`,\n {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n headers: options?.dpopProof ? { DPoP: options.dpopProof } : undefined,\n },\n );\n }\n}\n","import { assertOk, type Agents24HttpClient } from \"./http.js\";\nimport { consumeRuntimeEventStream, consumeThreadSummaryEventStream } from \"./streams.js\";\nimport type {\n AttachRunRequest,\n AttachmentUploadResult,\n AttachmentContentAccess,\n EmbedAttachmentContentAccessRequest,\n EmbedRuntimeBootstrap,\n EmbedAgentAliasResolution,\n EmbeddedResponseFeedbackInput,\n EmbedCustomerPrincipalResolveRequest,\n EmbedCustomerPrincipalResolveResponse,\n EmbedResourcePolicyRequest,\n EmbedRunCancelOptions,\n EmbedStreamRequest,\n EmbedRunStartRequest,\n McpAuthStartRequest,\n McpAuthStartResult,\n MultiAgentThreadListRequest,\n ConversationRuntimeSelectionRequest,\n ConversationRuntimeSelectionResult,\n ConversationRunRequest,\n ConversationRunResult,\n ConversationThreadOptions,\n MultiAgentThreadSummaryEventOptions,\n RequestOptions,\n ResumeRunRequest,\n RunCancelResult,\n RunContext,\n RunContextOptions,\n RunResumeResult,\n EffectiveResourcePolicy,\n ResponseFeedbackResult,\n RuntimeEvent,\n ServerEmbedAttachmentUploadOptions,\n StreamRequestOptions,\n StreamResult,\n StartRunResult,\n ThreadDeleteOptions,\n ThreadDeleteResult,\n ThreadDetail,\n ThreadDetailOptions,\n ThreadListOptions,\n ThreadSummaryEvent,\n ThreadSummaryEventOptions,\n ThreadsResponse,\n} from \"./types.js\";\n\nexport class EmbedNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n\n async streamAgent(\n agentId: string,\n payload: EmbedStreamRequest,\n onEvent?: (event: RuntimeEvent) => void | Promise<void>,\n options: StreamRequestOptions = {},\n ): Promise<StreamResult> {\n return this.stream(`/public/embed/agents/${agentId}/chat/stream`, payload, onEvent, options);\n }\n\n startAgentRun(\n agentId: string,\n payload: EmbedRunStartRequest,\n options?: RequestOptions,\n ): Promise<StartRunResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs`, {\n method: \"POST\",\n body: payload,\n options,\n mutation: true,\n });\n }\n\n async attachAgentRun(\n agentId: string,\n runId: string,\n payload: AttachRunRequest,\n onEvent?: (event: RuntimeEvent) => void | Promise<void>,\n options: StreamRequestOptions = {},\n ): Promise<StreamResult> {\n return this.stream(`/public/embed/agents/${agentId}/runs/${runId}/stream`, payload, onEvent, options);\n }\n\n private async stream(\n path: string,\n payload: unknown,\n onEvent: ((event: RuntimeEvent) => void | Promise<void>) | undefined,\n options: StreamRequestOptions,\n ): Promise<StreamResult> {\n const response = await this.http.fetchOrThrow(this.http.url(path), {\n method: \"POST\",\n headers: this.http.streamHeaders(undefined, options, true),\n body: JSON.stringify(payload),\n signal: options.signal,\n }, \"Failed to connect to the embedded-agent stream endpoint.\");\n await assertOk(response);\n let runId = response.headers.get(\"X-Run-ID\");\n await consumeRuntimeEventStream(response, async (event) => { runId ||= event.run_id; if (onEvent) await onEvent(event); }, options.signal);\n return { threadId: response.headers.get(\"X-Thread-ID\"), runId };\n }\n\n resumeAgentRun(agentId: string, runId: string, payload: ResumeRunRequest, options?: RequestOptions): Promise<RunResumeResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs/${runId}/resume`, { method: \"POST\", body: payload, options, mutation: true });\n }\n startAgentRunMcpAuth(agentId: string, runId: string, serverId: string, payload: McpAuthStartRequest, options?: RequestOptions): Promise<McpAuthStartResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs/${runId}/mcp/servers/${serverId}/auth/start`, { method: \"POST\", body: payload, options, mutation: true });\n }\n getRuntimeBootstrap(agentId: string, agentVersionId?: string, runtimeTarget: \"draft\" | \"published\" = \"published\"): Promise<EmbedRuntimeBootstrap> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runtime/bootstrap`, {\n query: { agent_version_id: agentVersionId, runtime_target: runtimeTarget },\n });\n }\n resolveAgentAlias(agentAlias: string): Promise<EmbedAgentAliasResolution> {\n return this.http.requestJson(\"/public/embed/resolve-agent-alias\", {\n method: \"POST\",\n body: { agent_alias: agentAlias },\n });\n }\n resolveCustomerPrincipal(request: EmbedCustomerPrincipalResolveRequest): Promise<EmbedCustomerPrincipalResolveResponse> {\n return this.http.requestJson(\"/public/embed/customer-principals/resolve\", {\n method: \"POST\",\n body: request,\n });\n }\n getResourcePolicy(agentId: string, request: EmbedResourcePolicyRequest): Promise<EffectiveResourcePolicy> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/resource-policy`, {\n method: \"POST\",\n body: request,\n });\n }\n listAgentThreads(agentId: string, options: ThreadListOptions): Promise<ThreadsResponse> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/threads`, { query: {\n external_user_id: options.externalUserId,\n external_session_id: options.externalSessionId,\n skip: options.skip ?? 0,\n limit: options.limit ?? 20,\n runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n } });\n }\n listAgentThreadsMulti(options: MultiAgentThreadListRequest): Promise<ThreadsResponse> {\n return this.http.requestJson(\"/public/embed/threads/query\", { method: \"POST\", body: options });\n }\n async subscribeAgentThreadEvents(\n agentId: string,\n options: ThreadSummaryEventOptions,\n onEvent: (event: ThreadSummaryEvent) => void | Promise<void>,\n ): Promise<void> {\n const response = await this.http.fetchOrThrow(this.http.url(`/public/embed/agents/${agentId}/threads/events`, {\n external_user_id: options.externalUserId, external_session_id: options.externalSessionId, cursor: options.cursor,\n runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n }), { method: \"GET\", headers: this.http.streamHeaders(), signal: options.signal }, \"Failed to connect to the embedded-agent thread event endpoint.\");\n await assertOk(response);\n await consumeThreadSummaryEventStream(response, onEvent, options.signal);\n }\n async subscribeAgentThreadEventsMulti(\n options: MultiAgentThreadSummaryEventOptions,\n onEvent: (event: ThreadSummaryEvent) => void | Promise<void>,\n ): Promise<void> {\n const response = await this.http.fetchOrThrow(this.http.url(\"/public/embed/threads/events\", {\n agent_ids: options.agentIds, external_user_id: options.externalUserId, external_session_id: options.externalSessionId, cursor: options.cursor,\n runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n }), { method: \"GET\", headers: this.http.streamHeaders(), signal: options.signal }, \"Failed to connect to the embedded-agent thread event endpoint.\");\n await assertOk(response);\n await consumeThreadSummaryEventStream(response, onEvent, options.signal);\n }\n getConversationThread(threadId: string, options: ConversationThreadOptions): Promise<ThreadDetail> {\n return this.http.requestJson(`/public/embed/threads/${threadId}`, { query: {\n agent_ids: options.agentIds,\n external_user_id: options.externalUserId,\n external_session_id: options.externalSessionId,\n integration_id: options.integrationId,\n before_turn_index: options.beforeTurnIndex,\n limit: options.limit,\n runtime_target: options.runtimeTarget,\n } });\n }\n setConversationRuntimeSelection(threadId: string, request: ConversationRuntimeSelectionRequest): Promise<ConversationRuntimeSelectionResult> {\n return this.http.requestJson(`/public/embed/threads/${threadId}/runtime-selection`, { method: \"PATCH\", body: request, mutation: true });\n }\n resolveConversationRun(runId: string, request: ConversationRunRequest): Promise<ConversationRunResult> {\n return this.http.requestJson(`/public/embed/runs/${runId}/resolve`, { method: \"POST\", body: request });\n }\n deleteConversationThread(threadId: string, options: ConversationThreadOptions, requestOptions?: RequestOptions): Promise<ThreadDeleteResult> {\n return this.http.requestJson(`/public/embed/threads/${threadId}`, { method: \"DELETE\", query: {\n agent_ids: options.agentIds,\n external_user_id: options.externalUserId,\n external_session_id: options.externalSessionId,\n integration_id: options.integrationId,\n runtime_target: options.runtimeTarget,\n }, options: requestOptions, mutation: true });\n }\n getAgentThread(agentId: string, threadId: string, options: ThreadDetailOptions): Promise<ThreadDetail> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/threads/${threadId}`, { query: {\n external_user_id: options.externalUserId,\n external_session_id: options.externalSessionId,\n before_turn_index: options.beforeTurnIndex,\n limit: options.limit,\n include_subthreads: options.includeSubthreads,\n subthread_depth: options.subthreadDepth,\n subthread_turn_limit: options.subthreadTurnLimit,\n subthread_child_limit: options.subthreadChildLimit,\n runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n } });\n }\n deleteAgentThread(\n agentId: string,\n threadId: string,\n options: ThreadDeleteOptions,\n requestOptions?: RequestOptions,\n ): Promise<ThreadDeleteResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/threads/${threadId}`, { method: \"DELETE\", query: {\n external_user_id: options.externalUserId, external_session_id: options.externalSessionId, runtime_target: options.runtimeTarget, integration_id: options.integrationId,\n }, options: requestOptions, mutation: true });\n }\n getAgentRunContext(agentId: string, runId: string, options: RunContextOptions): Promise<RunContext> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs/${runId}/context`, { query: {\n external_user_id: options.externalUserId, external_session_id: options.externalSessionId, runtime_target: options.runtimeTarget, integration_id: options.integrationId,\n } });\n }\n cancelAgentRun(\n agentId: string,\n runId: string,\n options: EmbedRunCancelOptions,\n requestOptions?: RequestOptions,\n ): Promise<RunCancelResult> {\n return this.http.requestJson(`/public/embed/agents/${agentId}/runs/${runId}/cancel`, { method: \"POST\", query: {\n external_user_id: options.externalUserId, external_session_id: options.externalSessionId, runtime_target: options.runtimeTarget,\n integration_id: options.integrationId,\n }, body: {}, options: requestOptions, mutation: true });\n }\n setAgentRunFeedback(\n agentId: string,\n runId: string,\n payload: EmbeddedResponseFeedbackInput,\n ): Promise<ResponseFeedbackResult> {\n return this.http.requestJson(\n `/public/embed/agents/${agentId}/runs/${runId}/feedback`,\n { method: \"PUT\", body: payload, mutation: true },\n );\n }\n async uploadAgentAttachments(agentId: string, options: ServerEmbedAttachmentUploadOptions): Promise<AttachmentUploadResult> {\n const form = new FormData();\n form.set(\"external_user_id\", options.externalUserId);\n if (options.externalSessionId) form.set(\"external_session_id\", options.externalSessionId);\n if (options.threadId) form.set(\"thread_id\", options.threadId);\n if (options.runtimeTarget) form.set(\"runtime_target\", options.runtimeTarget);\n if (options.integrationId) form.set(\"integration_id\", options.integrationId);\n for (const file of options.files) form.append(\"files\", file, file.name);\n const response = await this.http.fetchOrThrow(this.http.url(`/public/embed/agents/${agentId}/attachments/upload`), {\n method: \"POST\",\n headers: this.http.multipartHeaders(undefined, { idempotencyKey: options.idempotencyKey }, true),\n body: form,\n }, \"Failed to connect to the embedded-agent attachment endpoint.\");\n await assertOk(response);\n return await response.json() as AttachmentUploadResult;\n }\n createAttachmentContentAccess(\n agentId: string,\n attachmentId: string,\n request: EmbedAttachmentContentAccessRequest,\n options?: RequestOptions,\n ): Promise<AttachmentContentAccess> {\n return this.http.requestJson(\n `/public/embed/agents/${agentId}/attachments/${attachmentId}/content-access`,\n { method: \"POST\", body: request, options, mutation: true },\n );\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: 666b7eb95da150322cfe3418685f29a554fd4f2cedfc89ff4d7a6d0228b8060a\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n RequestOptions,\n ResourceCandidateList,\n ResourcePackageArchive,\n ResourcePackageCandidateOptions,\n ResourcePackageExportPlan,\n ResourcePackageExportRequest,\n ResourcePackageImportPreview,\n ResourcePackageImportResult,\n ResourcePackageImportUpload,\n ResourcePackageUpload,\n ResourcePackageValidationResult\n} from \"../types\";\n\nexport class ResourcePackagesNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n getExportability(): Promise<Record<string, unknown>> {\n return this.http.requestJson<Record<string, unknown>>(\"/resource-packages/exportability\");\n }\n\n exportPlan(request: ResourcePackageExportRequest): Promise<ResourcePackageExportPlan> {\n return this.http.requestJson<ResourcePackageExportPlan>(\"/resource-packages/export/plan\", {\n method: \"POST\",\n body: request,\n });\n }\n\n async exportPackage(request: ResourcePackageExportRequest): Promise<ResourcePackageArchive> {\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-packages/export\"),\n { method: \"POST\", headers: this.http.jsonHeaders(), body: JSON.stringify(request) },\n \"Failed to export the Agents24 resource package.\",\n );\n await assertOk(response);\n const disposition = response.headers.get(\"content-disposition\") || \"\";\n const candidate = /filename=\"?([^\";]+)\"?/i.exec(disposition)?.[1] || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n return { data: new Uint8Array(await response.arrayBuffer()), filename };\n }\n\n async validatePackage(upload: ResourcePackageUpload): Promise<ResourcePackageValidationResult> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-packages/validate\", undefined),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, undefined, false), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourcePackageValidationResult;\n }\n\n async importPreview(upload: ResourcePackageImportUpload): Promise<ResourcePackageImportPreview> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n formData.set(\"mappings\", JSON.stringify(upload.mappings || {}));\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-packages/import/preview\", undefined),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, undefined, false), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourcePackageImportPreview;\n }\n\n async importPackage(upload: ResourcePackageImportUpload, options: RequestOptions = {}): Promise<ResourcePackageImportResult> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n formData.set(\"mappings\", JSON.stringify(upload.mappings || {}));\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-packages/import\", undefined),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, options, true), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourcePackageImportResult;\n }\n\n candidates(options: ResourcePackageCandidateOptions): Promise<ResourceCandidateList> {\n return this.http.requestJson<ResourceCandidateList>(\"/resource-packages/import/candidates\", {\n query: {\n kind: options.kind,\n q: options.query,\n limit: options.limit,\n offset: options.offset,\n required_capability: options.requiredCapability,\n },\n });\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: 666b7eb95da150322cfe3418685f29a554fd4f2cedfc89ff4d7a6d0228b8060a\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n ArtifactDevelopmentSession,\n ArtifactDevelopmentSessionAdmission,\n ArtifactDevelopmentSessionPrepareRequest,\n RequestOptions,\n ResourceCandidateList,\n ResourceInstallation,\n ResourceInstallationApplyRequest,\n ResourceInstallationBinding,\n ResourceInstallationCreateRequest,\n ResourceInstallationDeploymentRequest,\n ResourceInstallationLinkRequest,\n ResourceInstallationList,\n ResourceInstallationOperation,\n ResourceInstallationPlan,\n ResourceInstallationPlanUpload,\n ResourceInstallationPublication,\n ResourceInstallationPublishRequest,\n ResourceInstallationPullAcceptRequest,\n ResourceInstallationPullPayload,\n ResourceInstallationPullPlan,\n ResourceInstallationResourceListOptions,\n ResourceInstallationSecretStatus,\n ResourceInstallationSecretsRequest,\n ResourcePackageUpload\n} from \"../types\";\n\nexport class ResourceInstallationsNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n list(): Promise<ResourceInstallationList> {\n return this.http.requestJson<ResourceInstallationList>(\"/resource-installations\");\n }\n\n create(request: ResourceInstallationCreateRequest, options?: RequestOptions): Promise<ResourceInstallation> {\n return this.http.requestJson<ResourceInstallation>(\"/resource-installations\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n get(installationId: string): Promise<ResourceInstallation> {\n return this.http.requestJson<ResourceInstallation>(`/resource-installations/${installationId}`);\n }\n\n getByPackageId(packageId: string): Promise<ResourceInstallation> {\n return this.http.requestJson<ResourceInstallation>(`/resource-installations/by-package/${packageId}`);\n }\n\n async plan(upload: ResourceInstallationPlanUpload): Promise<ResourceInstallationPlan> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n const response = await this.http.fetchOrThrow(\n this.http.url(\"/resource-installations/plan\", {\n prune: upload.prune,\n integration_mode: upload.integrationMode,\n primary_resource_key: upload.primaryResourceKey,\n }),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, undefined, false), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourceInstallationPlan;\n }\n\n async planPull(installationId: string, upload: ResourcePackageUpload): Promise<ResourceInstallationPullPlan> {\n const formData = new FormData();\n const archiveBytes = upload.data.slice().buffer as ArrayBuffer;\n const candidate = upload.filename || \"\";\n const filename = /^[A-Za-z0-9][A-Za-z0-9._-]{0,200}\\.zip$/.test(candidate) ? candidate : \"resource.agents24.zip\";\n formData.append(\"file\", new Blob([archiveBytes]), filename);\n const response = await this.http.fetchOrThrow(\n this.http.url(`/resource-installations/${installationId}/pull/plan`, undefined),\n { method: \"POST\", headers: this.http.multipartHeaders(undefined, undefined, false), body: formData },\n \"Failed to upload the Agents24 resource package.\",\n );\n await assertOk(response);\n return (await response.json()) as ResourceInstallationPullPlan;\n }\n\n downloadPull(installationId: string, pullId: string): Promise<ResourceInstallationPullPayload> {\n return this.http.requestJson<ResourceInstallationPullPayload>(`/resource-installations/${installationId}/pull/${pullId}/download`);\n }\n\n acceptPull(installationId: string, pullId: string, request: ResourceInstallationPullAcceptRequest, options?: RequestOptions): Promise<ResourceInstallationPullPlan> {\n return this.http.requestJson<ResourceInstallationPullPlan>(`/resource-installations/${installationId}/pull/${pullId}/accept`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n link(installationId: string, request: ResourceInstallationLinkRequest, options?: RequestOptions): Promise<ResourceInstallationBinding> {\n return this.http.requestJson<ResourceInstallationBinding>(`/resource-installations/${installationId}/link`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n configureSecrets(installationId: string, request: ResourceInstallationSecretsRequest, options?: RequestOptions): Promise<ResourceInstallationSecretStatus> {\n return this.http.requestJson<ResourceInstallationSecretStatus>(`/resource-installations/${installationId}/secrets`, {\n method: \"PUT\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n apply(operationId: string, request: ResourceInstallationApplyRequest, options?: RequestOptions): Promise<ResourceInstallationOperation> {\n return this.http.requestJson<ResourceInstallationOperation>(`/resource-installations/operations/${operationId}/apply`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n operationStatus(operationId: string): Promise<ResourceInstallationOperation> {\n return this.http.requestJson<ResourceInstallationOperation>(`/resource-installations/operations/${operationId}/status`);\n }\n\n publish(installationId: string, request: ResourceInstallationPublishRequest, options?: RequestOptions): Promise<ResourceInstallationPublication> {\n return this.http.requestJson<ResourceInstallationPublication>(`/resource-installations/${installationId}/publish`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n prepareDevelopmentSession(installationId: string, request: ArtifactDevelopmentSessionPrepareRequest, options?: RequestOptions): Promise<ArtifactDevelopmentSessionAdmission> {\n return this.http.requestJson<ArtifactDevelopmentSessionAdmission>(`/resource-installations/${installationId}/artifact-development-sessions`, {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n developmentSessionStatus(installationId: string, resourceKey: string): Promise<ArtifactDevelopmentSession> {\n return this.http.requestJson<ArtifactDevelopmentSession>(`/resource-installations/${installationId}/artifact-development-sessions/${resourceKey}`);\n }\n\n revokeDevelopmentSession(installationId: string, sessionId: string, options?: RequestOptions): Promise<ArtifactDevelopmentSession> {\n return this.http.requestJson<ArtifactDevelopmentSession>(`/resource-installations/${installationId}/artifact-development-sessions/${sessionId}`, {\n method: \"DELETE\",\n options,\n mutation: true,\n });\n }\n\n bindDeployment(installationId: string, request: ResourceInstallationDeploymentRequest, options?: RequestOptions): Promise<ResourceInstallation> {\n return this.http.requestJson<ResourceInstallation>(`/resource-installations/${installationId}/deployment`, {\n method: \"PUT\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n resources(options: ResourceInstallationResourceListOptions): Promise<ResourceCandidateList> {\n return this.http.requestJson<ResourceCandidateList>(\"/resource-installations/resources/list\", {\n query: {\n kind: options.kind,\n query: options.query,\n limit: options.limit,\n },\n });\n }\n}\n","import type { Agents24HttpClient } from \"./http.js\";\nimport type { ControlPlaneRunEventsResponse, RunContext, RunStatus, TraceView } from \"./types.js\";\n\nexport class RunsNamespace {\n constructor(private readonly http: Agents24HttpClient) {}\n get(runId: string, options: { includeTree?: boolean } = {}): Promise<RunStatus> {\n return this.http.requestJson(`/agents/runs/${runId}`, { query: { include_tree: options.includeTree } });\n }\n getTree(runId: string): Promise<Record<string, unknown>> { return this.http.requestJson(`/agents/runs/${runId}/tree`); }\n getEvents(runId: string, options: { afterSequence?: number; limit?: number } = {}): Promise<ControlPlaneRunEventsResponse> {\n return this.http.requestJson(`/agents/runs/${runId}/events`, { query: { after_sequence: options.afterSequence, limit: options.limit } });\n }\n getContext(runId: string): Promise<RunContext> { return this.http.requestJson(`/agents/runs/${runId}/context`); }\n getTrace(runId: string, options: { includeDiagnostics?: boolean } = {}): Promise<TraceView> {\n return this.http.requestJson(`/agents/runs/${runId}/trace`, {\n query: { include_diagnostics: options.includeDiagnostics },\n });\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: 666b7eb95da150322cfe3418685f29a554fd4f2cedfc89ff4d7a6d0228b8060a\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n RequestOptions\n} from \"../types\";\n\nexport class InstructionsNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n publish(instructionId: string, options?: RequestOptions): Promise<Record<string, unknown>> {\n return this.http.requestJson<Record<string, unknown>>(`/prompts/${instructionId}/publish`, {\n method: \"POST\",\n body: {},\n options,\n mutation: true,\n });\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: 666b7eb95da150322cfe3418685f29a554fd4f2cedfc89ff4d7a6d0228b8060a\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n ClearCustomerResourcePolicyAssignmentResult,\n CustomerPrincipalRefRequest,\n CustomerResourcePolicyAssignment,\n EffectiveCustomerResourcePolicyRequest,\n EffectiveResourcePolicy,\n RequestOptions,\n ResetResourcePolicyQuotaRequest,\n ResourcePolicyList,\n ResourcePolicyQuotaScheduleResult,\n SetCustomerResourcePolicyAssignmentRequest,\n SetResourcePolicyQuotaScheduleRequest\n} from \"../types\";\n\nexport class ResourcePoliciesNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n list(): Promise<ResourcePolicyList> {\n return this.http.requestJson<ResourcePolicyList>(\"/admin/security/resource-policies/sets\");\n }\n\n setCustomerAssignment(request: SetCustomerResourcePolicyAssignmentRequest, options?: RequestOptions): Promise<CustomerResourcePolicyAssignment> {\n return this.http.requestJson<CustomerResourcePolicyAssignment>(\"/admin/security/resource-policies/customer-assignments/set\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n getCustomerAssignment(request: CustomerPrincipalRefRequest): Promise<CustomerResourcePolicyAssignment> {\n return this.http.requestJson<CustomerResourcePolicyAssignment>(\"/admin/security/resource-policies/customer-assignments/get\", {\n method: \"POST\",\n body: request,\n });\n }\n\n clearCustomerAssignment(request: CustomerPrincipalRefRequest, options?: RequestOptions): Promise<ClearCustomerResourcePolicyAssignmentResult> {\n return this.http.requestJson<ClearCustomerResourcePolicyAssignmentResult>(\"/admin/security/resource-policies/customer-assignments/clear\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n getEffectiveCustomerPolicy(request: EffectiveCustomerResourcePolicyRequest): Promise<EffectiveResourcePolicy> {\n return this.http.requestJson<EffectiveResourcePolicy>(\"/admin/security/resource-policies/customers/effective\", {\n method: \"POST\",\n body: request,\n });\n }\n\n setQuotaSchedule(request: SetResourcePolicyQuotaScheduleRequest, options?: RequestOptions): Promise<ResourcePolicyQuotaScheduleResult> {\n return this.http.requestJson<ResourcePolicyQuotaScheduleResult>(\"/admin/security/resource-policies/quota-schedules/set\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n resetQuotaNow(request: ResetResourcePolicyQuotaRequest, options?: RequestOptions): Promise<ResourcePolicyQuotaScheduleResult> {\n return this.http.requestJson<ResourcePolicyQuotaScheduleResult>(\"/admin/security/resource-policies/quota-schedules/reset-now\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: 666b7eb95da150322cfe3418685f29a554fd4f2cedfc89ff4d7a6d0228b8060a\nimport { assertOk, type Agents24HttpClient } from \"../http\";\nimport type {\n CustomerProfile,\n CustomerProfileList,\n CustomerProfileSearchOptions,\n EmbedCustomerPrincipalResolveRequest,\n EmbedCustomerPrincipalResolveResponse,\n RequestOptions\n} from \"../types\";\n\nexport class CustomerProfilesNamespace {\n constructor(protected readonly http: Agents24HttpClient) {}\n\n upsert(request: EmbedCustomerPrincipalResolveRequest, options?: RequestOptions): Promise<EmbedCustomerPrincipalResolveResponse> {\n return this.http.requestJson<EmbedCustomerPrincipalResolveResponse>(\"/public/embed/customer-principals/resolve\", {\n method: \"POST\",\n body: request,\n options,\n mutation: true,\n });\n }\n\n get(customerPrincipalRef: string): Promise<CustomerProfile> {\n return this.http.requestJson<CustomerProfile>(`/public/embed/customer-principals/${customerPrincipalRef}/profile`);\n }\n\n clear(customerPrincipalRef: string, options?: RequestOptions): Promise<unknown> {\n return this.http.requestJson<unknown>(`/public/embed/customer-principals/${customerPrincipalRef}/profile`, {\n method: \"DELETE\",\n options,\n mutation: true,\n });\n }\n\n search(options: CustomerProfileSearchOptions): Promise<CustomerProfileList> {\n return this.http.requestJson<CustomerProfileList>(\"/public/embed/customer-principals\", {\n query: {\n q: options.query,\n integration_id: options.integrationId,\n limit: options.limit ?? 25,\n },\n });\n }\n}\n","import { AgentsNamespace } from \"./agents.js\";\nimport { AgentDefinitionBuilder, GraphBuilder } from \"./builders.js\";\nimport { ClientDeploymentsNamespace, ClientSessionsNamespace } from \"./client-runtime-admin.js\";\nimport { EmbedNamespace } from \"./embed.js\";\nimport { ResourcePackagesNamespace } from \"./generated/resourcePackages.js\";\nimport { ResourceInstallationsNamespace } from \"./generated/resourceInstallations.js\";\nimport { Agents24HttpClient } from \"./http.js\";\nimport { RunsNamespace } from \"./runs.js\";\nimport { InstructionsNamespace } from \"./generated/instructions.js\";\nimport { ResourcePoliciesNamespace } from \"./generated/resourcePolicies.js\";\nimport { CustomerProfilesNamespace } from \"./generated/customerProfiles.js\";\nimport type { AgentDefinitionOptions, Agents24NodeOptions } from \"./types.js\";\n\nexport class Agents24 {\n readonly agents: AgentsNamespace;\n readonly embed: EmbedNamespace;\n readonly runs: RunsNamespace;\n readonly resourcePackages: ResourcePackagesNamespace;\n readonly resourceInstallations: ResourceInstallationsNamespace;\n readonly clientDeployments: ClientDeploymentsNamespace;\n readonly clientSessions: ClientSessionsNamespace;\n readonly instructions: InstructionsNamespace;\n readonly resourcePolicies: ResourcePoliciesNamespace;\n readonly customerProfiles: CustomerProfilesNamespace;\n\n constructor(options: Agents24NodeOptions) {\n const http = new Agents24HttpClient(options);\n this.agents = new AgentsNamespace(http);\n this.embed = new EmbedNamespace(http);\n this.runs = new RunsNamespace(http);\n this.resourcePackages = new ResourcePackagesNamespace(http);\n this.resourceInstallations = new ResourceInstallationsNamespace(http);\n this.clientDeployments = new ClientDeploymentsNamespace(http);\n this.clientSessions = new ClientSessionsNamespace(http);\n this.instructions = new InstructionsNamespace(http);\n this.resourcePolicies = new ResourcePoliciesNamespace(http);\n this.customerProfiles = new CustomerProfilesNamespace(http);\n }\n\n agent(options: AgentDefinitionOptions): AgentDefinitionBuilder {\n return new AgentDefinitionBuilder(this.agents, options);\n }\n\n graph(): GraphBuilder { return new GraphBuilder(); }\n}\n","// @generated by @agents24/sdk-contract; DO NOT EDIT.\n// contract-sha256: 666b7eb95da150322cfe3418685f29a554fd4f2cedfc89ff4d7a6d0228b8060a\nexport const SDK_OPERATION_IDS = [\n \"agents.cancel_run\",\n \"agents.catalog\",\n \"agents.create\",\n \"agents.create_attachment_content_access\",\n \"agents.delete\",\n \"agents.get\",\n \"agents.list\",\n \"agents.publish\",\n \"agents.resume_run\",\n \"agents.schema\",\n \"agents.start_run\",\n \"agents.stream\",\n \"agents.update\",\n \"agents.update_graph\",\n \"agents.upload_attachments\",\n \"agents.validate\",\n \"client.attachments.create_content_access\",\n \"client.attachments.upload\",\n \"client.bootstrap\",\n \"client.chat.stream\",\n \"client.deployments.create\",\n \"client.deployments.delete\",\n \"client.deployments.get\",\n \"client.deployments.list\",\n \"client.deployments.update\",\n \"client.hitl.resume\",\n \"client.jwks\",\n \"client.mcp.redeem\",\n \"client.mcp.start\",\n \"client.resource_policy\",\n \"client.runs.attach\",\n \"client.runs.cancel\",\n \"client.runs.set_feedback\",\n \"client.sessions.anonymous\",\n \"client.sessions.backendExchange\",\n \"client.sessions.refresh\",\n \"client.sessions.revoke\",\n \"client.threads.delete\",\n \"client.threads.events\",\n \"client.threads.get\",\n \"client.threads.list\",\n \"customer_profiles.clear\",\n \"customer_profiles.get\",\n \"customer_profiles.search\",\n \"customer_profiles.upsert\",\n \"embed.attach_agent_run\",\n \"embed.cancel_agent_run\",\n \"embed.create_attachment_content_access\",\n \"embed.delete_agent_thread\",\n \"embed.delete_conversation_thread\",\n \"embed.get_agent_run_context\",\n \"embed.get_agent_thread\",\n \"embed.get_conversation_thread\",\n \"embed.get_resource_policy\",\n \"embed.get_runtime_bootstrap\",\n \"embed.list_agent_threads\",\n \"embed.list_agent_threads_multi\",\n \"embed.resolve_agent_alias\",\n \"embed.resolve_conversation_run\",\n \"embed.resolve_customer_principal\",\n \"embed.resume_agent_run\",\n \"embed.set_agent_run_feedback\",\n \"embed.set_conversation_runtime_selection\",\n \"embed.start_agent_run\",\n \"embed.start_agent_run_mcp_auth\",\n \"embed.stream_agent\",\n \"embed.stream_agent_thread_events\",\n \"embed.stream_agent_thread_events_multi\",\n \"embed.upload_agent_attachments\",\n \"instructions.publish\",\n \"resource_installations.accept_pull\",\n \"resource_installations.apply\",\n \"resource_installations.bind_deployment\",\n \"resource_installations.configure_secrets\",\n \"resource_installations.create\",\n \"resource_installations.development_session_status\",\n \"resource_installations.download_pull\",\n \"resource_installations.get\",\n \"resource_installations.get_by_package_id\",\n \"resource_installations.link\",\n \"resource_installations.list\",\n \"resource_installations.operation_status\",\n \"resource_installations.plan\",\n \"resource_installations.plan_pull\",\n \"resource_installations.prepare_development_session\",\n \"resource_installations.publish\",\n \"resource_installations.resources\",\n \"resource_installations.revoke_development_session\",\n \"resource_packages.candidates\",\n \"resource_packages.export\",\n \"resource_packages.export_plan\",\n \"resource_packages.exportability\",\n \"resource_packages.import\",\n \"resource_packages.import_preview\",\n \"resource_packages.validate\",\n \"resource_policies.clear_customer_assignment\",\n \"resource_policies.get_customer_assignment\",\n \"resource_policies.get_effective_customer_policy\",\n \"resource_policies.list\",\n \"resource_policies.reset_quota_now\",\n \"resource_policies.set_customer_assignment\",\n \"resource_policies.set_quota_schedule\",\n \"runs.get\",\n \"runs.get_context\",\n \"runs.get_events\",\n \"runs.get_trace\",\n \"runs.get_tree\"\n] as const;\n\nexport type SDKOperationId = (typeof SDK_OPERATION_IDS)[number];\n"]}