Skip to content

API Reference

Every type under io.kairo.api.* carries an explicit stability annotation:

AnnotationMeaningBreak policy
@StablePublic contract. Frozen for the v1.x window.Requires ADR + major bump.
@ExperimentalOpt-in. Shape may change.Can change with a minor bump.
@InternalNot a public API.May change any time.

Canonical policy: ADR-023 — SPI stability. Enforcement: japicmp policy. Full triage: SPI census v1.0.

Core @Stable SPIs

TypePackagePurpose
AgentagentCore ReAct contract for a runnable agent.
ModelProvidermodelInvoke an LLM; returns a ModelResponse.
ToolHandlertoolExecute a named tool invocation.
MsgmessageWire message between agent, provider, and tools.
KairoExceptionexceptionBase exception with structured error fields.

Where to look for the rest

  • @Stable surface (119 types) — enumerated in the census, grouped by package.
  • @Experimental surface (78 types) — a2a, middleware, team, evolution, channel, guardrail. Use at your own risk; shapes will change before v1.1 stabilization.
  • Source of truth — when this page and the source disagree, the source wins. kairo-api/src/main/java/io/kairo/api/.

Using the reference

Each entry lists: surface, stability guarantees, default implementations, usage example, configuration, lifecycle, migration policy, and related ADRs. Pages are hand-maintained and favor pointer fidelity over prose — when in doubt, follow the link to the source file.