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_HMACSkills
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:LLMObservability
- W3C
traceparentpropagation 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.