# Uses of Class
com.google.adk.agents.BaseAgent

Packages that use BaseAgent
Package
Description
com.example.a2a_basic
com.google.adk.a2a.agent
com.google.adk.a2a.executor
com.google.adk.agents
com.google.adk.apps
com.google.adk.maven
com.google.adk.plugins
com.google.adk.plugins.agentanalytics
com.google.adk.runner
com.google.adk.tools
com.google.adk.tutorials
com.google.adk.utils
com.google.adk.web

- ## Uses of BaseAgent in com.example.a2a_basic

  Constructors in com.example.a2a_basic with parameters of type BaseAgent
  Modifier
  Constructor
  Description
  ``
  `A2AAgentRun(BaseAgent agent)`

- ## Uses of BaseAgent in com.google.adk.a2a.agent

  Subclasses of BaseAgent in com.google.adk.a2a.agent
  Modifier and Type
  Class
  Description
  `class`
  `RemoteA2AAgent`
  Agent that communicates with a remote A2A agent via an A2A client.
  Method parameters in com.google.adk.a2a.agent with type arguments of type BaseAgent
  Modifier and Type
  Method
  Description
  `RemoteA2AAgent.Builder`
  RemoteA2AAgent.Builder.`subAgents(List<? extends BaseAgent> subAgents)`

- ## Uses of BaseAgent in com.google.adk.a2a.executor

  Methods in com.google.adk.a2a.executor with parameters of type BaseAgent
  Modifier and Type
  Method
  Description
  `AgentExecutor.Builder`
  AgentExecutor.Builder.`agent(BaseAgent agent)`

- ## Uses of BaseAgent in com.google.adk.agents

  Subclasses of BaseAgent in com.google.adk.agents
  Modifier and Type
  Class
  Description
  `class`
  `LlmAgent`
  The LLM-based agent.
  `class`
  `LoopAgent`
  An agent that runs its sub-agents sequentially in a loop.
  `class`
  `ParallelAgent`
  A shell agent that runs its sub-agents in parallel in isolated manner.
  `class`
  `PlannerAgent`
  An agent that delegates execution planning to a `Planner` strategy.
  `class`
  `SequentialAgent`
  An agent that runs its sub-agents sequentially.
  Fields in com.google.adk.agents with type parameters of type BaseAgent
  Modifier and Type
  Field
  Description
  `protected com.google.common.collect.ImmutableList<BaseAgent>`
  BaseAgent.Builder.`subAgents`
  Methods in com.google.adk.agents that return BaseAgent
  Modifier and Type
  Method
  Description
  `BaseAgent`
  InvocationContext.`agent()`
  Returns the agent being invoked.
  `abstract BaseAgent`
  BaseAgent.Builder.`build()`
  `BaseAgent`
  PlanningContext.`findAgent(String name)`
  Finds an available agent by name.
  `static BaseAgent`
  BaseAgent.`fromConfig(BaseAgentConfig config, String configAbsPath)`
  Creates a new agent instance from a configuration object.
  `static BaseAgent`
  ConfigAgentUtils.`fromConfig(String configPath)`
  Load agent from a YAML config file path.
  `BaseAgent`
  BaseAgent.`parentAgent()`
  Retrieves the parent agent in the agent tree.
  `BaseAgent`
  BaseAgent.`rootAgent()`
  Returns the root agent for this agent by traversing up the parent chain.
  Methods in com.google.adk.agents that return types with arguments of type BaseAgent
  Modifier and Type
  Method
  Description
  `com.google.common.collect.ImmutableList<BaseAgent>`
  PlannerAction.RunAgents.`agents()`
  Returns the value of the `agents` record component.
  `com.google.common.collect.ImmutableList<BaseAgent>`
  PlanningContext.`availableAgents()`
  Returns the sub-agents available for the planner to select from.
  `Optional<BaseAgent>`
  BaseAgent.`findAgent(String name)`
  Finds an agent (this or descendant) by name.
  `Optional<BaseAgent>`
  BaseAgent.`findSubAgent(String name)`
  Recursively search sub agent by name.
  `static com.google.common.collect.ImmutableList<BaseAgent>`
  ConfigAgentUtils.`resolveSubAgents(List<BaseAgentConfig.AgentRefConfig> subAgentConfigs, String configAbsPath)`
  Resolves subagent configurations into actual BaseAgent instances.
  `List<? extends BaseAgent>`
  BaseAgent.`subAgents()`
  Methods in com.google.adk.agents with parameters of type BaseAgent
  Modifier and Type
  Method
  Description
  `InvocationContext.Builder`
  InvocationContext.Builder.`agent(BaseAgent agent)`
  Sets the agent being invoked.
  `protected void`
  BaseAgent.`parentAgent(BaseAgent parentAgent)`
  Sets the parent agent.
  `B`
  BaseAgent.Builder.`subAgents(BaseAgent... subAgents)`
  Method parameters in com.google.adk.agents with type arguments of type BaseAgent
  Modifier and Type
  Method
  Description
  `B`
  BaseAgent.Builder.`subAgents(List<? extends BaseAgent> subAgents)`
  Constructors in com.google.adk.agents with parameters of type BaseAgent
  Modifier
  Constructor
  Description
  ``
  `RunAgents(BaseAgent singleAgent)`
  Constructor parameters in com.google.adk.agents with type arguments of type BaseAgent
  Modifier
  Constructor
  Description
  ``
  `BaseAgent(String name, String description, @Nullable List<? extends BaseAgent> subAgents, @Nullable List<? extends Callbacks.BeforeAgentCallback> beforeAgentCallback, @Nullable List<? extends Callbacks.AfterAgentCallback> afterAgentCallback)`
  Creates a new BaseAgent.
  ``
  `PlanningContext(InvocationContext invocationContext, com.google.common.collect.ImmutableList<BaseAgent> availableAgents)`
  ``
  `RunAgents(com.google.common.collect.ImmutableList<BaseAgent> agents)`
  Creates an instance of a `RunAgents` record class.

