{% from "_spend_shapes.html" import split_cell, spark_cell %} {% if not has_subagents %}

No subagents in this session.

{% elif subagents_ctx and subagents_ctx.get('error') %}

Error building subagents view: {{ subagents_ctx.error }}

{% elif not subagents_ctx or not subagents_ctx.has_data %}

No subagents in this session.

{% else %}

{{ subagents_ctx.subagent_count }} subagent invocation{{ 's' if subagents_ctx.subagent_count != 1 else '' }} · session total {{ subagents_ctx.total_cost }}

Cost split: cache read cache write output

{% for row in subagents_ctx.rows %} {{ split_cell(row.split) }} {{ spark_cell(row.spark) }} {% endfor %}
# Agent Model Duration User Asst Tools Read Edited Read Only Outside Skills Cost Cost split Spend shape % of session Cumulative %
{{ row.rank }} {% if row.is_main %} {{ row.label }} {% else %} {{ row.label }} {% endif %} {{ row.model }} {{ row.duration }} {{ row.user_msgs }} {{ row.asst_msgs }} {{ row.tool_count }} {{ row.files_read }} {{ row.files_edited }} {{ row.files_read_only }} {{ row.files_outside }} {% if row.skills %} {{ row.skills | join(', ') }} {% else %} — {% endif %} {{ row.cost }}{{ "%.1f"|format(row.pct) }}% {{ "%.1f"|format(row.cum_pct) }}%
{% endif %}