Update an existing agent type.
Only provided fields are updated. Version is automatically bumped.
Returns: Updated agent type.
Raises: NotFoundError: If agent type not found or belongs to another org.
Request body for updating an agent type. All fields optional.
Only provided fields are updated. Name and organization_id are immutable and cannot be changed via update.
Attributes: display_name: Updated human-readable name. description: Updated description. icon: Updated icon identifier or URL. provider: Updated LLM provider. model: Updated model identifier. temperature: Updated sampling temperature. context_window: Updated context window size. system_instructions: Updated system prompt. mcp_servers: Updated MCP server list. builtin_tools: Updated built-in tool list. default_plan_template: Updated default plan steps. agent_resource_id: Updated agent resource ID. runner_resource_id: Updated runner resource ID. conversation_routing: Updated routing rules.
Routing rules for conversation-to-agent assignment.
Attributes: when: Natural language description of when this agent should handle a conversation. examples: Example messages that should route to this agent. avoid: Natural language description of messages this agent should not handle.
Successful Response
Domain model for agent types with LLM configuration and tooling.
Identity fields (frozen - immutable after creation): name: Machine-readable name unique within organization. organization_id: Tenant that owns this agent type.
Configuration fields (mutable): display_name: Human-readable name shown in UI. description: Agent purpose and capabilities. icon: Icon identifier or URL. provider: LLM provider (e.g., "anthropic", "openai"). model: Model identifier (e.g., "claude-opus-4", "gpt-4"). temperature: Sampling temperature for generation. context_window: Maximum context window size in tokens. system_instructions: System prompt for the agent. mcp_servers: MCP server identifiers available to the agent. builtin_tools: Built-in tool identifiers available to the agent. default_plan_template: Default plan steps for new tasks. conversation_routing: Routing rules for conversation assignment.
Resource fields (linking to pragma resources): agent_resource_id: SurrealDB resource ID for the agent type. runner_resource_id: SurrealDB resource ID for the runner resource.
Audit fields: created_by: User ID of the creator. version: Schema version for migration support.
Inherited from PragmaModel: created_at: Creation timestamp (frozen). updated_at: Last update timestamp (mutable).
Routing rules for conversation-to-agent assignment.
Attributes: when: Natural language description of when this agent should handle a conversation. examples: Example messages that should route to this agent. avoid: Natural language description of messages this agent should not handle.