A Kubernetes operations and reliability agent. It runs in-cluster, inspects pods and logs, can report or remediate issues based on mode, and exposes a dashboard backed by SQLite.
- Slack-first investigations with thread context.
- Scheduled scans across namespaces.
- Optional remediation when allowed.
- Dashboard for runs, sessions, and token usage.
Interactive agent (Dockerfile.agent):
SRE_MODE=autonomous: can fix issues.SRE_MODE=watcher: report-only.
CronJob agent (Dockerfile.lucas):
SRE_MODE=autonomous: can fix issues.SRE_MODE=report: report-only.
Required:
ANTHROPIC_API_KEYSLACK_BOT_TOKENSLACK_APP_TOKEN
Common:
SRE_MODE(autonomousorwatcher)CLAUDE_MODEL(sonnetoropus)TARGET_NAMESPACETARGET_NAMESPACES(comma-separated)SRE_ALERT_CHANNEL(enables scheduled scans)SCAN_INTERVAL_SECONDSSQLITE_PATH(default/data/lucas.db)PROMPT_FILE(default/app/master-prompt-interactive.md)
Required:
TARGET_NAMESPACESRE_MODE(autonomousorreport)AUTH_MODE(api-keyorcredentials)
If AUTH_MODE=api-key:
ANTHROPIC_API_KEY
If AUTH_MODE=credentials:
- Mount
credentials.jsonat/secrets/credentials.jsonor$HOME/.claude/.credentials.json.
Optional:
SLACK_WEBHOOK_URL(Slack notifications)SQLITE_PATH(default/data/lucas.db)
SQLITE_PATH(default/data/lucas.db)PORT(default8080)LOG_PATH(default/data/lucas.log)AUTH_USER(defaulta2wmin)AUTH_PASS(defaulta2wssword)
- Create sealed secrets for
claude-authandslack-bot. - Build and push images.
- Apply the manifests.
Do not apply k8s/secret.yaml or k8s/slack-bot-secret.yaml in production. They are examples only.
Apply the manifests explicitly:
kubectl apply -f k8s/namespace.yaml
kubectl apply -f k8s/pvc.yaml
kubectl apply -f k8s/rbac.yaml
kubectl apply -f k8s/agent-deployment.yaml
kubectl apply -f k8s/dashboard-deployment.yaml
kubectl apply -f k8s/dashboard-service.yamlPort-forward the dashboard:
kubectl -n a2w-lucas port-forward svc/dashboard 8080:80Open http://localhost:8080.
Use k8s/cronjob.yaml. It runs a batch scan on a schedule and writes to SQLite. It can notify Slack via webhook.
@lucas check pods in namespace xyz@lucas why is pod abc crashing?@lucas show recent errors@lucas help
The dashboard shows recent runs, sessions, costs, and runbooks. Configure login with AUTH_USER and AUTH_PASS.
- The helper script at
scripts/install.shcan generate manifests and sealed secrets. - Docs live in
docs/(VitePress).