š DevOps Meets AI: Automating Reliability in the Age of Intelligence

Yesterday, I had the honor of speaking at the Build with AI: Hands-on Workshops on Google Cloud and Gemini, an event organized by the Google Developer Group (GDG) Kinshasa. This community-led initiative brought together developers, students, and tech professionals to explore practical applications of AI in real-world projectsāspanning cloud infrastructure, application development, and automation.
As part of this momentum, I presented a talk titled "DevOps Meets AI: Automating Reliability in the Age of Intelligence," where I showcased how AI can enhance developer workflows, reduce operational toil, and pave the way toward self-healing, intelligent systems. This post offers a recap of that talk and dives deeper into the ideas I shared on stage.
š¤ Why Bring AI Into DevOps?
AI isnāt about replacing engineers. Itās about amplifying them. With the rise of powerful models and real-time telemetry, we now have the opportunity to:
Detect risks before they become incidents
Triage issues with AI-assisted analysis
Generate real-time suggestions for code and configuration changes
Build self-healing systems that adapt to their environments
This isnāt science fiction. Itās something Iāve been prototyping and sharing in the field.
š The Core Idea
DevOps is evolvingāfrom automation to intelligence.
Traditional DevOps helped us automate and scale operations. But when we embed AI into the pipeline, we unlock adaptive, context-aware systems that donāt just respondāthey learn and improve.
Here's how I think about the evolution:
Era | Key Traits |
---|---|
Manual Ops | Toil, scripts, human-triggered fixes |
DevOps | CI/CD, infra as code, reactive dashboards |
AI-Augmented DevOps | Self-healing, predictive alerts, AI decisions |

š§ A Real-World Example
In my demo, I showed a GitHub PR triggering a CI pipeline that:
Runs security scans with Trivy
Sends results to Gemini via Vertex AI
Posts AI-generated fix suggestions directly into the pull request
The result?
Developers get instant, contextual help.
Ops teams reduce review time.
Security is embedded from the start.
Here is some implementation details:
Github Action confuguration:
name: AI-Powered Docker Security Scan
on:
pull_request:
branches: [ "main" ]
types: [opened, synchronize]
jobs:
ai-sec-docker-scan:
name: Scan Docker Image and Generate AI Suggestions
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install Python dependencies
run: pip install requests
- name: Build Docker image
run: docker build -t opsgo-ai-scan:latest -f Dockerfile .
- name: Run Trivy scan on Docker image
uses: aquasecurity/trivy-action@0.13.0
with:
scan-type: 'image'
image-ref: 'opsgo-ai-scan:latest'
format: 'json'
output: 'trivy-results.json'
- name: Analyze results with Gemini
run: python .github/scripts/send_to_gemini.py
env:
GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }}
- name: Post AI suggestions to PR
run: python .github/scripts/comment_on_pr.py
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_REPOSITORY: ${{ github.repository }}
GITHUB_PR_NUMBER: ${{ github.event.pull_request.number }}
Script that send request to Gemini API
import os
import json
import requests
TRIVY_FILE = "trivy-results.json"
OUTPUT_FILE = "gemini-response.txt"
API_KEY = os.getenv("GEMINI_API_KEY")
GEMINI_ENDPOINT = "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash:generateContent"
if not API_KEY:
raise EnvironmentError("ā GEMINI_API_KEY environment variable is not set.")
# Append API key as URL query parameter
url = f"{GEMINI_ENDPOINT}?key={API_KEY}"
# Load Trivy scan results
with open(TRIVY_FILE, "r") as f:
trivy_data = json.load(f)
# Build the prompt
prompt_text = f"""
The following is a vulnerability scan of a Docker image using Trivy.
Please analyze the issues and suggest secure fixes for each finding.
```json
{json.dumps(trivy_data, indent=2)}
```
"""
# Prepare the request payload
payload = {
"contents": [
{
"parts": [{"text": prompt_text}]
}
]
}
# Make the POST request
response = requests.post(
url,
headers={"Content-Type": "application/json"},
json=payload
)
# Handle the response
if response.status_code == 200:
try:
ai_reply = response.json()["candidates"][0]["content"]["parts"][0]["text"]
with open(OUTPUT_FILE, "w") as out:
out.write(ai_reply)
print("ā
AI suggestions saved to gemini-response.txt")
except (KeyError, IndexError):
print("ā ļø Received unexpected response format:")
print(response.json())
exit(1)
else:
print("ā Error from Gemini:", response.status_code)
print(response.text)
exit(1)
Python Script that create a comment on a pull request from Gemini response:Ā
import os
import requests
GITHUB_TOKEN = os.getenv("GITHUB_TOKEN")
REPO = os.getenv("GITHUB_REPOSITORY") # e.g., bashizip/opsGo
PR_NUMBER = os.getenv("GITHUB_PR_NUMBER")
COMMENT_FILE = "gemini-response.txt"
# Load AI-generated suggestions
with open(COMMENT_FILE, "r") as f:
comment_body = f.read()
# Prepare GitHub API request
url = f"https://api.github.com/repos/{REPO}/issues/{PR_NUMBER}/comments"
headers = {
"Authorization": f"Bearer {GITHUB_TOKEN}",
"Accept": "application/vnd.github.v3+json"
}
payload = {"body": f"\ud83e\udde0 **AI Suggestions from Gemini**\n\n{comment_body}"}
# Post comment to PR
response = requests.post(url, headers=headers, json=payload)
if response.status_code == 201:
print("Successfully posted AI suggestions to the PR.")
else:
print("Failed to post comment:", response.status_code, response.text)
exit(1)
š See It in Action
Curious what AI-generated suggestions look like in a real pull request?
Check out this example on GitHub:
š AI comments on PR #3
Want to try it yourself? You can fork the repo and explore the setup:
š Full source code on GitHub
Ā
š§ What This Means for Reliability
This new model isn't about removing humansāitās about reallocating effort. Let AI deal with the noise, patterns, and recommendations. Let humans focus on what matters: strategy, design, and innovation.
Weāre moving toward systems that can:
Anticipate their own failure modes
Heal without manual intervention
Explain whatās going wrongāand suggest fixes in natural language
š Where We're Going
The next wave of DevOps will include:
AI-assisted root cause analysis
Smart incident routing
Intelligent observability layers
Feedback loops that continuously improve detection and response
As someone working daily on reliability and observability, and building open-source tooling on the side, Iām excited to push this frontier forward.
š£ļø Letās Build It Together
This post is just the beginning. Iāll be sharing more technical deep dives, code samples, and learnings from the field.
Want to see it live? Check out the slides here and letās keep the conversation going on LinkedIn or GitHub.
Letās bring intelligence into reliabilityāone commit at a time.
Ā