Claude Code Output Style Recovery: SessionStart Hook + Marketplace
After Claude Code removed its built-in output style feature, this uses a SessionStart hook to automatically inject a custom response style (tone / format / rules) into every session, with a local marketplace for managing, activating, and applying multiple styles.
升級後發現 Claude Code 內建 output style 不見了、你精心調的回應風格一夜蒸發?這個食譜教你用 SessionStart hook 把風格指令自動灌回每個 session,再用本地 marketplace 管理多套風格、跨專案切換。
[ Log in to see the full prompt ]Sign up free to see the full prompt, copy it, save it, and join the discussion. Free content unlocks on login; Pro content is a separate subscription.
## What This Is / What Problem It Solves Claude Code once had a built-in 'output style' feature that let you configure the format, tone, and structure of the AI's responses (for example, minimalist, technically precise, or even verse). But the official product later **deprecated the built-in output style**—after upgrading, many people found their carefully-tuned response style had vanished overnight, losing a tool for shaping how the AI communicated with them. This recipe's approach: use Claude Code's **SessionStart hook** mechanism to **automatically inject** style instructions at the start of every session, effectively bringing output style back via a hook—plus a local marketplace layer on top, so you can manage, switch between, and apply multiple styles across projects. ## Why This Source Is Worth Using Distilled from GitHawkAI/claude-code-output-style-migrator (MIT license). Its core insight is practical: an output style is fundamentally 'a block of instructions that needs to be fed to the model every single time,' and a SessionStart hook is exactly 'a hook that runs at the start of a session and injects its stdout into context'—a natural fit. Three design choices worth borrowing: (1) **a style = a folder** (`style.json` metadata + `template.md` instruction body), giving a clean structure that's version-controllable and shareable; (2) **the hook simply `cat`s the file pointed to by an 'active' symlink**—enabling/disabling/switching styles just means changing that symlink, without touching the hook itself; (3) it ships four ready-made styles (haiku / minimalist / iambic-pentameter / shakespearean) as templates to start from. It also handles cross-platform concerns (Windows / Mac / Linux). ## How to Use It (Steps / Key Points) 1. **Define a style**: each style gets its own folder containing `style.json` (name / displayName / category / keywords) and `template.md` (the actual rules to inject, e.g. 'keep every sentence under 20 words, always use active voice, define technical terms on first use, no filler words'). 2. **Write the SessionStart hook**: a bash script that `cat`s out the `template.md` of the currently active style when a session starts; that text then enters Claude's context and shapes its subsequent responses. 3. **Register the hook**: register this command hook under `hooks.SessionStart` in the project's `settings.json`. 4. **Manage multiple styles**: keep a local library (`~/.claude-styles/`) holding several styles; `activate` sets one globally, `apply` applies it to the current project (i.e., writes the hook), and `list` shows what's available. Switching styles is just repointing 'active.' 5. **Verify**: start a fresh session and check whether Claude's responses follow your rules; to revert to default, just remove the active symlink. ## When to Use It - You relied on the built-in output style before, it broke after an upgrade, and you want your fixed response format back. - You want different tones for different projects (formal for external documentation, minimalist for internal debugging). - Your team wants to share a consistent 'AI response style' under version control, rather than everyone writing their own bits into their own CLAUDE.md. Note: the hook fires **at session start**, so changes only take effect after restarting a session; and since this injects instructions into context, it does consume some token budget—keep `template.md` from getting too long. 📎 Source: GitHawkAI/claude-code-output-style-migrator (author: Claude Code Output Style Migrator Contributors, MIT license) — this piece is a Traditional Chinese adaptation; see the link above for the original.
Suno Engineer's Mindset: 4 Steps to a Song That Doesn't Sound Like AI
A studio engineer's breakdown of Suno's fatal weaknesses (fried vocals, high-frequency artifacts), plus a 4-step DAW workflow and a Suno Studio cleanup prompt.
5 Claude Weekly Workflows That Stuck After 6 Months
Proposal generator / meeting processor / content repurposer / Friday review / shutdown reset — out of 40 I tried, only these 5 survived, each saving 30+ minutes per run.