Skip to main content

Prompting Overview

A prompt template is a plain-text document with prompt tags. Tags look like {scene.fullText} or {#if isStartOfText}. Lis Novel fills in the tags with your story data, inputs, and helper functions, then sends the rendered output to the model.

Quick start

{! Continue the scene using the current beat and relevant lore. !}
Write in {novel.tense}. POV: {pov}.

{#if isStartOfText}
This is the first paragraph of the scene.
{#endif}

Relevant lore:
{lore.context}

Instructions:
{message}

What this template does

  • Adds a system-style comment to keep intent visible to you but not the model.
  • Uses {novel.tense} and {pov} to keep the narrative consistent.
  • Handles the first paragraph differently with {#if isStartOfText}.
  • Pulls in worldbuilding with {lore.context} and the beat text with {message}.

How rendering works

  1. Lis Novel collects the beat, scene, chapter, act (when the novel structure includes acts), and novel context. Scene prose context uses AI-visible text only (sections marked hideFromAi=true are omitted).
  2. Prompt inputs are resolved and content-selection inputs are pre-rendered into XML.
  3. The template engine evaluates tags and control flow.
  4. Each prompt message is trimmed and sent to the model.

Chat prompt visibility

When a prompt is used in Chat, its messages are sent to the AI model as hidden setup. That includes the system message and any example user/assistant turns you add to shape tone or behavior.

Those prompt-provided messages do not appear as visible chat-history entries in the conversation thread. The thread only shows the real messages exchanged during the chat itself.

Import and export

From the Prompts manager, Lis Novel can export a prompt as a single base64-encoded gzip string and import that string back later.

  • Use this to move prompts between Lis Novel libraries or share them as compact text.
  • Export preserves prompt messages, prompt type, NSFW flag, and supported input configuration.
  • Prompt-specific model assignments are not included in exported strings, so imported prompts use whatever models you attach afterward.

Guide map