De developer
a experto BESS en una tarde
148 tests NTSyCS compliance, mypy: 0 errores, ruff + bandit limpios, 10 GitHub Actions workflows activos. Arquitectura dual-repo (gateway OSS + IA privada).
Elige tu camino de entrada
Simulador local
Sin hardware. Con datos CMg reales. Ideal para desarrollo y pruebas.
git clone https://github.com/bess-solutions/open-bess-edge
cd open-bess-edge
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"
cp .env.example config/.env # configurar sitio
make simulate # BESS virtual + datos CMg
make test # tests en ~32s
Docker Compose
Gateway + Prometheus + Grafana en un solo comando.
docker compose up -d \
--profile monitoring
# Acceder a:
http://localhost:8000 # Gateway API
http://localhost:9090 # Prometheus
http://localhost:3000 # Grafana
Raspberry Pi 4/5
arm64 nativo. Sin emulación. Para despliegue real en el campo.
docker pull \
ghcr.io/bess-solutions/open-bess-edge:latest
docker run -d \
--name bessai \
-p 8000:8000 \
-v ./config.yaml:/app/config.yaml \
ghcr.io/bess-solutions/open-bess-edge:latest
Estructura modular pensada para escalar
src/
├── agents/ # → privado en bessai-core â˜
│ # pip install bessai-agents (private)
│
├── drivers/ # Hardware abstraction
│ ├── modbus_driver.py # Modbus TCP client
│ ├── iec104_driver.py # IEC 60870-5-104 SCADA
│ ├── sep2_adapter.py # IEEE 2030.5 server
│ ├── simulator_driver.py # BESS virtual (testing)
│ └── registry/ huawei_sun2000.json ...
│
├── interfaces/ # APIs y adaptadores
│ ├── health.py # /health + /metrics
│ ├── compliance_api.py # /compliance/status+report
│ ├── pubsub_publisher.py # GCP Pub/Sub
│ └── mqtt_publisher.py # MQTT multi-broker
│
└── core/ # Foundation
├── safety.py # SafetyGuard GAP-001
├── compliance_stack.py # 11 GAPs façade
├── config.py # 30+ env vars Pydantic
├── main.py # Loop de control principal
└── watchdog_manager.py # Auto self-heal
CI/CD Pipeline — 10 workflows
El flujo de contribución en 5 pasos
pip install -e ".[dev]" && pre-commit installEl pre-commit corre lint + typecheck automáticamente en cada commit.
feature/BEP-XXXX-descripcion para features
nuevasfix/issue-NN-descripcion para bugspytest --tb=short -q — todos deben
pasarmypy src/ — 0 errores obligatorio## Unreleased describiendo el
cambio. Seguimos Keep a Changelog + SemVer.API Reference
GOOD FIRST ISSUES
Issues etiquetados como bienvenida para nuevos contribuidores: desde documentación hasta tests y features pequeñas.
¿Listo para empezar?
El entorno está un
git clone de distancia. El simulador incluye datos CMg reales del mercado SEN.