import type { Agent, AgentStats, AgentTestResult, AgentTrainingStats, AgentUsage, AgentVersion, AgentVersionComparison, AgentVersionRevision, FieldTemplate, TrainingAnalytics, TrainingExample, TrainingSession, AgentDeployment, WorkspaceAgentConfig, AgentSoul } from "../_internal/types.gen"; import type { RequestOptions } from "../base-client"; import { RequestBuilder } from "../request-builder"; /** Attributes for creating an agent. */ export type CreateAgentAttributes = { name: string; description?: string; workspace_id?: string; application_id?: string; tenant_id?: string; vertical?: string; tags?: string[]; instructions?: string; default_instructions?: string; execution_mode?: string; allow_tenant_clone?: boolean; allow_instruction_override?: boolean; output_schema_locked?: boolean; input_schema_locked?: boolean; prompt_variants?: Record; [key: string]: unknown; }; /** Attributes for updating an agent. */ export type UpdateAgentAttributes = { name?: string; description?: string; vertical?: string; tags?: string[]; instructions?: string; default_instructions?: string; execution_mode?: string; allow_tenant_clone?: boolean; allow_instruction_override?: boolean; output_schema_locked?: boolean; input_schema_locked?: boolean; prompt_variants?: Record; [key: string]: unknown; }; /** Attributes for cloning an agent. */ export type CloneAgentAttributes = { new_name: string; }; /** Attributes for running an agent test. */ export type TestAgentAttributes = { sample_input: string; }; /** Attributes for the teach (training) action on an agent. */ export type TeachAttributes = { document_id: string; corrections: Record; confirmed_fields?: string[]; correction_reasons?: Record; training_note?: string; verify_remaining?: boolean; }; /** Attributes for restoring a previously published agent version. */ export type RestoreVersionAttributes = { version_id: string; }; /** Attributes for creating a new agent version. */ export type CreateAgentVersionAttributes = { agent_id: string; prompt_template?: unknown; version_number?: number; changes_summary?: string; delegation_requires_approval?: boolean; input_schema?: Record; input_strict?: boolean; is_draft?: boolean; max_parallel_tools?: number; output_schema?: Record; output_strict?: boolean; parent_version_id?: string; soul_id?: string; temperature?: string; }; /** Attributes for creating a schema version. */ export type CreateSchemaVersionAttributes = { prompt_template: string; version_number: string; changes_summary?: string; input_schema?: Record; input_strict?: boolean; output_schema?: Record; output_strict?: boolean; }; /** Attributes for updating a schema version. */ export type UpdateSchemaVersionAttributes = { prompt_template?: string; changes_summary?: string; input_schema?: Record; input_strict?: boolean; output_schema?: Record; output_strict?: boolean; }; /** Attributes for creating a training example. */ export type CreateTrainingExampleAttributes = { agent_id: string; input_text: string; output_json: Record; confidence_score?: number; corrected_value?: string; correction_metadata?: Record; correction_reasons?: Record; document_id?: string; document_type?: string; field_name?: string; input_image_ref?: string; is_confirmed?: boolean; original_value?: string; training_note?: string; training_session_id?: string; version_id?: string; workspace_id?: string; }; /** Attributes for updating a training example. */ export type UpdateTrainingExampleAttributes = { input_text?: string; output_json?: Record; correction_metadata?: Record; correction_reasons?: Record; input_image_ref?: string; training_note?: string; }; /** Attributes for creating a field template. */ export type CreateFieldTemplateAttributes = { name: string; category: string; field_type?: string; extraction_hints?: Record; is_system?: boolean; llm_instructions?: string; validation_pattern?: string; }; /** An opaque export bundle produced by agent export and consumed by import. */ export type AgentExportBundle = Record; /** Result of a bulk delete operation. */ export type BulkDeleteResult = { deleted_count?: number; [key: string]: unknown; }; /** Optional filter for system agent discovery. */ export interface ListSystemAgentsParams { /** Filter to a specific vertical, e.g. "clinical" or "medical". */ vertical?: string; } /** Summary shape returned by the custom system-agent catalog endpoint. */ export interface SystemAgentSummary { id: string; name: string; description: string; vertical: string; tags: string[]; system_slug: string | null; allow_tenant_clone: boolean; recommended_soul_id: string | null; recommended_model_class: string | null; attribution: { reviewer: string | null; reviewed_at: string | null; review_kind: string | null; } | null; } /** * Creates the `agents` namespace for the admin SDK. * * Provides full platform-level access to agents, versions, training, * schema management, and field templates across all workspaces. * * @param rb - The RequestBuilder bound to the authenticated admin client. * @returns An object with all agent-related methods and sub-namespaces. * * @example * const admin = new GptAdmin({ apiKey: 'sk_srv_...' }); * const agents = await admin.agents.list(); */ export declare function createAgentsNamespace(rb: RequestBuilder): { /** * Lists all agents (platform-wide, no workspace filter). * * @param options - Optional request options. * @returns Array of Agent objects. * * @example * const agents = await admin.agents.list(); */ list: (options?: RequestOptions) => Promise; /** * Lists platform system agents available for cloning. * * Calls `GET /isv/catalog/system-agents`, a custom Phoenix controller * endpoint (not AshJsonApi). `rb.rawGet` already strips the `data` * envelope, so this method returns the agent array directly. * * @param params - Optional filter parameters. * @param params.vertical - Filter to a specific vertical, e.g. `"clinical"` or `"medical"`. * Omit to return all system agents across all verticals. * @param options - Optional request options (signal, idempotency key, headers). * @returns A promise that resolves to an array of `SystemAgentSummary` objects. */ listSystemAgents: (params?: ListSystemAgentsParams, options?: RequestOptions) => Promise; /** * Fetches a single agent by ID. * * @param id - The UUID of the agent. * @param options - Optional request options. * @returns The Agent record. * * @example * const agent = await admin.agents.get('agt_01...'); */ get: (id: string, options?: RequestOptions) => Promise; /** * Look up an agent by its system_slug. Use this for ISV-provisioned agents * where the slug is a stable identifier that survives database resets. * * @param slug - The system_slug of the agent (e.g., "chartless-session-prep-briefing"). * @param options - Optional request options. * @returns The Agent record. * * @example * ```ts * const agent = await admin.agents.getBySlug("chartless-session-prep-briefing"); * ``` */ getBySlug: (slug: string, options?: RequestOptions) => Promise; /** * Clones an agent within the same workspace. * * @param id - The UUID of the agent to clone. * @param attributes - Optional attributes for the clone (name, description). * @param options - Optional request options. * @returns The cloned Agent. * * @example * const clone = await admin.agents.clone('agt_01...', { name: 'Clone of Bot' }); */ clone: (id: string, attributes: CloneAgentAttributes, options?: RequestOptions) => Promise; /** * Clones an agent into a different workspace. * * @param agentId - The UUID of the agent to clone. * @param targetWorkspaceId - The UUID of the destination workspace. * @param options - Optional request options. * @returns The cloned Agent in the target workspace. * * @example * const cloned = await admin.agents.cloneForWorkspace('agt_01...', 'ws_02...'); */ cloneForWorkspace: (agentId: string, targetWorkspaceId: string, options?: RequestOptions) => Promise; /** * Creates a new agent. * * @param attributes - Agent attributes (name, workspace_id, etc.). * @param options - Optional request options. * @returns The created Agent. * * @example * const agent = await admin.agents.create({ name: 'My Agent', workspace_id: 'ws_01...' }); */ create: (attributes: CreateAgentAttributes, options?: RequestOptions) => Promise; /** * Updates an agent by ID. * * @param id - The UUID of the agent. * @param attributes - Attributes to update. * @param options - Optional request options. * @returns The updated Agent. * * @example * await admin.agents.update('agt_01...', { name: 'Renamed Agent' }); */ update: (id: string, attributes: UpdateAgentAttributes, options?: RequestOptions) => Promise; /** * Permanently deletes an agent by ID. * * @param id - The UUID of the agent to delete. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.delete('agt_01...'); */ delete: (id: string, options?: RequestOptions) => Promise; /** * Exports an agent to a portable JSON bundle. * * @param id - The UUID of the agent to export. * @param options - Optional request options. * @returns The export bundle payload. * * @example * const bundle = await admin.agents.export('agt_01...'); */ export: (id: string, options?: RequestOptions) => Promise; /** * Imports an agent from a portable export bundle. * * @param data - The export bundle object. * @param options - Optional request options. * @returns The newly created Agent. * * @example * const imported = await admin.agents.import(exportBundle); */ import: (data: AgentExportBundle, options?: RequestOptions) => Promise; /** * Runs an agent against a test input and returns the result. * * @param id - The UUID of the agent. * @param attributes - Test attributes (input, expected_output, etc.). * @param options - Optional request options. * @returns Test result payload. * * @example * const result = await admin.agents.test('agt_01...', { input: { text: '...' } }); */ test: (id: string, attributes: TestAgentAttributes, options?: RequestOptions) => Promise; /** * Validates an agent's configuration without publishing. * * @param id - The UUID of the agent. * @param options - Optional request options. * @returns Validation result with any errors or warnings. * * @example * const result = await admin.agents.validate('agt_01...'); */ validate: (id: string, options?: RequestOptions) => Promise; /** * Runs a training job (fine-tuning) on the agent using its examples. * * @param id - The UUID of the agent. * @param attributes - Training configuration attributes. * @param options - Optional request options. * @returns Training job status payload. * * @example * await admin.agents.teach('agt_01...', { epochs: 3 }); */ teach: (id: string, attributes: TeachAttributes, options?: RequestOptions) => Promise; /** * Publishes a new immutable version from the agent's current state. * * @param id - The UUID of the agent. * @param options - Optional request options. * @returns The newly created AgentVersion. * * @example * const version = await admin.agents.publishVersion('agt_01...'); */ publishVersion: (id: string, options?: RequestOptions) => Promise; /** * Restores a previously published version as the active version. * * @param id - The UUID of the agent. * @param attributes - Must include `version_id` of the version to restore. * @param options - Optional request options. * @returns The restored AgentVersion. * * @example * const version = await admin.agents.restoreVersion('agt_01...', { version_id: 'ver_01...' }); */ restoreVersion: (id: string, attributes: RestoreVersionAttributes, options?: RequestOptions) => Promise; /** * Analyzes training examples and returns insights. * * @param id - The UUID of the agent. * @param options - Optional request options. * @returns Training analysis result. * * @example * const analysis = await admin.agents.analyzeTraining('agt_01...'); */ analyzeTraining: (id: string, options?: RequestOptions) => Promise; /** * Retrieves usage statistics for a single agent. * * @param id - The UUID of the agent. * @param options - Optional request options. * @returns Usage data for the agent. * * @example * const usage = await admin.agents.usage('agt_01...'); */ usage: (id: string, options?: RequestOptions) => Promise; /** * Retrieves usage information for all agents. * * @param options - Optional request options. * @returns Array of usage data for all agents. * * @example * const allUsage = await admin.agents.usageAll(); */ usageAll: (options?: RequestOptions) => Promise; /** * Retrieves execution and performance statistics for an agent. * * @param id - The UUID of the agent. * @param options - Optional request options. * @returns Statistics payload. * * @example * const stats = await admin.agents.stats('agt_01...'); */ stats: (id: string, options?: RequestOptions) => Promise; /** * Retrieves training statistics for a single agent. * * @param id - The UUID of the agent. * @param options - Optional request options. * @returns Training statistics data. * * @example * const stats = await admin.agents.trainingStats('agt_01...'); */ trainingStats: (id: string, options?: RequestOptions) => Promise; /** * Sub-namespace for managing immutable agent versions. */ versions: { /** * Lists all agent versions. * * @param options - Optional request options. * @returns Array of AgentVersion objects. * * @example * const versions = await admin.agents.versions.list(); */ list: (options?: RequestOptions) => Promise; /** * Fetches a single agent version by ID. * * @param id - The UUID of the agent version. * @param options - Optional request options. * @returns The AgentVersion record. * * @example * const version = await admin.agents.versions.get('ver_01...'); */ get: (id: string, options?: RequestOptions) => Promise; /** * Permanently deletes an agent version. * * @param id - The UUID of the version to delete. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.versions.delete('ver_01...'); */ delete: (id: string, options?: RequestOptions) => Promise; /** * Creates a new agent version snapshot. * * @param attributes - Version attributes (agent_id, prompt_template, fields, etc.). * @param options - Optional request options. * @returns The newly created AgentVersion. * * @example * const version = await admin.agents.versions.create({ agent_id: 'agt_01...', ... }); */ create: (attributes: CreateAgentVersionAttributes, options?: RequestOptions) => Promise; /** * Marks a system field as selected for this version. * * @param id - The UUID of the agent version. * @param fieldName - The name of the system field to add (e.g. `_filename`). * @param options - Optional request options. * @returns The updated AgentVersion. * * @example * await admin.agents.versions.addSystemField('ver_01...', '_filename'); */ addSystemField: (id: string, fieldName: string, options?: RequestOptions) => Promise; /** * Removes a system field from the selected set for this version. * * @param id - The UUID of the agent version. * @param fieldName - The name of the system field to remove (e.g. `_filename`). * @param options - Optional request options. * @returns The updated AgentVersion. * * @example * await admin.agents.versions.removeSystemField('ver_01...', '_filename'); */ removeSystemField: (id: string, fieldName: string, options?: RequestOptions) => Promise; /** * Sets the full list of selected system fields for this version. * * @param id - The UUID of the agent version. * @param fieldNames - Array of system field names to set (e.g. `['_filename', '_pages']`). * @param options - Optional request options. * @returns The updated AgentVersion. * * @example * await admin.agents.versions.setSystemFields('ver_01...', ['_filename', '_pages']); */ setSystemFields: (id: string, fieldNames: string[], options?: RequestOptions) => Promise; /** * Retrieves performance metrics for an agent version. * * @param id - The UUID of the agent version. * @param options - Optional request options. * @returns Metrics data for the version. * * @example * const metrics = await admin.agents.versions.metrics('ver_01...'); */ metrics: (id: string, options?: RequestOptions) => Promise; /** * Lists revision history for an agent version. * * @param id - The UUID of the agent version. * @param options - Optional request options. * @returns Array of revision records. * * @example * const revisions = await admin.agents.versions.revisions('ver_01...'); */ revisions: (id: string, options?: RequestOptions) => Promise; /** * Fetches a single revision record by ID. * * @param id - The UUID of the revision. * @param options - Optional request options. * @returns The revision record. * * @example * const revision = await admin.agents.versions.getRevision('rev_01...'); */ getRevision: (id: string, options?: RequestOptions) => Promise; /** * Lists all revisions across all agent versions. * * @param options - Optional request options. * @returns Array of revision records. * * @example * const revisions = await admin.agents.versions.listAllRevisions(); */ listAllRevisions: (options?: RequestOptions) => Promise; /** * Compares two agent versions side-by-side. * * @param versionAId - UUID of the first version. * @param versionBId - UUID of the second version. * @param options - Optional request options. * @returns Comparison result with schema_diff and prompt_diff. * * @example * const diff = await admin.agents.versions.compare('ver_A...', 'ver_B...'); */ compare: (versionAId: string, versionBId: string, options?: RequestOptions) => Promise; /** * Sub-namespace for managing schema versions within an agent. */ schemaVersions: { /** * Lists all schema versions for an agent. * * @param agentId - The UUID of the agent. * @param options - Optional request options. * @returns Array of schema version records. * * @example * const versions = await admin.agents.versions.schemaVersions.list('agt_01...'); */ list: (agentId: string, options?: RequestOptions) => Promise; /** * Creates a new schema version for an agent. * * @param agentId - The UUID of the agent. * @param attributes - Schema version attributes. * @param options - Optional request options. * @returns The newly created schema version. * * @example * const sv = await admin.agents.versions.schemaVersions.create('agt_01...', { output_schema: { type: 'object', properties: {} } }); */ create: (agentId: string, attributes: CreateSchemaVersionAttributes, options?: RequestOptions) => Promise; /** * Activates a schema version, making it the live version. * * @param agentId - The UUID of the agent. * @param versionId - The UUID of the schema version to activate. * @param options - Optional request options. * @returns The activated schema version. * * @example * await admin.agents.versions.schemaVersions.activate('agt_01...', 'ver_01...'); */ activate: (agentId: string, versionId: string, options?: RequestOptions) => Promise; /** * Updates an existing schema version. * * @param agentId - The UUID of the agent. * @param versionId - The UUID of the schema version to update. * @param attributes - Attributes to update. * @param options - Optional request options. * @returns The updated schema version. * * @example * await admin.agents.versions.schemaVersions.update('agt_01...', 'ver_01...', { output_schema: { type: 'object', properties: {} } }); */ update: (agentId: string, versionId: string, attributes: UpdateSchemaVersionAttributes, options?: RequestOptions) => Promise; }; }; /** * Sub-namespace for managing training examples attached to agents. */ training: { /** * Lists all training examples. * * @param options - Optional request options. * @returns Array of TrainingExample objects. * * @example * const examples = await admin.agents.training.list(); */ list: (options?: RequestOptions) => Promise; /** * Fetches a single training example by ID. * * @param id - The UUID of the training example. * @param options - Optional request options. * @returns The TrainingExample record. * * @example * const example = await admin.agents.training.get('tex_01...'); */ get: (id: string, options?: RequestOptions) => Promise; /** * Creates a new training example. * * @param attributes - Training example attributes (agent_id, input_text, output_json, etc.). * @param options - Optional request options. * @returns The created TrainingExample. * * @example * const example = await admin.agents.training.create({ agent_id: 'agt_01...', input_text: '...', output_json: {} }); */ create: (attributes: CreateTrainingExampleAttributes, options?: RequestOptions) => Promise; /** * Updates a training example's attributes. * * @param id - The UUID of the training example. * @param attributes - Attributes to update. * @param options - Optional request options. * @returns The updated TrainingExample. * * @example * const updated = await admin.agents.training.update('tex_01...', { label: 'reviewed' }); */ update: (id: string, attributes: UpdateTrainingExampleAttributes, options?: RequestOptions) => Promise; /** * Deletes a training example. * * @param id - The UUID of the training example to delete. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.training.delete('tex_01...'); */ delete: (id: string, options?: RequestOptions) => Promise; /** * Creates multiple training examples for one agent in a single batch operation. * * @param agentId - The UUID of the agent the examples belong to. * @param examples - Array of training example attribute objects. * @param options - Optional request options. * @returns Array of created TrainingExample objects. * * @example * const created = await admin.agents.training.bulkCreate('agt_01...', [ * { input_text: '...', output_json: {} }, * ]); */ bulkCreate: (agentId: string, examples: CreateTrainingExampleAttributes[], options?: RequestOptions) => Promise; /** * Deletes multiple training examples for one agent in a single batch operation. * * @param agentId - The UUID of the agent the examples belong to. * @param ids - Array of training example UUIDs to delete. * @param options - Optional request options. * @returns Deletion result payload. * * @example * await admin.agents.training.bulkDelete('agt_01...', ['tex_01...', 'tex_02...']); */ bulkDelete: (agentId: string, ids: string[], options?: RequestOptions) => Promise; /** * Searches training examples by semantic similarity. * * The query string is embedded server-side; you do not need to compute * embeddings client-side. * * @param agentId - The UUID of the agent whose training examples to search. * @param query - The search query text. * @param limit - Optional maximum number of results to return (default 5). * @param options - Optional request options. * @returns Array of matching TrainingExample objects. * * @example * const results = await admin.agents.training.search('agt_01...', 'invoice total'); */ search: (agentId: string, query: string, limit?: number, options?: RequestOptions) => Promise; /** * Lists training examples for a specific agent. * * @param agentId - The UUID of the agent. * @param options - Optional request options. * @returns Array of training examples for the agent. * * @example * const examples = await admin.agents.training.listForAgent('agt_01...'); */ listForAgent: (agentId: string, options?: RequestOptions) => Promise; /** * Deletes a training example for a specific agent. * * @param agentId - The UUID of the agent. * @param exampleId - The UUID of the training example. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.training.deleteForAgent('agt_01...', 'tex_01...'); */ deleteForAgent: (agentId: string, exampleId: string, options?: RequestOptions) => Promise; /** * Sub-namespace for managing training sessions. */ sessions: { /** * Lists training sessions for a specific agent. * * @param agentId - The UUID of the agent. * @param options - Optional request options. * @returns Array of training session records. * * @example * const sessions = await admin.agents.training.sessions.list('agt_01...'); */ list: (agentId: string, options?: RequestOptions) => Promise; /** * Fetches a single training session by ID. * * @param id - The UUID of the training session. * @param options - Optional request options. * @returns The training session record. * * @example * const session = await admin.agents.training.sessions.get('ts_01...'); */ get: (id: string, options?: RequestOptions) => Promise; /** * Deletes a training session. * * @param id - The UUID of the training session. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.training.sessions.delete('ts_01...'); */ delete: (id: string, options?: RequestOptions) => Promise; }; }; /** * Sub-namespace for field templates — reusable field definitions. */ fieldTemplates: { /** * Lists all available field templates. * * @param options - Optional request options. * @returns Array of field template objects. * * @example * const templates = await admin.agents.fieldTemplates.list(); */ list: (options?: RequestOptions) => Promise; /** * Fetches a single field template by ID. * * @param id - The UUID of the field template. * @param options - Optional request options. * @returns The field template object. * * @example * const template = await admin.agents.fieldTemplates.get('ftpl_01...'); */ get: (id: string, options?: RequestOptions) => Promise; /** * Creates a new field template. * * @param attributes - Field template attributes (name, category, field_type, etc.). * @param options - Optional request options. * @returns The created field template object. * * @example * const template = await admin.agents.fieldTemplates.create({ name: 'Invoice Total', category: 'finance', field_type: 'currency' }); */ create: (attributes: CreateFieldTemplateAttributes, options?: RequestOptions) => Promise; /** * Permanently deletes a field template by ID. * * @param id - The UUID of the field template to delete. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.fieldTemplates.delete('ftpl_01...'); */ delete: (id: string, options?: RequestOptions) => Promise; }; /** * Manage agent deployments — bindings from catalog agents to applications. */ deployments: { /** * Lists all agent deployments. * * @param options - Optional request options (pagination, filters). * @returns A paginated list of agent deployments. * * @example * const deployments = await admin.agents.deployments.list(); */ list: (options?: RequestOptions) => Promise; /** * Retrieves a single agent deployment by ID. * * @param id - The UUID of the deployment. * @param options - Optional request options. * @returns The agent deployment. * * @example * const deployment = await admin.agents.deployments.get('dep_01...'); */ get: (id: string, options?: RequestOptions) => Promise; /** * Creates a new agent deployment. * * @param attributes - Deployment attributes (catalog_agent_id, application_id, etc.). * @param options - Optional request options. * @returns The created deployment. * * @example * const deployment = await admin.agents.deployments.create({ * catalog_agent_id: 'agent_01...', * effective_version_id: 'ver_01...', * application_id: 'app_01...', * tenant_id: 'ten_01...', * }); */ create: (attributes: Record, options?: RequestOptions) => Promise; /** * Updates an agent deployment. * * @param id - The UUID of the deployment. * @param attributes - Attributes to update. * @param options - Optional request options. * @returns The updated deployment. * * @example * await admin.agents.deployments.update('dep_01...', { auto_deploy_agents: true }); */ update: (id: string, attributes: Record, options?: RequestOptions) => Promise; /** * Accepts a pending version update on a deployment. * * @param id - The UUID of the deployment with an available update. * @param options - Optional request options. * @returns The updated deployment with new effective version. * * @example * await admin.agents.deployments.acceptUpdate('dep_01...'); */ acceptUpdate: (id: string, options?: RequestOptions) => Promise; /** * Permanently deletes an agent deployment. * * @param id - The UUID of the deployment to delete. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.deployments.delete('dep_01...'); */ delete: (id: string, options?: RequestOptions) => Promise; }; /** * Manage workspace-level agent config overrides. */ workspaceConfigs: { /** * Lists all workspace agent configs. * * @param options - Optional request options (pagination, filters). * @returns A paginated list of workspace agent configs. * * @example * const configs = await admin.agents.workspaceConfigs.list(); */ list: (options?: RequestOptions) => Promise; /** * Retrieves a single workspace agent config by ID. * * @param id - The UUID of the config. * @param options - Optional request options. * @returns The workspace agent config. * * @example * const config = await admin.agents.workspaceConfigs.get('wac_01...'); */ get: (id: string, options?: RequestOptions) => Promise; /** * Creates a new workspace agent config. * * @param attributes - Config attributes (agent_deployment_id, workspace_id, overrides). * @param options - Optional request options. * @returns The created config. * * @example * const config = await admin.agents.workspaceConfigs.create({ * agent_deployment_id: 'dep_01...', * workspace_id: 'ws_01...', * overrides: { prompt_template: 'Custom prompt...' }, * }); */ create: (attributes: Record, options?: RequestOptions) => Promise; /** * Updates a workspace agent config. * * @param id - The UUID of the config. * @param attributes - Attributes to update. * @param options - Optional request options. * @returns The updated config. * * @example * await admin.agents.workspaceConfigs.update('wac_01...', { * overrides: { prompt_template: 'Updated prompt...' }, * }); */ update: (id: string, attributes: Record, options?: RequestOptions) => Promise; /** * Permanently deletes a workspace agent config. * * @param id - The UUID of the config to delete. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.workspaceConfigs.delete('wac_01...'); */ delete: (id: string, options?: RequestOptions) => Promise; }; /** * Manage agent souls — personality templates that govern agent behavior. */ souls: { /** * Lists all agent souls. * * @param options - Optional request options (pagination, filters). * @returns A list of agent souls. * * @example * const souls = await admin.agents.souls.list(); */ list: (options?: RequestOptions) => Promise; /** * Retrieves a single agent soul by ID. * * @param id - The UUID of the soul. * @param options - Optional request options. * @returns The agent soul. * * @example * const soul = await admin.agents.souls.get('soul_01...'); */ get: (id: string, options?: RequestOptions) => Promise; /** * Creates a new agent soul. * * @param attributes - Soul attributes (name, content, scope_type, etc.). * @param options - Optional request options. * @returns The created soul. * * @example * const soul = await admin.agents.souls.create({ * name: 'Professional', * content: 'You are a professional, courteous assistant...', * scope_type: 'workspace', * workspace_id: 'ws_01...', * }); */ create: (attributes: Record, options?: RequestOptions) => Promise; /** * Updates an agent soul. * * @param id - The UUID of the soul. * @param attributes - Attributes to update. * @param options - Optional request options. * @returns The updated soul. * * @example * await admin.agents.souls.update('soul_01...', { content: 'Updated guidelines...' }); */ update: (id: string, attributes: Record, options?: RequestOptions) => Promise; /** * Permanently deletes an agent soul. * * @param id - The UUID of the soul to delete. * @param options - Optional request options. * @returns True on successful deletion. * * @example * await admin.agents.souls.delete('soul_01...'); */ delete: (id: string, options?: RequestOptions) => Promise; }; /** * Browse the agent tool catalog. */ toolCatalog: { /** * Lists all available agent tools. * * @param options - Optional request options (pagination, filters). * @returns A list of tool catalog entries. * * @example * const tools = await admin.agents.toolCatalog.list(); */ list: (options?: RequestOptions) => Promise[]>; }; }; /** Return type for the agents namespace — supports per-domain type imports. */ export type AgentsAPI = ReturnType; //# sourceMappingURL=agents.d.ts.map