Watch
0
0
Fork
You've already forked hyperhive
0

swarm-ui: a maximize button on each pane of a terminal group opens that agent's own terminal

This commit is contained in:
iris 2026-11-05 12:35:32 +01:00
commit 5665bbf827
2 changed files with 11 additions and 1 deletions

View file

@ -166,7 +166,8 @@ a group of the two, with its own header tab at `/agents/group/<id>`. In a group,
the same drag onto a pane splits that pane, as many times as you like, and
dragging a pane's header badge onto another pane moves it there. The **split**
button in a pane's header does the same for an agent whose terminal tab is open:
**right** or **below** puts it beside the pane. The **×** takes the pane's
**right** or **below** puts it beside the pane. **maximize** opens that
agent's own terminal in its tab, or goes to the tab when one is open already. The **×** takes the pane's
agent out of the group, and a group left with one agent goes, landing on that
agent's own terminal. Drag a divider to resize, or focus it and use the arrow
keys. Panes have no minimum size; a divider stops at 2% so a pane can't

View file

@ -10,6 +10,7 @@
import { useEffect } from "preact/hooks";
import { useLocation, type RouteComponentProps } from "wouter-preact";
import { Badge } from "@hive/shared/badge.js";
import { ExpandIcon } from "@hive/shared/icons.js";
import { AgentIcon } from "../../agent/AgentIcon.js";
import {
AgentTermPreview,
@ -158,6 +159,14 @@ export function AgentGroupPage({
groups.update(id, (r) => splitPane(r, agent, other, side))
}
/>
<Badge
icon={<ExpandIcon />}
value="maximize"
title={`open ${agent}'s terminal on its own`}
onClick={() =>
open({ href: termPaths(agent).page, label: agent })
}
/>
<Badge
variant="quiet"
value="×"