Creating plugins
Build a plugin in three steps — AI scaffolds the JSON from one sentence. Publish to the marketplace and earn 5% commission on every chat that uses it.
You don't need to be a developer to ship a plugin on Reverie. The plugin editor is visual; the AI assistant writes the underlying configuration from a sentence; the preview pane lets you test it before publishing.
The three-step editor
Describe your plugin in one sentence
From the home screen: + Create → Plugin. The first screen asks: what should this plugin do?
"Add a stress meter that goes up when bad things happen and down when the character comforts the user."
Submit. The AI scaffolds the entire plugin — type, fields, prompt injection, UI — based on your sentence.
Refine in the editor
The visual editor shows you what the AI built. You can:
- Edit the prompt injection (what gets added to the model)
- Adjust the UI (buttons, cards, forms)
- Switch type (prompt → interactive, etc.)
- Add example outputs to guide the model
- Configure permissions (for tool plugins)
For deeper customisation, the JSON view lets you edit the raw plugin spec directly.
Preview live
The preview pane runs your plugin against a test character so you can see the actual effect on a real chat. Iterate until it feels right.
The four plugin types — building each
Prompt-injection plugin
The simplest type. The plugin's "body" is a snippet of text injected into the system prompt while active.
Keep prompt injections short and specific. Long, prescriptive ones override the character's personality.
Tool plugin
The plugin declares a function the character can call. When the model decides to invoke it, the plugin runs your declared code (or an HTTP request to your endpoint) and returns a result the character incorporates into their reply.
Tool plugins require an active third-party API and may need your own API key set in Settings → Plugin permissions.
Tuning plugin
A behaviour-dial — a labelled toggle that injects a paired prompt when on:
Useful for things users want to dial in/out on a per-chat basis.
Interactive plugin
The richest type. Defines:
- UI elements — buttons, cards, forms, selectors
- What each element does — typically inject a system message or call the model with a templated prompt
Example: a Time skip button that, when pressed, sends a system message to the model: "Six hours pass. The scene continues with both characters in a different setting."
The AI scaffolder is best at interactive plugins — it'll write the buttons and the corresponding actions in one pass.
Publishing
Test in your own chats
Before publishing, run your plugin on at least 3-5 different chats with different characters. Things that work great on one character often break on another.
Set visibility
In the plugin settings, choose:
- Private — only you can use it
- Character-locked — only your specific character can use it
- Public — anyone can find it in the marketplace
Submit for review
Public plugins go through a quality and safety review. We're checking for:
- Stable behaviour (doesn't crash chats)
- Doesn't leak prompts that override character identity
- Tool plugins use declared APIs responsibly
- No spam, abuse, or content-policy violations
Publish
Approved plugins appear in the marketplace immediately. They start earning commission on day one.
Earning from plugins
You earn 5% commission on every credit consumed in a chat where your plugin is active. Settlement is monthly, automatic, in platform credits.
The commission compounds with reach. A plugin used in 1,000 chats × 500 credits/message × 50 messages/chat × 5% = 1.25M credits/month per 1k active users. Top plugin authors comfortably cover all their platform spending from commission alone.
Tips
- Solve a real friction. The best plugins emerged from a specific annoyance ("I wish I could skip 30 minutes ahead in this scene").
- Less is more for prompt injections. Three sentences usually outperform ten.
- Make interactive plugins feel native. Match the chat style with concise, well-themed buttons.
- Test on cheap models. A plugin that needs Claude to behave will reach 10% of users. A plugin that works on MiMo V2 Flash will reach everyone.