Skip to content

Custos-com/Burnless

Repository files navigation

██████╗ ██╗   ██╗██████╗ ███╗   ██╗██╗     ███████╗███████╗███████╗
██╔══██╗██║   ██║██╔══██╗████╗  ██║██║     ██╔════╝██╔════╝██╔════╝
██████╔╝██║   ██║██████╔╝██╔██╗ ██║██║     █████╗  ███████╗███████╗
██╔══██╗██║   ██║██╔══██╗██║╚██╗██║██║     ██╔══╝  ╚════██║╚════██║
██████╔╝╚██████╔╝██║  ██║██║ ╚████║███████╗███████╗███████║███████║
╚═════╝  ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═══╝╚══════╝╚══════╝╚══════╝╚══════╝

Stop burning your error budget. Stop burning out your team.

Full SRE config as code — SLOs, error budgets, runbooks, on-call, and dashboards in one repo. Auto-remediates before alerts even fire.

CI Release Go Version License Discord


The problem

Your SLOs live in a Datadog dashboard. Your runbooks live in Confluence — stale since last quarter. Your alert thresholds are configured manually in Grafana, differently in every environment.

None of it is versioned. None of it is reviewable. None of it executes itself at 3am.

Burnless changes that.


See it in action

burnless init — interactive wizard generates your sre.yaml in 60 seconds

burnless init interactive wizard

burnless status — see your full SLO config at a glance

burnless status output

burnless toil report — convert manual toil to dollar cost for your manager

burnless toil report output

Installation

macOS — Homebrew (recommended)

brew install --cask Custos-com/tap/burnless

macOS + Linux — one-liner

curl -fsSL https://raw.githubusercontent.com/Custos-com/Burnless/main/scripts/install.sh | sh

Go developers

go install github.com/Custos-com/Burnless/cmd/burnless@latest

Download binary directly

Download the latest binary for your platform from GitHub Releases.

Platform File
macOS Apple Silicon burnless_darwin_arm64.tar.gz
macOS Intel burnless_darwin_amd64.tar.gz
Linux amd64 burnless_linux_amd64.tar.gz
Linux arm64 burnless_linux_arm64.tar.gz
Windows burnless_windows_amd64.zip

Verify installation

burnless version
# burnless v0.3.0

Quick start

# Create your sre.yaml interactively
burnless init

# Validate your config
burnless validate

# Preview what apply will create
burnless diff

# Check your SLO config summary
burnless status

# Log a toil event
burnless toil log --service payments-api --task manual-rollback --duration 45m --automatable

# Generate a cost report
burnless toil report --month 2026-07

# Export for your manager
burnless toil export --output toil.csv

The sre.yaml

VS Code tip: Open any file named sre.yaml and get autocomplete automatically. Schema is published on SchemaStore.org.

service: payments-api
team: platform-engineering

slos:
  - name: availability
    target: 99.9
    window: 30d
    indicator:
      metric: http_requests_total
      good_filter: 'status!~"5.."'

error_budget:
  burn_rate_alerts:
    - severity: critical
      rate: 14.4
      window: 1h
      remediate: scale-up
    - severity: warning
      rate: 6
      window: 6h
      remediate: restart-pods

runbooks:
  scale-up:
    mode: auto
    steps:
      - kubectl scale deploy/payments-api --replicas=+2
  restart-pods:
    mode: semi-auto
    steps:
      - kubectl rollout restart deploy/payments-api

oncall:
  provider: pagerduty
  escalation_minutes: 10
  notify_slack: "#sre-incidents"

dashboards:
  provider: grafana
  auto_generate: true
  panels:
    - error_budget_remaining
    - burn_rate_1h
    - burn_rate_6h

What's built today

Command What it does
burnless init Interactive wizard — generates a complete sre.yaml
burnless validate Validates sre.yaml — exits 1 on failure, CI/CD safe
burnless diff Previews what apply would create
burnless status Displays SLO config, alerts, runbooks, on-call summary
burnless toil log Logs a manual toil event
burnless toil report Generates monthly cost report with automation priority
burnless toil export Exports toil data as CSV or JSON

Coming soon (Phase 2)

  • burnless apply — deploy SLO config to Prometheus + Grafana
  • Burn rate agent — watches Prometheus every 60s, triggers runbooks automatically
  • PagerDuty + Slack integrations
  • Kubernetes operator + Helm chart

Documentation


Community


License

Burnless uses a three-tier license strategy:

Layer Files License
SDK & Schema pkg/ schema/ examples/ Apache 2.0 — maximum ecosystem reach
Core CLI & Agent cmd/ internal/ deploy/ AGPLv3 — free forever including SSO
SaaS Dashboard saas/ dashboard/ BSL 1.1 — free for dev, paid for production SaaS

TL;DR: If you're an SRE engineer using the CLI or self-hosting the agent — it's free, forever. If you want to offer a managed Burnless service — contact us.

See licenses/ for full license texts.

About

Stop burning your error budget. SRE config as code — SLOs, error budgets, runbooks, on-call, and dashboards in one sre.yaml file. Auto-remediates before alerts fire.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

8 stars

Watchers

1 watching

Forks

Packages

 
 
 

Contributors