Communitygithub.com

100x-persona

Asigna un personaje (quién habla) y una escena (dónde habla) independientes a un texto de guion o copia, con referencias textuales verificables.

¿Qué es 100x-persona?

El skill **100x-persona** forma parte del nivel L2 de generación creativa del ecosistema 100x, concretamente el paso "3.1 Personaje × Escena". Su función es tomar un texto de guion o copia puro y, a partir del análisis de sus señales internas (autoridad, dolor, contexto), generar un bundle estructurado que comprende: un mapa de personajes (`personas`), un mapa de escenas (`scenes`) como entidades independientes (no como campos de los personajes), y una tabla de vinculaciones (`pairings`) que asocia cada personaje con una escena y un fragmento textual específico del guion. La salida sigue un esquema JSON estricto (`schema.json`) y se rige por cuatro axiomas fundamentales: las escenas son entidades independientes con referencias de integridad, las evidencias de autoridad/dolor deben ser subcadenas textuales exactas del guion original (con limitaciones conocidas para sarcasmo o inversión semántica detectadas por un mecanismo de autocomprobación), las escenas deben especificar coordenadas microconcretas (no lugares genéricos) con al menos dos objetos de atrezzo, y no se permiten personajes o escenas huérfanos (deben estar referenciados por al menos un pairing). El flujo de trabajo consta de tres fases: inferencia de personajes (extrayendo señales de autoridad y dolor), modelado de escenas (entidades independientes vinculadas a fragmentos de guion y personajes), y ensamblado de la salida JSON con validación completa de los axiomas. Soporta plataformas de desarrollo de agentes de IA (como Claude Code, Cursor, Codex) que procesen texto puro, y está diseñado para ejecutarse de forma independiente: si falta el `source_script`, rechaza la entrada con una pregunta fija; si falta la información opcional upstream de segmentación (`100x-segment`), la omite silenciosamente sin requerir que el usuario ejecute otro skill previamente. Incluye un sistema de autocomprobación (`--selftest`) que valida la integridad de las referencias, las subcadenas de evidencia y la ausencia de huérfanos, además de una comprobación opcional de frases de autodesconfianza que, si se detectan, exige una advertencia explícita.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/kezd088/100x-skill-tiktok/tree/main/skills/100x-persona

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace 100x-persona?

Una línea de posicionamiento

Introduce un texto de guion/copia puro y obtén "quién habla" (personaje) + "dónde habla" (escena, entidad independiente, no un campo adjunto al personaje) + cómo ambos se vinculan con las frases originales del guion. Los tres elementos pueden referirse palabra por palabra al texto original. Pertenece a la capa de generación creativa L2 del ecosistema 100x, correspondiente al paso "3.1 Personaje × Escena".

Cuándo activarlo

El usuario dice:

  • "Asigna un personaje a este guion" / "¿Quién debería presentar este guion?" / "¿Cómo defino este personaje?"
  • "¿Cómo se define esta escena?" / "¿Qué escena encaja con este anuncio?" / "¿Dónde se debería filmar este guion?"
  • "who should deliver this script" / "what persona fits this product"
  • "what setting fits this ad" / "where should this be filmed"
  • O simplemente proporciona un texto de guion/copia y pide "asignar personaje y escena" / "assign a character and setting"

Entrada

Entrada mínima (Categoría A, obligatoria): source_script — texto completo del guion/copia. Este skill no acepta archivos de video, solo texto.

Salida opcional aguas arriba (Categoría C, se omite silenciosamente si no existe, no bloquea, y nunca requiere que el usuario ejecute otro skill primero): 100x-segment produce segments[] (si existe, pairings[].segment_ref puede rellenarse; si no existe, el campo se omite y la localización se basa en script_span_quote).

Salida

La estructura está definida en schema.json: PersonaSceneBundle = source_script (eco del texto original para verificación) + personas (mapa de personajes, entidades independientes) + scenes (mapa de escenas, entidades independientes, al mismo nivel que los personajes, no un campo de cadena de texto de los personajes) + pairings (tabla de vinculación personaje×escena×frase original del guion) + meta. Opcionalmente se puede renderizar un resumen en Markdown legible (lista de personajes / lista de escenas / tabla de correspondencias de vinculaciones).

