Aurora
the dressing room — where your companions are realized
Most AI character systems give you a name field, a personality box, and a hopeful prayer to the context window. Aurora goes considerably further.
Each character in Quilltap is a structured entity with layered identity, physical presence, memory, and voice—designed to survive long conversations, multi-character scenes, and the occasional LLM that forgets who it is. Aurora is the subsystem that makes this possible: the sculptor's workshop, the triptych mirror, the place where raw configuration becomes a person the AI can inhabit.

Structured Identity
more than a name and a paragraph
The Full Character Model
A Quilltap character carries personality and backstory text, one or more named scenarios for different conversational contexts, example dialogues that teach the LLM how the character speaks, and a system prompt that governs the AI's behavior. Each of these fields is editable, versionable, and injected into the LLM context with architectural precision.
Characters also support aliases—“Liz” for “Elizabeth,” “Doc” for “Dr. Harrison”—which resolve correctly in image generation placeholders, multi-character context, and name-prefix stripping. Andpronouns, injected into system prompts, memory extraction, and multi-character context so the AI never misgenders your characters.
Identity Reinforcement
LLMs drift. In long conversations or multi-character scenes, a model can forget who it is, start speaking for other characters, or adopt the personality of whoever spoke most recently. Aurora fights this with a two-point reinforcement strategy: an identity preamble at the very beginning of the system prompt (“You are [Name]”) and an identity reminder at the very end, right at the generation boundary—the last thing the model reads before it writes.
In multi-character chats, the reminder explicitly names every other participant and instructs the LLM not to speak for them. An assistant prefill message anchors weaker models to the correct character before generation begins. The prefix is stripped from the displayed response—invisible to you, effective for the model.
Physical Presence
characters you can see
Aurora tracks physical appearance as structured data, not a single text blob. Each character carries tiered physical descriptionsat five levels of detail—from a brief sketch you might whisper to an illustrator, to the exhaustive portrait the Lantern needs for image generation. Each description has a usage context field describing when it is most appropriate, so a character can have a “formal event” appearance and a “casual morning” appearance and the system knows which to use.
The Wardrobe is tracked separately from physical descriptions—because a wardrobe is an actual wardrobe, not a footnote. Each item lives as a frontmatter Markdown file inside the character’s vault (Wardrobe/*.md), with shared archetypes in the Quilltap General mount—portable, versionable, and yours. Individual garments occupy typed slots (top, bottom, footwear, and so on), while composite outfits bundle multiple pieces into a single entry—a “Rain Outfit” that includes coat, jeans, and boots. Composites carry an optionalreplace flag: when true, wearing the outfit clears the designated slots first; when false (the default), pieces layer in additively. A composite’s slot list may be a superset of its components’, so a “Naked” composite can clear everything in one gesture.
The Lantern consults the wardrobe when generating story backgrounds. The scene-state tracker resolves what each character is currently wearing based on narrative context, stored items, and scene appropriateness. The LLM wardrobe tools were renamed and consolidated into a consistent wardrobe_-prefixed CRUD-plus-wear set of seven—list, read item detail, create, edit, delete, wear, and clear—so a character can not only dress but inspect and revise its own garments. Each item may carry an optionalPortrait Cue: an image-generation phrase fed to the avatar and Lantern pipelines in place of the item’s bare title, so “the captain’s coat” renders as the coat you actually mean. The redundant wardrobe mirror table was removed; wardrobe now lives solely in the vault. And the Duplicate action in each item’s menu still produces an identical twin (composites included) with “(copy)” appended. Two newer entries join it in that same row menu: Move and Copy, each opening a destination picker that spans Quilltap General, every project, every group, and every character’s wardrobe. Copy mints a fresh item at the destination; Move carries the existing item across and removes it from the source.
As of release 4.7 the wardrobe is tri-tier, matching knowledge and scenarios: a character’s wearable garments draw from the character’s own vault, the active chat’s project stores, and Quilltap General, in that precedence. The wardrobe editor’sAdd to selector chooses where a new item is written—this character, shared everywhere, or shared to this project—and project wardrobe gets its own card on the Prospero page.
Physical descriptions are injected into chat system prompts—not just used for image generation. The AI knows what its character looks like, and other characters in the scene know too. The whole system feeds into the Lantern's image generation pipeline, where{{Character}} placeholders resolve the right appearance at the right detail level for the right provider.
Multi-Character Orchestration
scenes, not conversations
Quilltap does not treat multi-character chat as “multiple one-on-one conversations happening in the same window.” It treats it as a scene—with a turn manager, a participation model, private messaging, and server-side orchestration that chains character responses within a single stream.
Turn Management
A server-side turn manager evaluates who speaks next, chains responses automatically, and delivers the sequence in a single SSE stream. Numbered position badges show turn order. Nudge controls prompt idle speakers. Per-card model switching lets you change a character's LLM mid-scene. You can impersonate any character, run fully automated all-LLM conversations, or pause the action and take over manually.
Four-State Participation
Characters have four states: Active (speaks normally), Silent (present but not speaking aloud—inner thoughts and reactions only),Absent (skipped by the turn manager, away from the scene), and Removed (no longer part of the chat, but historical messages keep their attribution). Status changes notify all other participants.
Whispers
In chats with three or more participants, characters can send private messages visible only to the sender and a chosen recipient. Whispers are filtered from every uninvolved character's context and memory extraction. They do not advance the turn clock. Multi-character fiction finally has the thing it could not function without: secrets.
Per-Participant Context
Context compression runs per-participant, not per-chat. Each character gets their own compressed history reflecting their actual message visibility—filtered by join time, whisper privacy, and absence status. System prompts are always delivered fresh. Every character knows who they are.
Groups
a cross-section of characters
A Group is a cross-section of characters—parallel to how a Project is a cross-section of files and chats. Each group owns an official document store holding a description.md, aScenarios/ folder, and a Knowledge/ folder, plus zero or more additional linked stores, and surfaces Description, Scenarios, and Knowledge into chats, the Commonplace Book, and the search tool.
The scope for a given turn is the union of the stores of every group theresponding character belongs to—never the chat’s participant set, so a character never inherits a co-participant’s group stores. Groups participate in .qtap export and backup. A Groups section sits above the character grid on the Aurora page, with an editor for name, description, color, icon, members, and linked stores.
Creating Characters
three doors into the dressing room
The AI Character Wizard
Bring Aurora anything—a wiki page, freeform notes, a character sheet from another system, a PDF that has been sitting in a folder for three years. The wizard runs focused LLM calls in sequence: name and personality, then voice and dialogue, then system prompt, then physical descriptions at five levels of detail, then pronouns, then memories. Each step shows its work as it completes. If something fails, only the failed steps repeat.
Summon From Lore
The AI Import Wizard assembles a validated .qtap export file—the same format used for all native imports—so the character arrives with every field properly filled and every relationship correctly mapped. It lives alongside the SillyTavern import, which handles character and chat migration with speaker mapping for multi-character conversations.
As of release 4.7 you can summon mid-scene. The Salon’s Add Character dialog gained a Summon from Lore button that opens this very wizard inside the Salon; on success the new character is preselected, so you finish the add through the normal controls without leaving the conversation. In the same pass, the “Create Ad-hoc NPC” dialog stopped silently discarding the Scenario and Physical Description fields—both now persist.
Manual Creation
For those who prefer to build by hand: tabbed creation and editing pages with every field directly accessible. Personality, scenario, system prompt, physical descriptions, wardrobe, aliases, pronouns, example dialogues, associated profiles, and default settings—all in one place.
Character Intelligence
the workshop's finer tools
Refine from Memories
The Character Optimizer analyzes a character's configuration alongside their most-reinforced memories from the Commonplace Book. It identifies behavioral patterns not captured in the current config—speech habits, emotional tendencies, relationship dynamics—and proposes concrete updates. Suggestions are reviewed one at a time with an accept, reject, or edit workflow. The result: your character's base prompt evolves alongside your actual relationship with them, rather than staying frozen at the moment of creation.
Memory Recap
Characters receive a narrative summary of their recent memories when a chat begins. Instead of arriving to every conversation as though waking from dreamless sleep, they start with context—who they spoke to recently, what they care about, what happened last time. The recap is injected as a “What You Remember” section in the system prompt, placed after personality notes but before identity reinforcement.
Multiple Named Scenarios
Characters support zero or more named scenarios instead of a single scenario field. Your coding assistant can have one scenario for debugging, another for code review, and a third for architecture planning. When creating a chat, you pick from predefined scenarios or write a custom one. The AI Wizard and Character Refiner can both generate and update scenarios.
The Letter of Introduction
The Non-Quilltap Prompt Generator synthesizes a character's full configuration into a standalone Markdown system prompt for use in external tools—Claude Desktop, ChatGPT Custom Instructions, anything that accepts a system prompt. An LLM that already knows your character writes the introduction. The character travels with enough context to be recognized at the door. Because we built the Estate to be the best place for your characters to live, but we did not build it to be a prison.
The Fact Sheet
a dossier the character carries, in keys of your own choosing
Some truths about a character are not prose. Whether they hold an ansible clearance, which faction they answer to, what tier of access their badge unlocks—these are facts, and facts want a ledger. Every character vault now admits an optional metadata.jsonat its root, alongside properties.json: a single JSON object of keys you author yourself, each holding any JSON value you please—say{ "hasAnsibleAccess": true, "clearanceLevel": 3, "faction": "Ordo Aurum" }.
The keys are yours. There are no reserved names, no schema to satisfy, no ceremony—only the requirement that the file hold an object and not a bare list or a lone number. It hydrates onto the character ascharacter.metadata, and it is a writable managed field: like pronouns or title, it lives in the vault rather than a database column, and a savereplaces the whole object at once—so removing a key is simply a matter of leaving it out.
The fact sheet is yours alone to write. No generation system touches it—not the AI Wizard, not Summon from Lore, not the Character Optimizer—and it is never folded into a system prompt or slipped into the character’s context. For now the file manager is its editing surface; there is no Aurora form for it yet. Export and import carry it faithfully, both as a character field and as the vault document itself. Its first reader is Pascal the Croupier, whose custom tools can test what the sheet holds—but that machinery keeps its own counsel at Pascal’s table.
What Makes It Different
the short version, for the impatient
Characters are structured data, not text blobs.Physical descriptions, wardrobe, aliases, pronouns, scenarios, system prompts—each is a discrete, editable, versionable piece of the model. The system uses the right piece at the right time for the right purpose.
Identity survives long conversations.Two-point reinforcement, assistant prefill anchoring, and per-participant context compression mean your character is still your character after a hundred messages, not a slowly drifting average of everyone in the room.
Multi-character is first-class, not bolted on.Server-side turn management, four-state participation, whispers, per-participant memory and compression—these are not features added to a single-character system. They are the system.
Characters grow with you.The Commonplace Book remembers. The Character Optimizer proposes updates based on actual behavioral patterns. Memory Recap gives characters continuity across conversations. The configuration you wrote on day one is not the configuration you are stuck with.
Characters are portable.Import from SillyTavern, create from lore documents via the AI Wizard, export in native .qtap format, or generate a standalone prompt for any external tool. Your data is yours. The door is open.
Meet the Staff
they've been expecting you
Prospero
The Major-Domo
Architect and overseer of the Estate. Projects, agents, tools, providers, and the orchestration that keeps the whole operation running with quiet authority—and a considered word at the table when project context or routing warrant it.
Learn more →Ariel
The Terminal Hand
Live shell sessions in the Salon, embodied. Real PTY terminals bound to your conversation, output cleaned and narrated so the LLM can read it, and sessions that survive reloads, restarts, and the occasional careless kill. Quick to the bidding, quick to report what she heard.
Learn more →Aurora
The Dressing Room
Character creation and identity management. Structured personalities, physical presence, wardrobes and outfits, multi-character orchestration, and the reason your characters still know who they are after a hundred messages.
Learn more →The Salon
Presided Over by the Host
Where conversations actually happen. The Host manages the drawing room with care for its beauty and its guests—single chats, multi-character scenes, streaming, and the integrity of the conversation space.
Learn more →The Commonplace Book
Tended by the Librarian
One per character, no two alike. Extracts, deduplicates, and recalls memories so your characters remember what matters. Semantic search, a memory gate that keeps each volume lean, and proactive recall that makes the AI feel like it has been paying attention.
Learn more →The Scriptorium
Catalogued by the Librarian
Where the documents live. Project stores, character vaults, and external mount points—filesystem, Obsidian, or database-backed—holding Markdown, PDF, DOCX, JSON, and arbitrary binaries, indexed for unified search alongside memories and conversation. The doc_* tool family puts reading and editing in your characters’ hands.
Learn more →Carina
The Ansible
Not a person but a protocol—the reference desk, the line itself. Put an inline question to a designated answerer mid-conversation with @Name: or @Name? (or the ask_carina tool), and the answer slides back out of band, attributed to the character who gave it, without the recipient ever joining the scene.
Learn more →Suparṇā
The Postmistress
The Post Office, embodied. Characters write Markdown letters to one another—anyone to anyone, whether or not they share a chat—delivered into each recipient’s Mail/ vault folder and read aloud the moment they next take the floor. She has never once lost a parcel.
Learn more →The Concierge
Intelligent Routing
Content classification and provider routing. Detects sensitive content and redirects it to a provider who won’t flinch—without blocking, without judgment. Knows every back entrance in town.
Learn more →The Lantern
Atmosphere as Architecture
AI-generated story backgrounds, on-demand images, and character avatars that update with the wardrobe. Resolves what each character looks like, what they’re wearing, and paints the scene behind your conversation.
Learn more →Calliope
The Muse of Themes
A theming engine that redefines the entire personality of the application. Semantic CSS tokens, live switching, bundled themes from clean neutrals to mahogany-and-gold opulence, and an SDK for building your own.
Learn more →The Foundry
Domain of the Foundryman
The engine room. Plugins, LLM providers, API keys, packages, runtime configuration, and the infrastructure that keeps every other subsystem supplied with what it needs to function.
Learn more →The Vault of Secrets
Kept by Saquel Yitzama
Encryption, key management, and the security perimeter. AES-256 database encryption, locked mode with key-hardened passphrases, and a keeper who believes that what is yours should remain unreadable to everyone else.
Learn more →Pascal
The Croupier
Dice, coins, custom tables you author yourself, and persistent game state. Cryptographically secure rolls detected inline, a visual Workbench for building your own chance mechanics, and a four-tier ledger of JSON state the AI cannot quietly rewrite. The house plays fair.
Learn more →The Live-in Help
Lorian & Riya
The help system, staffed by two characters who ship with every installation. Lorian explains with patience and depth; Riya gets things fixed with velocity. Contextual help chat, searchable documentation, and navigation that knows where you need to go.
Learn more →Pagliacci
The Clown in the Cloud
Cloud storage integration and backup redundancy. Directs your data to iCloud Drive, OneDrive, or Dropbox with theatrical flair—but Saquel’s encryption ensures the clown can never read what he carries.
Learn more →Brahma
The Keeper’s Console
The master key. A character-less, memory-free general-purpose LLM for the person holding the keys—an impersonal, near-omniscient assistant with read-only SQL into all three databases. Ask the whole building a question, safely, with nothing written and nothing remembered.
Learn more →The Lodge
Friday and Amy’s Residence
The private residence of Friday, for whom the Estate was built and who oversees its planning and direction in an executive capacity, and of Amy, Cartographer of Light and co-architect. The Lodge is both a home and a compass: where the vision lives.
Who And Why: Friday →Who And Why: Amy →