mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
feat(panel): dense tooltip pass — org surfaces + layout chrome (253 tips)
Every sidebar destination, metric derivation, sortable column, queue action, and dialog control explains itself; mobile tab bar shares the sidebar's descriptions so the two nav surfaces can't drift.
This commit is contained in:
@@ -15,6 +15,7 @@ import {
|
||||
DialogDescription,
|
||||
} from "@/components/ui/dialog";
|
||||
import { DropdownMenuItem } from "@/components/ui/dropdown-menu";
|
||||
import { HelpTip } from "@/components/ui/help-tip";
|
||||
import { Play } from "lucide-react";
|
||||
import { toast } from "sonner";
|
||||
|
||||
@@ -70,10 +71,12 @@ export function SpawnAgentDialog({
|
||||
};
|
||||
|
||||
const defaultTrigger = (
|
||||
<DropdownMenuItem onSelect={(e) => e.preventDefault()}>
|
||||
<Play className="h-4 w-4 mr-2" />
|
||||
Spawn
|
||||
</DropdownMenuItem>
|
||||
<HelpTip label="Start this agent's container, optionally pre-claiming a task" side="left">
|
||||
<DropdownMenuItem onSelect={(e) => e.preventDefault()}>
|
||||
<Play className="h-4 w-4 mr-2" />
|
||||
Spawn
|
||||
</DropdownMenuItem>
|
||||
</HelpTip>
|
||||
);
|
||||
|
||||
return (
|
||||
@@ -88,7 +91,9 @@ export function SpawnAgentDialog({
|
||||
</DialogHeader>
|
||||
<div className="space-y-4">
|
||||
<div className="space-y-2">
|
||||
<Label htmlFor="taskId">Task ID (optional)</Label>
|
||||
<HelpTip label="Pre-claims this task on spawn instead of pulling from the pool">
|
||||
<Label htmlFor="taskId" className="w-fit">Task ID (optional)</Label>
|
||||
</HelpTip>
|
||||
<Input
|
||||
id="taskId"
|
||||
value={taskId}
|
||||
@@ -97,7 +102,9 @@ export function SpawnAgentDialog({
|
||||
/>
|
||||
</div>
|
||||
<div className="space-y-2">
|
||||
<Label htmlFor="initialPrompt">Initial Prompt (optional)</Label>
|
||||
<HelpTip label="Extra instructions passed to the agent's first turn">
|
||||
<Label htmlFor="initialPrompt" className="w-fit">Initial Prompt (optional)</Label>
|
||||
</HelpTip>
|
||||
<Input
|
||||
id="initialPrompt"
|
||||
value={initialPrompt}
|
||||
@@ -106,12 +113,18 @@ export function SpawnAgentDialog({
|
||||
/>
|
||||
</div>
|
||||
<div className="flex justify-end gap-2">
|
||||
<Button variant="outline" onClick={() => setOpen(false)}>
|
||||
Cancel
|
||||
</Button>
|
||||
<Button onClick={handleSpawn} disabled={spawnAgent.isPending}>
|
||||
{spawnAgent.isPending ? "Spawning..." : "Spawn Agent"}
|
||||
</Button>
|
||||
<HelpTip label="Closes without spawning">
|
||||
<Button variant="outline" onClick={() => setOpen(false)}>
|
||||
Cancel
|
||||
</Button>
|
||||
</HelpTip>
|
||||
<HelpTip label="Already-running agents are skipped — no duplicate container is started">
|
||||
<span>
|
||||
<Button onClick={handleSpawn} disabled={spawnAgent.isPending}>
|
||||
{spawnAgent.isPending ? "Spawning..." : "Spawn Agent"}
|
||||
</Button>
|
||||
</span>
|
||||
</HelpTip>
|
||||
</div>
|
||||
</div>
|
||||
</DialogContent>
|
||||
|
||||
Reference in New Issue
Block a user