Restricciones principales (4 axiomas, consultar axioms.md)

  1. Las escenas son entidades independientes, referenciadas por ID, no son campos incrustados en los personajes — personas/scenes son dos mapas al mismo nivel, pairings[] contiene persona_ref/scene_ref que deben existir realmente en el mapa correspondiente (integridad de referencias).
  2. La autoridad/público objetivo de un personaje debe basarse en subcadenas textuales exactas del original, no inventadas — authority_evidence_quote / audience_pain_quote / script_span_quote deben poder encontrarse palabra por palabra en source_script. Limitación conocida (no un defecto oculto): una subcadena textual solo demuestra que "esta frase existe en el original", no demuestra que "la dirección semántica de esta frase en el campo del personaje no se ha invertido" — por ejemplo, extraer una frase de autodesconfianza ("si no me crees") y usarla al revés como un ancla de autoridad sigue siendo una subcadena válida. El mecanismo actual incluye una detección de frases de autodesconfianza de conjunto cerrado (que al activarse exige divulgación manual, véase axioma 2 de axioms.md), pero las inversiones del tipo ironía/cita-refutación aún no se pueden detectar; este es el techo de la coincidencia de cadenas, consulte el párrafo "Techo del mecanismo y medidas de mitigación" en el axioma 2 de axioms.md.
  3. Las escenas deben ser específicas en coordenadas microconcretas, no se permiten lugares genéricos — lista de términos genéricos de conjunto cerrado rechazada + al menos 2 objetos de atrezzo concretos.
  4. Personajes y escenas sin huérfanos: una vez creados, deben ser referenciados por al menos una vinculación; no se acumulan "para que la matriz parezca completa".

Flujo de tres fases

Consulte workflow.md: Fase 1 Inferencia de personajes (escaneo de señales de autoridad/dolor en el guion, extracción de frases de evidencia palabra por palabra) → Fase 2 Modelado de escenas (cada pista de escena se crea como entidad independiente + vinculación con personaje/frase original del guion + autocomprobación de cero huérfanos) → Fase 3 Salida (ensamblado JSON, verificación de axiomas 1–4).

Garantía de invocación independiente

Categoría A (source_script) falta → texto fijo de rechazo preguntando, no adivina, no acepta archivos de video como sustituto. Categoría C (salida upstream de 100x-segment) falta → se omite silenciosamente, nunca requiere que el usuario ejecute otro skill primero.

Palabras prohibidas

Permíteme / Espero / Quizás / Probablemente / Posiblemente / Tal vez / Permítanos; tono de atención al cliente de IA (as an AI / I'd be happy to / feel free to); no inventar cualificaciones/certificaciones/testimonios/datos de efectividad que no estén en el guion original; no codificar diccionarios de categorías de clientes; micro_coordinate no debe usar términos genéricos de conjunto cerrado (consulte axioma 3 de axioms.md: en algún lugar / donde sea / cualquier lugar / TBD / somewhere / anywhere, etc.).

Enrutamiento (recomendado, no es una dependencia estricta)

  • Guion ya segmentado, se desea asignar personaje/escena por segmento en lugar de a todo el texto → skill de segmentación (si ya está construido, segment_ref se puede rellenar).
  • Se desea convertir la descripción de personaje/escena en un prompt de generación de video por IA → skill de ensamblado de prompts (si ya está construido).
  • Se desea primero buscar palabras clave de referencia para imágenes y luego definir personaje/escena → skill de palabras clave de búsqueda (si ya está construido).
  • Se desea volver a la entrada principal para un nuevo triaje → entrada principal del ecosistema 100x (si ya está construida).

Todo lo anterior son "recomendaciones posteriores a la salida, no dependencias previas"; si el skill correspondiente aún no está construido, no afecta el trabajo independiente de este skill.

Autocomprobación de fábrica

Ejecute node scripts/validate.js --selftest para verificar. Las restricciones de nivel de estructura declaradas en schema.json (required/additionalProperties/enum/pattern/minItems, etc.) son ejecutadas realmente por ajv (validador real de JSON Schema draft-07, declarado como devDependency en package.json, ejecute npm install primero y luego ejecute) dentro de scripts/validate.js, no son enumeraciones de campos escritas a mano. Los axiomas 1 (integridad de referencias), 2 (subcadenas de evidencia) y 4 (sin huérfanos) son tres tipos de reglas de agregación entre objetos/campos que la estructura JSON Schema vanilla no puede expresar; estos tres elementos se complementan con código escrito a mano en scripts/validate.js. Además, incluye checkAuthorityHedgeRisk (mitigación parcial del axioma 2, cuando se detecta una frase de autodesconfianza de conjunto cerrado, exige divulgación en meta.warnings, de lo contrario FALLA) — esta es solo una mitigación, no una solución completa; las inversiones semánticas de frases de evidencia del tipo ironía/cita-refutación aún no se pueden detectar. El elemento 10 de --selftest deja honestamente un caso de regresión real que "actualmente se aprobaría" para demostrar este límite, no afirma que esté completamente tapado:

npm install                                                      # primera vez, instalar ajv
node scripts/validate.js <bundle.json> [bundle2.json ...]     # validar salida
node scripts/validate.js --selftest                            # ejecutar casos de regresión integrados

Fuente

Este skill se ha construido de forma independiente basándose en un estilo de referencia de criterios y una especificación de estructura de campos. La fuente de cada criterio, el diseño de cada campo y las decisiones de diseño se detallan en sources.md.

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

Skills relacionados