Skip to content

Mobile-responsive Agent UI: touch targets, single-pane layout, virtual keyboard #895

@kovtcharov

Description

@kovtcharov

Goal

Audit and fix the Agent UI for actual mobile usability. The desktop UI shrunk to a phone-sized viewport is not a mobile experience — touch targets, single-pane layouts, virtual keyboard handling all need explicit attention.

Why this matters for consumer adoption

The tunnel (#872) gives mobile reach. The PWA (M1) gives mobile install. But if the UI itself feels like a desktop app crammed onto a phone, neither matters. Mobile-first audit is the third leg of the tripod.

Scope (1–2 PRs, v0.18.2)

A. Mobile UX audit

  • Document every Agent UI screen at 375×667 (iPhone SE — narrowest viewport we care about), 390×844 (iPhone 14), 412×915 (Pixel 7)
  • Catalog every issue: cut-off text, overlapping buttons, hidden scrollbars, sub-44pt touch targets, fixed widths
  • Output: docs/spec/agent-ui-mobile-audit.md with screenshots + per-screen issue list

B. Layout fixes — single-pane mobile collapse

  • Three-pane desktop layout (sidebar / chat / detail) collapses to single-pane stack on mobile with bottom-tab navigation OR drawer pattern
  • Sidebar (sessions, agents, MCP) becomes a slide-out drawer triggered by hamburger
  • Settings / Memory Dashboard / MCP panel become full-screen modals on mobile (not floating panels)
  • Chat input sticks to bottom; account for iOS safe-area-inset

C. Touch + keyboard handling

  • All interactive elements ≥ 44×44pt (Apple HIG minimum)
  • No hover-only interactions — everything must work on touch
  • Virtual keyboard handling: viewport adjusts; chat input stays visible above keyboard; scroll jumps fixed
  • iOS scroll bounce / over-scroll behaves correctly inside chat history

D. Mobile-specific affordances

  • Pull-to-refresh on chat history (native expectation on mobile)
  • Long-press on a message → context menu (copy, edit, delete)
  • File upload via mobile photo picker / file picker
  • Camera capture for image input (already in scope for v0.21.0 multimodal but should work via mobile browser)

E. Tests

What this is NOT

  • ❌ Not a complete UI redesign — keep the existing visual language; fix the layout
  • ❌ Not native iOS / Android apps
  • ❌ Not the PWA shell (M1)
  • ❌ Not push notifications (M4)

Acceptance criteria

Attribution / prior art

  • Apple HIG — touch target minimums, safe-area-inset handling
  • Material Design — bottom navigation patterns

Dependencies

Metadata

Metadata

Assignees

No one assigned

    Labels

    consumerBlocks consumer adoption — must ship for the v0.20.0 consumer launch windowdomain:surfacesAgent UI, Telegram, WhatsApp, Slack/Discord, mobileelectronElectron app changesenhancementNew feature or requestguiGUI / desktop applicationp1medium priorityspec-readyIssue has implementation spec adequate for coding-agent assignmenttrack:consumer-appHermes-competitor consumer product — mobile-first, voice + messaging + memory + skills

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions