Build

Customer context

Give the agent per-customer knowledge without ever letting the model see raw identities.

Most useful API calls need to know who the customer is — an account ID, an email, a subscription tier. Those values must never come from the model: a language model asked to produce an account number will happily invent one. The context vault solves this.

How it works

  • Each customer is a contact with identities per channel (a web-widget session, later a WhatsApp number).
  • Context values are stored per contact in the vault, encrypted, with a full audit log of every read and write.
  • When a tool parameter is classified as customer context, the runtime resolves it from the vault for the contact in the conversation — at execution time, server-side.
  • If a required context value is missing, the call fails closed with a clear error instead of letting the model fill the gap.

The model sees that a tool exists and which AI-fillable fields it has. It never sees the context values that are attached at execution.

Workspace values, secrets & per-flow overrides

  • Placeholders like {{environment.base_url}} and {{tenant_config.merchant_id}} resolve from your workspace values (Context → Workspace values).
  • {{secret.<key>}} placeholders resolve to encrypted secrets: create the secret once, and a reference — never the raw value — is seeded under the placeholder's key.
  • environment and secret placeholders resolve flow-first, then fall back to the workspace default — so three flows can run the same published tool with three different credentials or base URLs.