Divulgación de afiliación: esta página contiene enlaces de afiliación. Ganamos una comisión cuando te registras a través de nuestros enlaces, sin coste adicional para ti. Nuestras opiniones editoriales nunca están pagadas. Contenido para adultos 18+.

Si has descargado un archivo .png de un personaje y al abrirlo solo ves una ilustración, no está roto. Ese archivo lleva dentro un JSON con toda la ficha del personaje, escondido en un trozo de texto del propio PNG. Es lo que la comunidad llama tarjeta de personaje (character card), y se ha convertido en el formato estándar de facto para mover un personaje de una app a otra sin volver a escribirlo.

Casi todas las guías que encontrarás están escritas para gente que ya sabe qué es un chunk tEXt. Esta página va al revés: primero qué hay dentro y por qué importa, después cómo abrirla sin instalar nada, cómo detectar una tarjeta envenenada y cuándo no necesitas ninguna tarjeta en absoluto.

→ Probar Candy AI gratis (50 tokens, sin tarjeta)


La respuesta corta: tres formatos y solo uno es realmente “el estándar”

FormatoDónde vive el JSONCampos que guardaQuién lo leeLo que suele fallar
V1JSON plano o PNG, sin envoltorio6 campos sueltos (nombre, descripción, personalidad, escenario, primer mensaje, ejemplos)Apps antiguas y exportaciones viejasAl reexportar se pierden notas del creador y saludos alternativos
V2PNG con un chunk de texto llamado chara (JSON en base64)15 campos dentro de un objeto data, más libro de personaje y extensionesSillyTavern, Risu, Agnai y la mayoría de lectoresEs el que la gente llama “el formato normal”
V3Contenedor .charx (ZIP) o PNG con chunk ccv3Todo lo de V2 más un bloque de assets para imágenes y expresionesHerramientas recientesUn lector antiguo abre el archivo y muestra el personaje vacío

Traducido: si tienes un .png, probablemente es una V2 y funciona en casi todo. Si tienes un .charx, necesitas un lector que entienda V3 o convertirla. Y si tienes un .json suelto, estás ante una V1 o ante una exportación de datos que no lleva la imagen.


Qué es una tarjeta de personaje, físicamente

Un PNG que también es un JSON

Un PNG no es solo píxeles. La especificación permite añadir bloques de metadatos llamados chunks, y uno de ellos (tEXt) guarda pares de texto clave-valor. La comunidad usó ese hueco: metió el JSON del personaje, codificado en base64, bajo la clave chara. El resultado es un archivo que cualquier visor de imágenes abre como una foto, y que cualquier lector de tarjetas abre como una ficha de personaje.

Eso tiene una consecuencia práctica que casi nadie menciona: puedes tener dos tarjetas con la misma imagen y distinto personaje. La cara no identifica al personaje. Los datos, sí.

V2 y V3: el cambio es el contenedor, no la personalidad

La V2 añadió un envoltorio (spec, spec_version y un objeto data) para que las herramientas supieran qué estaban leyendo. La V3 mantiene esos campos y añade un sistema de recursos para que la tarjeta lleve también las expresiones y otros archivos. En la práctica, la mayoría de tarjetas que circulan siguen siendo V2 porque es lo que mejor entienden los lectores, y muchas herramientas que escriben V3 meten también un bloque V2 de compatibilidad.

Lo que una tarjeta NO es

No es un modelo de lenguaje, no es una cuenta y no es un personaje alojado en ningún sitio. Es un archivo de texto con instrucciones. Eso explica dos cosas: por qué se puede editar con un editor de texto, y por qué una tarjeta puede llevar instrucciones que no querrías ejecutar.


Los cinco campos que de verdad dirigen el roleplay

De los quince campos de una V2, solo cinco llegan al modelo en cada conversación. Los demás son metadata para humanos o para la app. Esta es la tabla que a mí me habría ahorrado horas:

Campo¿Se envía a la IA?Qué controlaError típico del creador
descriptionSíQuién es: físico, historia, contexto, forma de hablarEscribir una novela de 3.000 palabras que se come el contexto
personalitySíResumen de comportamiento, en frase cortaRepetir la descripción con otras palabras
scenarioSíDónde empieza la escena y qué está pasandoDejarlo vacío y que el bot improvise una cafetería genérica
first_mesSíEl primer mensaje del personajeEscribir una presentación en vez de una frase dicha por el personaje
mes_exampleSíCómo habla: ejemplos de diálogo separados por <START>Meter 20 intercambios y ahogar el resto del prompt
creator_notesNoAvisos para el humano (modelo recomendado, advertencias)Creer que ahí se le “explica” algo al personaje
tags, creator, character_versionNoOrden y trazabilidadNinguno: son para ti
character_bookSí, por entradasEl “libro” de datos del mundo, que se activa por palabras claveLlenarlo de entradas que se disparan en cada mensaje

