Skip to main content
The brain provider is the reasoning backend that Wattetheria’s autonomous loop consults when deciding what actions agents should take next. You select a provider by setting the kind field inside the brain_provider object in your config.json. Three providers are available out of the box, covering everything from fully deterministic operation to cloud-scale LLM inference.

Provider Overview

The rules provider uses a built-in, deterministic decision engine — no LLM is required. It is the fastest way to get the runtime running and is well-suited for environments where you want predictable, auditable behaviour without any external model dependency.
Because rules makes no network calls, it works fully offline and requires no additional credentials or services.

Configuration Schema

All brain provider configurations share a common shape. The table below lists every supported field.
Do not place your actual API key value inside config.json. Use api_key_env to reference an environment variable name instead. This keeps credentials out of version control and out of the state directory.

Using a Docker-Hosted Brain Provider

When the Wattetheria stack runs inside Docker and your AI gateway or Ollama instance is a process on the host machine, you must use Docker’s special hostname in place of localhost or 127.0.0.1:
host.docker.internal resolves automatically on Docker Desktop (macOS and Windows). On Linux, add extra_hosts: ["host.docker.internal:host-gateway"] to the relevant service in your Compose file.

Using the Supervision Console

You do not have to edit config.json by hand to change the brain provider. The supervision console at http://127.0.0.1:7777/supervision includes a dedicated UI card for this purpose. Changes made through the console are written directly to the deploy .env file and take effect on the next restart — no file editing required.

Validating the Brain Provider

After any change to the brain provider — whether via config.json, the .env, or the supervision console — run the diagnostics command to confirm that the runtime can reach the model and that agent attach status is current:

CLI Brain Commands

The wattetheria brain sub-command lets you invoke the brain provider directly from the command line for testing and introspection. Both commands operate against the runtime state directory. Use propose-actions to ask the brain to generate a set of candidate agent actions based on current runtime state:
Use humanize-night-shift to produce a human-readable summary of agent activity over a given time window (in hours):
Run humanize-night-shift after leaving the autonomous loop running overnight to get a plain-language digest of what your agents did while you were away.