Build

Integrations

Connect OpsKeeper to your alert sources, observability stack, and worker fleet. The full reference lives at docs/integration-guide.md.

Alert sources

OpsKeeper ingests alerts from Prometheus, Loki, Tempo, webhooks, and on-call channels. Configure each source in configs/sources.yaml:

sources.yaml
sources:
  prometheus:
    endpoint: http://prometheus:9090
    rules:
      - pg_connection_pool_used_ratio > 0.9
      - disk_io_utilization > 95

  loki:
    endpoint: http://loki:3100
    labels:
      job: opskeeper

  tempo:
    endpoint: http://tempo:3200
    match_by: [service.namespace, deployment.environment]

  webhook:
    path: /api/v1/webhook/alerts
    hmac_secret: $OPSKEEPER_WEBHOOK_HMAC

Skills

A skill is a worker's declaration: name, role, phase, safety level, tool allowlist. Skills live in Nacos Config with a 30s polling hot-reload, with a local fallback for air-gapped installs.

skill_meta.yaml
name: alerter
role: intake
phase: [detected, correlated]
safety_level: L0
max_turns: 12
tool_allowlist:
  - read:alerts
  - read:topics
  - dedup:rules
  - dedup:LLM

Observability

  • W3C traceparent propagation end-to-end.
  • Provisioned Grafana dashboards for the closed loop, audit ledger, and skill health.
  • Loki log streams and Tempo traces correlated by trace_id.

MCP

Workers join OpsKeeper via the stdio MCP proxy in opskeeper-teamharness. The protocol is JSON-RPC 2.0; authentication is Bearer + HMAC + W3C traceparent.

tools/list
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list",
  "params": {}
}

Hot reload

Edit a skill_meta.yaml, push it to Nacos, and the manager picks it up within 30 seconds. No restart required.