home / skills / julianobarbosa / claude-code-skills / robusta-dev-skill

robusta-dev-skill skill

/skills/robusta-dev-skill

This skill helps you install, configure, and operate Robusta for Kubernetes observability and automated remediation using playbooks.

npx playbooks add skill julianobarbosa/claude-code-skills --skill robusta-dev-skill

Review the files below or copy the command above to add this skill to your agents.

Files (11)
SKILL.md
5.6 KB
---
name: RobustaDev
description: Robusta Kubernetes observability and alert automation platform. USE WHEN installing Robusta OR configuring playbooks OR setting up notification sinks OR troubleshooting Kubernetes alerts OR creating custom actions OR integrating with Prometheus/AlertManager OR automating incident remediation.
---

# RobustaDev

Comprehensive guide for Robusta - the SRE agent that transforms Kubernetes alerts into actionable insights using playbooks, AI investigation, and automated remediation.

## Quick Reference

| Component | Purpose |
|-----------|---------|
| **Playbooks** | Rules engine defining alert responses |
| **Triggers** | Events that activate playbook execution |
| **Actions** | Remediation steps and enrichments |
| **Sinks** | Notification destinations (Slack, Teams, PagerDuty, etc.) |

## Workflow Routing

| Workflow | Trigger | File |
|----------|---------|------|
| **Install** | "install robusta", "deploy robusta" | `Workflows/Install.md` |
| **ConfigurePlaybooks** | "create playbook", "configure playbook" | `Workflows/ConfigurePlaybooks.md` |
| **ConfigureSinks** | "setup slack", "configure notifications" | `Workflows/ConfigureSinks.md` |
| **Troubleshoot** | "robusta not working", "alerts not firing" | `Workflows/Troubleshoot.md` |

## Installation Quick Start

### Prerequisites
- Kubernetes cluster
- Helm 3.x installed
- kubectl configured

### All-in-One Installation (Robusta + Prometheus)

```bash
# Generate configuration
pipx run robusta-cli gen-config --enable-prometheus-stack

# Or using Docker
curl -fsSL -o robusta https://docs.robusta.dev/master/_static/robusta
chmod +x robusta
./robusta gen-config --enable-prometheus-stack

# Install via Helm
helm repo add robusta https://robusta-charts.storage.googleapis.com
helm repo update
helm install robusta robusta/robusta \
  -f ./generated_values.yaml \
  --set clusterName=<YOUR_CLUSTER_NAME>

# Verify installation
kubectl get pods -A | grep robusta
```

### Standalone Installation (Existing Prometheus)

```bash
pipx run robusta-cli gen-config
helm install robusta robusta/robusta -f ./generated_values.yaml
```

## Playbook Structure

```yaml
# Example playbook in generated_values.yaml
customPlaybooks:
  - triggers:
      - on_prometheus_alert:
          alert_name: KubePodCrashLooping
    actions:
      - logs_enricher: {}
      - pod_events_enricher: {}
    sinks:
      - slack
```

### Trigger Types

| Trigger | Description |
|---------|-------------|
| `on_prometheus_alert` | Fires on Prometheus/AlertManager alerts |
| `on_pod_create` | When pod is created |
| `on_pod_update` | When pod is updated |
| `on_deployment_update` | When deployment changes |
| `on_schedule` | Cron-based scheduled execution |
| `on_kubernetes_warning_event` | On K8s warning events |

### Common Actions

| Action | Purpose |
|--------|---------|
| `logs_enricher` | Add pod logs to alert |
| `pod_events_enricher` | Add K8s events |
| `node_cpu_enricher` | Add CPU metrics |
| `node_memory_enricher` | Add memory metrics |
| `deployment_status_enricher` | Add deployment info |
| `delete_pod` | Auto-remediate by deleting pod |
| `node_bash_enricher` | Run bash commands on node |

## Sink Configuration

### Slack

```yaml
sinksConfig:
  - slack_sink:
      name: main_slack
      slack_channel: alerts
      api_key: xoxb-your-token
```

### Microsoft Teams

```yaml
sinksConfig:
  - ms_teams_sink:
      name: teams_alerts
      webhook_url: https://outlook.office.com/webhook/...
```

### PagerDuty

```yaml
sinksConfig:
  - pagerduty_sink:
      name: pagerduty
      api_key: your-integration-key
```

### Webhook (Generic)

```yaml
sinksConfig:
  - webhook_sink:
      name: custom_webhook
      url: https://your-endpoint.com/alerts
```

## Examples

**Example 1: Install Robusta with Prometheus**
```
User: "Install Robusta on my AKS cluster"
-> Generate config with gen-config --enable-prometheus-stack
-> Add Helm repo and install with cluster name
-> Verify pods are running
```

