Goal
Make the hosted browse UI behave like a true remote shell: the web is only the interaction layer, and every major surface should target the selected backend host the same way /chat does.
Product direction
- User opens the hosted UI
- By default, the UI prefers a local backend when one is available
- User can also add/select any remote backend URL
- After a host is selected, the whole product should follow that host consistently
Why this issue exists
As of current origin/main, host-awareness is still uneven across the app.
Verified current gaps
browse-ui/src/app/search/page.tsx calls useSearch(...) without passing the selected host
browse-ui/src/app/graph/page.tsx does not wire graph tabs through shared host state
browse-ui/src/app/graph/insight-tab.tsx calls useEvidenceGraph({}), useCommunities(active), useKnowledgeInsights(), useDashboard() with default local host semantics
browse-ui/src/app/graph/communities-tab.tsx calls useCommunities(active) without an explicit selected host
browse-ui/src/app/graph/relationships-tab.tsx uses useEvidenceGraph(...) without a selected host argument
Expected
The selected host should become the canonical data source for:
- sessions
- session detail
- search
- graph (all tabs)
- insights
- settings diagnostics
- chat / operator surfaces
Acceptance shape
- one shared host-selection model
- all route-level data hooks consume it consistently
- unsupported surfaces are feature-gated by backend capabilities, not by accidental fallback to local/default host
- no page should silently drift back to LOCAL_HOST when a remote host is selected
Related issues
This should be treated as the umbrella product issue above the current hosted-remote-host bugs (#27-#34).
Goal
Make the hosted browse UI behave like a true remote shell: the web is only the interaction layer, and every major surface should target the selected backend host the same way
/chatdoes.Product direction
Why this issue exists
As of current
origin/main, host-awareness is still uneven across the app.Verified current gaps
browse-ui/src/app/search/page.tsxcallsuseSearch(...)without passing the selected hostbrowse-ui/src/app/graph/page.tsxdoes not wire graph tabs through shared host statebrowse-ui/src/app/graph/insight-tab.tsxcallsuseEvidenceGraph({}),useCommunities(active),useKnowledgeInsights(),useDashboard()with default local host semanticsbrowse-ui/src/app/graph/communities-tab.tsxcallsuseCommunities(active)without an explicit selected hostbrowse-ui/src/app/graph/relationships-tab.tsxusesuseEvidenceGraph(...)without a selected host argumentExpected
The selected host should become the canonical data source for:
Acceptance shape
Related issues
This should be treated as the umbrella product issue above the current hosted-remote-host bugs (#27-#34).