AI Features
Purple Cat has a set of optional AI-assisted tools. They are opt-in: nothing is sent anywhere until you use one.
What we do and do not do with AI, as a commitment rather than a feature list, is in the AI Policy.
What is available
| Feature | What it does | Generates? | Where it runs |
|---|---|---|---|
| Bert, the assistant | Answers how-to questions from this Help, and reads your campaigns, maps, tokens, characters and chat as you to answer questions about them | Yes, text | A provider, on your own key only |
| Monster generation | Builds a statblock and token from a description | Yes, text | In your browser by default; or a provider |
| Encounter generation | Builds a group of monsters for a map | Yes, text | In your browser by default; or a provider |
| Name suggestion | Suggests a name for a generated monster's token | Yes, text | A provider |
| Map generation | Builds a map from a description | Yes, text; and images where the genAI module is installed | A provider |
| AI fill | Paints over an area you removed from an image (Fill Removed Area → AI fill) | Yes, image | A provider (OpenAI or Gemini) |
| Background removal by OpenAI or Gemini | Cuts a subject out of an image with an image-editing model | Yes, image | A provider |
| Background removal, in-browser | Cuts a person out of an image | No | Your browser |
| Background removal, on our server | Cuts any subject out of an image | No | Our server, with a model we run |
| Character sheet parsing | Reads a character sheet from an image, PDF or document | No, extracts fields | A provider |
| Wall detection (VBL) | Finds walls in a map image and turns them into vision-blocking geometry | No, returns outlines | Our server's segmentation, plus OpenAI |
| Library tagging | Sorts and tags images you add to the Library | No, returns tags | A provider, or a model the installation runs |
| Extract Object | Picks out the object you click on | No, returns a mask | Your browser |
| Extract Objects | Finds every object in an image at once | No, returns masks | Replicate, or the installation's own segmentation service |
| Tokenization | Finds the face in an image and crops a token | No, returns a box | Your browser |
Where the work happens
Some of these run entirely in your browser:
- tokenization / face detection,
- in-browser background removal,
- Extract Object, the click,
- the in-browser language model, used by default for monster and encounter generation.
The image models load from the installation you are using, and send nothing to anyone. The language model is different in one way: the first time you use it, your browser downloads its weights (about 2 GB) from Hugging Face and its runtime from GitHub. What you type into it still stays on your machine.
Everything else sends your input to a third-party AI provider, from our server.
Providers and API keys
Language-model providers: OpenAI, Google Gemini, Anthropic Claude, and xAI Grok. Image features use OpenAI or Gemini. Extract Objects uses Replicate.
Two ways to use them:
- The server's key, if the deployment has one configured. You do nothing; on our shared hosting, that means the feature runs on our provider account.
- Your own key, entered in Settings → AI. You are billing your own provider account, and the provider's terms with you apply.
Your own key is always tried first. You can pick a provider and model per task, so cheap models do cheap work and a better model does character parsing.
About your keys
- Keys you enter are stored in your browser, and sent with each AI request so the server can call the provider on your behalf.
- They are not stored in Purple Cat's database.
- You can remove them at any time from Settings, and clearing your browser data removes them too.
- Treat a key like a password: it can spend money on your provider account.
Asking Bert
Bert is the assistant under Direct messages in the chat. It answers from this Help, and reads your game as you, so it sees only what you can see. It makes small changes you ask for (HP, a condition, a move, a rename, a chat line), each marked via Bert in History and undone by the reply's Undo; deleting a token, placing generated monsters, and anything you didn't ask for in your words wait for your Do it.
Bert runs on your own key only (Settings → AI → Assistant); without one it sends nothing. Each question sends the question, the conversation so far, where you are and what Bert reads to that provider (not your account id or email), and so does generating monsters; the server keeps the reply and a list of what Bert read, not the contents.
Monster and encounter generation
Describe a monster and get a statblock for your campaign's system, plus token art. The result is a normal character and token — edit it like anything else. Encounters do the same for a group.
Both default to the in-browser model, so they cost nothing. A suggested token name comes from a provider.
Map generation
Describe the map you want; the generator produces one and adds it to the campaign. Generation runs in steps you can review before committing.
The map generator is the one AI feature that keeps what you typed: the description and the layout the model returned are saved with the map, so the generation can be redone or removed as a batch.
Image features
Fill Removed Area offers Basic fill, which blends the surrounding colours in your browser and sends nothing, and AI fill, which sends the image to your preferred image model. Remove Background can run in your browser, on our server with a model we run, or on an OpenAI or Gemini image model; the operation says which.
Extract Objects sends the image to Replicate (or to a self-hosted installation's own service), and the result says whose account paid for it.
Character sheet parsing
Upload an image, PDF or document of a character sheet and have it read into a Purple Cat character. Expect to check the result: this is a good way to avoid typing forty fields, not a way to avoid reading them.
Wall detection (VBL)
Point it at a map image and it finds the walls, converting them into vision-blocking geometry. It will not be perfect; fix the misses by hand.
Library tagging
Images you add to the Library are tagged by a vision model when one is configured. See Library → How things get sorted.
What is sent, and what is not
When you use a server-side AI feature:
- Sent: the image or text you supplied, plus a prompt built by the app.
- Not sent: your account identity. (Bert sends the names in the chat messages it reads; see Asking Bert.)
Each provider has its own retention and training policies. If you use your own key, your agreement with that provider governs how they treat it.
→ Privacy
Results are drafts
AI output can be wrong, unbalanced, or unusable. Read it before it hits the table. Nothing generated is applied to your campaign without you accepting it.