GridModel -> hive-vessel ops, pure. One :ui/show-panel per tab with
panel id "olympus/tab-N" (1-based) and a Doc of standard blocks
(:heading, :para with tone, :fields). delta turns two renders into the
minimal op batch: closes for vanished panels, then the panels that changed.
The contract is the op shape; there is no compile dependency on hive-vessel.
GridModel -> hive-vessel ops, pure. One `:ui/show-panel` per tab with panel id "olympus/tab-N" (1-based) and a Doc of standard blocks (:heading, :para with tone, :fields). `delta` turns two renders into the minimal op batch: closes for vanished panels, then the panels that changed. The contract is the op shape; there is no compile dependency on hive-vessel.
(activity-blocks {:agent/keys [recent]})The focused AGENT's recent log under its own heading, newest first, or nothing when the roster source told us none. Grid cells never show this: the log is what the zoom is for.
The focused AGENT's recent log under its own heading, newest first, or nothing when the roster source told us none. Grid cells never show this: the log is what the zoom is for.
(agent-fields {:agent/keys [id mode project parent drones done task activity
seen]
:as agent})The [label value] rows AGENT can fill, in reading order; absent facts are omitted rather than shown empty.
The [label value] rows AGENT can fill, in reading order; absent facts are omitted rather than shown empty.
(cell-blocks {:cell/keys [row col agent focused?]})Blocks for one grid cell: heading, toned status para, fields.
Blocks for one grid cell: heading, toned status para, fields.
(delta previous current)Ops that move a vessel showing PREVIOUS (a panels vector, nil when nothing was delivered) to CURRENT: a :ui/close-panel per panel id that vanished, then every CURRENT panel absent from or different in PREVIOUS. Empty when nothing changed.
Ops that move a vessel showing PREVIOUS (a panels vector, nil when nothing was delivered) to CURRENT: a :ui/close-panel per panel id that vanished, then every CURRENT panel absent from or different in PREVIOUS. Empty when nothing changed.
(exchange-blocks {:keys [turn role text tools clipped? length score]})One exchange as blocks: a heading naming the turn and the speaker, the message body, and the tools that turn called.
One exchange as blocks: a heading naming the turn and the speaker, the message body, and the tools that turn called.
(focus-panel model sections)The :ui/show-panel zooming into MODEL's focused agent: its cell, its recent activity, then one section per lens in SECTIONS. nil when nothing is focused.
The :ui/show-panel zooming into MODEL's focused agent: its cell, its recent activity, then one section per lens in SECTIONS. nil when nothing is focused.
Panel id of the zoom into the focused agent.
Panel id of the zoom into the focused agent.
(panel-id index)Panel id of the tab at zero-based INDEX.
Panel id of the tab at zero-based INDEX.
(panels {:grid/keys [tabs counts routes]})One :ui/show-panel op per tab of MODEL, in tab order.
One :ui/show-panel op per tab of MODEL, in tab order.
(routes-text routes)"routes: venice/deepseek-v4-flash x2, axon/glm-5.3" for ROUTES, or nil.
"routes: venice/deepseek-v4-flash x2, axon/glm-5.3" for ROUTES, or nil.
(summary {:keys [total working blocked error idle spawning]})Header count text, e.g. "5 agents: 2 working, 1 blocked, 0 error, 2 idle".
Header count text, e.g. "5 agents: 2 working, 1 blocked, 0 error, 2 idle".
(tab-blocks tab n-tabs)(tab-blocks {:tab/keys [active? cells]} n-tabs routes)Blocks for TAB of N-TABS under the swarm-wide ROUTES.
Blocks for TAB of N-TABS under the swarm-wide ROUTES.
(title counts index n-tabs)Panel title for the tab at INDEX of N-TABS.
Panel title for the tab at INDEX of N-TABS.
(transcript-panel {:keys [agent-id exchanges total query error note truncated?]
shown :count
:as answer})The :ui/show-panel showing ANSWER, the transcript port's reply about one
agent. An error is a panel too: an observer who asked a question has to
see why nothing came back.
The `:ui/show-panel` showing ANSWER, the transcript port's reply about one agent. An error is a panel too: an observer who asked a question has to see why nothing came back.
Panel id of the transcript an observer opened on purpose.
Panel id of the transcript an observer opened on purpose.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |