Picking up where Part 1 left off: NetBox joins the lab as its system of record, and two Itential FlowAgents go live. One that answers questions, one that safely diagnoses real devices.
The lab that started as two virtual Arista switches connected to Itential Platform just grew up. I brought in NetBox as a real system of record, and built my first two agents on Itential’s FlowAI agent harness. Both changes turned out to be bigger unlocks than I expected.
Put plainly: instead of an agent that just chats about your network from whatever it remembers, you get one that reasons over your actual inventory and takes real, scoped actions against real devices. That distinction is the whole point of this entry.
Two things changed this round, and they compound: NetBox becomes the network’s authoritative record, feeding real device data into Itential Platform, and FlowAI agents get wired to Claude through the Model Registry so they can query that same data and take scoped action, live, against real infrastructure.
Real device data, names, IPs, sites, platforms, now flows from NetBox into Itential Inventory Manager, then into Itential Gateway. Every agent in this post reads from that same pipeline, not a hardcoded device list I typed in by hand. If NetBox says a device exists, Inventory Manager knows about it. If it doesn’t, no agent below can see it either.
Both agents are built on FlowAI, both wired to Claude through the Model Registry, and both live inside a single Agent Project. One reads NetBox. The other operates on live devices, and only ever reads them.
Agent 01
Answers questions about the network by querying NetBox directly. Its toolset is four NetBox lookups: list devices, get a specific device, get IP addresses, and list prefixes. Every answer traces back to a single, real query, never a guess.
Agent 02
Read-only diagnostics for real Arista EOS lab devices via Itential Gateway. It gets exactly two tools: check whether a device is alive, and pull its running configuration. It can investigate a device. It cannot change one.
Neither toolset was obvious on the first pass. For each agent I went back and forth with Claude on exactly which tools it actually needed, starting broader than necessary and narrowing until the list matched the job: four NetBox lookups for one agent, is-alive and get-config for the other, a reachability check and a running-config pull, nothing more exotic than that. What wasn’t up for negotiation was whether Arista Device Ops could write to a device. That was decided before a single tool was chosen, not discovered partway through scoping. This agent investigates. It does not change anything. Everything else about these two agents got worked out through iteration. That part didn’t.
The NetBox agent’s toolset is scoped to querying NetBox directly. Every answer is traceable back to a single, real lookup, not a language model guessing from whatever it remembers about network conventions.
Prompt
“What is the IP address of ceos1, and what site is it in?”
Agent
“ceos1 has the primary IP address 10.255.255.11/32 and is located at the Home Lab Campus site.”
Prompt
“Is ceos1 alive? If so, show me the hostname line from its running config.”
Agent
“Yes, ceos1 is alive. Here’s the hostname line: hostname core1. Note: the device’s inventory name is ceos1, but its configured EOS hostname is core1, this mismatch is normal in lab environments where the inventory label differs from the device’s actual hostname setting.”
One tool call, straight to NetBox, correct answer. No hallucination, it looked it up.
The lab now runs seven devices end to end, but only five of them are meant to live in NetBox: access1, dist1, ceos1, ceos2, and isp1, a small campus-style topology with access, distribution, and edge roles. The other two are plain end hosts sitting on the wire behind access1, useful for generating real traffic, but intentionally left out of that authoritative record since they aren’t network infrastructure themselves. Every agent in this post is reading from the same five-node table NetBox and Inventory Manager actually see.
This is what the Agent Sessions tab is actually for. Every run gets logged start to finish, the exact prompt, every reasoning step, every tool call in order, and the final answer, each with its own timestamp. Below is one real session, unedited: asked to pull the running-config for every device in the inventory.
From there the agent works its way down the confirmed device list the same way every time, an is-alive check paired with a get-config pull, one device at a time, six more tool calls before it writes up a single answer.
The moment that actually got me came from a smaller, more targeted prompt against a single device. Not a bulk pull, just a status check.
Prompt
“Is ceos1 alive? If so, show me the hostname line from its running config.”
Agent
“Yes, ceos1 is alive. Here’s the hostname line: hostname core1. Note: the device’s inventory name is ceos1, but its configured EOS hostname is core1, this mismatch is normal in lab environments where the inventory label differs from the device’s actual hostname setting.”
It didn’t just retrieve data. It noticed a discrepancy between the inventory label and the device’s actual configuration, and proactively explained why that was expected instead of flagging it as an error. That’s the difference between an AI that runs a command and an AI that reasons about a network.
Both agents were tested end-to-end with real prompts against real infrastructure, and every run left a full reasoning trace behind, exactly how the agent selected and used its tools, not just the final answer.
Reasoning over real infrastructure data, with safety boundaries built in from the start.
System of Record
NetBoxItential Inventory Manager
Itential Platform
FlowAgentsAgent ProjectsModel RegistryItential Gateway
Devices
Arista cEOS-lab (arm64)Containerlab
Agentic Ops
Claude Sonnet 5Itential MCP Server
Two read-only agents are a good start, but read-only only gets you so far. Part 3 adds a third agent focused on compliance: checking the live network against NetBox as a stored “golden” reference and flagging drift before it becomes an outage. Same underlying data, same platform, a step closer to an agent that doesn’t just notice a problem, but tells you exactly what changed.
Want to follow along with me? Connect with me on LinkedIn.
See how Itential connects AI reasoning to governed execution across your entire infrastructure.