diff --git a/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx b/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx index d3a4ff81e015..acf0e01609e2 100644 --- a/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx +++ b/packages/opencode/src/cli/cmd/tui/routes/session/index.tsx @@ -1312,6 +1312,8 @@ function AssistantMessage(props: { message: AssistantMessage; parts: Part[]; las const local = useLocal() const { theme } = useTheme() const sync = useSync() + const command = useCommandDialog() + const [hover, setHover] = createSignal(false) const messages = createMemo(() => sync.data.message[props.message.sessionID] ?? []) const final = createMemo(() => { @@ -1346,11 +1348,18 @@ function AssistantMessage(props: { message: AssistantMessage; parts: Part[]; las }} x.type === "tool" && x.tool === "task")}> - - - {keybind.print("session_child_first")} - view subagents - + + setHover(true)} + onMouseOut={() => setHover(false)} + onMouseUp={() => command.trigger("session.child.first")} + backgroundColor={hover() ? theme.backgroundElement : undefined} + > + + {keybind.print("session_child_first")} + view subagents + + @@ -1953,10 +1962,6 @@ function WebSearch(props: ToolProps) { } function Task(props: ToolProps) { - const { theme } = useTheme() - const keybind = useKeybind() - const { navigate } = useRoute() - const local = useLocal() const sync = useSync() onMount(() => {