- ## Uses of BaseAgent in com.google.adk.apps

  Methods in com.google.adk.apps that return BaseAgent
  Modifier and Type
  Method
  Description
  `BaseAgent`
  App.`rootAgent()`
  Methods in com.google.adk.apps with parameters of type BaseAgent
  Modifier and Type
  Method
  Description
  `App.Builder`
  App.Builder.`rootAgent(BaseAgent rootAgent)`

- ## Uses of BaseAgent in com.google.adk.maven

  Methods in com.google.adk.maven that return BaseAgent
  Modifier and Type
  Method
  Description
  `BaseAgent`
  AgentLoader.`loadAgent(String name)`
  Loads the BaseAgent instance for the specified agent name.
  `BaseAgent`
  ConfigAgentLoader.`loadAgent(String name)`

- ## Uses of BaseAgent in com.google.adk.plugins

  Methods in com.google.adk.plugins with parameters of type BaseAgent
  Modifier and Type
  Method
  Description
  `io.reactivex.rxjava3.core.Maybe<com.google.genai.types.Content>`
  LoggingPlugin.`afterAgentCallback(BaseAgent agent, CallbackContext callbackContext)`
  `default io.reactivex.rxjava3.core.Maybe<com.google.genai.types.Content>`
  Plugin.`afterAgentCallback(BaseAgent agent, CallbackContext callbackContext)`
  Callback executed after an agent's primary logic has completed.
  `io.reactivex.rxjava3.core.Maybe<com.google.genai.types.Content>`
  PluginManager.`afterAgentCallback(BaseAgent agent, CallbackContext callbackContext)`
  `io.reactivex.rxjava3.core.Maybe<com.google.genai.types.Content>`
  LoggingPlugin.`beforeAgentCallback(BaseAgent agent, CallbackContext callbackContext)`
  `default io.reactivex.rxjava3.core.Maybe<com.google.genai.types.Content>`
  Plugin.`beforeAgentCallback(BaseAgent agent, CallbackContext callbackContext)`
  Callback executed before an agent's primary logic is invoked.
  `io.reactivex.rxjava3.core.Maybe<com.google.genai.types.Content>`
  PluginManager.`beforeAgentCallback(BaseAgent agent, CallbackContext callbackContext)`

- ## Uses of BaseAgent in com.google.adk.plugins.agentanalytics

  Methods in com.google.adk.plugins.agentanalytics with parameters of type BaseAgent
  Modifier and Type
  Method
  Description
  `io.reactivex.rxjava3.core.Maybe<com.google.genai.types.Content>`
  BigQueryAgentAnalyticsPlugin.`afterAgentCallback(BaseAgent agent, CallbackContext callbackContext)`
  `io.reactivex.rxjava3.core.Maybe<com.google.genai.types.Content>`
  BigQueryAgentAnalyticsPlugin.`beforeAgentCallback(BaseAgent agent, CallbackContext callbackContext)`

