๐Ÿ”ง Instance Settings

๐Ÿ‘ค For: Game Masters ยท ๐Ÿ’ณ Plan: All plans ยท ๐Ÿ”„ Updated 2026-10-17

Instance Settings is the personalisation and integration hub for your Realm: visual theme, custom theme editor, notifications, privacy toggles, your own AI keys, hiding the AI help, and Discord webhooks. Several sidebar entries (Theme, Settings, Tantu Settings, Discord) all live here logically โ€” this page covers them all.

Instance Settings: the cards Favicon and Game nights, below them Privacy & Preferences

What it does

Every option here is scoped to your Realm only โ€” changes affect your GM view (and where noted, the player view) but nothing outside your instance. Most fields autosave instantly; the AI key and Discord slot fields save on an explicit Save button.

When to use it

  • Your first session: pick a theme, optionally upload a favicon, connect Discord.
  • Before going live with players: verify privacy preferences.
  • Heavy on AI help? With your own API key, text suggestions cost no Threads.
  • No AI at your table? Hide the AI help for the whole Realm with one checkbox.
  • Hybrid or remote games: wire up Discord webhooks so absent players follow along.

Theme

Sidebar โ†’ ๐ŸŽจ Theme.

Four built-in visual themes for the GM interface:

Theme Look
Wovenkeep Classic (default) Dark background, amber accents โ€” the signature look
Dark Forest Earthy dark greens, warm natural tones
Royal Gold Deep navy with rich gold accents
Secret of Lauf Sandstone cellars and heraldry โ€” inspired by the demo campaign

Click a theme card โ€” it applies instantly across the whole GM tool (CSS swap, no reload). The theme is per-Realm and affects only your GM view; the player view has its own fixed dark theme.

Custom themes

Below the built-in grid, click + New theme (duplicate current) to open the theme editor. You can:

  • Give your theme a name
  • Adjust background, text, and accent colours with a colour picker
  • See a live preview as you change values
  • Check the inline WCAG AA contrast indicator (green = pass, red = fail)
  • Save and apply your theme; it appears alongside the built-ins

Custom themes are saved per instance via POST /api/instance/themes/custom and can be deleted from the same grid.

The theme dropdown autosaves (instant select). Custom theme creation saves on the explicit Save button inside the editor. See Autosave.


Favicon & branding

Sidebar โ†’ โš™ Settings.

Custom icon โ€” upload a small image (max ~512 KB). It replaces the Wovenkeep die icon in the browser tab for both your GM view and your players' phone view. Useful if you want your campaign to feel branded ("The Whispering Ruins" with its own icon on players' phones).

Upload โ†’ the tab icon updates immediately (no reload). It's kept in your Realm and takes up almost no storage.


Updates and game nights

Sidebar โ†’ โš™ Settings โ†’ Game nights card.

Wovenkeep regularly gets new versions. Your Realm decides by itself when to install one โ€” and never while you're playing. Installing means a short pause of about a minute.

When an update waits

An update waits as long as at least one of these applies:

  • a player phone is connected to a running live session,
  • you or your players used Wovenkeep in the last 15 minutes (for example changed something, pushed a scene or rolled dice) โ€” just having it open in a tab doesn't count,
  • it's currently one of your Game nights (see below).

As soon as none of these applies, the update is installed.

The update bar

While a new version is waiting, a bar appears at the top of your GM view. Players don't see it.

  • New version ready โ€“ it will be installed automatically as soon as no session is running.
  • Install now (about 1 minute pause) โ€” installs within the next few minutes, even if a session is running. Only use it when nobody is playing.
  • Postpone โ†’ 1 day, 3 days or 7 days. A normal update can be pushed back by at most 7 days after it was announced; after that it's installed at the next break โ€” still never during a session.
  • What's new โ€” shows the release notes, if there are any.

After the update the bar shows Wovenkeep has been updated. once โ€” click OK.

Security updates

The bar marks them: Security update โ€“ it will be installed after [date] at the latest, never during a session. They can be postponed by 1 day at most. Once that deadline has passed, only player phones connected to a running live session hold the update back โ€” game nights and recent activity no longer do.

Entering game nights

If your group plays on fixed evenings, enter them: during those times no update is installed, even before anyone has joined.

  1. Sidebar โ†’ โš™ Settings.
  2. In the Game nights card, click Add game night. A new row appears (Friday, 19:00โ€“23:00).
  3. Pick the weekday and set From and To. If the end is earlier than the start, the evening runs past midnight (e.g. 20:00โ€“01:00).
  4. Click Save โ†’ Game nights saved.

