Skip to main content

k8s-aiops (preview)

Disclaimer: This is a community-maintained open-source project and is not affiliated with, endorsed by, or sponsored by the Cloud Native Computing Foundation, the Kubernetes project, or k3s/Rancher. "Kubernetes" and "k3s" are trademarks of their respective owners. Source code is publicly auditable at github.com/AIops-tools/K8s-AIops under the MIT license.

Governed Kubernetes operations for AI agents — 51 MCP tools, every one wrapped with the bundled @governed_tool harness: a local unified audit log under ~/.k8s-aiops/, policy engine, token/runaway budget guard, undo-token recording, and graduated-autonomy risk tiers. Coverage spans pods, deployments, statefulsets, daemonsets, replicasets, jobs/cronjobs, services, ingresses, endpoints, configmaps, secrets (names/keys only), PVCs/PVs/storageclasses, nodes, namespaces, events, rollouts (status/history/undo/pause/resume/set-image), pod/node describe, pod/node top, and a cluster health summary.

Standalone: the governance harness is bundled in the package (k8s_aiops.governance) — k8s-aiops has no external skill-family dependency. Preview: common cluster operations, not yet exhaustive.

What works

Any cluster a kubeconfig can reach: standard Kubernetes, k3s, EKS, GKE, AKS, kind, minikube. Authentication (client certs, tokens, EKS/GKE/AKS exec plugins) is delegated entirely to the kubeconfig.

Quick Start

uv tool install k8s-aiops

# Friendly onboarding wizard — registers your kube contexts as named targets:
k8s-aiops init

# Or skip it — uses your current kube-context out of the box:
k8s-aiops doctor
k8s-aiops pod list
k8s-aiops deployment list -n default

To define named targets (multiple clusters/contexts), create ~/.k8s-aiops/config.yaml:

targets:
  - name: prod          # used as -t prod
    context: prod-eks   # a context in your kubeconfig (omit for current-context)
    namespace: default  # optional default namespace
    # kubeconfig: /path/to/alt/kubeconfig   # optional explicit path
  - name: lab
    context: k3s-lab

No secrets live in this file — credentials come from the kubeconfig.

MCP

{
  "command": "k8s-aiops",
  "args": ["mcp"],
  "env": { "K8S_AIOPS_CONFIG": "~/.k8s-aiops/config.yaml" }
}

Audit & Safety

  • Every tool call is logged to ~/.k8s-aiops/audit.db (local SQLite; relocate with K8S_AIOPS_HOME).
  • Reversible writes record an inverse undo descriptor (scale_deployment → scale-back to previous; cordon_nodeuncordon_node).
  • delete_deployment is risk_level=high; CLI destructive commands require double confirmation and support --dry-run.
  • All API text passes through sanitize() (output hygiene: control/format-char stripping + truncation).

See skills/k8s-aiops/SKILL.md and SECURITY.md for details.

Secrets

k8s-aiops deliberately has no encrypted secret store (no secrets.enc, no secret CLI): authentication is delegated entirely to your kubeconfig — client certificates, bearer tokens, or exec plugins (EKS/GKE/AKS) — and the tool never handles or stores cluster credentials itself. This is a documented exception to the AIops-tools line-wide encrypted-secret-store pattern.

Companion Skills

If you want… Use
Kubernetes pods / deployments / nodes k8s-aiops (this)
Hypervisor VM lifecycle a hypervisor ops skill
Backup & restore a backup ops skill

Contributing & feature requests

This is a preview — coverage is intentionally focused. Missing a device, action, or feature you need? Open an issue or pull request at github.com/AIops-tools/K8s-AIops — feature requests, contributions, and comments are all welcome.

License

MIT — github.com/AIops-tools/K8s-AIops

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

k8s_aiops-0.3.0.tar.gz (97.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

k8s_aiops-0.3.0-py3-none-any.whl (92.8 kB view details)

Uploaded Python 3

File details

Details for the file k8s_aiops-0.3.0.tar.gz.

File metadata

  • Download URL: k8s_aiops-0.3.0.tar.gz
  • Upload date:
  • Size: 97.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for k8s_aiops-0.3.0.tar.gz
Algorithm Hash digest
SHA256 7f5bb01e6856c55e5abfec36c4da4bdaaa02ca3a7b887b9833be07e59d0349f8
MD5 4b0bf6e108c2ac64a96dd41e01faf74c
BLAKE2b-256 5652373b3b08b90d8919ccad5079e07cb12d3fcf9fb156740c8f3496db157299

See more details on using hashes here.

File details

Details for the file k8s_aiops-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: k8s_aiops-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 92.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for k8s_aiops-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1ba2456049848a691b0fd36ab4e98b948f527750ef715b1b9c10a5df5a806335
MD5 ab4908668c480cc91a88623e9b000bf4
BLAKE2b-256 e1feb294f5e3cfd7b1f775243efe8970ae13c0c54570304a05012d6463aace9d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page