Guide
WhipWhip is a panel that overlays the web chat UIs of ChatGPT, Claude, Gemini, Grok, and Perplexity. You assemble a repeated prompt procedure once as a "Whip" — a button — and run it with a click from then on.
What it is
Opening the panel
Open any of the five supported sites and the panel comes with it.
From the keyboard it is Ctrl+Space, and that shortcut can be rebound in Settings.
Press a preset first
A fresh install starts with an empty list, but you do not have to build from scratch. The last page of the intro offers these three as cards — picking one and pressing it is the quickest way in.
- Compare AI Answers — send the question in your message box to the bots you check and see every answer together.
- Context Carry — pull the gist out of a long conversation and open a fresh chat with it.
- Prompt Polisher — turn a rough idea into a prompt.
Six more (Adversarial Refine · Insight Clipper · Prompt Library · Writing Studio · Decision War Room · Study Coach) are in the Presets gallery. If you skipped the cards in the intro, all three are there too.
Once you have pressed one, three names show up

- Whip — the button you just pressed. It runs the prompt steps you set, in order.
- WhipSet — a bundle of several Whips. The panel shows one bundle at a time, and this is also what you hand to someone else.
- Workspace — where conversation tabs are grouped. The chats you tagged are in here.
Running across tabs is the normal shape
One button runs across several chatbot tabs; running inside a single tab is the shortened form. You might have GPT's answer reviewed by Claude, or ask three bots the same question and compare.
The extension absorbs the differences between each site's markup. One capability does differ: a Whip that uses temporary chat runs that step on ChatGPT and Gemini, and skips it automatically on Claude, Grok, and Perplexity. Everything else works the same on all five.
How you build
You stack action cards in the builder. If you would rather not pick cards yourself, copy the instructions on Build with a chat and let the chat you already use write the set. The sidebar has three sections — Actions (the palette you stack from) · Tags (names you give conversations) · Variables (values captured during a run).
A tag is the role that conversation plays. Naming it also decides what that conversation is there to do.

Find the card by what you want to do — 19 of them
The table's groups are the palette's groups, so what you pick in the table you find on screen under the same name.
| What you want | In the palette group |
|---|---|
| Write a prompt and send it | Chat — write · send · ask me when the run starts |
| Read the reply and use it later | Chat — capture the reply · pull out just the part you want · wait for the answer |
| Ask again when the shape is off | Chat — check it and ask for a fix |
| Ask several AIs the same thing | Chat — send to several AIs (answers gathered in one place) |
| Put one value down | Variables — set a value |
| Collect and edit many items | Lists — add · update · patch · remove · filter |
| Go to another tab or chat | Navigation — one card per destination, split by the palette |
| Name the current conversation | Navigation — tag this chat |
| Let someone choose mid-run | Flow — offer a choice |
| Show a result | Flow — open a result window |
| Bring in a whipset a chat wrote | Flow — import a whipset (you confirm it in a preview first) |
These nineteen are everything you can build. That is also why nothing outside those nineteen can arrive inside a WhipSet someone sends you.
Where a variable's value comes from
| Where it comes from | When | Example |
|---|---|---|
| You type it | Asked when the run starts | topic · audience |
| Captured from a reply | Read out of the answer into a variable | {{var.answer}} |
| Fixed ahead of time | Baked into the set | a tone instruction |
| From another variable | Copied by name | draft → for review |
| Filled by the extension | Date, time, weekday, timestamp, UUID, language | {{var.today}} |
Worth knowing
Sharing
Lock a WhipSet and export it, and you get one long string. Locking comes first so that what you sent cannot quietly drift from what you kept editing. It is a string, not an upload, so it travels anywhere you can paste. On the receiving side, open the WhipSet list and paste it into 📥 Import: a preview comes first, so you see what is arriving before you accept it.
The extension filters on the way in. Actions you could not have built yourself, unsafe values, tag names that break the rules — if something trips it, it says why and does not accept the set.
This site is one end of that exchange. What Recipes carries is that same string, and if you have the extension the new-post page can fill a set in for you, so you never copy the string by hand. Edit a set you published and post it again, and everyone who took it sees an update waiting in their extension.
Limits
- There are no accounts. The Whips and settings you build stay in this browser and do not show up on your other devices.
- Your conversations do not leave the browser. The extension's only outbound request reads a post from the Recipes board — a post id goes out, no credentials and no conversation data.
- Only the five supported sites. This is not a macro tool that runs anywhere.
- When a chat site changes its UI things can be off for a while, and only the affected service is impacted.
The FAQ answers accounts, storage, and collection in more detail.