Remove a row with โœ•. The times always use the Europe/Berlin time zone, wherever you are. You can enter up to 21 game nights.

The Game nights card in Settings with two entered evenings


Sign-in

Sidebar โ†’ โš™ Settings โ†’ Sign-in card.

You stay signed in to the GM tool on each device for up to 30 days (after 14 days without use, the login ends earlier).

  • Sign out โ€” removes the login from this device and shows the GM password prompt again.
  • Sign out all devices โ€” after a confirmation, signs out every other device that is signed in to the GM tool. You stay signed in here, and players are not affected.

Lost a device, or does someone else know your GM password? Change the GM password on your account dashboard โ€” a new GM password signs out every device by itself (see GM password).


Notification preferences

Sidebar โ†’ โš™ Settings โ†’ Notifications.

Two controls:

Setting Options
Email notifications Toggle on/off โ€” receive campaign digest emails at your account address
Email frequency Daily ยท Weekly (default) ยท Monthly

There is one email switch (not per-category toggles). The digest covers activity across your Realm. These autosave when you change the checkbox or the frequency dropdown.


Privacy toggles

Sidebar โ†’ โš™ Settings โ†’ Privacy.

Three toggles, all GDPR-relevant and all autosaving on change:

Toggle Effect
Analytics opt-out Disables anonymous usage analytics for your Realm. Wovenkeep stops collecting which features you use, page views, etc.
AI training opt-out Sends a no-training header with every AI request. Your prompts and content are not used to train models.
Extended beta telemetry (click statistics) Opt-in, default off. Share anonymous click paths to help improve the beta. Nothing extra is collected unless you turn it on.

The two opt-outs default off (analytics on, training-contribution on) but are one click to enable. What Wovenkeep measures โ€” and what it never measures โ€” is documented openly on What we measure.

These are separate from account deletion and data export โ€” see GDPR & Data Export.


Tantu Settings (AI Keys)

Sidebar โ†’ โš™๏ธ Tantu Settings (Admin group). Available on all plans.

By default, AI help uses Wovenkeep's bundled AI and costs Threads. If you have your own API credits, configure your own keys here โ€” then AI text actions use your key directly and cost 0 Threads (images are free only with your own Google Gemini key; sound always costs Threads).

The Tantu Settings page: the status line, the card Hide AI features ticked, with its explanation and โœ“ AI features hidden, and the start of the card Your own API keys (optional)

  • The status line at the top shows whether Tantu is available (โœ… Tantu available โ€” features active).
  • Right below it, the card Hide AI features โ€” see below.
  • Enter a key for Anthropic, OpenAI, or Gemini, with an optional model name for Anthropic and Gemini. Afterwards it is only shown partly masked (like ***AbCd), so it can't be read back in the interface.
  • OpenAI-compatible is a fourth option for any endpoint speaking the OpenAI API โ€” Mistral, DeepSeek, OpenRouter, IONOS, or something you host yourself. Enter the endpoint address and the model name; the API key is optional. Only https:// addresses are accepted โ€” internal/private network addresses are rejected.
  • Test connection (one per provider) checks your key or endpoint immediately, without spending Threads or waiting for a real request to fail.
  • Provider preference โ€” Auto tries OpenAI-compatible, then Anthropic, then OpenAI, then Gemini; or force a specific provider.
  • ร— (remove button) wipes the stored key immediately.

When your own provider is configured, it takes priority over Wovenkeep's bundled AI:

  • Text requests go to your provider first, billed by the provider, 0 Threads
  • If your provider is unreachable, Wovenkeep's built-in AI answers instead (spending Threads as usual), and you see a one-time notice that your own provider was unreachable and Wovenkeep's AI was used. Your own provider is then skipped for 5 minutes before Wovenkeep tries it again
  • If your own provider rejects a request, that reply is not retried against Wovenkeep's AI

