Some checks failed
Rust CI / Security Audit (push) Has been cancelled
Rust CI / Check + Test + Lint (nightly) (push) Has been cancelled
Rust CI / Check + Test + Lint (stable) (push) Has been cancelled
mdBook Build & Deploy / Build mdBook (push) Has been cancelled
Nickel Type Check / Nickel Type Checking (push) Has been cancelled
mdBook Build & Deploy / Documentation Quality Check (push) Has been cancelled
mdBook Build & Deploy / Deploy to GitHub Pages (push) Has been cancelled
mdBook Build & Deploy / Notification (push) Has been cancelled
Deployment Mode Defaults
Mode-specific default configurations.
Deployment Modes
Solo (solo.ncl)
Development and testing mode:
- Host:
127.0.0.1(localhost only) - Backend port:
8080 - Agents port:
8002 - Router port:
8003 - Workers:
2 - Database: File-based
- NATS: Disabled
- Cost tracking: Disabled
- Security: JWT only (no TLS, no MFA)
Best for: Feature development, testing, PoCs
Multiuser (multiuser.ncl)
Team collaboration mode:
- Host:
0.0.0.0(network accessible) - Backend port:
8001 - Agents port:
8002 - Router port:
8003 - Workers:
4 - Database: Remote SurrealDB
- NATS: Enabled
- Cost tracking: Enabled (per-role budgets)
- Security: TLS + MFA + audit logging
- Knowledge graph retention:
30 days
Best for: Team development, staging, internal deployments
Enterprise (enterprise.ncl)
Production high-availability mode:
- Host:
0.0.0.0(network accessible) - Backend:
8workers,2000max connections - Agents:
50max instances,60sheartbeat - Router: All providers enabled, aggressive cost optimization
- Database: SurrealDB cluster,
100pool size - NATS: JetStream cluster enabled
- Cost tracking: Detailed, per-provider and per-role
- Security: TLS enforced, MFA required, full audit
- Observability: Prometheus, OpenTelemetry, tracing
- Knowledge graph retention:
90 days - Backup: Every
6 hours
Best for: Production deployments, large organizations, HA requirements
Composition
Deployment modes override common defaults:
Common Defaults
↓
Deployment Mode (override)
↓
User Customizations (override)
↓
Final Config
Example:
let common = import "../common/server-defaults.ncl" in
let solo_mode = import "solo.ncl" in
# Merge: common is overridden by solo_mode
std.record.merge common solo_mode
Sizing Guide
| Metric | Solo | Multiuser | Enterprise |
|---|---|---|---|
| CPU | 2 cores | 4-8 cores | 16+ cores |
| Memory | 2 GB | 8-16 GB | 32GB+ |
| Users | 1 | 5-20 | 100+ |
| Agents | 3 | 10 | 50+ |
| Database | File | SurrealDB | Cluster |
| NATS | None | JetStream | Cluster |
References
- Parent:
../README.md - Common defaults:
../common/README.md - Platform README:
../../README.md