Skip to main content
Subdirectory: credentials/ · Body: must be empty Credentials carry no body — everything is in frontmatter. Secret values are never exported by pull. When you sync, supply the value from your environment via the ${ENV_VAR} placeholder so secrets stay out of git.

Frontmatter

Fields NOT supported

  • id, tenant_id, created_at, updated_at — system-set
  • The actual decrypted value on pull — intentionally never exported
  • is_agent_accessibledeprecated. Agent access is now governed by the per-agent accessible-credentials allowlist, not a per-credential flag. The field is accepted-and-ignored on existing files so older repos still sync; you can safely delete it.

Example: a SECRET credential

credentials/web-admin-password.mdx
At sync time, ${WEB_ADMIN_PASSWORD} is resolved from your shell or CI secret store.

Example: a VAULT_PATH credential

credentials/prod-db-password.mdx

Gotchas

  • pull is a one-way export of metadata only. Re-running pull will not fill in value — it stays out of git by design.
  • SECRET requires value at sync time. If ${WEB_ADMIN_PASSWORD} is unset in the environment, sync rejects the credential. Pre-existing credentials with a value already on the platform are not overwritten by an empty placeholder — sync skips the field rather than wiping it.
  • Body must be empty. Putting anything in the MDX body fails validation. The value goes in frontmatter only.
  • Tenant scoping matters for provider keys. A credential referenced by a Provider’s API Key Var Name must be tenant-scoped (org unset or null).