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.
(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.
(focus-panel model sections)The :ui/show-panel zooming into MODEL's focused agent: its cell, then one section per lens in SECTIONS. nil when nothing is focused.
The :ui/show-panel zooming into MODEL's focused agent: its cell, 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.
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 |