by olemeyer
Self-hosted AI SRE for Kubernetes — zero-instrumentation eBPF observability plus a copilot that fixes issues through guardrailed, self-verifying actions. BYO-LLM, air-gapped capable.
# Add to your Claude Code skills
git clone https://github.com/olemeyer/rocketplaneIOGuides for using ai agents skills like rocketplaneIO.
Last scanned: 7/8/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-07-08T06:28:29.537Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}rocketplaneIO is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by olemeyer. Self-hosted AI SRE for Kubernetes — zero-instrumentation eBPF observability plus a copilot that fixes issues through guardrailed, self-verifying actions. BYO-LLM, air-gapped capable. It has 158 GitHub stars.
Yes. rocketplaneIO passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/olemeyer/rocketplaneIO" and add it to your Claude Code skills directory (see the Installation section above).
rocketplaneIO is primarily written in Go. It is open-source under olemeyer on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh rocketplaneIO against similar tools.
No comments yet. Be the first to share your thoughts!
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
Quick start · Is it safe? · Under the hood
Alpha. The full loop works end-to-end today, developed against minikube. APIs and schemas still change without notice — don't point it at production yet.
One outbound-only agent plus an eBPF DaemonSet (OTel eBPF Instrumentation, née Grafana Beyla). HTTP/gRPC spans with cross-service context propagation — including compiled Go binaries — plus SQL, Redis and Kafka client spans. No SDKs, no sidecars, no code changes.
It's not four products bolted together. A log line is two clicks from its distributed trace. The service map is drawn from real eBPF traffic, not a static config — tech logos matched from container images, health live from RED metrics. PromQL runs on the actual Prometheus evaluation engine, embedded, over ClickHouse. And the complete Kubernetes inventory — Services, Ingress, ConfigMaps, policies, volumes — is synced and searchable right beside it. Everything self-hosted; your telemetry never leaves your infrastructure.
Observability that stops at "here's the problem" leaves the hard part to you. rocketplaneIO
doesn't ship its own AI — it's the MCP interface your existing agent (Claude Code, Cursor,
anything that speaks MCP) connects to. The agent reads everything above, and acts through
kubectl-shaped primitives (k8s_get / k8s_patch / k8s_apply / k8s_delete / k8s_exec /
Starlark workflows) on any resource, CRDs included.
The guardrail is a transaction. Nothing mutates outside one — every change is snapshotted durably before it commits, so cancel, timeout or a later Revert restores every before-state in reverse (LIFO). Each operation is risk-classified by rocketplaneIO, not by the model:
| Level | Examples | Default policy |
|---|---|---|
| ◎ read | k8s_get, k8s_list, logs, traces, PromQL |
runs immediately, no transaction |
| ↺ reversible | k8s_patch, k8s_apply (snapshot-backed) |
runs inside the transaction |
| ◇ disruptive | k8s_delete on Pods/Jobs |
a human approves in the UI |
| △ destructive | any other delete, k8s_exec, workflows, scale-to-0 |
a human approves in the UI |
Classification is parameter-aware (replicas: 3 is reversible; : 0 is destructive) and
fail-closed. Disruptive and destructive operations park until a human approves them — and an API
token can never approve its own proposals.
You need Docker and a Kubernetes cluster to point it at (minikube is fine).
1 — run the platform (one command)
curl -fsSL https://rocketplane.io/install.sh | sh
That's the whole install: it downloads the compose bundle, generates real secrets,
pulls the published images
and starts everything. The UI comes up on http://localhost:4173 (create the owner
account there), the control plane on :8090. Re-running the same command later is
the update path — secrets are kept, images are bumped to the newest release.
curl -O https://raw.githubusercontent.com/olemeyer/rocketplaneIO/main/deploy/compose/docker-compose.prod.yml
curl -o .env https://raw.githubusercontent.com/olemeyer/rocketplaneIO/main/deploy/compose/.env.example
# REQUIRED: a real session secret — the control plane refuses to start without one.
echo "RP_SESSION_SECRET=$(openssl rand -hex 32)" >> .env
docker compose --env-file .env -f docker-compose.prod.yml up -d
Production mode by default (no anonymous login). For a throwaway localhost trial add
RP_ENV=dev to .env to skip account setup.
2 — connect your cluster
Open the UI, hit Connect cluster — it hands you one copy-paste command that installs the
agent and the Beyla DaemonSet (a rendered kubectl apply, or Helm). When the service map draws
your namespaces and spans appear under Traces, you're live — without touching a line of your
code. The installer auto-detects a LAN address your cluster can dial back to; for a local
minikube that is http://host.minikube.internal:8090.
3 — connect your AI agent
Create an API token under Settings → API keys (role admin for mutations), then:
claude mcp add --transport http rocketplaneio \
http://localhost:8090/mcp/orgs/<org>/clusters/<cluster> \
--header "Authorization: Bearer rp_..."
The Settings → MCP tab generates this snippet (and the .mcp.json / Cursor variants) with
your real IDs filled in. From that moment your agent can investigate freely — and every change it
wants to make runs through a transaction you can watch, gate and roll back live under
Transactions.
Images ship as pinned releases (see RP_VERSION in .env); edge tracks main for the latest unreleased changes. A platform Helm chart is the next milestone. Want a demo workload? A Python + Redis shop behind nginx — the one in every screenshot here — ships in deploy/dev/ (kubectl apply -f deploy/dev/shop-realistic.yaml -f deploy/dev/frontdoor.yaml).
The section every platform team reads first:
/setup, or
you wire up Google SSO. Sessions are HMAC-signed with RP_SESSION_SECRET, and the control plane
refuses to start with a missing or weak one — no forgeable cookies, no shipped default.:8090 — put it behind a TLS
reverse proxy (or the platform Helm chart's ingress) for anything past localhost. The OTLP
ingest ports 4317/4318 are unauthenticated by design; keep them on a trusted network
(in-cluster or behind the proxy), not on the public internet.deploy/install.yaml): observe is enumerated
read-only; act is deliberately broad — the generic operation set works on any kind, CRDs
included. The guardrails are architectural, not a resource list: no mutation outside a
transaction, risk classification, human approval for hard operations, durable pre-mutation
snapshots, LIFO rollback, full audit. Delete the act block (or set rbac.actions=false in
Helm) for a strictly observe-only agent.secrets rule
and the agent degrades gracefully.