[BUG] Claude Preview auto-launch ignores user intent — opens on every HTML edit even after being dismissed
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?
The Claude Preview panel auto-opens every time an HTML file is written or edited. This used to respect when it was closed/dismissed, but now it re-opens on every single edit regardless of whether I've told Claude not to, dismissed the panel, or closed it manually.
Additionally, each auto-open fires a PostToolUse:Edit system-reminder injected into the live chat ("… is now visible in the Launch preview panel") that appears while I'm typing the next message, interrupting input.
This is not a user-configurable hook — verified by searching:
~/.claude/settings.json, project .claude/settings.json, .claude/settings.local.json — no relevant hooks
All plugin hooks.json files — no references
claude mcp list — no servers
It's a built-in runtime behavior with no settings.json schema option to disable it.
Requests:
Respect the dismissed/closed state — if the user closes the preview or asks Claude not to open it, don't re-launch on subsequent edits
Add a setting (e.g. disablePreviewPanel: true) to opt out entirely
At minimum, suppress the system-reminder text so it doesn't interrupt input mid-typing
What Should Happen?
What Should Happen:
The preview panel should respect the user's dismissed/closed state — once I close it, it should stay closed until I explicitly reopen it
There should be a setting (e.g. disablePreviewPanel: true in settings.json) to opt out of auto-launch entirely at the project or user level
The PostToolUse:Edit system-reminder text ("… is now visible in the Launch preview panel") should not be injected into the live chat stream — it interrupts typing and clutters the transcript with no actionable information for the user
If Claude is explicitly told not to open the preview in a given session, that instruction should be honored for the rest of the session
Error Messages/Logs
Steps to Reproduce
Open Claude Code v2.1.107 in a project containing any .html file
Ask Claude to make an edit to an HTML file (e.g. "change the heading text in page.html")
Observe: the Claude Preview panel opens automatically and a PostToolUse:Edit system-reminder appears in the transcript saying the file is "visible in the Launch preview panel"
Close or dismiss the preview panel
Ask Claude to make another edit to the same (or any) HTML file
Expected: preview stays closed because the user dismissed it
Actual: preview re-opens automatically and the system-reminder fires again, injected into the chat stream mid-typing
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.107
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
Additional context:
Happens on every single HTML edit in the session
No hook configured by the user triggers this (verified across user/project/local settings + all plugin hooks.json files + claude mcp list)
Behavior previously respected the dismissed state — changed recently to always auto-open
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