Skip to content

feat(web): in-session message content search - #1762

Draft
heavygee wants to merge 33 commits into
tiann:mainfrom
heavygee:feat/in-session-content-search
Draft

heavygee wants to merge 33 commits into
tiann:mainfrom
heavygee:feat/in-session-content-search

Conversation

@heavygee

@heavygee heavygee commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Adds in-session message search (header magnifier / Ctrl+Cmd+Shift+F): ranked FTS hits for the open conversation, pick a result, jump to that turn.
  • Reuses the session-scoped FTS API and jump/highlight path from feat(web,hub): add opt-in search for session message content #1598 (GET /api/sessions/:id/content-search).
  • Hit cards: role, relative age, query marks, two-line character-window excerpts (sidebar Content snippets stay terse).

Depends on

Blocked by / stacks on #1598 (sidebar Content search + FTS index). This branch is based on that PR tip so CI can exercise the shared APIs. Until #1598 merges, the file list vs main also includes #1598 — please review the delta with:

techotaku39:feat/session-content-search...heavygee:feat/in-session-content-search

Test plan

  • With feat(web,hub): add opt-in search for session message content #1598 (or this stacked tip): open a long session → header search → type ≥2 chars → pick a hit → lands on the matching message with highlight / prev-next
  • Sidebar Content search still finds sessions by message text
  • Ctrl/Cmd+Shift+F opens in-session search; browser Ctrl/Cmd+F unchanged
  • bun run --cwd web test -- SessionInChatSearch highlightSearchSnippet SessionHeader.test
  • bun run --cwd hub test -- messageContentSearch

Issues

Fixes #1756

Related: #1554 / #1598

…search

# Conflicts:
#	cli/src/agent/messageConverter.ts
#	hub/src/store/index.ts
#	hub/src/store/messages.test.ts
#	hub/src/store/messages.ts
#	hub/src/store/migration-v13.test.ts
#	hub/src/store/migration-v15.test.ts
#	hub/src/store/migration-v18.test.ts
#	hub/src/store/migration-v19.test.ts
#	hub/src/store/migration-v20.test.ts
#	hub/src/store/migration-v23.test.ts
#	hub/src/store/migration-v24.test.ts
#	shared/src/messages.test.ts
#	shared/src/messages.ts
#	web/src/components/SessionList.tsx
…search

# Conflicts:
#	web/src/lib/assistant-runtime.ts
techotaku39 and others added 2 commits August 23, 2026 19:11
Add a header find-in-conversation control that reuses session-scoped FTS
and the message jump / prev-next locate path from tiann#1598. Hit cards show
role, age, query marks, and a two-line excerpt window.

Fixes tiann#1756

Co-authored-by: Cursor <cursoragent@cursor.com>
Upstream FueCallout / useFue lack disableAllFue and onSecondaryAction;
keep the tip typecheck-clean when stacked on tiann#1598.

Co-authored-by: Cursor <cursoragent@cursor.com>
@heavygee heavygee added area:cli CLI, runner, agent wrappers area:web Web PWA / React client enhancement New feature or request platform:mobile Mobile PWA / companion labels Sep 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:cli CLI, runner, agent wrappers area:web Web PWA / React client enhancement New feature or request platform:mobile Mobile PWA / companion

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(web): in-session message search (ranked FTS jump, not a session-list filter)

2 participants