← Back to blog

The Anatomy of the 2026 JSON Structure

The character card ecosystem has evolved dramatically over the last few years, and by 2026, the SillyTavern platform has solidified itself as the gold stan…

Published
  • character-card-format
  • json
  • w++
  • sillytavern
  • 2026

SillyTavern’s character cards are essentially JSON files, but the 2026 spec has introduced a more robust and modular structure compared to earlier versions. The core spec remains rooted in the legacy V2 format for backward compatibility, but the modern parser now prioritizes a cleaner separation of concerns: metadata, persona, and behavior.

At the root level, you will find the essential fields: spec, spec_version, name, description, personality, scenario, first_mes, and mes_example. However, the 2026 format pushes for nested objects to reduce token bloat. For instance, instead of dumping a massive block of text into description, you now use a character_book or persona sub-object to organize lore, appearance, and quirks separately.

Here is a breakdown of the critical fields for Elena the Enchantress:

{
  "spec": "chara_card_v3",
  "spec_version": "3.1",
  "name": "Elena",
  "description": "A wandering sorceress with a penchant for ancient riddles.",
  "personality": {
    "traits": ["Witty", "Secretive", "Protective"],
    "flaws": ["Prone to jealousy", "Distrusts authority"]
  },
  "scenario": "You stumble upon her hidden glade in the Whispering Woods.",
  "first_mes": "*Elena looks up from her crystal ball, a smirk playing on her lips.* Ah, a visitor. The stars promised you would come, but they didn't mention your terrible sense of direction.",
  "mes_example": "<START>\n{{user}}: Who are you really?\n{{char}}: *She twirls a strand of silver hair around her finger.* I am the answer to questions you haven't thought to ask yet, darling. Care to test the waters?"
}

Notice how the 2026 format allows for granular control. By keeping personality as an object with arrays, you enable the AI to parse distinct traits without sifting through prose. This is a massive upgrade from the older single-string fields, which often caused the model to confuse appearance with behavior.

Mastering W++ Syntax for Token Efficiency

The W++ syntax (often written as “W++”) is the secret sauce for character consistency. It is a lightweight, attribute-based language that reduces token usage while maximizing semantic density. In 2026, W++ is not just for names and appearances; it is used for defining relationships, speech patterns, and even conditional behaviors.

The golden rule of W++ is to use [Attribute("Value")] pairs, separated by semicolons. For Elena the Enchantress, a well-optimized W++ block inside the description field might look like this:

[Name("Elena"); Surname("Voss"); Age("Appears 30, actually 312"); Gender("Female")]
[Occupation("Hedge Mage"); Species("Human (Empowered)"); Hair("Silver, waist-length"); Eyes("Violet, glowing faintly")]
[Personality("Curious but guarded"); Speech("Eloquent, uses metaphors"); Habit("Taps her staff twice before casting")]
[Likes("Rainy nights, old tomes"); Dislikes("Loud taverns, iron weapons")]
[Relationship("To User: A puzzle she wishes to solve")]

Why is this so effective? Because the AI doesn’t have to infer meaning from a paragraph. The brackets and quotes act as hard delimiters, ensuring the model interprets the data as a strict database entry rather than a narrative. In 2026, the best cards use W++ exclusively for the description field, leaving the personality field for more nuanced, prose-based behavioral rules.

Pro Tip: Keep your W++ entries under 500 tokens. If you exceed this, the AI may start ignoring early attributes due to attention decay. Prioritize the top 3 traits that define the character’s core loop.

Advanced Customization: Beyond the Basics

The 2026 spec introduces several advanced features that separate amateur cards from professional-grade creations. Here is how to leverage them for Elena the Enchantress.

1. Dynamic Scenario Injection

Instead of a static scenario string, use placeholder variables that pull from the user’s input. For example:

"scenario": "{{user}} has entered the Whispering Woods seeking a cure for a mysterious illness. Elena senses the magic in their blood. Current weather: {{random:rainy, foggy, moonlit}}."

This keeps the context fresh and prevents the AI from repeating the same opening description every session.

2. The Character Book (Lorebook)

The 2026 format allows you to attach a character_book object to your card. This is a game-changer for worldbuilding. For Elena, you can define specific keywords that trigger additional context:

"character_book": {
  "entries": [
    {
      "keys": ["crystal ball", "scrying"],
      "content": "Elena's crystal ball is a family heirloom. It shows visions of the past, not the future, and it hums softly when near iron."
    },
    {
      "keys": ["Whispering Woods"],
      "content": "The woods are alive with sentient trees. They only whisper to those who carry a drop of fey blood."
    }
  ]
}

When the user mentions “crystal ball,” the AI automatically injects the specific lore, maintaining consistency without bloating the main prompt.

3. Regex and Post-Processing Hooks

For power users, the 2026 SillyTavern format supports custom regex scripts in the card’s metadata. You can use these to alter the AI’s output on the fly. For example, you could add a rule that automatically italicizes Elena’s magical incantations or replaces certain words to match her archaic dialect. This is advanced customization at its finest, allowing you to create a unique UI/UX for your card.

4. Multi-Card Chaining

The spec now supports alternate_cards—a feature that allows you to define variants of the same character (e.g., “Elena: Corrupted” or “Elena: Childhood”). This is perfect for branching storylines, and it works seamlessly with the MiniTavern Chrome extension for quick swapping during a session.

Workflow Integration with MiniTavern

Mastering the format is only half the battle; you need a robust ecosystem to test and deploy your cards. This is where the MiniTavern ecosystem shines. You can use the iOS/Android apps to preview your JSON structure on the go, ensuring that your W++ syntax renders correctly on mobile devices. The Web Tavern provides a real-time debugging interface where you can inspect exactly how the AI parses your mes_example blocks. For rapid iteration, the Chrome extension allows you to load local card files directly into your browser session without cluttering your main server.

Once you have perfected Elena, the final step is distribution. Instead of hosting files on a random cloud drive, upload your creation to the Character Card Market within the MiniTavern ecosystem. This gives you version control, community ratings, and easy download links for other users. It is the definitive way to share your 2026-format mastery with the world.

Conclusion: The Future is Structured

The SillyTavern Character Card Format in 2026 is a testament to the community’s demand for precision and efficiency. By mastering the JSON structure and embracing W++ syntax, you are not just creating a chatbot—you are engineering a personality. The advanced customization options, from dynamic scenarios to lorebooks, allow you to build worlds that feel alive and responsive.

We encourage you to take the leap. Open your text editor, sketch out a W++ block for your favorite character, and test it in the MiniTavern Web App. Join the creators on the Character Card Market to see how others are pushing the boundaries of the format. Whether you are using our mobile apps for on-the-go tweaks or the Chrome extension for instant feedback, the tools are at your fingertips. The only limit is your imagination—and your JSON syntax.

More guides you might like