Ir para o conteúdo

Instalação

O netbox-sdk requer Python 3.11 ou mais recente.

Versão documentada

Este site documenta o candidato de código-fonte netbox-sdk 0.0.11. A versão final mais recente no índice PyPI padrão é a 0.0.11; use ==0.0.11 para uma instalação reproduzível nesse índice. Candidatos são validados em um registro de pacotes com acesso controlado, no TestPyPI e por artefatos de código-fonte, não publicados no índice PyPI padrão.

Via PyPI

Somente SDK:

pip install netbox-sdk

O pacote base já inclui as dependências necessárias para o SDK assíncrono e o SDK tipado versionado, incluindo pydantic e email-validator.

CLI:

pip install 'netbox-sdk[cli]'

TUI:

pip install 'netbox-sdk[tui]'

Servidor MCP:

pip install 'netbox-sdk[mcp]'

Tudo:

pip install 'netbox-sdk[all]'

Instalações fixas para a versão documentada (mesmos extras, versão exata):

pip install netbox-sdk==0.0.11

pip install 'netbox-sdk[cli]==0.0.11'

pip install 'netbox-sdk[tui]==0.0.11'

pip install 'netbox-sdk[all]==0.0.11'

Com a ferramenta uv

uv tool install --force 'netbox-sdk[cli]'
nbx --help

Fixado à versão documentada:

uv tool install --force 'netbox-sdk[cli]==0.0.11'

nbx --help

A partir do código-fonte

git clone https://github.com/emersonfelipesp/netbox-sdk.git
cd netbox-sdk
uv sync --dev --extra cli --extra tui --extra demo --extra mcp
uv run nbx --help

Suporte ao SDK tipado

O repositório inclui bundles OpenAPI versionados e modelos Pydantic gerados para NetBox 4.6, 4.5, 4.4 e 4.3, além de 4.7 (preview, opcional). Não é necessário executar geração de código localmente. A CI testa o SDK contra v4.6.6, v4.6.3, v4.6.2 e v4.5.10.

Type hints na IDE

Os quatro pacotes instalados (netbox_sdk, netbox_cli, netbox_tui, netbox_mcp) trazem marcadores py.typed (PEP 561). Pylance, Pyright e outros editores compatíveis com PEP 561 resolvem tipos automaticamente a partir da wheel instalada — sem configuração extra. Veja o guia do desenvolvedor Suporte de IDE para o workspace de contribuidor e os gates duplos no pre-commit.

Qual instalação escolher?

  • pip install netbox-sdk se você só precisa do SDK Python
  • pip install 'netbox-sdk[cli]' se você quer o comando nbx
  • pip install 'netbox-sdk[tui]' se você quer lançar TUIs Textual a partir do pacote em um ambiente Python existente
  • pip install 'netbox-sdk[mcp]' se você quer o servidor nbx-mcp por stdio ou Streamable HTTP
  • pip install 'netbox-sdk[all]' se você quer todas as interfaces disponíveis localmente

Fluxo do contribuidor

uv run pre-commit install --hook-type pre-commit --hook-type pre-push
uv run pre-commit run --all-files
uv run pytest

Automação demo opcional

O nbx demo init usa Playwright. O runtime do navegador deve ser instalado separadamente:

uv tool run --from playwright playwright install chromium --with-deps