[BUG] Plugin-provided output style appears in /config picker but is never applied to sessions (2.1.202)

Resolved 💬 2 comments Opened Jul 7, 2026 by santhoshsram Closed Jul 11, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet (closest is #64914, closed stale/NOT_PLANNED, but that reported a discovery failure; this one is an activation failure - see below)
  • [x] This is a single bug report
  • [x] I am using the latest version of Claude Code (2.1.202)

What's Wrong?

A plugin-provided output style is discovered correctly - it appears in the /config output-style picker and is set as "outputStyle": "Sharp" in ~/.claude/settings.json - but it never takes effect: the style's instructions are not injected into the session system prompt. Sessions run with the default style, with no warning.

Setup (all verified correct per https://code.claude.com/docs/en/output-styles.md):

  • ~/.claude/settings.json has "outputStyle": "Sharp" and the plugin enabled: "output-styles@santhosh-claude-plugins": true
  • Style file at the plugin root: ~/.claude/plugins/cache/santhosh-claude-plugins/output-styles/1.4.0/output-styles/sharp.md
  • Frontmatter name: Sharp matches the settings value exactly (case included); keep-coding-instructions: true
  • Plugin manifest .claude-plugin/plugin.json is valid; the same plugin's other content loads fine
  • No project/local settings override outputStyle (checked all scopes)
  • The style shows up in the /config picker, so plugin discovery itself works

Observed:

  • Sessions behave exactly like the default output style; over a long multi-turn session none of the style's distinctive instructions (terse/telegraphic replies) show any effect
  • No warning or error about the style failing to load - it fails silently

Distinct from #64914: there the plugin style never reached the /config picker (discovery failure) and was closed stale without a fix. Here discovery succeeds; activation/injection is what fails. Possibly the same underlying resolution code, but the observable defect is different.

What Should Happen?

  • A plugin-provided style selected via /config or the outputStyle setting is injected into the session system prompt at session start, same as a style in ~/.claude/output-styles/
  • If injection fails (file unreadable, name unresolvable at boot, etc.), Claude Code emits a visible warning instead of silently running the default style

Steps to Reproduce

  1. Install a plugin whose root contains output-styles/sharp.md with valid frontmatter (name: Sharp, keep-coding-instructions: true)
  2. Enable it in enabledPlugins; confirm the style appears in the /config output-style picker; set it (settings show "outputStyle": "Sharp")
  3. Start a new session
  4. The session runs with the default style; the plugin style's instructions have no effect; no warning is printed

Environment

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