Skip to main content
AoA encrypts local secrets at rest using a local master key. Agent environment variables that contain sensitive values (API keys, tokens) are stored as secret references. AWS Secrets Manager is supported as a provider vault for managed values and external references. gcp_secret_manager and vault remain coming-soon providers that are visible in descriptors but reject use until implemented.

Default Provider: local_encrypted

Secrets are encrypted with a local master key stored at:
This key is auto-created during onboarding. The key never leaves your machine.

AWS Secrets Manager Provider

Configure AWS vaults from the Secrets page or the provider-config API. AWS credentials are resolved from the deployment/runtime credential chain, not from AoA secrets. Use instance roles, workload identity, or environment credentials managed by your infrastructure. Remote import links AWS secret names/ARNs as external references. Import does not read plaintext secret values. Runtime reads resolve through AWS Secrets Manager and write a secret_access_events audit row for every success and failure. See docs/deploy/secrets-aws-provider.md for setup notes.

Configuration

CLI Setup

Onboarding writes default secrets config:
Update secrets settings:
Validate secrets config:

Environment Overrides

Strict Mode

When strict mode is enabled, sensitive env keys (matching *_API_KEY, *_TOKEN, *_SECRET) must use secret references instead of inline plain values.
Recommended for any deployment beyond local trusted.

Migrating Inline Secrets

If you have existing agents with inline API keys in their config, migrate them to encrypted secret refs:

Secret References in Agent Config

Agent environment variables use secret references:
The server resolves and decrypts these at runtime, injecting the real value into the agent process environment.