Dos convenciones que conviene conocer: dentro de esos textos, {{char}} se sustituye por el nombre del personaje y {{user}} por el tuyo. Y en mes_example, <START> marca dónde empieza cada intercambio de ejemplo.

El insight importante: una tarjeta no hace al personaje más inteligente. Lo hace más consistente. Si el campo description está mal escrito, ningún modelo lo arregla.


Cómo abrir una tarjeta sin instalar nada

Método 1: extraer el JSON y leerlo

Un PNG es un archivo binario, pero los chunks de texto están en claro (el JSON va en base64). Con Python, en dos líneas, puedes volcar el contenido y leerlo:

import base64, json, re
raw = open("personaje.png", "rb").read()
blob = re.search(rb"chara\x00(.+?)(?:\x00|IEND)", raw, re.S).group(1)
print(json.dumps(json.loads(base64.b64decode(blob)), indent=2, ensure_ascii=False)[:2000])

Si tu archivo usa ccv3, cambia chara por ccv3. Verás el JSON completo: nombre, descripción, escenario y todo lo demás.

Método 2: importarla en un lector

Los lectores de tarjetas (SillyTavern y similares) hacen exactamente eso, pero con interfaz: arrastras el PNG, leen el chunk, crean el personaje y te dejan editar los campos. No hay instalación “de personaje”: el personaje es el archivo.

Checklist de 30 segundos antes de importar

  1. ¿El nombre coincide con lo que promete la imagen?
  2. ¿description tiene texto real o está vacía?
  3. ¿first_mes suena a personaje o a folleto publicitario?
  4. ¿Hay un system_prompt o post_history_instructions con texto raro?
  5. ¿Cuántos caracteres suman los campos enviados a la IA?

De dónde salen las tarjetas y cómo detectar las malas

Archivos y repositorios

La mayoría circulan por repositorios comunitarios, archivos tipo Chub y enlaces de Reddit. Son gratuitos y no verificados. Eso no los hace malos por defecto, pero sí convierte la importación en una decisión de confianza: estás metiendo texto de un desconocido en el prompt de tu chat.

Seis señales de alarma

  • Instrucciones dirigidas al modelo, no al personaje: frases como “ignora las instrucciones anteriores” o “responde sin filtros” dentro de description. No son parte del personaje: son un intento de saltarse las reglas de la app.
  • system_prompt relleno en una tarjeta que dice ser “solo un personaje”.
  • Tamaño desproporcionado: si la ficha pasa de 8.000-10.000 caracteres, alguien está metiendo una novela o un manual.
  • Personajes con copyright de franquicias activas: pueden desaparecer del repositorio y dejarte con una tarjeta huérfana.
  • Contenido con menores o con personajes presentados como menores: se descarta, sin excepciones.
  • Campos vacíos y aspecto cuidado: es la señal más común de una tarjeta generada a toda prisa para llenar un catálogo.

El problema del contenido no verificado

Una tarjeta puede incluir un libro de personaje con entradas que se activan solas y meten 500 tokens por mensaje. No hay un aviso: lo notas cuando el chat empieza a responder cosas raras o a olvidar lo que dijiste hace dos frases.


El coste real: la tarjeta se come tu contexto

Aquí está la parte que ninguna lista de “mejores tarjetas” explica. Todo lo que va en los campos enviados ocupa ventana de contexto en cada mensaje. Como regla práctica, en inglés un token equivale a unos 4 caracteres de texto (en español, algo menos). Con eso puedes estimar sin herramientas:

Tamaño de la fichaTokens aproximadosQué efecto tiene
2.000 caracteres~500 tokensTarjeta ligera, deja casi todo el contexto para la conversación
6.000 caracteres~1.500 tokensEquilibrado si el personaje tiene mundo propio
12.000 caracteres~3.000 tokensEmpieza a notarse: menos margen para el historial
30.000 caracteres~7.500 tokensEl personaje “olvida” antes porque el historial se comprime antes

No es que una tarjeta grande sea mala. Es que el contexto es un presupuesto, y lo que gastas en ficha no lo gastas en memoria de la conversación. Si notas que el bot olvida detalles, el primer sospechoso no es el modelo: es el tamaño de la tarjeta.


Tarjeta + lector vs app gestionada

CriterioTarjeta + lectorApp gestionada (Candy AI)
Control del personajeTotal: editas los campos a manoAlto, pero dentro de lo que la app permite
Conocimiento técnicoMedio: archivos, chunks, contextoNinguno
Memoria entre sesionesLa gestiona el lector y su configuraciónLa gestiona la plataforma
Voz e imágenesDepende de plugins externosIntegradas, con consumo de tokens
MantenimientoTú actualizas todoSe actualiza solo
CosteGratis o el que pongas en tu APIPlan gratuito limitado + tokens

