Guia da TUI¶
O NetBox SDK inclui várias aplicações Textual. O ponto de entrada principal é
nbx tui, um navegador em tela cheia para recursos NetBox que compartilha a mesma
config, cliente de API e índice de esquema que a CLI e o SDK Python.
Outros pontos de entrada da TUI especializam-se em desenvolvimento, logs, composição guiada de comandos, exploração GraphQL e inspeção de modelos Django:
nbx tuipara o navegador principalnbx dev tuipara a bancada do desenvolvedornbx graphql tuipara navegação interativa do esquema GraphQL e execução de consultasnbx cli tuipara montagem guiada de comandosnbx tui logspara o visualizador de logs em tela cheianbx logspara o tail de log simples na CLInbx dev django-model tuipara inspeção de modelos voltada a contribuidores
A TUI principal também descobre recursos de plugins e objetos customizados
dinamicamente. Se um plugin NetBox expõe uma API REST sob /api/plugins/, ou
um ObjectType público anuncia um endpoint REST, nbx tui e nbx dev tui podem
adicionar esses recursos à barra lateral automaticamente e carregar seus dados
como qualquer recurso NetBox integrado.
Lançar a TUI¶
nbx tui # perfil default
nbx tui --theme dracula # tema específico
nbx tui --theme # listar temas disponíveis
nbx demo tui # perfil demo (demo.netbox.dev)
nbx demo tui --theme dracula
nbx dev tui # bancada de requisições do desenvolvedor
nbx demo dev tui # bancada no demo.netbox.dev
nbx graphql tui # explorador e executor GraphQL
nbx demo graphql tui # explorador GraphQL no demo.netbox.dev
nbx cli tui # construtor de comandos guiado
nbx tui logs # visualizador de logs em tela cheia
nbx logs # tail de log simples na CLI
Layout¶
┌─────────────────────────────────────────────────────────────┐
│ Tema ▾ [barra de pesquisa] NetBox SDK │
├────────────────┬────────────────────────────────────────────┤
│ Navegação │ Resultados │ Detalhes │ Filtros │
│ │ │
│ ▼ circuits │ [Tabela de resultados] │
│ ▼ core │ │
│ ▼ dcim │ │
│ ▸ devices │ [Painel de detalhe quando linha selecionada]│
│ ▸ sites │ │
│ ▸ … │ │
│ ▼ ipam │ │
│ ▸ prefixes │ │
│ ▸ … │ │
│ │ │
├────────────────┴────────────────────────────────────────────┤
│ Barra de status / dicas de ajuda │
└─────────────────────────────────────────────────────────────┘
Abas¶
Resultados¶
A visão principal de dados. Selecionar um recurso na árvore de navegação carrega seus objetos na tabela de resultados. As linhas são renderizadas com colunas priorizadas (id, name, status, site, role, …).
Spacealterna seleção em uma linha.Aalterna todas as linhas visíveis.Dou clique em uma linha abre a visão de detalhe.
Detalhes¶
Mostra os atributos completos do objeto em um painel chave-valor. Para dcim/interfaces com cabo conectado, um diagrama ASCII de trace de cabo é renderizado abaixo dos atributos.
Filtros¶
Formulário para aplicar filtros de query da API ao recurso atual. Pressione F para abrir o modal de filtros.
Árvore de navegação¶
O painel esquerdo mostra todos os grupos de app NetBox como seções expansíveis. Clique em um recurso para carregar sua lista, ou use navegação por teclado:
G— foca a árvore de navegação- Setas — move entre nós
Enter— seleciona / expande um nó
Recursos de plugin¶
Recursos REST de plugins / objetos customizados são anexados sob um menu Plugins automaticamente quando a instância NetBox conectada os expõe sob /api/plugins/ ou os informa por /api/core/object-types/.
- não é necessária lista hardcoded de plugins
- recursos de plugin aparecem em
nbx tuienbx dev tui - se o plugin expõe endpoints REST de lista/detalhe, a TUI pode navegar e renderizar os dados retornados como recursos integrados
- modelos privados ou dados de plugins sem endpoints REST são ignorados
Pesquisa¶
Pressione / para focar a barra de pesquisa superior. Digitar filtra a tabela de resultados carregada em tempo real.
Persistência de estado¶
A TUI salva e restaura:
- Último recurso selecionado
- Filtros aplicados
- Tema ativo
O estado fica sob a raiz de config do NetBox SDK, tipicamente
~/.config/netbox-sdk/tui_state.json. Arquivos de estado antigos do netbox-cli ainda são
lidos automaticamente quando presentes.