Runtime Configuration for Agent Teams

Runtime configuration lets you supply values at run time without changing the stored definitions of teams, agents, tasks, or tools. Runtime configuration uses key-value pairs to provide values to a team at run time. A key identifies a runtime variable, and its associated value supplies the value for that variable. A placeholder is a reference to a runtime-variable key in a stored team, agent, task, or tool definition. For example, the placeholder {audience} references the runtime-variable key audience. The namespaces support different types of runtime values and can be used with teams and their tools. For teams in general, including shared teams, you can supply runtime values through SET_TEAM or RUN_TEAM. For shared teams, these values can be supplied without modifying the shared team definition.

Runtime configuration supports the following namespaces:

Namespace Purpose
instruction_variables Provide values that replace placeholders in agent roles and task instructions.
attribute_variables Provide runtime values for configurable agent or tool attributes, such as profile_name or tool_params.
state_variables Store runtime state and exchange values between tools during a run.

Runtime configuration supports both session-scoped and runtime values. Session-scoped values remain available for subsequent runs in the same database session. Runtime values apply only to the current run.

Additional runtime configuration behavior for teams and shared teams:

  • Use SET_TEAM to set the team and runtime configuration for the current database session. These values remain available for subsequent team runs in that session until you change or clear them. When you use SET_TEAM with SELECT AI AGENT <prompt>, each prompt runs the team that is set for the current session. You can submit multiple prompts using SELECT AI AGENT <prompt> after a single SET_TEAM call. The prompts continue to use the selected team and session-scoped values until you call SET_TEAM again, clear the configuration, or end or reset the database session.
  • Use RUN_TEAM to supply values for a specific team run. Values supplied through RUN_TEAM apply only to that run and override matching session-scoped values supplied through SET_TEAM. The overrides do not change the session-scoped configuration set by SET_TEAM.
  • Supplying values through SET_TEAM does not require all subsequent runs to use the same conversation. Conversation continuity is determined by the conversation information associated with the run. Prompts that use the same conversation_id belong to the same conversation thread. A new conversation starts when you provide a new conversation_id.
  • Use a runtime key only when the corresponding team, agent, task, or tool definition contains a matching placeholder.
  • A consumer can supply a key-value pair in a supported runtime-variable namespace. The supplied value affects only a matching placeholder in the stored team, agent, task, or tool definition. If no matching placeholder exists, the supplied value has no effect.
  • The team owner controls which parts of the stored definition consumers can configure by defining the available runtime-variable placeholders. Runtime-variable substitution does not grant additional privileges. Operations performed by the team remain subject to the applicable authorization requirements and runtime semantics.
  • The consumer who starts or selects a conversation owns that conversation. Only that consumer can resume a WAITING_FOR_HUMAN process, and only while the consumer still has access to the shared team.
  • Values written by SET_VARIABLE are available to later tools in the same team run. Those tools can retrieve the values by using GET_VARIABLE.
  • If a team run pauses for human input, values written by SET_VARIABLE are saved and restored when the same consumer resumes the run.
  • Runtime values do not modify the stored team, agent, task, or tool definitions.

See GET_VARIABLE Function, SET_VARIABLE Procedure, SET_TEAM Function, RUN_TEAM Function for more information.