Skip to main content

NetSight

CI PyPI Python License

NetSight is a read-only, multi-vendor network device query SDK written in Python 3.14. It connects to devices over vendor-native APIs (currently PAN-OS XML; more vendors planned), enforces a deny-all command allowlist, and returns structured data parsed from declarative YAML parser specs.

For users

See the User Guide for installation, configuration, and day-to-day SDK usage — connecting to a device, running an operation, handling results, writing a template workflow.

from netsight import NetSight

ns = NetSight(config="config/devices.yaml")
device = ns.device("fw-01")
info = device.show_system_info()
routes = device.show_routing_table()

Installing the core SDK

# Minimal SDK install — just the device-query core
pip install netsight-sdk

# With the dev MCP server (for Claude Code contributors)
pip install 'netsight-sdk[dev]'

Or, to track the development branch directly:

pip install git+https://github.com/magicboxlab-ai/netsight-sdk.git

First-time setup

After installing the core SDK, run netsight init to create your device configuration file:

# Create ~/.config/netsight/devices.yaml with a template
netsight init

# Edit the file to add your devices, then verify
netsight doctor

The config file search order is: $NETSIGHT_CONFIG_DIR → ./config/ (cwd, for project-local dev workflows) → $XDG_CONFIG_HOME/netsight/ → ~/.config/netsight/.

Installing vendor packs

The core SDK is vendor-agnostic. Vendor support ships as separate pack packages installed alongside the core. Use the netsight pack CLI to discover and install packs:

# List packs available in the bundled catalog
netsight pack list --available

# Install a pack
netsight pack install paloalto-firewall-xml

# Verify everything loaded correctly
netsight doctor

Packs can also be installed directly from their source repositories:

pip install git+https://github.com/magicboxlab-ai/netsight-packs-paloalto.git#subdirectory=packs/paloalto-firewall-xml

After installation, the pack is auto-discovered at startup via the netsight.packs entry-point group — no config change required.

See User Guide → Vendor packs for the full install and configuration flow.

For contributors

NetSight ships a purpose-built MCP server (netsight-dev) that exposes the codebase to Claude Code as structured resources and validation tools. The bootstrap flow for a new clone is documented end-to-end in the developer guide:

See Developer Guide → Getting Started for Development.

TL;DR:

git clone <repo-url> netsight
cd netsight
python3.14 -m venv .venv
source .venv/bin/activate
pip install -e .
netsight init --local # creates ./config/devices.yaml from the template
netsight doctor       # verifies the dev env end-to-end
claude                # approve the netsight-dev MCP server when prompted

The rest of the developer guide covers adding vendor packs, writing parser specs, custom types and transforms, registry wiring, self-documentation conventions, testing, and the release workflow.

Project layout at a glance

  • netsight/ — SDK source (pack registry, parsers, config management, security module, dev MCP server).
  • UNITTEST/ — pytest test suite (not tests/).
  • TOOLS/ — shell utilities (full_test_cycle.sh, security_check.sh).
  • docs/guides/ — user guide and developer guide.

Metadata

Release files for netsight-sdk 1.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for netsight-sdk 1.1.1
File Size Uploaded Provenance
netsight_sdk-1.1.1.tar.gz 212.9 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for netsight-sdk 1.1.1
File Interpreter ABI Platform
netsight_sdk-1.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 482.2 kB

Release files / netsight_sdk-1.1.1.tar.gz

Download URL netsight_sdk-1.1.1.tar.gz
Size 212.9 kB
Tags Source
SHA-256 checksum
How to use checksums
959b2ec67d1001c4c4772f7aaa5b1dfdef3f65edda6b1776e85f73aacf0bd1f4
BLAKE2b-256 checksum
How to use checksums
da2ec5dffcb6387783cd66e9f2c979c57a1a4b9c94fb61594aeaca17fbfd69bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 11, 2026.

Transparency log

Release files / netsight_sdk-1.1.1-py3-none-any.whl

Download URL netsight_sdk-1.1.1-py3-none-any.whl
Size 269.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
65742c1b706117804b76011a4b207ce39e6f170e5ca3a71b4924c2d822c466da
BLAKE2b-256 checksum
How to use checksums
4a9c34bdc670ef9db68b0cc04d0cd64390ddc9638e65257f686fa3bb3fd6cbfa
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 11, 2026.

Transparency log

Security for netsight-sdk 1.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for netsight_sdk-1.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 11, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page