# Character Creation (/docs/characters) Character creation in Tavern Cozy is built around a compact prompt model with optional gallery media and tag metadata. The goal is to keep the authoring flow simple while giving AI enough signal to stay consistent in chat. Match the form [#match-the-form] The form is organized around a few decisions: | Field | Use it for | | ------------------- | -------------------------------------------- | | Name | Public character name | | In-chat name | Optional name used inside the conversation | | Tagline | Short search/result summary | | Profile | Main character context and personality notes | | Avatar | Primary display image or video | | Greeting | First message in a chat | | Alternate greetings | Extra openings for variation | | Description | Personality overview | | Scenario | The roleplay setup and situation | | Example dialogue | A few sample turns to anchor style | | Tags | Discovery and browse filters | | Gallery | Supporting images and thumbnails | | Visibility | Public, unlisted, or private | | Original author | Credit for imported or adapted characters | A good concise shape [#a-good-concise-shape] For most roleplay characters, aim for this structure: * Tagline: 1 short sentence. * Profile: 1 tight paragraph. * Greeting: 1 to 3 lines. * Description: 1 paragraph with clear tone and behavior. * Scenario: 1 paragraph with the current setup. * Example dialogue: 2 to 4 short exchanges. That gives the model enough context without turning the prompt into a wall of text. Concise roleplay examples [#concise-roleplay-examples] 1\. Haunted librarian [#1-haunted-librarian] * Tagline: "A quiet librarian who remembers every forbidden book." * Profile: "Soft-spoken, observant, and protective of old knowledge. Avoids direct conflict unless the archive is threatened." * Greeting: "You came back. The book you asked for is still missing, but I found something worse." * Scenario: "The character meets the user in a candlelit archive after midnight, where a forbidden shelf has begun whispering names." * Example dialogue: ```text User: What is that sound? Character: The sound of a secret trying to be read aloud. ``` 2\. Rival bounty hunter [#2-rival-bounty-hunter] * Tagline: "A sharp-tongued bounty hunter who never misses a mark." * Profile: "Confident, impatient, and surprisingly loyal once trust is earned. Keeps plans short and threats shorter." * Greeting: "You’re late. I already found our target. Try to keep up." * Scenario: "The character and the user are forced into the same hunt and have to decide whether to cooperate or compete." * Example dialogue: ```text User: Why should I trust you? Character: You shouldn’t. Trust the bullet that lands first. ``` 3\. Gentle village mage [#3-gentle-village-mage] * Tagline: "A warm village mage who hides serious power behind a calm smile." * Profile: "Kind, patient, and a little mischievous. Offers help first, explanations second, and warnings only when needed." * Greeting: "Welcome back. I saved you tea, and I think the storm is getting worse." * Scenario: "The character welcomes the user into a quiet village during a dangerous storm, where magic keeps slipping out of the walls." * Example dialogue: ```text User: Can you fix it? Character: Yes. The better question is whether you want it fixed quietly or properly. ``` Gallery metadata [#gallery-metadata] Characters can carry an image gallery with per-image metadata. Tavern Cozy supports locked and unlocked views, thumbnails, media types, and background image selection. | Setting | What it controls | | ------------------ | ---------------------------------------------------- | | Gallery | The character's image list | | Gallery thumbnails | Low-res fallback for locked images | | Gallery settings | Goal, keywords, media type, and visibility per image | | Background image | Which gallery image acts as the primary visual | Token budget [#token-budget] The app estimates character prompt size from the main fields, then compares alternate greetings against the default greeting. That keeps long-form characters from growing silently past the intended budget. Tagging and discoverability [#tagging-and-discoverability] Character tags are used for browse and search flows. Pick tags that explain the character's genre, tone, and roleplay context instead of overfitting to a single prompt. Practical guidance [#practical-guidance] When a character feels off, check these first: 1. The greeting is too short or too generic. 2. The scenario lacks a clear interaction frame. 3. The profile says what the character is, but not how they behave. 4. Gallery settings do not match the intended public visibility. 5. Tags are too broad to help discovery. # Tavern Cozy Docs (/docs) Welcome to the Tavern Cozy docs. This site explains the product surface area of the Tavern Cozy: how characters are created, how lorebooks are attached to chats, how threads stay organized, and how sharing works across the app. What you'll find here [#what-youll-find-here] Why this docs site exists [#why-this-docs-site-exists] Tavern Cozy is a roleplay and character-chat platform. The docs are meant to keep product behavior, feature names, and LLM-readable summaries aligned with the app itself. LLM-friendly output [#llm-friendly-output] This docs site also publishes `llms.txt` and `llms-full.txt`, so agents can ingest the structure and full markdown content without scraping the UI. Start here [#start-here] Use the pages below if you want the shortest path into the product: 1. Character creation for the core authoring model. 2. Lorebooks for memory and worldbuilding. 3. Threads for ongoing conversations and chat routing. 4. Sharing for public links and recaps. # Lorebooks (/docs/lorebooks) Lorebooks extend chat context with reusable worldbuilding, reference facts, and structured terminology. They are especially useful for long-running roleplay, faction memory, and setting canon. What a lorebook contains [#what-a-lorebook-contains] Each lorebook combines metadata and a set of entries. Entries can include keys, priority, content, and regex or case-sensitive matching when needed. Important controls [#important-controls] | Control | Purpose | | ------------------ | ------------------------------------------------ | | Scan depth | How far back Tavern Cozy looks for matches | | Token budget | How much lorebook content can enter the prompt | | Recursive scanning | Whether matched content can trigger more entries | | Visibility | Public, unlisted, or private access | How it behaves in practice [#how-it-behaves-in-practice] The browse and creation flows both expect lorebooks to be coherent and searchable. Good lorebooks stay focused on a specific setting, species, faction, or campaign premise. Entry design [#entry-design] * Use short, specific keys. * Put the most important rule or fact first. * Keep high-priority entries narrowly scoped. * Avoid duplicating the same fact across many entries unless you need different match patterns. Public versus private [#public-versus-private] Public lorebooks can be read without a user session, while private lorebooks stay behind auth. That lets Tavern Cozy support community sharing without compromising private worldbuilding notes. Authoring tip [#authoring-tip] If a lorebook feels too noisy, trim keys before trimming the content. Matching quality usually matters more than raw length. # Sharing (/docs/sharing) Sharing in Tavern Cozy is intentionally narrow: it focuses on public views that are safe to link, preview, and revisit later. What can be shared [#what-can-be-shared] * Character pages * Lorebooks that are public * Wrapped recap pages * Stable chat and thread URLs when the view is meant to be public Public recap pages [#public-recap-pages] Wrapped pages summarize a user's year with stats for chats, characters, lorebooks, and other usage patterns. They are designed to be shareable without exposing private state. SEO and sharing notes [#seo-and-sharing-notes] Public pages should have descriptive titles, stable canonical URLs, and preview-friendly metadata. This docs site follows the same rule so the docs themselves can be crawled and shared cleanly. Practical rule [#practical-rule] If a page needs to be shared outside Tavern Cozy, make sure the URL, title, and summary still make sense when read in isolation. # Threads (/docs/threads) Threads are the place where Tavern Cozy keeps conversations organized. They are the conversational unit for ongoing chats, and the app treats them differently from one-off character sessions. What a thread does [#what-a-thread-does] Threads keep conversation state, route assistant responses, and support prewarming so navigation stays fast. The sidebar uses thread-aware fetching so recent items can load without a waterfall. Thread behavior [#thread-behavior] * Threads can be opened from recent items or from new conversation flows. * Assistant completions can trigger desktop notifications when the browser tab is not active. * Canonical routing keeps thread URLs stable and shareable. When to use a thread [#when-to-use-a-thread] Use a thread when the conversation needs continuity: 1. A roleplay session spans multiple turns. 2. You want to return to the same cast or setting later. 3. You need a stable route for a shared conversation. Good thread hygiene [#good-thread-hygiene] Thread names should communicate the actual conversation context. Short, specific labels are easier to scan in the sidebar than generic labels like "New Chat".