{% from "_macros.html" import icon %} {# What the helper panel holds for one job: its head, its transcript so far, and the box to message it. Returned by `GET /api/chats/{id}/jobs/{job}`; the transcript part alone by `?part=turns`, which the transcript polls for while the job runs -- the whole body is never replaced under a half-typed message, which is why the poll lives on the turns and not on the body. Everything in `turns` is another model's words (a helper here) or came off a device: the user turns are printed as text, the assistant text went through `render_markdown`, and the tool lines are escaped by Jinja. #} {% set running = job.state == "running" %}
{{ job.description }}
{% if running %} {% endif %}