**Example 2: Create crash loop enrichment playbook**
```
User: "Add pod logs to CrashLoopBackOff alerts"
-> Create playbook with on_prometheus_alert trigger
-> Add logs_enricher and pod_events_enricher actions
-> Configure Slack sink for notifications
```

**Example 3: Configure Slack notifications**
```
User: "Send Robusta alerts to #k8s-alerts Slack channel"
-> Add slack_sink to sinksConfig
-> Set channel name and API key
-> Optionally filter by severity or namespace
```

**Example 4: Debug missing alerts**
```
User: "Robusta isn't sending alerts to Slack"
-> Check robusta-runner pod logs
-> Verify sink configuration in generated_values.yaml
-> Test with manual trigger: robusta playbooks trigger
```

## Key Concepts

### Alert Flow
```
Prometheus Alert -> AlertManager -> Robusta -> Playbook -> Actions -> Sinks
```

### Playbook Components
1. **Triggers** - What events activate the playbook
2. **Actions** - What to do when triggered (enrich, remediate)
3. **Sinks** - Where to send the result

### Smart Grouping
Robusta groups related alerts using Slack threads to reduce notification spam.

### AI Investigation (HolmesGPT)
Optional AI-powered root cause analysis available with Robusta Pro or self-hosted HolmesGPT.

## Reference Documentation

- `references/Installation.md` - Detailed installation guide
- `references/Playbooks.md` - Complete playbook reference
- `references/Triggers.md` - All trigger types
- `references/Actions.md` - Available actions
- `references/Sinks.md` - Sink configuration
- `references/Troubleshooting.md` - Common issues and fixes

## External Resources

- [Official Docs](https://docs.robusta.dev/master/)
- [GitHub](https://github.com/robusta-dev/robusta)
- [Robusta Platform](https://platform.robusta.dev) (SaaS UI)

Overview

This skill provides concise guidance to install, configure, and operate Robusta — a Kubernetes observability and alert automation platform. It focuses on playbook creation, notification sink setup, troubleshooting alerts, and automating remediation with built-in actions and AI investigation. Use it to speed deployment, reduce noisy alerts, and enable automated incident responses.

How this skill works

The skill inspects Robusta components and playbook structure, explains trigger and action types, and walks through sink configuration for Slack, Teams, PagerDuty, and webhooks. It covers installation flows (all-in-one with Prometheus or standalone), verifies deployment status, and shows how playbooks route Prometheus/AlertManager alerts into actionable enrichments or remediations. It also outlines debugging steps and optional AI investigation integration.

When to use it

  • Installing Robusta on a new Kubernetes cluster (all-in-one or standalone).
  • Configuring playbooks to enrich or remediate alerts (logs, pod events, delete pod, etc.).
  • Setting up notification sinks: Slack, Microsoft Teams, PagerDuty, or custom webhooks.
  • Troubleshooting missing or misrouted alerts and verifying robusta-runner logs and generated values.
  • Integrating with Prometheus/AlertManager or enabling AI investigation (HolmesGPT) for root cause analysis.

Best practices

  • Generate configuration with the CLI (gen-config) and review generated_values.yaml before Helm install.
  • Start with focused playbooks for high-noise alerts (CrashLoopBackOff, OOMKilled) and add enrichers like logs_enricher and pod_events_enricher.
  • Use sinks to centralize notifications and enable smart grouping to reduce alert spam (Slack threads).
  • Test playbooks with manual triggers (robusta playbooks trigger) after deploying to confirm actions and sinks work.
  • Limit automated remediations (delete_pod, node_bash_enricher) to well-tested scenarios to avoid unintended disruption.

Example use cases

  • Install Robusta with Prometheus: run gen-config --enable-prometheus-stack, add Helm repo, helm install robusta -f generated_values.yaml, verify pods.
  • Create a CrashLoopBackOff playbook: on_prometheus_alert -> logs_enricher + pod_events_enricher -> slack sink.
  • Send alerts to Slack channel: add slack_sink to sinksConfig, set slack_channel and api_key, optionally filter by severity.
  • Troubleshoot missing Slack alerts: check robusta-runner logs, validate sinksConfig in generated_values.yaml, execute manual playbook trigger.
  • Integrate AI investigation: enable HolmesGPT or Robusta Pro to attach automated root-cause analysis to playbook runs.

FAQ

How do I verify Robusta is installed correctly?

Check robusta pods with kubectl get pods -A | grep robusta and inspect robusta-runner logs for startup and playbook processing messages.

Can Robusta work with an existing Prometheus?

Yes. Use the standalone installation path: generate config without --enable-prometheus-stack and install Robusta pointing to your existing Prometheus/AlertManager.