Share this
Table of Contents
- The Promise vs. The Reality
- The Two-Minute Production Miracle
- Step 1: Describe the Agent, Not the Algorithm
- Step 2: Deterministic Projects Are Your Safety Net
- Step 3: MCP as Curated Capability, Not Kitchen Sink
- Step 4: LLM Flexibility Without Vendor Lock-In
- Step 5: From Idea to Production in One Click
- Watching the Agent Work
- The Old Way: A Tale of Three Eras
- Why This Changes Everything
- The Real Revolution
- There’s No Going Back
The Promise vs. The Reality
When I wrote about joining Itential and the shift from traditional network automation to true orchestration, I was speaking from conviction – a belief that there had to be a better way to operationalize our networks. I talked about moving beyond scripts and duct-taped integrations toward something more elegant, more scalable, more human.
But belief is one thing. Seeing it work is another.
What I’m about to share isn’t a vision statement or a roadmap promise. It’s a war story from the trenches – one where I went from platform newbie to production-ready network automation in less time than it takes to grab coffee.
And it fundamentally changed how I think about what’s possible.
The Two-Minute Production Miracle
Let me be direct: I built a fully functional Network Interface Health Agent in two minutes.
Not a proof-of-concept. Not a demo that works only on sunny days with the right API keys and a prayer. A genuine, production-grade agent that:
- Collects live network state from real devices
- Dynamically generates interface health tests on the fly
- Executes comprehensive validation without a single line of test code
- Produces detailed, actionable reports
- Delivers notifications via Slack and email
- Runs reliably, repeatedly, and can be invoked by anyone on the team
I had been exploring the Itential FlowAI platform for maybe five minutes total when I decided to see what it could actually do. Seven minutes later, I was staring at automated network validation that would have taken me days – maybe weeks – to build the old way.
No pyATS job files sprawling across dozens of Python modules. No brittle parsing logic breaking every time a vendor changes a CLI output format. No hand-rolled REST API integrations for Slack. No fighting with SMTP libraries for email delivery.
Just intent. Just outcomes. Just… working.
Step 1: Describe the Agent, Not the Algorithm
The FlowAI Agent Builder doesn’t open with a code editor or a YAML configuration file. It starts with a simple question: What is this agent supposed to be?
The first field is the System Prompt – the foundational DNA of your agent. This is where you define its role, personality, expertise, and boundaries. Not in JSON schemas or class definitions, but in the same language you’d use to describe the job to a human engineer.
I wrote:
![]()
You are a network interface health expert responsible for validating interface state, error conditions, utilization metrics, and operational anomalies across network infrastructure.
That’s it. No inheritance trees. No method signatures. Just a clear declaration of purpose.
Next came the User Prompts – the instructions for what the agent should do when invoked. Again, plain English:
- Validate all interfaces on the target device
- Detect errors, packet drops, flapping conditions, and statistical anomalies
- Generate a comprehensive health report with actionable insights
No flowcharts. No if-then-else logic. No regex patterns to maintain.
I was describing what I wanted, not how to code it.
This might seem like a small shift, but it’s actually tectonic. For decades, network automation has meant translating business intent into programming logic – a lossy, error-prone, expertise-heavy process. FlowAI inverts that model. The platform itself becomes the translator, and I stay focused on the outcome.
Step 2: Deterministic Projects Are Your Safety Net
Here’s where things get interesting.
I attached a pre-built, deterministic Itential Project to the agent – specifically, workflows for Slack and email notifications.
This distinction matters more than you might think.
In the traditional agentic AI model, you’d let the LLM “figure out” how to send a Slack message. Maybe it calls an API. Maybe it formats the payload correctly. Maybe it handles authentication. Maybe it doesn’t. Every execution is a roll of the dice, and the failure modes are opaque.
By attaching deterministic workflows, I eliminated all that uncertainty. The agent doesn’t improvise notification delivery – it uses battle-tested, validated workflows that have known inputs, known outputs, and known error handling.
This hybrid model – AI-driven intelligence with deterministic execution – is the secret sauce. The agent brings dynamic reasoning and adaptability. The workflows bring reliability and predictability.
Together, they eliminate entire categories of problems:
- No writing Slack REST API boilerplate
- No wrestling with email SMTP libraries
- No managing OAuth tokens or webhook secrets
- No debugging why notifications randomly fail in production
The workflows just work. The agent just calls them.
Step 3: MCP as Curated Capability, Not Kitchen Sink
Then came the moment that really showcased the platform’s elegance: integrating pyATS MCP (Model Context Protocol).
Full disclosure – I wrote that MCP myself, so I know exactly what it’s capable of. But here’s the critical insight that FlowAI surfaced:
I didn’t expose every tool.
In the old world of automation, integration meant dumping an entire library into your script and hoping you used it correctly. You’d import 50 functions, need 3, and spend hours debugging the ones you accidentally misused.
FlowAI inverts this. I explicitly selected only the three pyATS tools relevant to interface health validation:
- Connect to device
- Execute show commands
- Parse structured output
That’s it. The agent doesn’t have access to unrelated capabilities. It can’t accidentally call the wrong function. It can’t wander into dangerous territory.
This is curated capability – giving the AI exactly what it needs to solve the problem and nothing more.
The result?
- Safer execution (limited blast radius)
- Faster reasoning (smaller tool set means clearer choices)
- Cleaner logs (no noise from irrelevant tools)
- Better governance (explicit control over what the agent can do)
This is what happens when platform design actually considers production realities instead of just demo-day wow factors.
Step 4: LLM Flexibility Without Vendor Lock-In
The last configuration step was almost comically simple: pick my LLM.
I chose my provider. I chose my model. Done.
But the implications here are huge.
In traditional automation, your tooling decisions create deep lock-in. Choosing a specific vendor’s API means your code is married to that vendor’s quirks, pricing, and roadmap. Migrating means rewriting everything.
FlowAI abstracts the LLM layer completely. If I want to switch from one model to another – or even one provider to another – I change a dropdown. The agent doesn’t care. The workflows don’t break. The integrations keep humming.
This is infrastructure-grade flexibility in a space that desperately needs it.
Step 5: From Idea to Production in One Click
And just like that – agent built.
No pull requests. No code reviews. No deployment pipelines.
The agent was live, runnable by me or anyone else on the team, invokable with a single click or API call.
This is the part that still feels surreal.
Watching the Agent Work
I pointed the agent at a production network device and clicked Run.
What happened next was automation poetry.
Under 400 seconds, the agent:
- Established a connection to the network device using pyATS
- Collected live interface state – not from cached data, but real-time CLI output
- Dynamically generated health tests based on the actual interfaces it discovered
- Executed those tests without me writing a single assertion
- Analyzed the results for errors, utilization spikes, flapping, and anomalies
- Generated a detailed, human-readable report with findings and recommendations
- Sent the report to Slack via the deterministic workflow
- Sent the report via email to the operations team
All of this happened autonomously. No babysitting. No manual intervention. No “let me just tweak this one thing” mid-run.
The agent did its job. Completely. Correctly. Quietly.
The Old Way: A Tale of Three Eras
To truly appreciate what just happened, let’s rewind and look at how this problem used to be solved.
Era 1: CLI / TradOps
The dark ages.
You’d SSH into each device individually. Run show interface commands. Copy-paste outputs into Notepad or Excel. Manually eyeball error counters. Try to remember what the baseline should look like. Miss things. Make mistakes. Burn hours.
Characteristics:
- Completely manual
- Error-prone
- Zero scalability
- Knowledge locked in people’s heads
- Undocumented tribal knowledge
This worked when networks had 10 devices. It collapsed under anything resembling modern scale.
Era 2: NetDevOps
The renaissance – or so we thought.
You’d write pyATS job files. Define test classes. Write hundreds of lines of Python to parse CLI outputs, assert expected values, and handle edge cases. Build custom integrations for Slack using requests or slack-sdk. Fight with email libraries. Maintain brittle parsing logic that broke every firmware update.
Characteristics:
- Repeatable and versioned
- Significantly faster than manual
- Required deep Python expertise
- High maintenance burden
- Fragile to platform changes
- Integration code rivaled test code in complexity
This was better. Much better. But it was still expensive – in time, in expertise, in ongoing maintenance. And it was slow to adapt. Every new requirement meant more code, more tests, more integration glue.
Era 3: The FlowAI Way
Intent-driven. AI-augmented. Deterministically executed.
You describe what you want in natural language. The platform orchestrates the execution. The AI generates the tests dynamically. The workflows handle integrations reliably. The agent runs autonomously.
Characteristics:
- Built in minutes, not days
- No test code to write or maintain
- No integration code to debug
- Accessible to network engineers, not just developers
- Adapts dynamically to infrastructure changes
- Always available, always consistent
- Reusable across teams
- Human-readable outputs
- Audit-ready execution logs
This isn’t just “better NetDevOps.” It’s a fundamentally different paradigm.
Why This Changes Everything
Let me be clear about what I experienced:
This wasn’t a toy. This wasn’t a carefully stage-managed demo. This wasn’t “it works on my laptop but good luck in production.”
This was a real network agent, solving a real operational problem, better than anything I could have hand-coded, and I built it in the time it would have taken me to scaffold a Python project.
The implications ripple outward:
For Network Engineers
You no longer need to be a Python expert to build sophisticated automation. You need to understand your network and articulate what you want validated. The platform handles the rest.
For Platform Teams
You can build reusable, governed capabilities once – workflows, tool integrations, guardrails – and let agents compose them safely. No more copy-paste automation sprawl.
For the Business
Time-to-value collapses. A validation task that would have been a multi-week project becomes a lunchtime build. Operational agility becomes real, not aspirational.
For the Industry
We finally break free from the false choice between “slow and reliable” or “fast and fragile.” FlowAI gives us both – rapid development with deterministic execution.
The Real Revolution
Here’s the thing that keeps rattling around in my head:
Automation stopped being about code and started being about intent.
For years, we’ve accepted that automating networks requires programming skills, deep platform knowledge, and endless maintenance. We’ve treated it as a necessary burden – something only the most technical teams could afford to do well.
FlowAI says: what if that’s not true?
What if network automation could be as simple as describing what you want and letting the platform figure out how to deliver it?
What if the expertise required shifted from “how to code this” to “what outcome do I need”?
What if we could deploy production-grade agents faster than we currently deploy configuration changes?
I’m not speculating anymore. I’ve seen it. I’ve built it.
There’s No Going Back
That first blog post I wrote about joining Itential – about orchestrating the future instead of just automating tasks – it wasn’t just marketing speak. It was a bet that there was a better way.
This agent, built in two minutes, validated that bet in the most concrete way possible.
I can’t go back to writing pyATS job files for hours. I can’t go back to hand-rolling Slack integrations. I can’t go back to treating every automation project like a software development lifecycle.
Not because those approaches are wrong – they were necessary stepping stones.
But because now there’s a faster, simpler, more powerful path forward.
And honestly? Once you’ve experienced automation at the speed of thought, everything else feels like you’re coding with one hand tied behind your back.
The future I wrote about isn’t coming.
It’s here.