Metadata-Version: 2.4
Name: netcfg-agent
Version: 0.2.1
Summary: Agent de deploiement de configuration reseau piloté par Visio, KeePass et inventaire recon
Author: naarob
License: AGPL-3.0-or-later
Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: System :: Networking
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: netmiko>=4.3
Requires-Dist: pykeepass>=4.1
Requires-Dist: lxml>=5.0
Requires-Dist: jinja2>=3.1
Requires-Dist: pyyaml>=6.0
Requires-Dist: jsonschema>=4.20
Requires-Dist: fastapi>=0.110
Requires-Dist: python-multipart>=0.0.20
Requires-Dist: uvicorn[standard]>=0.29
Requires-Dist: rich>=13.7
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
Provides-Extra: terminal
Requires-Dist: asyncssh>=2.20; extra == "terminal"
Requires-Dist: pyte>=0.8.2; extra == "terminal"
Provides-Extra: tui
Requires-Dist: textual>=8.0; extra == "tui"
Requires-Dist: asyncssh>=2.20; extra == "tui"
Requires-Dist: pyte>=0.8.2; extra == "tui"
Provides-Extra: monitoring
Requires-Dist: prometheus-client>=0.20; extra == "monitoring"
Provides-Extra: export
Requires-Dist: networkx>=3.3; extra == "export"
Requires-Dist: matplotlib>=3.9; extra == "export"
Provides-Extra: decouverte
Requires-Dist: ntc-templates>=9.0; extra == "decouverte"
Provides-Extra: inventaire
Requires-Dist: pillow>=11; extra == "inventaire"
Requires-Dist: pyzbar>=0.1.9; extra == "inventaire"
Provides-Extra: vault
Requires-Dist: hvac>=2.0; extra == "vault"
Provides-Extra: complet
Requires-Dist: asyncssh>=2.20; extra == "complet"
Requires-Dist: pyte>=0.8.2; extra == "complet"
Requires-Dist: textual>=8.0; extra == "complet"
Requires-Dist: prometheus-client>=0.20; extra == "complet"
Requires-Dist: networkx>=3.3; extra == "complet"
Requires-Dist: matplotlib>=3.9; extra == "complet"
Requires-Dist: ntc-templates>=9.0; extra == "complet"
Dynamic: license-file

# netcfg-agent

Agent de déploiement de configuration réseau piloté par un plan Visio, des identifiants KeePass et un inventaire :
UI web (dashboard, topologie, baies, découverte LLDP / table MAC, optimisation, preview de déploiement), CLI,
déploiement SSH réel avec portes d'approbation et rollback, TUI avec terminal PTY.

Licence : AGPL-3.0-or-later (voir `LICENSE`).

## Installation

```cmd
pip install "netcfg-agent[complet]"
```

Extras : `terminal` (PTY SSH, requis par netcfg-agent-mcp), `tui`, `monitoring`, `export`, `decouverte`,
`inventaire` (QR / codes-barres), `vault` (HashiCorp Vault). `complet` regroupe les cinq premiers.

## Lancement

```cmd
netcfg serve                       :: demo embarquee
netcfg serve --visio mon_plan.vsdx --running-configs-dir configs\
python -m netcfg.demo.serve_ui     :: demo enterprise, sans argument
```

Puis ouvrir http://127.0.0.1:7500/ui

Sous-commandes : `serve`, `audit`, `preview`, `deploy`, `optimize`, `verify`, `inspect-vsdx`, `vendors`,
`inventory` (état de déploiement par équipement), `physical` (inventaire physique : QR, LED, n° de série),
`export-deploys`, `tui`.

## Développement

```cmd
pip install -e ".[complet,dev]"
set PYTHONPATH=%CD%
pytest tests/ -q
```
