Skip to content

Persistent top-bar indicator for the conversation you are in — get back to it from anywhere #278

Description

@serge-ivo

The ask

While talking to an agent — especially hands-free — I should be able to navigate anywhere in the
console (Usage, Terminals, another agent's Board, Preferences) and still see a conversation
indicator in the top bar
, and click it to jump straight back to the agent I am talking to.

Why it is missing today

The conversation is a property of the page, not of the app. pages/InstanceDetail.tsx owns the
chat, the voice state and the mode; navigate away and the top bar (components/Layout.tsx:12,
navItems) shows only static destinations. Nothing anywhere says "you are mid-conversation with
FWS platform".

That is tolerable when you type. It is not when you are hands-free: the mic may still be live, TTS
may still be speaking, and the only way back is to remember which of a dozen agents it was and
navigate through the instance list.

What it should be

  • A persistent top-bar affordance whenever a conversation is active — agent name or icon, plus
    a state dot (listening / speaking / working). One click returns to that agent's Assistant tab.
  • Active should mean voice is engaged (tap-to-talk or hands-free) or a run started from that
    chat is still going. The second case matters: [bug] Navigating back loses 'working on it' — the run is still going and the API already reports it #252 established that a run outlives the tab, so the
    indicator is also the honest answer to "is something still happening?" from anywhere in the app.
  • Visible on mobile, where this hurts most — the instance tabs are already icon-only and
    scrollable, so this needs to be one icon, not a label.
  • It should survive route changes, which means the conversation's identity has to live above the
    page: a small app-level store (or context) holding { instanceId, name, voiceMode, runActive },
    written by InstanceDetail and read by Layout.

Interaction with the mic

Decide explicitly, because silence here is a bug either way:

  • Does navigating away keep the mic open? If yes, the indicator must show it unmistakably — a
    live mic on a page with no chat visible is a privacy surprise. If no, say so when it closes, since
    the user may still be mid-sentence.
  • Does TTS keep speaking while away? Probably yes, and that is fine — but the indicator should show
    "speaking" so the source of the voice is obvious.

Related

Verification

  • Start hands-free with agent A, navigate to Usage: the indicator shows A and its state; clicking
    returns to A's Assistant tab with the conversation intact.
  • Works on a narrow screen without pushing the existing top bar into a second line.
  • With no active conversation, the top bar is unchanged.
  • Whatever is decided about the mic, the indicator's state matches reality — never "listening" when
    the mic is closed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions