Mobile Chat with Document
Mobile Chat with Document — Motivation
Reader's Ghostreader on mobile is buried — three taps to access, one-off prompts only, no follow-up questions. Meanwhile, chatting with documents is becoming table stakes for AI-powered reading apps. A native mobile chat experience would reduce access from three taps to one, enable real conversations with documents, and position Readwise/Bookwise on the AI hype wave. The infrastructure also enables future features like Deep Research, recommendations, and improved search.
Mobile Chat with Document — Shape
Entered Shape: 2025-05-30 · Owner: @kris
Key Decisions
- Dan initiated mobile-specific design direction (May 2025) with strong opinions: UI should be a text input box (not just a ghost icon), chat should live in a sheet overlay.
- Kris iterated through 3 rounds of toolbar designs (Aug 2025) — explored ghost icon vs. centered input bar vs. small corner input. Landed on centered input bar for long-form, de-emphasized per Tristan's feedback.
- "Modern" vs "Classic" toolbar layout setting — users can opt into the new Ghostreader-forward toolbar or keep the old one.
- Consolidated Ghostreader Figma files into single file (Dec 2025).
- Final spec completed Jan 2026 with detailed Notion page and Loom walkthrough covering settings, document-level chat, passage/phrase-level chatting, fast triage menu, tablet designs.
- Reader-first — Bookwise translation done separately (Feb 2026).
- Native animations and gestures preferred over web view for performance.
Scope
- Native mobile chat sheet with smooth open/close/resize gestures.
- New toolbar layout with "ask anything" input box for both short-form and long-form reading views.
- Fast triage menu (replacing individual triage buttons).
- Preset prompt suggestions.
- Integration with Ghostreader backend (hybrid search, document tools).
- Both iOS and Android, phone and tablet.
- Bookwise and Reader variants.
Appetite
Medium-large — extended shaping (May 2025 - Jan 2026) due to multiple design rounds and product alignment. Multiple engineers for build (Artem, Adam, Piotr).
Mobile Chat with Document — Build (WIP)
This document is underway while the project is in Build. It will be finalized when the stage completes.
Entered Build: 2025-12-03 · Owner: @adam · Initiative: rw-projects
Goal
Ship a native mobile chat-with-document experience in Reader (and Bookwise) with smooth animations, native gestures, and the full Ghostreader tool suite.
What's been done
- Adam shipped initial mobile chat sheet (Dec 3, reverted, re-landed Dec 5 as internal MVP).
- Adam added internal link support for mobile chat (Dec 18). Ibai improved PDF link matching.
- Adam implemented chat sheet states with @gorhom/bottom-sheet (Jan 30).
- Artem built fully native chat sheet replacement with gestures and animations (Feb 24) — pivot from gorhom to native for better performance.
- Kris provided design feedback and iterated on spacing, transitions, Bookwise styling.
- Piotr shipped staff-only Global Ghostreader web preview with hybrid search tool (Mar 23).
- Piotr wired up X-Ray document search (Mar 18), added list_documents tool, agentic tool abstraction.
- Piotr built document-level chat panel for web (Mar 30).
- React Native 0.81 upgrade merged, unblocking Artem's native ghostreader branch.
- Artem updated
artem/native-ghostreader-rn81branch for Adam (Apr 10). - Dedicated #rp-mobile-chat-with-document channel created (Apr 12).
- Piotr ported MCP2 tools into Global Ghostreader Chat (Apr 14).
What's in progress
- Adam merging Artem's native sheet work with his own refactored code.
- Piotr working on V2 single-document chat backend with additional tools.
- Cold-state UI for chat panel (recent conversations, conversations with this document) — PR #8843 open.
What's not done yet
- Final polish on open/close/resize animations.
- Preset prompt UX refinement.
- Voice-to-text input for chat.
- Tablet-specific layout.
- Non-staff rollout.
Open Questions (for next stage)
- How should GFM elements (tables, code blocks) render in chat responses?
- Should preset prompts be hideable?
- How to handle chat when offline (currently shows "chat not connected" popup)?
- What tools from the CLI/MCP should be included in Ghostreader vs. kept out to manage context size?
| Date | Summary |
|---|---|
| 2026-04-15 | Piotr opened PR #8843 for Global Ghostreader feature flag and cold-state conversations card. |
| 2026-04-12 | Dedicated #rp-mobile-chat-with-document channel created. |
| 2026-04-10 | Artem updated native-ghostreader-rn81 branch after RN 0.81 merge. |
| 2026-03-27 | GFM rendering discussion, tool selection for Ghostreader, "Add to Doc" button spec. |
| 2026-03-23 | Piotr shipped staff-only Global Ghostreader web preview. Dan's first usage was compelling. |
| 2026-03-16 | Artem shared native ghostreader branch setup instructions for Adam. |
| 2026-03-04 | Kris finalized Bookwise Ghostreader styles. Voice-to-text idea discussed. |
| 2026-02-25 | Kris provided detailed design feedback on native sheet. Adam tested on Android. |
| 2026-02-24 | Artem demoed fully native chat sheet — pivot from gorhom to native for better perf. |
| 2026-02-20 | Kris began translating Ghostreader design to Bookwise. Scope decisions finalized. |
| 2026-01-30 | Adam merged chat sheet states with @gorhom/bottom-sheet (PR #7982). |
| 2026-01-13 | Final design spec completed — Notion page with Loom walkthrough and all UI flows. |
| 2025-12-18 | Adam + Ibai merged chat internal links and PDF link matching improvements. |
| 2025-12-16 | Kris consolidated multiple Ghostreader Figma files into a single file (web + mobile). |
| 2025-12-05 | Adam re-landed mobile Ghostreader chat as document-level internal MVP (PR #7499). |
| 2025-12-03 | Adam merged first mobile chat sheet (PR #7468), reverted same day. Entered Build. |
| 2025-08-13 | Kris completed Rounds 1-3 of mobile toolbar designs. Dan + Tristan feedback, landed on centered input bar. |
| 2025-06-25 | Kris finished Ghostreader V3 mobile Figma, moved to "ready for spec." Model picker discussion. |
| 2025-06-18 | Kris shared three toolbar customization options in Notion. |
| 2025-06-16 | Kris shared design queue — Ghostreader V3 toolbar customization at top priority. |
| 2025-05-30 | Dan's "Ghostreader v3 Mobile Feedback" Loom — strong opinions on text input box, sheet-based chat. Tristan aligned. |