# Uses of Interface
com.google.adk.plugins.Plugin

Packages that use Plugin
Package
Description
com.google.adk.a2a.executor
com.google.adk.agents
com.google.adk.apps
com.google.adk.plugins
com.google.adk.plugins.agentanalytics
com.google.adk.runner

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

  Method parameters in com.google.adk.a2a.executor with type arguments of type Plugin
  Modifier and Type
  Method
  Description
  `AgentExecutor.Builder`
  AgentExecutor.Builder.`plugins(List<? extends Plugin> plugins)`

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

  Methods in com.google.adk.agents that return Plugin
  Modifier and Type
  Method
  Description
  `Plugin`
  InvocationContext.`pluginManager()`
  Returns the plugin manager for accessing tools and plugins.
  Methods in com.google.adk.agents with parameters of type Plugin
  Modifier and Type
  Method
  Description
  `InvocationContext.Builder`
  InvocationContext.Builder.`pluginManager(Plugin pluginManager)`
  Sets the plugin manager for accessing tools and plugins.

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

  Methods in com.google.adk.apps that return types with arguments of type Plugin
  Modifier and Type
  Method
  Description
  `List<? extends Plugin>`
  App.`plugins()`
  Methods in com.google.adk.apps with parameters of type Plugin
  Modifier and Type
  Method
  Description
  `App.Builder`
  App.Builder.`plugins(Plugin... plugins)`
  Method parameters in com.google.adk.apps with type arguments of type Plugin
  Modifier and Type
  Method
  Description
  `App.Builder`
  App.Builder.`plugins(List<? extends Plugin> plugins)`

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

  Classes in com.google.adk.plugins that implement Plugin
  Modifier and Type
  Class
  Description
  `class`
  `BasePlugin`
  Base class for creating plugins.
  `class`
  `ContextFilterPlugin`
  A plugin that filters the LLM request `Content` list to reduce its size, for example to adhere to context window limits.
  `class`
  `GlobalInstructionPlugin`
  Plugin that provides global instructions functionality at the App level.
  `class`
  `LoggingPlugin`
  A plugin that logs important information at each callback point.
  `class`
  `PluginManager`
  Manages the registration and execution of plugins.
  `class`
  `ReplayPlugin`
  Plugin for replaying ADK agent interactions from recordings.
  Methods in com.google.adk.plugins that return types with arguments of type Plugin
  Modifier and Type
  Method
  Description
  `Optional<Plugin>`
  PluginManager.`getPlugin(String pluginName)`
  Retrieves a registered plugin by its name.
  `List<Plugin>`
  PluginManager.`getPlugins()`
  Returns the list of registered plugins.
  Methods in com.google.adk.plugins with parameters of type Plugin
  Modifier and Type
  Method
  Description
  `void`
  PluginManager.`registerPlugin(Plugin plugin)`
  Registers a new plugin.
  Constructor parameters in com.google.adk.plugins with type arguments of type Plugin
  Modifier
  Constructor
  Description
  ``
  `PluginManager(@Nullable List<? extends Plugin> plugins)`

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

  Classes in com.google.adk.plugins.agentanalytics that implement Plugin
  Modifier and Type
  Class
  Description
  `class`
  `BigQueryAgentAnalyticsPlugin`
  BigQuery Agent Analytics Plugin for Java.

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

  Methods in com.google.adk.runner with parameters of type Plugin
  Modifier and Type
  Method
  Description
  `Runner.Builder`
  Runner.Builder.`plugins(Plugin... plugins)`
  Method parameters in com.google.adk.runner with type arguments of type Plugin
  Modifier and Type
  Method
  Description
  `Runner.Builder`
  Runner.Builder.`plugins(List<? extends Plugin> plugins)`
  Constructor parameters in com.google.adk.runner with type arguments of type Plugin
  Modifier
  Constructor
  Description
  ``
  `InMemoryRunner(BaseAgent agent, String appName, List<? extends Plugin> plugins)`
  ``
  `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.