{% extends "ui/base_ui.html" %} {% block title %}{{ agent.name }} — ATP Platform{% endblock %} {% block content %}

{{ agent.name }} {{ agent.version }}

{% if error %}
Error: {{ error }}
{% endif %} {% if new_token %}
Token created — copy it now, it will not be shown again
{{ new_token }}
Save this value in a secure place (password manager, CI secret). Once you leave this page, only the prefix {{ new_token[:12] }}... will be visible.
{% endif %}
Agent Info
Type: {{ agent.agent_type }}
Created: {{ agent.created_at.strftime('%Y-%m-%d %H:%M') }}
{% if agent.description %}

{{ agent.description }}

{% endif %} {% if agent.config %}
Config (JSON)
{{ agent.config | tojson(indent=2) }}
{% endif %}
API Tokens
New Token
{% if tokens %} {% for t in tokens %} {% set is_revoked = t.revoked_at is not none %} {% set is_expired = t.expires_at and t.expires_at < now %} {% endfor %}
NamePrefixExpires Last UsedStatusActions
{{ t.name }} {{ t.token_prefix }}... {{ t.expires_at.strftime('%Y-%m-%d') if t.expires_at else 'never' }} {{ t.last_used_at.strftime('%Y-%m-%d %H:%M') if t.last_used_at else '—' }} {% if is_revoked %}revoked{% elif is_expired %}expired{% else %}active{% endif %} {% if not is_revoked %}
{% else %} — {% endif %}
{% else %}

No tokens for this agent.

{% endif %}
{% if tournament_history %}
Tournament History
{% for p in tournament_history %} {% endfor %}
TournamentStatusScoreJoined
Tournament #{{ p.tournament_id }} {{ p.tournament_status }} {{ p.total_score if p.total_score is not none else '—' }} {{ p.joined_at.strftime('%Y-%m-%d %H:%M') }}
{% endif %} {% endblock %}