Set Up NAPT in 30 Minutes: From Empty Terminal to Your First Automated Check
Everything you need to go from a clean machine to a working automation run, without breaking anything.
You do not need a lab, a server, or admin rights on the network to start automating. You need Python, an isolated environment, and twenty minutes of focus. This guide takes you from a blank terminal to a real, read-only check against a device — with the safety rails on the whole way.
1. Create an isolated environment
Always install into a virtual environment so NAPT's dependencies never collide with your system Python. One directory, fully disposable.
python3 -m venv napt-env source napt-env/bin/activate # Windows: napt-env\Scripts\activate python -m pip install --upgrade pip
2. Install NAPT
The core engine pulls in the automation libraries it orchestrates.
pip install napt napt --version
napt --version prints a version string, your environment is healthy. If the command is not found, your venv is not activated — re-run the source line above.3. Provide device credentials
NAPT reads connection details from an inventory file. Keep secrets out of source control — use environment variables for passwords and reference them from the inventory.
# inventory.yaml
devices:
- name: core-sw-1
host: 10.0.0.11
platform: cisco_ios
username: ${NET_USER}
password: ${NET_PASS}export NET_USER="readonly" export NET_PASS="••••••••"
4. Run your first check — safely
The most important habit you can build is --dry-run. It connects, gathers, and reports what it would do without sending a single change.
napt run check-interfaces --inventory inventory.yaml --dry-run
You should see structured output: each interface, its state, and any flagged errors.
The mental model
NAPT never lives on your devices. It runs from your workstation, opens a session per device using Netmiko or NAPALM, collects output, parses it into structured findings, and hands those findings to the rest of the platform. Removing NAPT removes nothing from the network.
Where to go next
- Run the same check without
--dry-runonce you trust the output. - Add a second device to the inventory and watch NAPT fan out.
- Open the Script Generator and describe a task in plain English.
Was this helpful?
Generate scripts for the task covered in this post
Describe what you need and NAPT writes production-ready automation in Netmiko, NAPALM, or Nornir.
Open Script Generator →Related posts
Build a Network Automation Lab: GNS3, EVE-NG, and DevNet Sandbox
Three ways to get real devices to automate against — local emulation, browser-based topologies, and Cisco's free cloud sandboxes — wired up to NAPT.
Read →Building Network Workflows Visually: Chain Templates Into Repeatable Automation
Drag templates onto a canvas, connect them with edges, add branches and parallel groups, then save, schedule, and run the whole flow.
Read →Zero-Touch Provisioning: From Rack-and-Stack to Production Without a Console Cable
ZTP turns a factory-default switch into a fully configured, verified device automatically. Here's how to drive it from a pipeline with config-as-code and post-deploy verification.
Read →