PTENES
Saltar al contenido
MÓDULO 3.2

💉 Inyectando en el Modelo (y sin datos propios)

El playbook solo sirve si ENTRA en el contexto. Aquí: el hook SessionStart, convertirse en skill, el CLAUDE.md, el plan B con traces abiertos en Hugging Face para quienes no tienen datos propios, qué se transfiere y qué NO, y la ética de cerrar el ciclo.

6
Temas
30
Minutos
Aplicado
Nivel
Práctica
Tipo
playbook.md la fuente hook SessionStart skill fable-mindset CLAUDE.md additionalContext inicio de la sesión
1

🪝 Hook SessionStart

El camino «siempre activo, sin pensar»: el script inject-playbook.sh inyecta el playbook como additionalContext en cada sesión. Lo señalas en el evento SessionStart del settings.json. E é fail-open: si el archivo del playbook no existe, la sesión sigue con normalidad: nada se rompe.

// ~/.claude/settings.json
{
  "hooks": {
    "SessionStart": [
      {
        "matcher": "startup",
        "hooks": [
          { "type": "command",
            "command": "bash ~/projetos/fablelite/hooks/inject-playbook.sh" }
        ]
      }
    ]
  }
}

✓ Lo que hace el hook

  • ✓Lee el .md y devuelve mediante additionalContext.
  • ✓Se activa en el startup de cada sesión.
  • ✓Apunta a otro archivo mediante FABLE_PLAYBOOK=.

🔎 Fail-open en la práctica

Si el playbook no existe, el script imprime {"continue":true} y sale con código 0: la sesión comienza normalmente. La inyección es un extra, nunca un punto de falla.

2

🧩 Convertir en skill

No siempre quieres el playbook en TODAS las sesiones. La skill fable-mindset carga el playbook bajo demanda y también trae los scripts (debloat, extract, compare, make_playbook). Es el canal para cuando prefieres invocarlo explícitamente en lugar de inyectarlo siempre.

›

Bajo demanda

El modelo consulta el playbook cuando la tarea es de código, no en todas las conversaciones. Tú controlas cuándo.

›

Scripts incluidos

La skill incluye todo el pipeline: puedes volver a medir y regenerar el playbook desde la propia invocación.

💡 Consejo práctico

La skill fable-mindset está en ~/.claude/skills/fable-mindset/. Úsala cuando quieras tener el playbook Y las herramientas a mano, sin dejarlo activo todo el tiempo.

3

📄 CLAUDE.md — el camino más simple

El mínimo esfuerzo: pega el contenido del playbook (o un enlace a él) en el CLAUDE.md — global o del proyecto. Ya es inyectado automáticamente en cada sesión, con control de versiones junto con el repo, sin ninguna configuración de hook. Tres canales, tres ventajas y desventajas: elige según lo que necesites:

Canal Cuándo se activa Elige si…
🪝 Hook siempre activo (en cada SessionStart) quiere no pensar, en cada sesión
🧩 Skill bajo demanda + los scripts quiere invocar explícitamente
📄 CLAUDE.md inyectado automáticamente, con control de versiones quiere el mínimo esfuerzo

📊 Resumen de la decisión

  • Siempre activo, sin pensar → hook SessionStart.
  • Bajo demanda + los scripts juntos → skill.
  • Esfuerzo mínimo → CLAUDE.md.
4

🤗 ¿No tienes datos de Fable? Los traces abiertos

¿Y si apenas tuviste tiempo para conversar con Fable y no tienes sesiones suyas para analizar? Algunas personas abrieron sus propias sesiones en Hugging Face: Glint-Research/Fable-5-traces. O import_hf_traces.py descarga el dataset y ejecuta el MISMO ejercicio de comportamiento sobre datos de terceros — misma lectura de herramientas/turno, razonamiento y orden de trabajo.

pip install datasets

# Glint-Research/Fable-5-traces (default):
python import_hf_traces.py
# inspeciona o schema do dataset:
python import_hf_traces.py --peek
# escreve stats.json num corpus:
python import_hf_traces.py --out corpus_fable_hf

💡 Consejo práctico

El importador es defensivo: intenta mapear formatos comunes (chat, JSONL integrado, transcripción sin procesar). Si el recuento sale extraño, abre un registro con --peek y ajusta record_to_events(). Después, make_playbook.py --from-json se convierte en playbook (lado a = estos datos).

Dataset

Fable-5-traces (HF)

Requisito

pip install datasets

Script

import_hf_traces.py

Resultado

mismo ejercicio

5

🎚️ Qué se transfiere y qué NO

La expectativa honesta: imitas el RITMO (pensar antes, leer antes de editar, cerrar el ciclo), no clona el modelo. El poder de Fable está en los pesos, y eso el playbook no lo abarca. Lo que sí hace es mejorar la ejecución del modelo objetivo; no se convierte en Fable.

✓ SE TRANSFIERE (el ritmo)

  • ✓Pensar antes de actuar en lo no trivial.
  • ✓Leer antes de editar; herramienta con propósito.
  • ✓Cerrar el ciclo con una prueba/build.

✗ NO se transfiere

  • ✗Los pesos del modelo — dónde reside el poder.
  • ✗Convertirlo en Fable: la identidad no cambia.
  • ✗El contenido del razonamiento (viene cifrado en los registros).

🔎 La lectura honesta

El playbook es una mejora de proceso, no un trasplante de capacidad. Le da al modelo objetivo el buen ritmo medido en Fable: una ganancia real, sin la promesa mágica de "convertir Opus en Fable".

6

⚖️ Ética y generalización

Para cerrar el ciclo con responsabilidad: ejecútalo en TU historial; trata el corpus como sensible — tiene tu código y tus datos. El método no es exclusivo del par Fable/Opus: se aplica a Opus, Codex y modelos de código abierto. Y mantén el playbook actualizado: itera con datos nuevos a medida que acumulas sesiones.

logs delta medido playbook inyectado en el modelo los logs nuevos retroalimentan — itera el playbook

⚠️ El corpus es sensible

Tus registros contienen código, rutas y posiblemente secretos. Trátalos como datos personales: redacta la información sensible antes de compartirlos y no los expongas. El oro está en el ritmo, no en los datos — y el ritmo puedes publicarlo; los datos, no.

Ejecuta en

tu historial

Corpus

trátalo como sensible

Aplica a

Opus/Codex/open-source

Mantén

iterando con datos nuevos

💉 Resumen del módulo

✓
Hook SessionStart — inyecta como additionalContext, fail-open.
✓
Skill fable-mindset — bajo demanda, con los scripts juntos.
✓
CLAUDE.md — autoinyectado, esfuerzo mínimo.
✓
¿Sin datos? import_hf_traces.py — Glint-Research/Fable-5-traces en HF.
✓
Imitas el RITMO, no clonas el modelo — el poder está en los pesos.
✓
Corpus sensible; itera con datos nuevos — el ciclo se cierra y vuelve a empezar.

Fin de la ruta:

Del registro al playbook inyectado: el método es tuyo. Ejecútalo con tu historial e itera.