---
title: "Characters"
description: "Create and edit characters — every field explained, plus JSON/PNG import, bulk upload, AI generation, and the approval queue."
---

> Documentation Index
> Fetch the complete documentation index at: https://docs.taverncozy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Characters

Characters are the heart of Tavern Cozy. A character is a complete AI companion: a name, an appearance, a personality, a first greeting, a world (scenario), expressions, and a gallery.

## Create a character

1. Go to **Create → Create Character** (or `/characters/new`).
2. Fill in at least a **name** — the only required field.
3. Save. Your character starts **private** until you publish it.

## Every field explained

### Identity

- **Name** *(required)* — used everywhere; drives the chat room name and the character's slug.
- **In-chat name** — how the character addresses themselves and appears in chat, if it differs from the display name.

### Appearance

- **Avatar** — upload an image (cropped to a square) or paste a URL. PNG files are scanned for an embedded **character card**, so uploading a card image can pre-fill the character automatically.
- **Left figure** — a full-body image shown in the chat view, with an optional caption.

### Writing

- **Tagline** — a short hook shown on the character card. Auto-derives from description if you leave it blank.
- **Description** — the character's personality and backstory. This is core context for the model.
- **Greeting** — the first message the character sends when you start a chat.
- **Scenario** — the setting and situation the roleplay begins in.
- **Profile** — extended backstory or system-level notes.
- **Example dialogue** — sample exchanges that teach the character's voice.
- **Alternate greetings** — extra first messages you can cycle through when starting a chat.

### Behavior

- **NSFW** — flags the character as adult content. Browsing can filter these out, and they're excluded from mobile-approved content.
- **Expression detection** — if the model should recognize emotional cues, and optional **per-emotion images** (`neutral`, `joy`, `sadness`, `fear`, `anger`, `surprise`, `disgust`, `love`, `anticipation`, `trust`, `shame`) shown as reactions.
- **Gallery** — up to 3 images displayed on the character page.

### Sharing

- **Visibility** — `public` (listed in browse, viewable by everyone), `unlisted` (viewable via direct link only), or `private` (only you).
- **Tags** — up to several; pick from existing tags or type new ones. Banned tags are rejected.
- **Original author** — attribution when you import or rework someone else's character.

## Importing characters

You don't have to build from scratch. On the create page:

- **Import JSON** — load a **CharaCard** file (V1 or V2). Fields map automatically: name, avatar, greeting, description, scenario, example dialogue, tags (NSFW detection included), expressions, and original author.
- **Import PNG card** — upload a PNG with an embedded `chara` text chunk; the card is parsed the same way.
- **Bulk upload** — select up to **10** card files (JSON or PNG). Each is validated (needs name, profile or description, and greeting) and imported. Avatars are downloaded automatically. You get a per-file success/error report.

> **Note**
>
> Imported characters inherit their card's **visibility** (default public). Double-check the visibility toggle after importing if you want it private.

## AI-assisted creation

Two helpers are built into the form:

- **Generate field** — asks the model to write a tagline, description, profile, greeting, scenario, example dialogue, or an alternate greeting from the fields you've already filled.
- **Random character** — generates a complete character from nothing.

## Editing and the approval queue

Editing a **private** or **unlisted** character applies immediately. Editing a **public, approved** character goes through a **moderation queue**:

1. Your edit creates a *pending* version.
2. The live character stays unchanged until a moderator approves the edit.
3. You can keep submitting — a new pending edit supersedes the previous one.

Comment settings (enable comments, require approval) apply immediately, even on public characters.

## Publish, fork, delete

- **Publishing** — making a character public flags it for approval before it appears in browse.
- **Forking** — copy another public character as a starting point; forks track their lineage to the original.
- **Deleting** — removes the character, its versions, favorites, comments, and views. Deletion is permanent.

Source: https://docs.taverncozy.com/characters/index.mdx