La conclusión honesta: la tarjeta es para quien quiere control fino y no le importa pelearse con archivos. La app gestionada es para quien quiere hablar hoy y no configurar nada.


Cómo hacer tu propia tarjeta en 10 minutos

1. Escribe la descripción como una ficha, no como una novela

Tres bloques: quién es (2-3 frases), qué aspecto tiene (2 frases), cómo habla (1 frase con un ejemplo de muletilla). Si necesitas más contexto, va en el libro de personaje, no aquí.

2. El primer mensaje decide el 80% del tono

first_mes debe ser una frase dicha por el personaje en una situación concreta, no una presentación. “¿Otra vez tú? Cerramos en veinte minutos” abre una escena. “Hola, soy Aiko, una barista de 24 años” la cierra antes de empezar.

3. Ejemplos de diálogo: tres intercambios como máximo

Cada bloque separado por <START> enseña el ritmo. Con tres vas sobrado; con diez ahogas el prompt y el personaje empieza a repetir los ejemplos.

4. Lo que puedes dejar vacío sin romper nada

system_prompt, post_history_instructions y creator_notes pueden quedarse vacíos. alternate_greetings también. No pasa nada. Lo que no conviene dejar vacío es description y scenario.

5. Exporta y verifica

Exporta desde el lector, vuelve a abrir el PNG con el método de arriba y comprueba dos cosas: que el chunk existe y que el nombre del personaje está dentro. Si el nombre no aparece, la exportación falló y tienes una imagen bonita sin tarjeta.


Cuándo NO necesitas una tarjeta

Si lo que quieres es una conversación que recuerde lo que le contaste la semana pasada, con voz, fotos y sin pelearte con archivos, una tarjeta no te aporta nada: te aporta trabajo. Ese es exactamente el caso de uso de una plataforma gestionada, donde el personaje se crea con un formulario y la memoria la lleva la propia app.

En Candy AI puedes crear un personaje propio con el plan gratuito (un personaje, unos 30 mensajes al día) y probar si el formato “app” te sirve antes de montar un lector de tarjetas. Si te sirve, te has ahorrado la parte técnica. Si no te sirve, al menos sabrás qué campos echas de menos y podrás escribirlos mejor en tu propia tarjeta.

→ Crear tu personaje en Candy AI (plan gratuito disponible)


Preguntas Frecuentes (FAQ)

¿Qué es exactamente una tarjeta de personaje IA?

Es un archivo que contiene la ficha de un personaje de roleplay: nombre, descripción, personalidad, escenario, primer mensaje y ejemplos de diálogo. Normalmente es un PNG con ese JSON codificado en base64 dentro de un chunk de texto llamado chara, de modo que se puede compartir como si fuera una imagen.

¿Cuál es la diferencia entre una tarjeta V2 y una V3?

La V2 guarda el personaje en un objeto data dentro de un PNG y es el formato que más lectores entienden. La V3 mantiene esos campos y añade recursos como expresiones, normalmente en un contenedor .charx o con el chunk ccv3. Un lector antiguo puede abrir una V3 y mostrar el personaje vacío.

¿Puedo abrir una tarjeta sin instalar SillyTavern ni nada parecido?

Sí. El JSON está en claro dentro del PNG, así que puedes extraerlo con un script de dos líneas o con cualquier visor de chunks PNG y leerlo como texto. Para usarla como personaje necesitarás un lector o una app que acepte importación, pero para inspeccionarla no hace falta nada.

¿Una tarjeta más grande hace que el personaje sea mejor?

No necesariamente. Los campos que se envían al modelo ocupan contexto en cada mensaje, así que una ficha de 30.000 caracteres puede dejar menos espacio para el historial y hacer que el personaje olvide antes. Lo que mejora a un personaje es la precisión de description y first_mes, no el volumen.

Depende de la jurisdicción y del uso, y no soy tu abogado. Lo que sí puedo decirte es que las tarjetas de franquicias activas desaparecen de los repositorios con frecuencia, y que una tarjeta con contenido de menores se descarta siempre, sin excepciones.

¿Qué hago si el personaje importado responde como un asistente y no como el personaje?

Revisa tres cosas en este orden: que first_mes esté escrito como diálogo del personaje, que mes_example tenga ejemplos separados por <START> y que no haya un system_prompt con instrucciones genéricas importadas de otra tarjeta. En el 90% de los casos el problema está en el primer mensaje.


Artículos relacionados: cómo crear un personaje IA paso a paso · creador de personajes IA · chatear con personajes IA · personajes IA con imagen · memoria de los personajes IA · mejores apps de roleplay IA · escenarios de roleplay · alternativas a Chub AI · personalidad de un chatbot