Jaime k8s

Gaetan Gouzi Publisher

Platform:

Ubuntu
26.04 24.04 22.04
Channel Revision Published Runs on
0.1/stable 28 Today
Ubuntu 26.04 Ubuntu 24.04 Ubuntu 22.04
0.1/stable 27 Today
Ubuntu 26.04 Ubuntu 24.04 Ubuntu 22.04
0.1/stable 26 Today
Ubuntu 26.04 Ubuntu 24.04 Ubuntu 22.04
0.1/edge 28 Today
Ubuntu 26.04 Ubuntu 24.04 Ubuntu 22.04
0.1/edge 27 Today
Ubuntu 26.04 Ubuntu 24.04 Ubuntu 22.04
0.1/edge 26 Today
Ubuntu 26.04 Ubuntu 24.04 Ubuntu 22.04
juju deploy jaime-k8s --channel 0.1/stable

Jaime k8s - Juju AI Medic Engine for Kubernetes

Jaime k8s

Jaime k8s is a Juju Kubernetes standalone charm that runs as its own pod and monitors other applications in the same Juju model. It detects unhealthy workload statuses, collects bounded diagnostic context, and writes structured incident reports. It can optionally call an AI provider (Gemini or OpenRouter) to suggest a diagnosis. It observes and reports only; nothing is changed without explicit operator intent.

Workload statuses come from the Juju controller API; pod logs, events, and metrics come from the Kubernetes API via the pod's in-cluster service account.

Full documentation: https://canonical-jaime-charm.readthedocs-hosted.com/en/latest/

Quickstart

# Deploy Jaime k8s from CharmHub (0.1/stable channel)
juju deploy jaime-k8s --channel=0.1/stable

After deploying, Jaime k8s needs a bit of setup to read the Kubernetes API and the Juju controller. Print the exact steps with names filled in:

juju run jaime-k8s/0 show-setup-steps

Actions

juju run jaime-k8s/0 show-setup-steps     # Print the exact setup steps
juju run jaime-k8s/0 show-status          # Monitoring state
juju run jaime-k8s/0 show-usage           # LLM token usage and cost per model
juju run jaime-k8s/0 generate-report      # Report for the open incident
juju run jaime-k8s/0 get-suggestion       # AI diagnosis for the open incident
juju run jaime-k8s/0 list-incidents       # Incident list from the audit log
juju run jaime-k8s/0 reset                # Clear all incidents

Monitoring is opt-in: configure which applications to watch with watch-applications (see the documentation).

Local OpenAI-compatible providers

To use a local server that speaks the OpenAI Chat Completions protocol (e.g. Ollama) instead of a hosted provider, configure provider=remote with provider-remote-url and an exact model tag. The charm runs inside its own pod, so provider-remote-url must be reachable from the pod (a host-side Ollama needs OLLAMA_HOST=0.0.0.0 and a pod-visible address):

juju config jaime-k8s mode=suggest provider=remote model=llama3.2 \
  provider-remote-url=http://<host-ip>:11434/v1

No api-token is needed for a token-less local server.