Profiles define which operational services are enabled alongside the always-present runtime core.
The runtime core consists of two components:
- Inference Engine (e.g., Ollama, vLLM, llama.cpp) - LLM inference engine (Docker-managed service)
- OpenCode - AI-powered code assistance (VS Code plugin, not Docker-managed)
OpenCode is a client-side IDE plugin that connects to the Inference Engine via the OpenAI-compatible API. Because it runs inside VS Code rather than as a Docker container, it is not included in the RUNTIME_CORE_SERVICES array or PROFILE_SERVICES mappings in lib/cli/profile.sh.
Note: Runtime persistence is provided by PostgreSQL as an operational service in all current profiles.
| Profile | Purpose | Audience |
|---|---|---|
| usr | User-oriented runtime | End users, minimal deployments |
| dev | Developer workstation | Local development |
| ops | Operations-focused | Servers/operators |
| sys | System-oriented | Complete deployments |
Purpose: User-oriented runtime with minimal footprint, optimized for end-user deployments.
Includes:
- Runtime core: Inference Engine, OpenCode (plugin)
- PostgreSQL (database for runtime persistence)
Excludes:
- Open WebUI (web interface)
- pgAdmin (database admin)
- Prometheus, Grafana, Loki, Alloy (monitoring/logging)
- cAdvisor, node-exporter, postgres-exporter, nvidia-gpu-exporter (metrics)
Use Cases: End-user deployments, resource-constrained environments, minimal installations with database persistence
Purpose: Developer workstation with UI and database tools.
Includes:
- Runtime core: Inference Engine, OpenCode (plugin)
- Open WebUI (web interface for model interaction)
- PostgreSQL (database for conversations and data)
- pgAdmin (database administration UI)
Excludes:
- Prometheus, Grafana, Loki, Alloy (monitoring/logging)
- cAdvisor, node-exporter, postgres-exporter, nvidia-gpu-exporter (metrics)
Use Cases: Local development, testing, interactive model exploration
Purpose: Observability-focused deployment for servers and operators.
Includes:
- Runtime core: Inference Engine, OpenCode (plugin)
- PostgreSQL (database for runtime data)
- Prometheus (metrics collection)
- Grafana (metrics visualization and dashboards)
- Loki (log aggregation)
- Alloy (log shipping)
- cAdvisor (container metrics)
- node-exporter (host metrics)
- postgres-exporter (database metrics)
- nvidia-gpu-exporter (GPU metrics, if GPU available)
Excludes:
- Open WebUI (web interface)
- pgAdmin (database admin)
Use Cases: Production servers, monitoring-focused deployments, observability analysis
Purpose: System-oriented deployment with complete feature set and automation.
Includes:
- Runtime core: Inference Engine, OpenCode (plugin)
- All dev services: Open WebUI, PostgreSQL, pgAdmin
- All ops services: Prometheus, Grafana, Loki, Alloy, cAdvisor, node-exporter, postgres-exporter, nvidia-gpu-exporter
Use Cases: System deployments, demonstrations, full-featured environments with automation
- usr: Use for user-oriented deployments with minimal footprint (runtime core + PostgreSQL)
- dev: Use for local development and interactive work
- ops: Use for production deployments requiring observability
- sys: Use for system-oriented deployments with complete feature set and automatic updates
All profiles must:
- Include the complete runtime core (Inference Engine, OpenCode)
- Never disable or conditionally exclude runtime core components
- Maintain runtime core independence from operational services
Profiles may:
- Add operational services as needed
- Configure operational services differently
- Exclude operational services based on use case