For the complete documentation index, see llms.txt. This page is also available as Markdown.

Secrets

Create, inspect, list, and delete centralized secrets from the Kitaru CLI and Python SDK

Use kitaru secrets ... or the Python SDK helpers to manage credentials and other sensitive values.

If you want the full LLM setup story — secret, model alias, and kitaru.llm() inside a flow — start with Secrets + Model Registration.

Create or update a secret

kitaru secrets set openai-creds --OPENAI_API_KEY=sk-...

set is an upsert command:

  • If the secret does not exist, Kitaru creates it.

  • If it already exists, Kitaru updates the provided keys.

New secrets are public by default. In this context, "public" means visible to other users who can access the configured Kitaru/ZenML secret store — it does not mean internet-public.

To create a private secret instead:

kitaru secrets set openai-creds --private --OPENAI_API_KEY=sk-...

If a secret already exists, set updates values only and leaves that secret's existing visibility unchanged.

Secret key naming

Use real environment-variable-style key names so downstream tooling can consume credentials directly:

  • OPENAI_API_KEY

  • ANTHROPIC_API_KEY

  • AZURE_OPENAI_API_KEY

Show one secret

This prints metadata and key names. To include raw values when available:

If your current context cannot access one or more values, those keys appear as unavailable.

List all accessible secrets

Delete a secret

Use secrets from Python

Create and delete helpers return SecretSummary, a metadata-only model that lists key names but never includes raw secret values:

get_secret() performs an exact lookup by secret name or ID. It returns a Kitaru Secret model with .name, .id, .values: dict[str, str], and .get("KEY") for optional access.

Use a secret inside a checkpoint

Kitaru auto-resolves linked secrets for kitaru.llm(). If you need credentials for some other external service, load the secret explicitly with kitaru.get_secret() inside your checkpoint or flow function body:

Keep the lookup inside the function body so it happens in the actual runtime context. Do not load secrets at import time.

MCP support

The Kitaru MCP server exposes kitaru_secrets_create for metadata-only secret creation from MCP clients. It intentionally does not expose secret deletion; use the CLI or Python SDK when you need to delete a secret.

Last updated

Was this helpful?