- ## Uses of BaseAgent in com.google.adk.runner

  Methods in com.google.adk.runner that return BaseAgent
  Modifier and Type
  Method
  Description
  `BaseAgent`
  Runner.`agent()`
  Methods in com.google.adk.runner with parameters of type BaseAgent
  Modifier and Type
  Method
  Description
  `Runner.Builder`
  Runner.Builder.`agent(BaseAgent agent)`
  Constructors in com.google.adk.runner with parameters of type BaseAgent
  Modifier
  Constructor
  Description
  ``
  `FirestoreDatabaseRunner(BaseAgent baseAgent, com.google.cloud.firestore.Firestore firestore)`
  Constructor for FirestoreDatabaseRunner
  ``
  `FirestoreDatabaseRunner(BaseAgent baseAgent, String appName, com.google.cloud.firestore.Firestore firestore)`
  Constructor for FirestoreDatabaseRunner with appName
  ``
  `FirestoreDatabaseRunner(BaseAgent baseAgent, String appName, List<BasePlugin> plugins, com.google.cloud.firestore.Firestore firestore)`
  Constructor for FirestoreDatabaseRunner with parent runners
  ``
  `InMemoryRunner(BaseAgent agent)`
  ``
  `InMemoryRunner(BaseAgent agent, String appName)`
  ``
  `InMemoryRunner(BaseAgent agent, String appName, List<? extends Plugin> plugins)`
  ``
  `Runner(BaseAgent agent, String appName, BaseArtifactService artifactService, BaseSessionService sessionService)`
  Deprecated.
  Use `Runner.Builder` instead.
  ``
  `Runner(BaseAgent agent, String appName, BaseArtifactService artifactService, BaseSessionService sessionService, @Nullable BaseMemoryService memoryService)`
  Deprecated.
  Use `Runner.Builder` instead.
  ``
  `Runner(BaseAgent agent, String appName, BaseArtifactService artifactService, BaseSessionService sessionService, @Nullable BaseMemoryService memoryService, List<? extends Plugin> plugins)`
  Deprecated.
  Use `Runner.Builder` instead.
  `protected`
  `Runner(BaseAgent agent, String appName, BaseArtifactService artifactService, BaseSessionService sessionService, @Nullable BaseMemoryService memoryService, List<? extends Plugin> plugins, @Nullable EventsCompactionConfig eventsCompactionConfig, @Nullable ContextCacheConfig contextCacheConfig)`
  Deprecated.
  Use `Runner.Builder` instead.

- ## Uses of BaseAgent in com.google.adk.tools

  Methods in com.google.adk.tools that return BaseAgent
  Modifier and Type
  Method
  Description
  `BaseAgent`
  AgentTool.`getAgent()`
  Methods in com.google.adk.tools with parameters of type BaseAgent
  Modifier and Type
  Method
  Description
  `static AgentTool`
  AgentTool.`create(BaseAgent agent)`
  `static AgentTool`
  AgentTool.`create(BaseAgent agent, boolean skipSummarization)`
  `static AgentTool`
  AgentTool.`create(BaseAgent agent, boolean skipSummarization, boolean includePlugins)`
  Constructors in com.google.adk.tools with parameters of type BaseAgent
  Modifier
  Constructor
  Description
  `protected`
  `AgentTool(BaseAgent agent, boolean skipSummarization)`
  `protected`
  `AgentTool(BaseAgent agent, boolean skipSummarization, boolean includePlugins)`

- ## Uses of BaseAgent in com.google.adk.tutorials

  Fields in com.google.adk.tutorials declared as BaseAgent
  Modifier and Type
  Field
  Description
  `static final BaseAgent`
  CityTimeWeather.`ROOT_AGENT`
  `static final BaseAgent`
  LiveAudioSingleAgent.`WEATHER_AGENT`

- ## Uses of BaseAgent in com.google.adk.utils

  Methods in com.google.adk.utils that return types with arguments of type BaseAgent
  Modifier and Type
  Method
  Description
  `default List<Class<? extends BaseAgent>>`
  AdkComponentProvider.`getAgentClasses()`
  Returns a list of agent classes to register.
  `List<Class<? extends BaseAgent>>`
  CoreAdkComponentProvider.`getAgentClasses()`
  Returns agent classes for `LlmAgent`, `LoopAgent`, `ParallelAgent` and `SequentialAgent`.
  `static Class<? extends BaseAgent>`
  ComponentRegistry.`resolveAgentClass(String agentClassName)`
  Resolves the agent class based on the agent class name from the configuration.
  `static Optional<BaseAgent>`
  ComponentRegistry.`resolveAgentInstance(String name)`
  Resolves an agent instance from the registry.

- ## Uses of BaseAgent in com.google.adk.web

  Methods in com.google.adk.web that return BaseAgent
  Modifier and Type
  Method
  Description
  `BaseAgent`
  AgentLoader.`loadAgent(String name)`
  Loads the BaseAgent instance for the specified agent name.
  `BaseAgent`
  AgentStaticLoader.`loadAgent(String name)`
  `BaseAgent`
  CompiledAgentLoader.`loadAgent(String name)`
  Methods in com.google.adk.web with parameters of type BaseAgent
  Modifier and Type
  Method
  Description
  `static Optional<String>`
  AgentGraphGenerator.`getAgentGraphDotSource(BaseAgent rootAgent, List<List<String>> highlightPairs)`
  Generates the DOT source string for the agent graph.
  `static void`
  AdkWebServer.`start(BaseAgent... agents)`
  Constructors in com.google.adk.web with parameters of type BaseAgent
  Modifier
  Constructor
  Description
  ``
  `AgentStaticLoader(BaseAgent... agents)`