Home > Guides > What Is a CharX File

What Is a CharX File? A Plain-English Guide to Character Card V3

A .charx file is a ZIP archive that holds a Character Card V3 persona plus its images and assets. Here is exactly what is inside one, which apps produce them, and how to open or convert a CharX card.

Last updated 2026-07-25 · Character Card Converter editorial team

A CharX file (extension .charx) is a ZIP archive that packages a Character Card V3 definition together with its images and other assets in a single downloadable file. Where the older V2 standard hid a character inside the metadata of a PNG image, V3 takes the opposite approach: it uses a real archive format so a card can carry more than one file at once. If you rename a .charx to .zip and open it, you will see its contents directly.

What is inside a .charx file

Every CharX archive is built around one required file: card.json. That JSON document is the character itself — it follows the chara_card_v3 specification and contains fields such as name, description, personality, scenario, first_mes (the greeting), mes_example (example dialogue), tags, and creator. Because a ZIP can hold many files, a CharX archive usually also includes an assets/ folder.

Those assets typically include the character's avatar image, alternate expression sprites, background art, and occasionally embedded audio for voice-enabled frontends. The card.json references each asset by a relative URI, which is how a frontend knows which image is the main portrait versus a "happy" or "angry" expression. This bundling is the whole point of the format: one file, everything included.

Why V3 moved away from PNG

The V2 format stores a character as base64-encoded JSON inside a PNG tEXt metadata chunk. That was an elegant trick — a card that is also a shareable image — but it has a hard ceiling. A PNG can hold exactly one embedded card, the metadata bloats the image, and there is no clean way to attach multiple expression sprites or a lorebook without ad-hoc extensions.

CharX solves this by using a container designed for multiple files. The character data, the artwork, the emotion sprites, and any extension modules all live in the same archive, addressed by path. This is why V3-capable apps prefer CharX for characters that ship with rich visual or emotional data.

Which apps use CharX files

RisuAI is the most prominent frontend that exports and imports CharX natively, using it as the default container for its characters. Any tool that fully implements the V3 specification can also read a CharX archive, and support has been growing across the ecosystem as V3 adoption increases. Because the underlying card.json is plain V3 JSON, a CharX card is portable in principle — the only barrier is whether a given app knows how to open the ZIP.

How to open or convert a CharX file

To simply inspect one, rename the file from .charx to .zip and extract it with any archive tool; open card.json in a text editor to read the raw persona. To actually use the character in an app that does not support V3, you convert it. Our V3 to SillyTavern and RisuAI to SillyTavern tools unpack the archive, read card.json, and map the persona onto whatever format your target app expects — a V2 PNG for SillyTavern, JSON for Voxta, and so on.

All of this runs in your browser. The archive is decompressed locally with client-side JavaScript, the JSON is extracted in memory, and the converted card is handed back to you as a download. Nothing is uploaded to a server, which matters because character cards frequently contain personal writing you may not want to send to a third party.

CharX vs .png vs .json: a quick comparison

ContainerHolds images?Multiple assets?Typical spec
.charx (ZIP)YesYesV3
.png (tEXt)Is the imageNoV1 / V2
.jsonNoNoAny

Are CharX files safe to open?

A CharX archive is data, not a program — it will not run code by itself. The realistic risks are the same as any downloaded ZIP: an archive could contain an unexpectedly large file, and the character text itself is written by a stranger. When you convert a CharX card with a client-side tool, the file never leaves your device, so you are only ever handling your own download. Read the card.json if you want to know exactly what a card will inject into your model's context.

Try it now — free & private

Every conversion below runs entirely in your browser. No uploads, no account.

Frequently Asked Questions

Is a .charx file just a ZIP?

Yes. A CharX file is a standard ZIP archive with a different extension. You can rename it to .zip and extract it to see the card.json and assets inside.

What app opens a CharX file?

RisuAI opens CharX files natively, as do other frontends that support the Character Card V3 spec. To use one in an app that does not support V3, convert it to that app’s format first.

How do I convert a CharX file to SillyTavern?

Use a V3-to-SillyTavern converter. It unpacks the ZIP, reads card.json, and writes the persona into a SillyTavern-compatible V2 PNG card. Our tool does this entirely in your browser.

Why does my character card end in .charx instead of .png?

Because it is a Character Card V3 card. V3 uses a ZIP container so it can bundle the persona together with multiple images and assets, which a single PNG cannot do.


Stay Updated on AI Character Technology

Subscribe to our newsletter for updates on metadata specifications, V3 standards, and private conversion tools.