Skip to content

Configuration

An install is configured through bootstrap’s variables (deploy/terraform/bootstrap), which you set in your own Terraform, as the example client does. Bootstrap turns them into the chart’s values and the cluster’s Secrets; you don’t set chart values directly. The install guide says where each comes from.

Variable Required What it’s for
install_contract Yes Output of the per-cloud install module
chart_version The awzy chart versions Argo CD follows. The release registry shows an install only the version its release channel (or pinned version) names, as registered in the corp portal, so the default range follows that channel
registry_credentials Yes Pull credentials for registry_prefix: the install ID and its pull token
cosign_public_key Yes PEM public key that release images are signed with (deploy/release/cosign.pub)
support_public_key PEM public key the corp portal signs support session tokens with (deploy/release/support.pub, ). awzy staff sign in with one only while a session your admin approved lasts. Null: support sessions can’t sign in
client_portal The client’s IdP for the client portal (not needed with demo_idp): its issuer and keys; the audiences of the portal’s own tokens and of those agents get for its MCP endpoint; and the claim holding a person’s SCIM userName, when sub doesn’t (empty: sub)
team_groups Which of the IdP’s groups are teams, so policies and awzy-reasoner know each person’s team: group names, each may use * (e.g. [“sales-*”, “security”]). Empty: none are. Can change after install
awzy_bot Awzy Bot in the client portal, with the model llm_model or llm_routing names
investigations awzy-reasoner’s investigations of the people it flags, with the model llm_model or llm_routing names
investigation_budget Investigations’ limits: the most tokens a calendar month spends, and the groups whose members are only ever proposed for containment
llm_model The model for Awzy Bot and investigations on your cloud’s own model service, in its API’s terms: on Bedrock, { api = “converse”, model_id = “us.anthropic.claude-opus-5-5”, cache_points = true }; on Vertex AI, { api = “gemini”, model = “gemini-2.5-pro” } or { api = “anthropic_messages”, model = “claude-opus-5-5” }. Ignored with llm_routing. Null: both features stay off
llm_connections Model services beyond your cloud’s own, by name: e.g. { vllm = { kind = “openai”, url = “http://vllm.models.svc:8000/v1” } }. The cloud’s own is cloud. An API key’s environment variable comes from llm_api_key_secrets
llm_api_key_secrets The Secrets (in each service’s namespace) holding the API keys connections name in api_key_env: { AWZY_LLM_KEY_VLLM = { secret = “vllm-key”, key = “api-key” } }
llm_api_keys API keys for the connections in llm_connections, by the environment variable their api_key_env names: { AWZY_LLM_KEY_VERTEX = “…” }. Kept in a Secret bootstrap makes, in place of llm_api_key_secrets
llm_routing The model catalog and each feature’s route to start with, in place of llm_model: { models = [{ name, connection, spec }], routes = { awzy_bot = { targets = [{ model, weight }], fallback = [] }, investigations = … } }. Changed later in the client portal
slack Notifications in your Slack: the bot token of the Slack app you installed (scopes users:read.email and chat:write) and the security team’s channel ID. Null leaves them off
mcp_gateway awzy-gateway, the MCP proxy agents call: its public hostname (null keeps it in-cluster; it needs a DNS record to the load balancer), and the MCP servers it fronts as the chart’s mcpGateway.upstreams. Each tool’s tier, and which tiers fail open while the PDP is unreachable, are set in the client portal. Null leaves it off
intake awzy-intake, for app and audit-log events: its public hostname for sources outside the cluster (null keeps it in-cluster). Null leaves it off
demo_idp DEMO INSTALLS ONLY: sign the client portal in against the dev IdP at https://<hostname>/idp
clickhouse_retention_days How many days ClickHouse keeps decisions and events before they expire; 0 keeps them all. Can change after install
tracing OpenTelemetry traces from every service: your collector’s OTLP gRPC endpoint (on AWS, aws/monitoring’s otlp_endpoint output), and the share of traces sent to it (1: all, so the collector can keep the slow ones); null for none
demo_data DEMO INSTALLS ONLY: provision the synthetic company into awzy-context
demo_activity DEMO INSTALLS ONLY: the synthetic company’s everyday tool calls through awzy-gateway each weekday, so the demo has decisions. Needs demo_data, demo_idp, and mcp_gateway
reporter From registering the install in the corp portal; null turns the reporter off
break_glass_public_keys PEM public keys of the admins enrolled for break-glass policy rollback, concatenated; null turns break-glass off
ingress Yes Public hostname of the client portal, and the contact Let’s Encrypt registers. redirect_hostnames are older names for it, each with its own certificate, that redirect to it, path and all: for a hostname that changed
metrics_server Install metrics-server, which the chart’s autoscalers read CPU from. Set false when the cluster already runs one (such as a managed cluster’s metrics add-on)
versions Pinned chart versions of the components bootstrap installs