Kyalulu/docs
GitHub JA
Browse guides⌄

Reference

Formats and compatibility

Check support for cards, presets, Lore, and history, including fields retained without being executed.

At a glance

  • Support is format-specific for Character Cards, SillyTavern, BYAF, shared Risu extensions and manual Character.AI settings.
  • Distinguish imported fields, fields used in generation and fields preserved only.
  • Scripts and all application-specific features are not executed. Review conversion and loss notices before exporting.
On this page
  1. At a glance
  2. Import and execution support
  3. When style or Lore behaves differently
  4. Choose an export format
  5. Know the migration limits

Import and execution support#

Reading a field, retaining it, and using it during generation are different capabilities. Check what your settings actually support below. This describes the public snapshot and does not guarantee identical behavior across every version of another app.

FormatUsable contentRetained only / excluded
Character Card V1 / V2 / V3JSON, cards in PNG/APNG, and CHARX; personality, greetings, examples, system/post-history instructions, Lore, imagesUnknown fields and extensions retained; creator comments excluded from generation; animated image playback not guaranteed
SillyTavernGeneration presets, System Prompt, Story String, ordered Prompt Manager elements, World InfoModel-specific Text Completion/Instruct formatting, dynamic depth insertion, complex Handlebars, and unsupported macros are not executed
Backyard AI BYAF v1Scenario-specific character settings, images, examples, initial message, samplers, selected historygrammar/promptTemplate not executed; newest activeTimestamp selects the reply variant, others remain in the original
RisuAICommon-card extensions, common Lore, image/expression/background references, static string variablesScripts, dynamic variable operations, and custom HTML not executed; whole-app backups excluded
Character.AIManual text/JSON for name, description, Greeting, Definition, and the specified Lore formatsAutomatic account retrieval, private information extraction, and a dedicated full-history importer excluded

When style or Lore behaves differently#

Imported characters do not automatically receive the existing beastfolk setting or Zeta style. The Runtime always adds its reply/state_update contract, however, so it does not reproduce the original app's inference template unchanged. Standard macros, {{char}}, {{user}}, and static {{getvar::name}} variables are supported. Unsupported macros are not silently expanded.

Lore supports keywords, constant activation, secondary keywords, order, before/after positions, scan depth, estimated budgets, and recursive retrieval. Defaults scan the latest two messages with an estimated 1,024-token budget per Lorebook. Unsupported conditions such as regex, probability, and time are disabled with an explanation; restoring an enabled checkbox alone does not execute them.

  1. Read conversion explanations in the preview.
  2. Use Researcher Debug to inspect Lore selection and requested, applied, and unsupported settings.
  3. Where necessary, rewrite dependencies on dynamic features as static text.

Only sampler values supported by the actual Provider are sent. Retaining a value does not make it effective.

Choose an export format#

  • CCv2 JSON / PNG: basic cards, Lore, and unknown extensions; V3-specific and additional-image limitations appear before download.
  • CCv3 JSON / PNG: includes image assets, with differences in receiving-app support.
  • CCv3 CHARX: packages card.json and embedded images in a ZIP.
  • Kyalulu backup: restores edited content, settings, selected history, and images.
  • Original: the exact uploaded bytes, including unselected history and unsupported non-image elements.

Exporting edited ST/BYAF content back into its original proprietary format is not included. If the only icon is not PNG, PNG export uses a placeholder. Choose CHARX, a backup, or the original to retain those images.

Know the migration limits#

Selected history moves text, order, timestamps, and provenance into a new session. It does not retroactively create State, memories, or successful generation records. File imports are limited to 32 MiB; expanded archives to 128 MiB and 512 files. Remote imposes a smaller 16 MiB limit on the entire multipart body.

Keep the original, check a small card first, and read loss warnings before exporting. Continue with the import guide, the mobile guide, or the Remote guide for encrypted transport limits.

Sources for this article

Edited from public GitHub materials. Links are pinned to the reviewed commit.

Search the docs

↑ ↓ select · Enter open · Esc close