Skip to content
View scottpeterman's full-sized avatar

Block or report scottpeterman

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
scottpeterman/README.md

Scott Peterman

Network engineer who builds. Thirty years in routing and switching — carrier IP edge, enterprise, data center fabrics — and most of that time writing the tooling I wished existed on the way through.

The work here is mostly one idea: a network already knows its own state. The gap is that the state lives in CLI output on a few hundred boxes, in a dozen dialects, and nothing downstream can consume it. These tools close that gap — get the state off the device, turn it into something queryable, and keep it as a source of truth you can diff against.

Everything below is lab-validated. Real network operating systems in a functional lab, re-run on every change, never mock data.


Observe

fibtrace · Python · MIT
Hop-by-hop forwarding chain validation from the device perspective. Not a traceroute — a FIB trace. Visualize all the possible paths, and diff two traces side by side.

secure_cartography · Python
Network discovery and mapping via SSH-based device interrogation. Interrogates the devices directly rather than trusting an inventory, and produces topology maps you can hand to someone.

secure_cartography_js · JavaScript · MIT
SNMP discovery, topology mapping and visualization. Electron desktop app and Node CLI, exporting to drawio and PNG.

Know

netlapse · Python · GPLv3
Network state time-lapse. Periodic structured snapshots of device operational state with versioned diffs — parse scoring per device and per template, a template lab for tuning templates against live output, and semantic diff, so a change reads as what changed rather than as a wall of text.

Investigate

uglyfruit · Python · GPLv3
Tiered retrieval for AI-assisted network investigation — historical, structured-live, and gated-live device state behind a human-approved escalation boundary. MCP-exposed, so an agent can consume the same primitives an engineer would, without handing it unbounded access to production gear.

Build

what_a_NOS_could_be · HTML · MIT
A single-device operational dashboard showing everything an engineer needs — thermal state, BGP peers, OSPF adjacencies, LLDP topology, route table composition, transceiver inventory, interfaces. Built from show commands. No agents, no cloud, no license.


Foundation

The tools above sit on a small set of primitives, all public:

  • reachssh · Python · GPLv3 — Paramiko wrapper for SSH-based automation, including legacy crypto support for older devices that modern clients have dropped.
  • tetherssh · Go · MIT — SSH terminal emulator with session management, built on Fyne 2 and gopyte.
  • tfsmjs · JavaScript · Apache 2.0 — JavaScript port of the Python TextFSM library, for parsing semi-structured text in the browser and in Node.

Operational reality is SSH-first — not RESTCONF, not a vendor API — so parsing is treated as a first-class part of the platform rather than an afterthought. The structured artifact that comes out of parsing is where the contract lives. That's what makes these platforms instead of scripts.


Longer write-ups, architecture notes, and screenshots: scottpeterman.github.io

Popular repositories Loading

  1. fibtrace fibtrace Public

    Hop-by-hop forwarding chain validation from the device perspective. Not a traceroute — a FIB trace. Visualize all the possible paths. Diff 2 different traces side by side

    Python 20 3

  2. secure_cartography secure_cartography Public

    A secure, Python-based network discovery and mapping tool that generates comprehensive network topology maps using SSH-based device interrogation.

    Python 18 4

  3. secure_cartography_js secure_cartography_js Public

    SNMP network discovery with topology mapping and visualization. Electron desktop app and Node.js CLI. Maps Exportable to drawio and png

    JavaScript 2

  4. netclaw netclaw Public

    Forked from automateyournetwork/netclaw

    An AI agent that claws through your network

    Shell 1

  5. agentic-chatops agentic-chatops Public

    Forked from papadopouloskyriakos/agentic-chatops

    3-tier agentic ChatOps (n8n + GPT-4o + Claude Code) implementing all 21 patterns from "Agentic Design Patterns" — solo operator managing 137 devices

    Shell 1

  6. what_a_NOS_could_be what_a_NOS_could_be Public

    A single-device operational dashboard that shows everything an engineer needs — thermal state, BGP peers, OSPF adjacencies, LLDP topology, route table composition, transceiver inventory, interface …

    HTML 1