Skip to main content

High-performance SNMP toolkit with Rust core - AgentX subagent and SNMP manager

Project description

SNMPKIT

High-performance SNMP toolkit with Rust core and Python uvloop


Features

  • AgentX subagent (RFC 2741) - Extend SNMP agents with custom data
  • SNMP manager (planned) - Query SNMP devices (GET, SET, WALK)
  • Async-first - Built on asyncio + uvloop
  • Fast - Rust core for PDU encoding and OID operations
  • Type-safe - Full type hints throughout

Tech Stack

Component Technology
Core Rust 2024
Python 3.14+ (GIL-free)
Docs TypeScript / Nextra
Build maturin + uv
Task runner kyle

Installation

uv add snmpkit

Quick Start

from snmpkit.agent import Agent, Updater

class MyUpdater(Updater):
    async def update(self):
        self.set_INTEGER("1.0", 42)
        self.set_OCTETSTRING("2.0", "hello")

agent = Agent(agent_id="MyAgent")
agent.register("1.3.6.1.4.1.12345", MyUpdater(), freq=10)
agent.start_sync()  # or: await agent.start()

Documentation

snmpkit.dev - Full documentation, guides, and API reference

Development

Requires kyle task runner. Linux/macOS/Unix only.

# First time setup (installs Rust, uv, bun, maturin)
kyle setup

# Or if you have the tools already
kyle setup:deps   # Just install project dependencies

kyle dev          # Build and install in dev mode
kyle test         # Run all tests (Python + Rust)
kyle format          # Format all code (Python + Rust + TS)
kyle lint         # Lint all code
kyle docs:dev     # Start docs dev server
kyle check        # Type check and lint

License

Check out the License for more information!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

snmpkit-1.0.0-cp314-cp314-win_amd64.whl (214.0 kB view details)

Uploaded CPython 3.14Windows x86-64

snmpkit-1.0.0-cp314-cp314-manylinux_2_34_x86_64.whl (372.6 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ x86-64

snmpkit-1.0.0-cp314-cp314-macosx_11_0_arm64.whl (336.3 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

File details

Details for the file snmpkit-1.0.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: snmpkit-1.0.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 214.0 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for snmpkit-1.0.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 faf792c2b0862e31485bf2c21db937c38ec84e5c06a3294a98ae0a8c25fdc123
MD5 81938fc65ce32b472c086bc99739fac6
BLAKE2b-256 45880de906727f383d27d5865d40e8cd7a403bbe6d48aa22a17ea7dc4c245e7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for snmpkit-1.0.0-cp314-cp314-win_amd64.whl:

Publisher: release.yml on darhebkf/snmpkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file snmpkit-1.0.0-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for snmpkit-1.0.0-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 9a4b0e38161e19de5f8ebbd21b24429c38d39b10bc7b19db72753e6fe99c7194
MD5 d46e2bc4adefb2f5d1e56452ec141649
BLAKE2b-256 a1b08ff21637507d12a41cc6c613492cbf8dd00c19140325013643a3bcd17f41

See more details on using hashes here.

Provenance

The following attestation bundles were made for snmpkit-1.0.0-cp314-cp314-manylinux_2_34_x86_64.whl:

Publisher: release.yml on darhebkf/snmpkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file snmpkit-1.0.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for snmpkit-1.0.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 06b78865a92521eac385f8b55021b47101436e594c5c00ff4358269138be5dd8
MD5 fd66b95404ce2366b462ecd1a1db611e
BLAKE2b-256 0e83ce969b48fab619e0709cae41e9162ee549929fefd48684eec816dd09c246

See more details on using hashes here.

Provenance

The following attestation bundles were made for snmpkit-1.0.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: release.yml on darhebkf/snmpkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page