Agents for infrastructure operations
Incident triage in Discord and change approval with AI risk assessment.
My role
I wrote the triage bot from scratch (9 of 9 commits) and the approval gate.
- 7
- change categories
- 3 min
- cap per investigation
Problem
Incidents landed in Discord and someone had to search Jira, copy logs and open a ticket. Infrastructure changes had no auditable approval step.
Solution
A Go bot that reads the thread, investigates with Gemini, queries Jira over MCP, avoids duplicates and opens or updates the ticket. Plus a change gate where a request, made over MCP from the editor, gets a risk review through Bifrost, becomes a Jira RFC and shows up as an approval card in Discord.
Highlights
- A custom tool-calling loop over stdio MCP, because LangChainGo's stock agent was dropping arguments.
- Per-thread locks, MCP reconnects and a 3-minute timeout with recover.
- The gate blocks self-approval, requires a reason on rejection and attaches the full diff.
- Before the RFC is opened, the AI checks citizen impact, data and IAM exposure and whether rollback is feasible.
Result
The triage bot runs in production on IplanRio's Kubernetes.