Skip to main content
An agent configuration is stored and versioned, so it must never contain a raw credential. Instead you store the credential once as an organization secret and put a reference to it in the configuration. Albus resolves the reference at launch; the value is never returned by the API and never appears in a session, audit event, or agent revision. You need secrets for two things: MCP server headers and your own model provider key.

Create a secret

Names are path-like: /-separated segments of [a-zA-Z0-9_-], up to 255 characters total, no empty, ., or .. segments. Group related credentials the way you would in a filesystem:

Reference a secret

A reference is the secret’s name under albus.sh/secrets/:
Use it wherever a credential belongs:
A reference to a secret that does not exist fails the run with 400 before the agent starts, so a typo costs you nothing but the error.
model.provider.credential must be a reference — a raw key there is rejected. MCP headers accept either: a value in reference form is resolved, and anything else is sent literally ("X-Api-Version": "2024-01-01").

Inspect, rotate, delete

Reads return the value masked to its last three characters — there is no operation that returns a secret’s value. Rotating is an update: references keep working and the next run picks up the new value, with no agent configuration change and therefore no new revision.