Skip to content

Configuration

InControl uses Microsoft.Extensions.Configuration with JSON settings files. The main configuration sections map to strongly-typed options classes.

Section: App

SettingDefaultDescription
Theme"System"Application theme: System, Light, or Dark
ShowTrayIcontrueShow the system tray icon
MinimizeToTraytrueMinimize to tray instead of closing
StartMinimizedfalseStart the app minimized
CheckForUpdatestrueCheck for updates on startup
DataPath%LOCALAPPDATA%/InControl/dataWhere conversations and user data are stored

Section: Inference

SettingDefaultDescription
Backend"Ollama"Backend to use: Ollama or LlamaCpp
DefaultModel"llama3.2"Model to use when none is specified
DefaultTemperature0.7Generation temperature
DefaultMaxTokens2048Maximum tokens to generate
TimeoutSeconds300Request timeout
RetryCount3Number of retry attempts for failed requests
RetryDelayMs1000Delay between retries in milliseconds

Section: Inference:Ollama

SettingDefaultDescription
BaseUrlhttp://localhost:11434Ollama API endpoint
KeepAlivetrueKeep models loaded between requests
KeepAliveMinutes5How long to keep models loaded (0 = until unload)
NumGpuLayers-1GPU layers to offload (-1 = all, 0 = CPU only)
ContextSize8192Context window size in tokens
NumThreadsnullCPU threads for inference (null = auto)

InControl supports layered JSON policy documents for organizational governance. Policies control tool usage, plugin loading, memory retention, connectivity modes, and update channels.

LevelWindows path
Organization%ProgramData%\InControl\policy.json
Team%ProgramData%\InControl\team-policy.json
User%LOCALAPPDATA%\InControl\user-policy.json

Organization policies take highest precedence and can be locked to prevent user overrides.

  • Tools — allow/deny/require-approval lists with optional constraints and time-based conditions
  • Plugins — enable/disable, max risk level, trusted authors, per-plugin allow/deny
  • Memory — max retention days, max memory count, encrypt-at-rest, auto-formation toggle
  • Connectivity — allowed modes, default mode, allowed/blocked domains
  • Updates — auto-update toggle, allowed channels (stable/beta/dev/canary), minimum version
ModeDescription
Offline OnlyNo network access. All operations are local.
AssistedNetwork available for approved operations only. Requires per-endpoint approval.
ConnectedFull network access. All requests logged to the audit trail.

The connectivity mode can be changed at runtime through the UI. The “Go Offline” button provides an immediate kill switch for all network activity.

All data is stored locally on your machine:

DataLocation
Sessions%LOCALAPPDATA%\InControl\sessions\
Logs%LOCALAPPDATA%\InControl\logs\
Cache%LOCALAPPDATA%\InControl\cache\
Exports%USERPROFILE%\Documents\InControl\exports\
Support bundles%LOCALAPPDATA%\InControl\support\
ComponentMinimumRecommended
GPURTX 3060 (8GB)RTX 4080/5080 (16GB)
RAM16GB32GB
OSWindows 10 1809+Windows 11
.NET9.09.0

App won’t start:

  • Check that .NET 9.0 Runtime is installed: dotnet --list-runtimes

No models available:

  • Ensure Ollama is running: ollama serve
  • Pull a model: ollama pull llama3.2

GPU not detected:

  • Update NVIDIA drivers to the latest version
  • Check CUDA toolkit installation

Health check failures:

  • Use the “Copy Diagnostics” feature in the app to create a support bundle
  • Support bundles include logs, health reports, and sanitized config (never conversation content)

For more details, see TROUBLESHOOTING.md.