VS Code: terminal tabs show the version number ("2.1.294") and lose custom names on reload
What happens
With claudeCode.useTerminal: true, every Claude Code terminal tab in VS Code is labeled with the version number (for example 2.1.294) instead of anything that identifies the session. With several sessions open, the tabs all look the same.
Renaming a tab by hand doesn't help for long. After Developer: Reload Window, the custom names are gone and every tab shows 2.1.294 again.
<img width="309" height="75" alt="Image" src="https://github.com/user-attachments/assets/8bcb774d-0125-43b6-afe9-32de71578f81" />
Why
VS Code's default terminal.integrated.tabs.title is ${process}, and the process name of the native Claude Code binary is its version string. Claude Code already sends a useful terminal title (the session topic) through the title escape sequence, but VS Code ignores it under the default setting.
Workaround that works
Adding this to user settings fixes it, and the names come back by themselves after a reload because Claude Code sends the title again:
"terminal.integrated.tabs.title": "${sequence}${separator}${process}"
Tabs then read like this after a reload:
✳ Impaqx client portal dark mode - 2.1.294
2.1.294
✳ VS Code tab names not persisting after...
The middle tab is a session that hasn't sent a title yet, so it still falls back to the bare version number.
Request
Make this work out of the box for the VS Code extension. Some options:
- Give the terminals the extension opens a title that follows the session title (for example by creating them with a name, or by updating the name when the session title changes).
- Or set the process title to something readable, like
claude, instead of the version number. - Or, failing those, document the setting above in the VS Code integration docs.
Environment
- Claude Code / VS Code extension: 2.1.294 (darwin-arm64)
- VS Code: 1.133.0
- macOS 26.5.2
- Settings:
claudeCode.useTerminal: true,claudeCode.preferredLocation: "panel"