zcbot/web/templates/chat.html

59 lines
2.0 KiB
HTML

{% extends "base.html" %}
{% block title %}zcbot · {{ task_id_short }}{% endblock %}
{% block nav %}<a href="/">tasks</a>{% endblock %}
{% block content %}
<div class="page-head">
<h1>task <code class="mono">{{ task_id_short }}</code>
<span class="status status-{{ status }}">{{ status }}</span>
{% if mode %}<span class="badge">{{ mode }}</span>{% endif %}
</h1>
<div class="task-meta muted">
{{ n_messages }} msgs · {{ tokens }} tokens · {{ model_label }}
</div>
</div>
{% if description %}<p class="lead">{{ description }}</p>{% endif %}
{% if task_dir %}<p class="muted mono small">{{ task_dir }}</p>{% endif %}
<section class="chat">
{% for b in blocks %}
{% if b.type == "user" %}
<article class="msg msg-user">
<div class="role">user</div>
<div class="body">{{ b.html | safe }}</div>
</article>
{% elif b.type == "assistant" %}
<article class="msg msg-assistant">
<div class="role">assistant</div>
{% if b.html %}<div class="body">{{ b.html | safe }}</div>{% endif %}
{% for tc in b.tool_calls %}
<details class="tool">
<summary>
<span class="tool-badge">tool</span>
<span class="tool-name">{{ tc.name }}</span>
<span class="tool-args-preview">{{ tc.args_preview }}</span>
</summary>
<div class="tool-body">
<div class="tool-section">
<div class="tool-label">args</div>
<pre class="tool-pre">{{ tc.args_pretty }}</pre>
</div>
<div class="tool-section">
<div class="tool-label">result</div>
<pre class="tool-pre">{{ tc.result }}</pre>
</div>
</div>
</details>
{% endfor %}
</article>
{% endif %}
{% else %}
<p class="empty muted">
该 task 还没消息(只读视图)。G4 上线后从浏览器发送 / 流式回复。
</p>
{% endfor %}
</section>
<p class="muted small mt-1">G3 只读 · 发送 + SSE = G4 · 文件浏览 = G5</p>
{% endblock %}