hivestack is a local-first AI agent and AIOps platform that runs fully offline on a Tesla M40 (Maxwell, CC 5.2). It ships as a single Docker/Unraid app with a Web UI. Every cloud provider (OpenAI, Anthropic, Gemini, etc.) sits behind its own enable switch β local-only by default.
Status: Stage 12 β Distro & Hardening (in progress). Stages 0β11 complete. Offline e2e suite: 14/14 β
| Problem | hivestack Solution |
|---|---|
| Cloud dependency | Runs 100% offline β no API keys required for core features |
| Data privacy | Your data never leaves your hardware (M40 GPU or CPU) |
| Provider lock-in | Unified provider gate: switch between local Ollama and cloud models instantly |
| Complex setup | Single container deploy via Docker Compose or Unraid Community Apps |
| Observability gap | Built-in AIOps: telemetry, alerts, RCA, chaos testing, postmortems |
- Global
offline_modeβ hard block on all cloud calls (returns403 PROVIDER_DISABLED) - Per-provider toggles β OpenAI, Anthropic, Gemini, Ollama each independently enabled
- Credentials only read when both
offline_mode=falseAND provider enabled - Zero network calls in default configuration
- Streaming chat via SSE with provider auto-selection
- Agent runtime β planβact loop with scoped tools, step caps, cancel flags
- Tool sandbox β calculator, filesystem, shell, web fetch (offline-gated), MCP client/server
- MCP support β acts as both MCP server and MCP client
- Hybrid search β local embeddings (
all-MiniLM-L6-v2via fastembed/ONNX) + FTS5 keyword - Temporal knowledge graph β entities/relations with validity windows
- Compaction β summaries archive originals, token-budget context packing
- Persisted DAGs β tool/agent/chat/wait/map/board steps with parallel waves
- Checkpoints + resume β approval stops, retries,
{step}/{item}substitution - Cron scheduler β interval/cron triggers with daemon
- Boards β columns β cards with drag-drop moves
- Workflow
boardsteps emit cards automatically
- Versioned skill registry injected into agent runs
- Generator with template/LLM-author modes, eval trial runs
- Portable SKILL.md export, install from local paths or git (offline-gated)
- Word β sections, tables,
{{field}}merge with preview/audit/diff - Excel β sheets + live formulas, CSV/JSON profiling, anomaly detection
- PowerPoint β builders with approval-gated local outbox publishing
- Channels: webhook, email, Telegram, Discord, Slack, Matrix (external = offline-gated)
- Reply pipeline: agent β RAG-chat β memory-backed offline fallback
- Encrypted secrets vault (Fernet), wake-word β STT β agent β TTS loop
- Telemetry ingestion β points + logs with windowed queries
- Anomaly detection β z-score, IQR, Isolation Forest
- Alerts with ack/close, service topology + RCA engine
- Incidents with timelines, remediation with approval β recovery verification
- Chaos fault-injection β demo targets: fault β detect β alert β incident β RCA β approve & verify
- One-call demo:
POST /api/aiops/demodrives full loop
- RBAC β admin/operator/viewer with PBKDF2
- Immutable audit log β wired into toggles, approvals, vault, self-service
- Token budgets β daily + per-run cost caps enforced in agent runtime
- Security posture self-review dashboard
- Local escrow/gig marketplace with ledger
- ECDSA signature identity + one-time nonce challenges (anti-replay)
- Signed federation pings via
/api/federation/ingest
git clone https://github.com/wildfirebill-ai/hivestack.git
cd hivestack
cp .env.example .env
# Edit .env: set HIVESTACK_ADMIN_PASSWORD=your-strong-password
docker compose -f docker/docker-compose.yml up -d
# Open http://localhost:8080 β login: admin / your-password- Install NVIDIA GPU Plugin + Driver 580 branch (required for M40/CC 5.2)
- Apps β Search "hivestack" β Install
- Set paths:
/config,/data,/models(defaults work) - Set Admin password (required)
- Optional: GPU UUID(s) =
allfor M40 - Apply β Web UI at
http://<unraid-ip>:8080
# Linux/macOS
python3 -m venv .venv && ./.venv/bin/pip install -r backend/requirements.txt
./scripts/dev.sh # API :8110 + Web :5173
# Windows PowerShell
python -m venv .venv
.\.venv\Scripts\python -m pip install -r backend\requirements.txt
.\scripts\dev.ps1| Component | Minimum | Recommended |
|---|---|---|
| GPU | Tesla M40 (24 GB VRAM, CC 5.2) | Same |
| Driver | NVIDIA 580 branch (Linux) | Same |
| System RAM | 16 GB | 32 GB |
| Disk | 20 GB free | 50 GB free (models + data) |
| CPU | 4 cores | 8+ cores |
Note: Stage 1 (core platform) runs CPU-only. Stage 2+ (local inference via Ollama) requires M40 GPU.
| Guide | Description |
|---|---|
| Getting Started | Docker Compose & Unraid quick start |
| Configuration | All config.yaml options, env overrides, security |
| Provider Management | Enable/disable cloud & local providers |
| Unraid Guide | Template install, GPU setup, backup/restore |
| API Reference | REST endpoints, auth, WebSockets, errors |
| Architecture | System design, data flow, invariants |
make test # pytest unit suite
make e2e # offline end-to-end suite (14 scenarios, must exit 0)
make typecheck # TypeScript strict mode
make build # Docker imageCI Pipeline runs on every push/PR:
- Offline e2e suite (no network calls)
- Security scan: gitleaks + pip-audit + npm audit + Trivy image scan
- Results aggregated to
vulnerabilities.md
# Version lives in VERSION file (source of truth)
./scripts/build.sh # build locally
./scripts/release.sh # build + push to GHCR
git tag -a v$(cat VERSION) -m "Release v$(cat VERSION)" && git push origin v$(cat VERSION)
# Backup / restore
python scripts/backup.py --data /data --config /config --out ./backups
python scripts/backup.py --restore ./backups/hivestack-backup-<ts>.zip --dest ./restore| ADR | Title | Status |
|---|---|---|
| 0001 | SQLite WAL + Migrations | Accepted |
See CONTRIBUTING.md for:
- Branching strategy, commit conventions
- Local test commands (
make test && make e2e && make typecheck) - Architecture invariants (offline-first, provider gate, DB migrations)
- Security reporting: security@wildfirebill.ai
- Never commit secrets β
.env,.env.*,runtime/are gitignored - Report vulnerabilities privately: security@wildfirebill.ai
- Automated scanning: gitleaks, pip-audit, npm audit, Trivy (weekly + on push)
- See SECURITY.md for full policy
MIT License β see LICENSE for details.
Copyright (c) 2024 wildfirebill-ai
- Web UI:
http://<host>:8080 - API Docs (Swagger):
http://<host>:8080/docs - Health Check:
http://<host>:8080/health/ready - GitHub: https://github.com/wildfirebill-ai/hivestack
- Issues: https://github.com/wildfirebill-ai/hivestack/issues
- Discussions: https://github.com/wildfirebill-ai/hivestack/discussions
- Security: security@wildfirebill.ai