{% extends "console_page.html" %} {% load waffle_tags %} {% block console_content %}

Agent Secrets

Manage encrypted secrets for {{ agent.name }}

Back to Agent

Secure Encryption

All secrets are encrypted with AES-256-GCM before storage. Credential secrets can be used via placeholders like x_api_key. Environment variable secrets are injected into sandbox execution.

Existing Secrets

{% if has_secrets %} Credential and environment variable secrets configured {% else %} No secrets configured yet {% endif %}

{% if has_secrets %} {% if secrets %}

Credential Secrets (Domain Scoped)

{% for domain, domain_secrets in secrets.items %} {% for secret_name, secret_data in domain_secrets.items %} {% endfor %} {% endfor %}
Secret Name Description Status Actions

{{ secret_name }}

Key: {{ secret_data.key }} {% if domain == "https://*.legacy-migrated.local" %} • Legacy secret (no domain restriction) {% else %} • Restricted to: {{ domain }} {% endif %}

{% if secret_data.description %}

{{ secret_data.description }}

{% else %} No description provided {% endif %}
Encrypted
Edit
{% csrf_token %}
{% csrf_token %}
{% endif %} {% if env_var_secrets %}

Environment Variable Secrets (Global)

{% for secret in env_var_secrets %} {% endfor %}
Secret Name Env Key Description Actions
{{ secret.name }} {{ secret.key }} {% if secret.description %}

{{ secret.description }}

{% else %} No description provided {% endif %}
Edit
{% csrf_token %}
{% csrf_token %}
{% endif %} {% else %}

No secrets configured

Add your first secret to get started. Secrets allow your agent to access sensitive data like API keys, passwords, and tokens securely.

Example names: "X Password", "API Key", "Database Username"

Secret keys will be generated automatically: x_password, api_key, database_username

{% endif %}

Requested Secrets

{% if has_requested_secrets %} {{ requested_secrets|length }} pending request{{ requested_secrets|length|pluralize }} awaiting values {% else %} No pending requests {% endif %}

Provide Values
{% if has_requested_secrets %}
{% for s in requested_secrets %}
{{ s.name }} (Key: {{ s.key }})
{% if s.secret_type == "env_var" %}
Type: Environment Variable
{% else %}
Type: Credential • Domain: {{ s.domain_pattern }}
{% endif %}
{% csrf_token %}
{% endfor %}
{% endif %}
{% endblock %}