diff --git a/.changeset/fn-7651-remove-chat-title-only-toggle.md b/.changeset/fn-7651-remove-chat-title-only-toggle.md
new file mode 100644
index 0000000000..1be36da332
--- /dev/null
+++ b/.changeset/fn-7651-remove-chat-title-only-toggle.md
@@ -0,0 +1,7 @@
+---
+"@runfusion/fusion": patch
+---
+
+summary: Removed the chat "Search in title only" toggle; chat search always matches message content and title.
+category: fix
+dev: Dropped searchInTitleOnly/setSearchInTitleOnly from useChat and the ChatView toggle button; content-search path (q param, matchedMessagePreview) is now always-on. Server GET /chat/sessions titleOnly param retained but unused by the client.
diff --git a/docs/dashboard-guide.md b/docs/dashboard-guide.md
index 67abda68f9..7046357541 100644
--- a/docs/dashboard-guide.md
+++ b/docs/dashboard-guide.md
@@ -511,8 +511,8 @@ Chat view provides project-scoped conversations with agents.
- Editing is truncate-and-resend, not append: the edited message and everything after it are removed first, then the edited text is sent as a new turn through the normal streaming path — so the resulting transcript looks the same as if you had deleted the old messages and typed the correction from scratch, but in one action.
- In task-detail **Planner Chat**, editing an earlier message resumes the conversation from that point exactly as in direct chat. If the discarded turns already triggered task-scoped side effects — a steering comment added via the planner steering tool, or a refinement task created via the planner refinement tool — those **are not reverted**: the steering comment stays on the task and the refinement task stays open, because undoing either is destructive and out of scope for a chat edit. After a successful edit-and-resend, task detail refreshes automatically (so Activity/steering reflects reality), and if the discarded range held one of those confirmations you get an informational toast noting that the earlier change was not undone.
-
-- The Chat sidebar search box matches message **content** by default, not just conversation title/agent — so you can find a past conversation by remembering something that was said in it, even if the title doesn't contain the query. Content matches run as a debounced server-side lookup and are merged with local title/agent matches into the same results list. A **Search in title only** toggle beside the search box restores the original title/agent-only, fully client-side filtering behavior. The toggle is available on both desktop and mobile Chat sidebars and does not appear in the Rooms scope (Rooms already hides search/list). When a session is shown because of a content match, its row shows a subtle "Matched: ..." preview of the matching message so it's clear why the conversation appeared. Task-planner sessions stay excluded from content matches by the same common-feed guard used for the normal session list (see **Settings → Project General → Show task chats in common Chat feed**).
+
+- The Chat sidebar search box always matches message **content** in addition to conversation title/agent — so you can find a past conversation by remembering something that was said in it, even if the title doesn't contain the query. Content matches run as a debounced server-side lookup and are merged with local title/agent matches into the same results list; there is no toggle to restrict search back to title-only. This applies on both desktop and mobile Chat sidebars and does not appear in the Rooms scope (Rooms already hides search/list). When a session is shown because of a content match, its row shows a subtle "Matched: ..." preview of the matching message so it's clear why the conversation appeared. Task-planner sessions stay excluded from content matches by the same common-feed guard used for the normal session list (see **Settings → Project General → Show task chats in common Chat feed**).

diff --git a/packages/dashboard/app/components/ChatView.css b/packages/dashboard/app/components/ChatView.css
index d568a8b2fd..fdee42469f 100644
--- a/packages/dashboard/app/components/ChatView.css
+++ b/packages/dashboard/app/components/ChatView.css
@@ -272,24 +272,6 @@ When the movable chat popup is resized narrow, collapse Direct/Rooms labels to i
gap: var(--space-xs);
}
-/*
-FNXC:ChatSearch 2026-07-07-00:00:
-Compact toggle button, reusing .btn/.btn-sm so it inherits the shared button visual language
-instead of one-off styling. aria-pressed drives the active/inactive look via existing token
-colors (no hardcoded hex).
-*/
-.chat-search-title-only-toggle {
- align-self: flex-start;
- font-size: 11px;
- color: var(--text-dim);
-}
-
-.chat-search-title-only-toggle[aria-pressed="true"] {
- color: var(--text);
- border-color: var(--accent);
- background: var(--surface-hover);
-}
-
.chat-session-preview--matched {
color: var(--text-dim);
font-size: 11px;
diff --git a/packages/dashboard/app/components/ChatView.tsx b/packages/dashboard/app/components/ChatView.tsx
index fc5f922361..10870b53b4 100644
--- a/packages/dashboard/app/components/ChatView.tsx
+++ b/packages/dashboard/app/components/ChatView.tsx
@@ -494,8 +494,6 @@ export function ChatView({ projectId, addToast, floating = false, compactLayout
hasMoreMessages,
searchQuery,
setSearchQuery,
- searchInTitleOnly,
- setSearchInTitleOnly,
filteredSessions,
agentsMap: chatAgentsMap,
} = useChat(projectId, addToast);
@@ -2788,12 +2786,13 @@ export function ChatView({ projectId, addToast, floating = false, compactLayout
<>
{/* Search section */}
{/*
- FNXC:ChatSearch 2026-07-07-00:00:
- Search now matches message content by default (server round trip), not just
- title/agentId. The "Search in title only" toggle restores the prior client-only
- title/agentId behavior on demand. Rendered on both desktop and mobile since this
- sidebar markup is shared (mobile layout is a CSS breakpoint of the same DOM), and
- only within the Direct scope — Rooms already hides search/list entirely.
+ FNXC:ChatSearch 2026-07-07-12:00:
+ Search always matches message content (server round trip) in addition to
+ title/agentId; there is no client toggle to restrict it back to title-only (FN-7651
+ removed the "Search in title only" button per user request). Rendered on both desktop
+ and mobile since this sidebar markup is shared (mobile layout is a CSS breakpoint of
+ the same DOM), and only within the Direct scope — Rooms already hides search/list
+ entirely.
*/}