sre-agent

MCP.Pizza Chef: fuzzylabs

Aimed at teams running services on AWS, it reads error logs from CloudWatch, works out which service broke, reads the matching source code on GitHub, suggests a likely cause and a fix, then posts the write-up to a Slack channel. That is the whole of what ships today. The roadmap also lists Google Cloud, Azure, GitLab, and Teams, but none of those are built yet. Running it needs Python, Docker, an Anthropic key, a GitHub token, a Slack token, and AWS credentials.

Coding
Communication
Data

Use This MCP client To

Find out which service caused last night's errors Get a plain summary of a production failure in Slack Match an error message to the code that produced it See a suggested fix before anyone opens the logs Run one diagnosis against a log group from my laptop

README

🚀 Site Reliability Engineer (SRE) Agent 🕵️‍♀️

Welcome to the SRE Agent project. This open-source AI agent helps you monitor logs, diagnose production issues, suggest fixes, and post findings to your team so you can move faster when things go wrong.

flow

🏃 Quick Start

Prerequisites

  • Python 3.13+
  • Docker (required for local mode)

1️⃣ Install the SRE Agent

pip install sre-agent

2️⃣ Start the CLI

sre-agent

On first run, the setup wizard will guide you through configuration:

cli-setup

3️⃣ Provide the required setup values

The wizard currently asks for:

  • ANTHROPIC_API_KEY
  • GITHUB_PERSONAL_ACCESS_TOKEN
  • GITHUB_OWNER, GITHUB_REPO, GITHUB_REF
  • SLACK_BOT_TOKEN, SLACK_CHANNEL_ID
  • AWS credentials (AWS_PROFILE or access keys) and AWS_REGION

By default the agent uses claude-sonnet-4-5-20250929. You can override this by setting the MODEL environment variable.

4️⃣ Pick a running mode

After setup, the CLI gives you two modes:

  • Local: run diagnoses from your machine against a CloudWatch log group.
  • Remote Deployment: deploy and run the agent on AWS ECS.

Remote mode currently supports AWS ECS only for deploying the agent runtime.

This is the local shell view:

cli-home

🌟 What Does It Do?

Think about a microservice app where any service can fail at any time. The agent watches error logs, identifies which service is affected, checks the configured GitHub repository, diagnoses likely root causes, suggests fixes, and reports back to Slack.

In short, it handles the heavy lifting so your team can focus on fixing the issue quickly.

Your application can run on Kubernetes, ECS, VMs, or elsewhere. The key requirement is that logs are available in CloudWatch.

🗺️ Integration Roadmap

🧠 Model provider
  • Anthropic
  • vLLM
  • OpenAI
🪵 Logging platform
  • AWS CloudWatch
  • Google Cloud Observability
  • Azure Monitor
🏢 Remote code repository
  • GitHub
  • GitLab
  • Bitbucket
🔔 Notification channel
  • Slack
  • Microsoft Teams
🕶️ Remote deployment mode:
  • AWS ECS

Tip

Looking for a feature or integration that is not listed yet? Open a Feature / Integration request 🚀

🏛️ Architecture

architecture

The diagram shows the boundary between your application environment and the agent responsibilities.

You are responsible for getting logs into your logging platform and setting up how the agent is triggered (for example, CloudWatch metric filters and alarms). Once triggered, the agent handles diagnosis and reporting.

The monitored application is not limited to AWS ECS. It can be deployed anywhere, as long as it sends relevant logs to CloudWatch.

When running with the current stack, the flow is:

  1. Read error logs from CloudWatch.
  2. Inspect source code via the configured GitHub MCP integration.
  3. Produce diagnosis and fix suggestions.
  4. Send results to Slack.

flow

🧪 Evaluation

We built an evaluation suite to test both tool-use behaviour and diagnosis quality. You can find details here:

  • Evaluation overview
  • Tool call evaluation
  • Diagnosis quality evaluation

Run the suites with:

uv run sre-agent-run-tool-call-eval
uv run sre-agent-run-diagnosis-quality-eval

🤔 Why We Built This

We wanted to learn practical best practices for running AI agents in production: cost, safety, observability, and evaluation. We are sharing the journey in the open and publishing what we learn as we go.

We also write about this work on the Fuzzy Labs blog.

Contributions welcome. Join us and help shape the future of AI-powered SRE.

🔧 For Developers

See DEVELOPMENT.md for the full local setup guide.

Install dependencies:

uv sync --dev

Run the interactive CLI locally:

uv run sre-agent

If you want to run a direct diagnosis without the CLI:

docker compose up -d slack
uv run python -m sre_agent.run /aws/containerinsights/no-loafers-for-you/application currencyservice 10

sre-agent FAQ

Is this something I add to Claude or ChatGPT?
No, it works the other way round. It is a standalone command-line agent that uses MCP connections itself to reach GitHub and Slack, so you run it rather than install it into a chat app.
Can I use this to watch logs somewhere other than AWS?
Not today. Only AWS CloudWatch is built. Google Cloud and Azure appear on the roadmap as unfinished items.
Will it fix the bug for me?
No. It reads your code and writes up a likely cause and a suggested fix, but it does not change code or open a pull request. A human still applies the change.
What do I need before starting?
Python 3.13 or newer, Docker, an Anthropic key, a GitHub personal access token, a Slack bot token and channel, and AWS credentials.
Does it report anywhere besides Slack?
No. Slack is the only notification channel that exists; Microsoft Teams is listed as planned and is not built.
How hard is the setup?
This is a developer tool. A setup wizard walks through the values, but you still need Docker running and, for the hosted mode, an AWS deployment.
Is it still being worked on?
Yes, though the pace has slowed. The most recent code change landed in May 2026.