App

data class App(val appName: String, val rootAgent: BaseAgent, val plugins: List<Plugin> = emptyList(), val resumabilityConfig: ResumabilityConfig? = null, val eventsCompactionConfig: EventsCompactionConfig? = null, val contextCacheConfig: ContextCacheConfig? = null)

Represents an LLM-backed agentic application.

An App is the top-level container for an agentic system powered by LLMs. It bundles an application name together with the rootAgent that serves as the root of the agent tree, enabling coordination and communication across all agents in the hierarchy. It also carries application-wide configuration, such as plugins and resumabilityConfig, that the runner applies to every session it runs.

appName must start with a letter and may contain only letters, digits, underscores, and hyphens, and must not be the reserved value "user", which is reserved for end-user input. Construction throws IllegalArgumentException if appName does not meet these requirements.

Constructors

Link copied to clipboard
constructor(appName: String, rootAgent: BaseAgent, plugins: List<Plugin> = emptyList(), resumabilityConfig: ResumabilityConfig? = null, eventsCompactionConfig: EventsCompactionConfig? = null, contextCacheConfig: ContextCacheConfig? = null)

Types

Link copied to clipboard
class Builder

Fluent builder for App, provided primarily for Java callers. Any property left unset falls back to the same default as the constructor.

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

The application name.

Link copied to clipboard

Optional context cache configuration that applies to all LLM agents in the app. When null, context caching is disabled.

Link copied to clipboard

Optional configuration controlling context-compaction strategies for sessions of this application. When null, no compaction runs.

Link copied to clipboard

Application-wide Plugins providing shared callbacks and services to the entire system. Defaults to an empty list.

Link copied to clipboard

Optional resumability configuration applied to the application's sessions. When null, resumability is disabled.

Link copied to clipboard

The root agent of the application's agent tree.