kind
The type of agent. 'native' implies it runs directly on the
platform. Other types include 'external'.
name
Unique identifier/ID for the agent. Must be alphanumeric with no
spaces.
display_name
The human-readable name shown in the UI.
description
Provides a human-readable summary of the agent’s purpose, visible
in the UI. Helps other agents understand its role when used as a collaborator.
llm
Specifies the large language model (LLM) that powers the agent
(e.g., 'watsonx/ibm/granite-3-8b-instruct').
style
Defines the prompting structure (e.g., 'default', 'react').
Determines how the LLM interprets instructions.
hide_reasoning
When set to True, caches internal thought processes (Chain of
Thought) from the user. Default is False.
instructions
Natural language guidance shaping the agent's behavior, persona,
and interaction style.
tools
List of external functions or services the agent can access (e.g.
API definitions, python functions).
collaborators
List of other agents this agent can interact with to solve complex
problems.
knowledge_base
Domain-specific knowledge from uploaded files or vector stores
that the agent uses to answer questions.
restrictions
Specifies if the agent is 'editable' (default) or 'non_editable'
(prevents export).
icon
SVG-format string icon for the agent (Square, 64-100px size).
guidelines
Rules to control agent behavior (e.g. "When condition then perform
action").
starter_prompts
Predefined messages shown to users to start a conversation.
welcome_content
Configures the initial greeting message and description shown to
the user.
chat_with_docs
Enables users to upload documents during chat for the agent to
reference.
context_variables
List of string variable names passed via JWT (e.g. ['user_id'])
for
session context.
query_rewrite
Configures the query rewriting module for improving ambiguous
inputs.
spec_version
The version of the agent specification schema (e.g., 'v1').