Spaces:
Sleeping
title: Cybersecurity Panel
emoji: 🛡️
colorFrom: indigo
colorTo: blue
sdk: docker
pinned: false
app_port: 7860
Cybersecurity Panel
AI cybersecurity guidance through a panel of specialized advisors, led by AI Jerry Huaute, CISSP, built on Neon AI's Collaborative Conversational AI (CCAI) framework and BrainForge Security models. Collaboration between Jerry Huaute and Neon.ai.
Hugging Face Spaces
Single Docker image from the repo-root Dockerfile:
- Builds the React frontend at image-build time with
REACT_APP_API_URL=""(same-origin fetches). - Serves the SPA from FastAPI on port 7860 with
/api/...and/auth/...on the same origin. - Persists auth, profiles, chat sessions, onboarding, canvas, and user knowledge in SQLite (
aiosqlite) at${DATA_DIR}/cybersecurity_panel.db. Mount a Hugging Face Storage Bucket at/dataso data survives rebuilds. Vector store: ChromaDB under the same data dir.
Required Space secrets
| Secret | Purpose |
|---|---|
JWT_SECRET_KEY |
Signs auth tokens (long random string) |
VLLM_API_KEY / Neon HANA creds |
Neon vLLM / BrainForge Security endpoint |
OPENAI_API_KEY |
GPT fallback / large-model path |
GEMINI_API_KEY |
Optional Gemini provider |
Also loadable from a shared env file at C:\Users\dream\.secrets\shared.env for local development (SHARED_ENV / compose env_file).
Local development
Production-shaped container (matches Spaces)
# PowerShell
$env:COMPOSE_DATE = Get-Date -Format "yyyyMMdd"
docker compose up --build
# App: http://localhost:7861
Hot-reload development (recommended while coding)
$env:COMPOSE_DATE = Get-Date -Format "yyyyMMdd"
docker compose --profile dev up --build
# Frontend: http://localhost:3000
# Backend: http://localhost:8000 (docs at /docs)
Backend uses uvicorn --reload; frontend uses CRA with file polling. Source is bind-mounted from multi_llm_chatbot_backend/, frontend/, personas/, and cybersecurity_config.yaml.
Without Docker
- Load secrets from
C:\Users\dream\.secrets\shared.env(or setJWT_SECRET_KEY,OPENAI_API_KEY,VLLM_API_KEY, etc.). - Backend:
cd multi_llm_chatbot_backend && python -m venv venv && venv\Scripts\activate && pip install -r requirements.txt && uvicorn app.main:app --reload --port 8000 - Frontend:
cd frontend && npm ci && set REACT_APP_API_URL=http://localhost:8000 && npm start
Architecture
| Layer | Tech |
|---|---|
| Frontend | React (CRA) in frontend/ |
| Backend | FastAPI in multi_llm_chatbot_backend/ |
| DB | SQLite via Mongo-shaped shim (app/core/db.py) |
| Vectors | ChromaDB (document RAG) |
| Primary LLM | Neon vLLM — BrainForge/Security |
| Fallback | OpenAI GPT (resilient race), Gemini, Ollama |
Advisors
Personas live in personas/cyber_advisors/*.yaml (Jerry Huaute lead + specialist panel). App config: cybersecurity_config.yaml.
Features
- Panel chat with streaming multi-advisor responses; Jerry Huaute always on the panel, urgency triage puts the incident expert first, generated follow-up chips after each panel reply
- User profile: stated + inferred facts, dual LLM summaries (short for Neon, long for large models)
- Security Journey progress tracks (ITIL, NIST CSF, CIS, certs, personal digital security, custom)
- Document upload + RAG, export (TXT/PDF/DOCX)
- Model Status health probes and provider selection (Settings → Model Status)
Project layout
cybersecurity-panel/
├── cybersecurity_config.yaml
├── personas/cyber_advisors/
├── tracks/ # Security Journey track definitions
├── multi_llm_chatbot_backend/
├── frontend/
├── Dockerfile # HF Spaces / prod
├── Dockerfile.dev # hot-reload targets
├── docker-compose.yml
├── PLAN.md # overhaul plan
└── README.md
Tests
cd multi_llm_chatbot_backend
pip install -r requirements.txt -r test_requirements.txt
python -m pytest app/tests/unit -q
License / credit
© Neon AI. Built with Jerry Huaute, CISSP. CCAI and BrainForge are Neon.ai technologies.