The Claude Code workflow problem
If you use Claude Code every day, you've got a handful of prompts you send constantly. "Make a comprehensive plan and put my full message in it verbatim." "Do a review pass and look for nuances I forgot." "Check the schemas and variable types before we continue."
These aren't one-liners. The ones that actually change the output are two or three paragraphs with specific instructions. You wrote them once, nailed the wording, and now you need them fast.
The problem is that Claude Code itself doesn't have a prompt library.
The options you've got
There are four places people try to keep these:
- A scratch file. Usually called
prompts.mdand opened in whatever editor is nearest. Works until the file gets disorganized. - Scrolling back through Claude Code history. Finds last week's prompt, fails to find last month's.
- Claude Code's slash commands. Great for frequent flows you can templatize. Awkward for ad-hoc prompts you want available in any tool.
- A prompt manager. This is what Refrain is for.
How Refrain fits the Claude Code loop
Refrain puts your prompt list in the menu bar. You're in a Claude Code session, you want to run your "final review pass" prompt, you hit the menu bar icon, click the prompt, paste. Four seconds.
A few things matter for Claude Code specifically:
Long prompts, kept intact
The prompts that produce good results are multi-paragraph. Refrain stores and copies them as-is, whitespace and line breaks preserved. No field truncation, no autoformat surprises.
A starter set tuned for Claude Code
Refrain ships with 13 default prompts. Here's the short version of what's in there:
- make-comprehensive-plan โ capture the request verbatim and plan against every line.
- review-pass-nuances โ second pass, looking for the things you forgot.
- final-review-pass โ a thorough check before you actually start building.
- check-specifics-schemas โ catch field-name and variable-type drift.
- identify-missing-details โ flesh out the UI, UX, and technical bits you haven't figured out yet.
- continue-track-progress โ keep going, updating a progress file as you work.
- Plus six more in the same family. All editable, all deletable on day one.
External edits, live reload
Refrain stores everything in a single markdown file at a path you pick. Edit it in Vim or VS Code. Refrain notices and reloads. If you already keep coding notes in your editor of choice, prompts are just more of the same.
Claude Code slash commands vs Refrain
These are complements, not substitutes. Slash commands are great when a prompt belongs to a specific repo and can take arguments. Refrain is better when the prompt is global: you want it across every repo, every session, and also available in ChatGPT, Cursor, and the Claude desktop app.
The rule of thumb I use:
- Lives in one repo, parameterized? Slash command.
- Lives in your head across all work? Refrain.
Sync across machines
Refrain's storage is one file. If you put it in your Dropbox or iCloud Drive folder, every Mac you own picks it up. Switch laptops during the day, your prompts follow. No account to create.
A suggested setup
This is the setup I'd recommend for a Claude Code power user:
- Install Refrain. Point its file at
~/Dropbox/refrain-prompts.mdor equivalent. - Keep the 13 defaults for a week. Delete the ones you don't touch. Add your top five personal ones.
- For anything repo-specific, write it as a Claude Code slash command instead. Let Refrain hold the global stuff.
- Assign the Refrain hotkey if you want truly zero-mouse access.
That's it. The whole thing should take under ten minutes and save you that much time every day.