Portrait generation specifically uses your Gemini key if set (it's a Gemini-only feature). Text features use your configured providers per the preference order above.

Most GMs leave this empty and use bundled Threads โ€” simpler, and cheaper at typical usage. Custom keys win for heavy users with existing provider credits. See Threads overview โ†’ bring your own key.

Hide AI features

The first card on the page has one checkbox: Hide AI features. Below it: Hides all Tantu and AI buttons, cards and sections. Anything already created with AI stays. You can show them again at any time.

  • Ticking or unticking saves at once; the card confirms โœ“ AI features hidden or โœ“ AI features shown. If saving fails, the box flips back and you see Error saving or Network error.
  • The setting is off by default and applies to your whole Realm โ€” every campaign and every GM sign-in. Other open GM windows, player phones and invite pages pick it up when they reload.
  • It only hides: your keys, the Player Tantu access setting and everything already created stay as they are.

What disappears and what stays: Optional AI help โ†’ Hide AI features.

Allow players to use Tantu on your Threads

Further down the page, the ๐ŸŽฎ Player Tantu access card:

The Player Tantu access card, switched off (the default)

Toggle Players may use paid Tantu functions (charged to my Thread credit) to let your players access paid features (such as portrait generation) within your Realm. Thread costs are deducted from your balance, not theirs. Default: off.


Discord webhooks

Sidebar โ†’ ๐ŸŽฎ Discord.

Push session content to a Discord server in parallel with player phones. Useful for hybrid games (some players remote on Discord) or sharing the play-by-play with absent players.

Three webhook slots

Slot Sends
Scenes & NPCs Scene pushes (image + title + description), handouts sent to everyone, NPC dialogue
Dice & Initiative Your rolls as Game Master and the initiative order: one new message per fight, updated every turn; monsters appear like in the player view, without hit points. Player rolls only if you switch on Also post player rolls to Discord (see Options).
Announcements The date of your next session, as soon as you set or change it in session planning

Each slot is an independent Discord webhook URL. Configure the ones you want; leave others empty.

Configuring a slot

A configured Discord slot: Connected, shortened webhook address, Edit, Test, Remove and Enabled

  1. In Discord: Server Settings โ†’ Integrations โ†’ Webhooks โ†’ New Webhook โ†’ copy URL
  2. In Wovenkeep: click + Configure on the slot, paste the URL, click Save
  3. Optionally set a Display name + Avatar URL. Discord does not allow names containing "Discord" or "Clyde"; Wovenkeep then leaves the name out.
  4. Click Test to send a sample message
  5. Enabled switches the slot off and on immediately

After saving, Wovenkeep only shows a shortened version of the webhook URL. Treat it like a password: anyone who has it can post into your channel. If it leaks, delete the webhook in Discord and create a new one.

Options

  • Also post player rolls to Discord โ€” off by default. In Wovenkeep only you see the rolls of your players; switch this on if your group rolls openly.
  • Language of Discord messages โ€” scenes, rolls and announcements are posted in this language. When you connect your first webhook, it starts with your interface language.

Using Discord push during a session

Scenes, handouts and NPC dialogue each have a ๐ŸŽฎ Discord switch next to their send button. Each switch remembers its last state on the device you use. Handouts for a single player are never posted to Discord.

If Discord reports too many requests, Wovenkeep waits as long as Discord asks and tries up to three times. If Discord is unreachable or the webhook was deleted, the push is not repeated: the slot card shows the error and the session log notes it.

See Scene push โ†’ Discord and Handouts โ†’ Discord.


What autosaves here

Setting Save behaviour
Theme selection Instant (select click)
Privacy checkboxes Instant (checkbox change)
Hide AI features Instant (checkbox change)
Notification toggle + frequency Instant (checkbox / select change)
AI key fields Explicit Save button (keys are sensitive)
Discord slots Save in the slot dialog; Enabled and the options apply instantly
Custom theme editor Explicit Save button inside the editor
Game nights Explicit Save button in the Game nights card

Troubleshooting

Symptom Cause Fix
Theme change doesn't persist after reload Custom theme CSS not loaded Clear browser cache; re-select the theme
AI key shows "invalid" after saving Key pasted with leading/trailing spaces Remove the key, paste again carefully
"Insufficient Threads" when using BYO key Provider key is valid but quota exhausted at the provider Top up your provider account or let Wovenkeep fall back to bundled Threads
Discord Test returns an error Webhook URL deleted or regenerated in Discord Re-create the webhook in Discord Server Settings and paste the new URL
Discord messages stop arriving mid-session Discord outage, rate limit, or the webhook was deleted in Discord Check the error on the slot card. Wovenkeep only retries on rate limits; if the webhook was deleted, create a new one and paste the new URL.
Player rolls don't show up in Discord Also post player rolls to Discord is off (the default) Switch it on under ๐ŸŽฎ Discord โ†’ Options
Player Tantu access toggle is on but players see "feature locked" Player's device didn't refresh after the toggle change Ask the player to reload the player view
Players still see AI buttons after you ticked Hide AI features The player view reads the setting when it loads Ask the players to reload the player view
The update bar has been showing for days The update was postponed, or every time Wovenkeep tried, someone was playing, had used it in the last 15 minutes, or it was a game night Wait for a break, or click Install now (about 1 minute pause) when nobody is playing
Please check the times: start and end must differ. when saving game nights A row has the same start and end time, or there are more than 21 rows Correct the times and click Save again