Skip to content

ai-foundation

Enterprise Part of the commercial Kumiko Enterprise offering — not in the open framework.

Plugin host that wires an LLM (and optionally a transcription) provider to your app without coupling it to a specific vendor SDK. Add it when you want features like ai-patch, ai-generate, ai-triage, or ai-draft — each of those calls createLLMProviderForTenant(ctx, tenantId) from this package to resolve the per-tenant provider at request time. Provider selection for LLM calls is driven by the tenant-level provider config-key; transcription provider selection uses the separate transcribeProvider config-key, resolved via createTranscribeProviderForTenant(ctx, tenantId). The actual credentials and model config live in the chosen provider plugin (ai-provider-anthropic, ai-provider-openai-compat, etc.), not here.

What this feature needs to run (Requires, top) and the write commands it provides (Provides, bottom).

flowchart TB
  n_ai_foundation["ai-foundation"]
  subgraph how_reqs["Requires"]
    n_config["config"]
  end
  n_config --> n_ai_foundation
  • Requires: config
  • Activation: always on (not toggleable)

Per-tenant config keys, set via the tenant-admin UI or a seed. 🔒 = encrypted at rest.

KeyTypeDefaultScopeWho can writeWho can read
providertext""tenantTenantAdmin, SystemAdminTenantAdmin, SystemAdmin, User
transcribe-providertext""tenantTenantAdmin, SystemAdminTenantAdmin, SystemAdmin, User