Skip to content

Tune & Operate

This path is for the product surface around a running Awaken server. Developers still implement executable capability in Rust, but operators tune the managed parts online: prompts, tool descriptions, models, model pools, MCP servers, skills, delegates, reminders, deferred-tool policy, permission rules, traces, datasets, and evals.

The Admin Console is the primary UI for this path. The REST config API is the same control plane for CI or internal tooling.

  1. Use the Admin Console to connect a running server, configure provider-backed models, create agents, preview drafts, and publish the next registry snapshot.
  2. Configure Agent Behavior and Hot-Tune Prompts for the full editable surface.
  3. Use MCP Tools, Use Skills Subsystem, Use Reminder Plugin, and Use Deferred Tools when the agent needs discoverable or delayed capabilities.
  4. Enable Observability and Report Tool Progress to make runs, tools, and providers visible.
  5. Enable Tool Permission HITL and Configure Stop Policies to keep agent behavior bounded and reviewable.
  6. Testing Strategy and Recover Streaming LLMs cover regression confidence and provider failure handling.

awaken-eval replays saved fixtures through RuntimeReplayer, scores the outputs, and diffs them against NDJSON baselines. Use it for regression checks over saved prompts, tool outputs, and provider scripts without paying live provider cost. Trace curation helpers can turn captured runs into fixtures; live mode remains available when provider drift is the behavior you want to measure.

Two orthogonal levers, both detailed in the config reference:

  • AdminApiConfig.bearer_token (or AWAKEN_ADMIN_API_BEARER_TOKEN) protects /v1/capabilities, /v1/config/*, /v1/agents*, /v1/system/info, /v1/audit-log, and runtime-stats endpoints.
  • AdminApiConfig.expose_config_routes = false drops the admin CRUD routes entirely when configuration is owned by an external pipeline.

For storms of small config writes, set ConfigRuntimeManager::with_min_apply_interval(Duration) to coalesce listener-driven applies; cached ProviderSpec executors are reused across unchanged specs.