{% set kind = ev.event %} {% set ts = (ev.timestamp or "").split("+")[0].split("Z")[0][11:23] %} {% set depth = ev.agent_depth or 0 %}
{{ ts }}
{% if kind == 'run_start' %}▶{% elif kind == 'run_end' %}■{% elif kind == 'agent_transfer' %}⇢{% elif kind == 'tool_start' %}▸{% elif kind == 'tool_end' %}◂{% elif kind == 'llm_request' %}→{% elif kind == 'llm_response' %}←{% else %}·{% endif %}
{% if kind == 'llm_response' %} {{ ev.response_text or "" }}
{{ ev.latency_ms or 0 }}ms · {{ (ev.usage.total_tokens if ev.usage else 0) or 0 }} tokens · {{ (ev.function_calls or [])|length }} tool calls planned
{% elif kind == 'tool_start' %} tool {{ ev.tool }} {% if ev.args %}{{ ev.args | tojson }}{% endif %} {% elif kind == 'tool_end' %} tool {{ ev.tool }} → {{ ev.status }}, {{ ev.duration_ms or 0 }}ms {% elif kind == 'agent_transfer' %} transfer {{ ev.from_agent }} {{ ev.to_agent }} {% elif kind == 'tool_exception' %} tool error {{ ev.tool }} {{ ev.error_type }}: {{ ev.error_message }} {% elif kind == 'llm_error' %} llm error {{ ev.error_type }}: {{ ev.error_message }} {% elif kind == 'run_start' %} run start {% elif kind == 'run_end' %} run end {{ ev.llm_calls or 0 }} LLM · {{ ev.tool_calls or 0 }} tool · {{ ev.total_tokens or 0 }} tokens {% elif kind == 'llm_request' %} llm request {{ ev.model }} · {{ ev.message_count or 0 }} msgs · {{ (ev.tools_available or [])|length }} tools {% else %} {{ kind }} {% endif %}