[BUG] Claude Code on the web: browser tab title is always "Claude Code", never the session name
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
On Claude Code on the web (claude.ai/code), the browser tab title is the static string "Claude Code" for every session. Opening a different session from the sidebar, or a session getting its auto-generated name after the first turn, never changes document.title.
With several sessions open in separate tabs, every tab in the tab strip is identical. Chrome's tab search, browser history, and bookmarks all show the same "Claude Code" entry, so there is no way to find or switch to a specific session without clicking through each tab.
The session names do exist and are already rendered in the sidebar (see screenshot), so the data reaches the page. The app just does not write it into the tab title.
For comparison, regular claude.ai chats do this correctly: the tab title updates to the conversation name as soon as it is generated, and again on every conversation switch.
What Should Happen?
The tab title should reflect the current session, matching the behavior of claude.ai chats. For example:
<session name> - Claude Code
It should update when a session is opened via the sidebar or a direct URL, when the auto-generated name arrives after the first turn, and when a session is renamed.
Error Messages/Logs
(none, no errors; the title is simply never updated)
Steps to Reproduce
- Go to https://claude.ai/code and open any session that already has a name in the sidebar.
- Look at the browser tab. It reads "Claude Code".
- Open DevTools > Console and run document.title. It returns "Claude Code".
- Paste the following in the Console, then click a different session in the sidebar:
new MutationObserver(() => console.log('title ->', document.title))
.observe(document.querySelector('title'), { childList: true, characterData: true, subtree: true });
Nothing is logged. The <title> element is never modified on navigation.
- Open a regular chat at https://claude.ai/ in another tab and repeat step 4. Switching conversations logs a new title each time.
- Open 3 or more Code sessions in separate tabs and press Cmd+Shift+A (tab search). All entries read "Claude Code".
Claude Model
Opus
Is this a regression?
No, this never worked
Last Working Version
_No response_
Claude Code Version
Not applicable, this is the web app at claude.ai/code.
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Other
Additional Information
<img width="198" height="180" alt="Image" src="https://github.com/user-attachments/assets/2c2c40e9-5c61-4719-8ab0-b9187cf81d24" />