RT Robert Truesdale

What AI Agents Are Good For—And Where They Still Need a Leash

You’ve seen the demos: AI agents that debug prod, write Terraform, and auto-respond to PagerDuty alerts while you sip coffee. Let’s cut through the noise. In 2026, real AI agents in IT ops aren’t sentient—they’re pattern-matching tools with narrow scope, bounded by their training data and human guardrails. I’ve run them in staging, prod, and even a few pet projects. Here’s what they actually deliver, where they bite back, and how to keep them from biting your infrastructure.

They’re Great at Repetitive, Structured Tasks (With Clear Inputs)

AI agents shine when the work is predictable and the data is clean. Not because they’re “smart,” but because they’re fast, consistent, and don’t get tired.

Real examples I’ve run:

  • Log triage: An agent parses syslog entries, clusters errors by pattern, and suggests root causes (e.g., “37 occurrences of connection refused to db-03 in last 5 min → likely service crash or network partition”). Accuracy: ~85% on known patterns, drops to ~50% on novel failures.
  • Ticket triage: Categorizes Jira tickets by service, severity, and historical fix. Reduces first-response time by ~40% for Tier-1 issues.
  • Config diffs: Compares current vs. baseline configs, flags meaningful changes (e.g., “allow_users changed from root to root,deploy” vs. whitespace tweaks).

Key detail: These agents don’t act. They draft, suggest, and summarize—human review is still required. I’ve seen teams skip review and get burned. One agent misread a YAML comment as a config line. It didn’t break prod, but it did send 200 “fixes” to Slack.

They’re Worse Than a Junior Dev at Ambiguity

If your prompt is “Fix the slow API,” the agent will hallucinate a solution. If you give it:

  • The error log snippet
  • The last 5 Git commits
  • The Grafana dashboard link
  • The service SLA threshold

…then it’s a force multiplier.

Failure mode I saw last month: A team deployed an agent to “optimize our CI pipeline.” It found a slow npm install step and suggested caching node_modules. Sounds fine—until it also added rm -rf node_modules before each install, assuming it was always stale. It wasn’t. We lost 14 hours of build time debugging why builds intermittently failed on Node 18.

The fix? Hard constraints:

  • No destructive commands in agent prompts
  • No direct prod access
  • All actions logged, reviewed, and approved via PR workflow

Rule I enforce now: > “If the task isn’t in the agent’s training data—or the data isn’t recent—the agent is guessing. Treat its output like a junior dev’s first draft: review, don’t rubber-stamp.”

Content Sites? Great for Drafting, Terrible for Publishing

I run a small tech blog (this one). I’ve tested AI agents for SEO content:

  • Drafting post outlines: ✅ solid.
  • Writing intro paragraphs: ✅ usable with light edits.
  • Generating full technical deep-dives: ❌ dangerous.

Why? Agents hallucinate commands, misquote man pages, and invent “common practices” that don’t exist. Example: An agent once “fixed” a Python script example by adding async/await where none was needed—because it conflated performance with concurrency. Readers reported build failures when copy-pasting.

My current workflow:

  • Agent drafts → I run every code block in a throwaway container
  • I manually verify every “best practice” claim
  • I add a “tested in 2026” note if it’s version-sensitive

Bonus: Agents are terrible at knowing what they don’t know. If a tool’s docs are outdated (looking at you, older Kubernetes versions), the agent will cite the old docs confidently. Always cross-check with --help or source.

The Maintenance Overhead Is Real (and Often Underestimated)

Here’s what no one tells you:

  • Agents drift. Your 2026-trained model won’t know about the new AWS service launched last quarter. You need a monthly retraining cycle (or at least, prompt updates).
  • Prompt entropy. Every time a teammate tweaks the prompt to “fix” an edge case, the agent gets slightly worse at the core use. Document prompts like code.
  • Data hygiene is non-optional. An agent that ingests logs from 3am during a major outage will learn to prioritize false positives. You must curate training data—or it learns to solve yesterday’s fires, not tomorrow’s.

I keep a “failure log” for agents: | Agent use case | Accuracy | Maintenance cost | Human effort saved | |—————-|———-|——————|———————| | Log triage | 82% | Low (weekly prompt review) | 2 hrs/week | | Config diff | 95% | Medium (每月 validate against real env) | 1 hr/week | | CI optimization | 40% | High (daily monitoring) | 0 hrs/week |

The last one? We killed it. Not worth the risk.

Where They’re Still Dangerous (and What to Do About It)

1. Security decisions Agents can’t reason about threat models. I’ve seen one suggest “disabling SELinux temporarily to test” as a fix for an app issue. Not okay. Never let an agent touch auth, secrets, or network policies.

2. Scaling decisions “Scale up because CPU is high” ignores bursty workloads, cold starts, or cost. An agent once autoscaled a non-critical service during a promo sale—cost us $2k in overprovisioning. Use agents to flag, not act.

3. Legacy systems If the system’s undocumented (and what isn’t?), the agent will guess. I tested one on a 2012-era shell script. It “refactored” it into Python, broke the quoting logic, and added a race condition. The script ran fine for years—until the agent touched it.

Leash guidelines I use:

  • No direct prod access (agents write to a PR queue, not the repo)
  • No secrets in context (even obfuscated—LLMs will leak them)
  • All actions logged to a dedicated channel (not Slack—use a SIEM)
  • Monthly “leash test”: force the agent to solve a known-broken scenario. If it doesn’t fail safely, decommission it.

What I Would Do First

If you’re not running agents yet, start small. Don’t jump to full autonomy. Here’s my 30-day rollout plan:

  • Pick one low-risk, high-volume task.
  • Example: Drafting runbook summaries from incident post-mortems.
  • Why? It’s text-only, non-destructive, and the output is reviewed by humans anyway.
  • Build a “sandbox” pipeline.
  • Use a throwaway VM or container. Feed it real data (anonymized), but never prod.
  • Measure: time saved vs. human review time. Stop if review time > original work.
  • Add guardrails, not features.
  • First version: “Summarize. No code. No suggestions.”
  • Only after that works reliably, add: “Suggest one fix—but flag if you’re unsure.”
  • Document the failure mode.
  • What breaks if the agent hallucinates?
  • Who owns the review? (Not “the team”—name one person.)
  • Revisit every 30 days.
  • Did accuracy drop? Did review time spike?
  • If yes, reset the prompt or pause the agent.

AI agents in 2026 aren’t replacements—they’re force multipliers with sharp edges. The ones that work are the ones you treat like a new hire: train them, watch them, and never let them near the kill switch.

The best automation is the kind that doesn’t surprise you. If it’s not in your runbook, it’s not production-ready.