Legal

AI Policy

Effective May 20, 2026

We do not train on your data

Period. Not us, not our model providers, not anyone. Your prose, your NPCs, your sessions stay yours.

How retrieval works

Your campaign content is chunked and embedded into vectors. Those vectors are stored in a database namespace scoped to your campaign. When you ask the DM Assistant a question, we retrieve the most relevant chunks and include them in the model prompt. After the response is generated, the prompt is discarded; the chunks stay in your campaign's index until you edit or delete the source entity.

What we send to model providers

  • Chat (Gemini / GPT-4.1 via Vercel AI Gateway): your prompt, retrieved chunks, and recent conversation history. Providers under the Gateway's zero-data-retention agreements do not retain this for training.
  • Embeddings (Gemini text-embedding-004): the text of your campaign entities. Used only to generate vector representations; not stored by the provider after the embedding is returned.
  • Image generation: your prompt only. No campaign context is included.

Bring your own key (BYOK) transparency

If you use your own API key, your prompts go directly to your provider with our server as a pass-through. We don't log the content of those prompts — only metadata (timestamp, token count) for usage display.

The “Context used” expander

Every AI response in the app shows what was retrieved. Click it to see exactly which entities went into the prompt. If retrieval picks the wrong context, the response will reflect that — and you'll be able to see why.

Visibility is enforced at the index level

The DM Assistant respects entity visibility. If a player runs the assistant, retrieval is filtered to player-visible content. They cannot prompt their way into your GM notes — the filter is enforced at the vector index level, not in the system prompt.

This page is informational, not legal advice. Reach out at hello@dungeondiary.app with any questions about how it applies to your specific situation.