OpsPilot AI — DevOps CopilotPlain-English DevOps automation inside VS Code — Terraform, Kubernetes, Helm. Bring your own LLM key (Anthropic, Azure OpenAI, or local Ollama). All execution runs locally against a self-hosted backend you start with one Requirements
That's it. No cloud signup, no SaaS account. 1. Create
|
| Username | Password | Role |
|---|---|---|
admin@opspilot.dev |
admin123 |
run + approve |
dev@opspilot.dev |
dev123 |
run only |
4. Try it
Type any of these in the task input box:
Create an Azure VM with a VNet and subnets for production
→ status: files_written. Click Validate Plan → review → Apply.
Get all pods in the default namespace
→ status: completed. Pod list appears in the result panel.
Scale the nginx deployment to 5 replicas in opspilot-test namespace on production
→ status: pending_approval. Approval card appears in the sidebar.
Install the redis Helm chart as release opspilot-redis in opspilot-test namespace
→ Helm install output in the result panel.
Use any namespace — just mention it in the task. OpsPilot extracts it automatically.
Switch the run-mode dropdown to Simulate for a dry run (no execution).
Useful docker-compose commands
# Tail API logs
docker compose -f docker-compose.hub.yml logs -f api
# Restart after editing .env
docker compose -f docker-compose.hub.yml up -d --force-recreate api
# Stop everything
docker compose -f docker-compose.hub.yml down
# Wipe Redis + Postgres state and start fresh
docker compose -f docker-compose.hub.yml down -v
Approval matrix
| Environment | Risk | Approvals |
|---|---|---|
dev |
LOW | 0 — runs immediately |
dev |
MEDIUM+ | 1 |
qa / prod |
Any | 1 |
prod |
HIGH (destroy / rollback) | 2 |
Optional: state locking, rollback, remote backend
Set in VS Code Settings → OpsPilot AI. All default OFF.
| Setting | What it does |
|---|---|
opspilot.enableStateLocking |
Per-session Redis lock; emits backend.tf for native Terraform locking when a backend is configured |
opspilot.rollbackOnFailure |
Auto-runs terraform destroy if apply fails — adds statuses rolling_back / rolled_back / rollback_failed |
opspilot.backend |
Remote backend config — s3 (AWS + DynamoDB), gcs, or azurerm |
Troubleshooting
| Problem | Fix |
|---|---|
| "API unreachable" in extension | curl http://localhost:8000/health — if it fails, run docker compose -f docker-compose.hub.yml logs api |
401 Unauthorized |
JWT expired (60 min) — re-run OpsPilot: Set Password |
status: failed from LLM |
Check key in .env, then docker compose -f docker-compose.hub.yml up -d --force-recreate api (restart re-reads .env) |
| Ollama not reachable from container | Use http://host.docker.internal:11434, not localhost |
kubectl / helm not found |
Install on your host machine — OpsPilot calls them via subprocess |
| Panel blank | Cmd+Shift+P → Developer: Reload Window |
Links
- Docker Hub image: hub.docker.com/r/dskystar/opspilot-ai
- Compose file + full guide: gist.github.com/Iam-anirudhdeshmukh/34af785c93aa730866cb16560fd77898
- Publisher: marketplace.visualstudio.com/publishers/anirudhdeshmukh