Auditar antes de tocar
Inventario de solo lectura de los dos runtimes con doctor.sh y audit.sh: cada skill sale como reutilizable, adaptador, nativo o sin resolver.
Formación Claude → Codex · 1 curso en 3 rutas + el kit
Solo CLAUDE.md y AGENTS.md están atados al proveedor. Reglas, decisiones, tareas, skills y handoffs son Markdown portátil. En 3 rutas sacas ese material del runtime, lo pones en el proyecto y compruebas, en una sesión nueva, que Claude Code y Codex continúan donde el otro se quedó.
Requisito previo: ya usar Claude Code o Codex. Curso y kit abiertos, en portugués, inglés y español.

El problema
Quien usa un asistente de código desde hace algunos meses ha acumulado instrucciones, memoria, skills, hooks y miles de sesiones en un formato que solo ese runtime lee. La factura llega el día del cambio.
Después de la formación
Inventario de solo lectura de los dos runtimes con doctor.sh y audit.sh: cada skill sale como reutilizable, adaptador, nativo o sin resolver.
Dividir el CLAUDE.md: las reglas portátiles van al AGENTS.md, lo que depende de un plugin o hook se queda en el archivo específico.
AGENTS.md, context/, tasks/current.md y handoffs/latest.md en el proyecto, sin sobrescribir nada de lo que ya existe.
Skills canónicas con polyskill: una fuente, copias generadas por runtime y un comando de drift que muestra lo que divergió.
Readback en una sesión nueva en los dos runtimes, con las cinco preguntas de continuidad, y el ciclo diario de handoff y prime.
Modelo local en contenedor, MCP y hooks entre Claude y Codex, y workspace de cliente con alcance explícito.
1 curso · 3 rutas · 18 módulos + el kit
La ruta 1 define cada término la primera vez que aparece. La ruta 2 ejecuta el kit comando por comando. La ruta 3 lo aplica todo en seis proyectos sobre un sistema real. El kit cierra el camino: lo ejecutas en tu proyecto, en modo audit.
Fundamentos
Por qué separar el cerebro del modelo, el vocabulario (runtime, harness, skill, MCP, hook, handoff), los tres niveles de migración y la anatomía de un workspace portátil.
Manos a la obra
doctor.sh y audit.sh, CLAUDE.md → AGENTS.md, el núcleo instalado sin sobrescribir, skills con polyskill y el readback probado en los dos runtimes.
Proyectos
Migrar el primer proyecto real, MCP y hooks entre Claude y Codex, memoria curada con tu aprobación, modelo local en contenedor y workspace de cliente.
Kit
Scripts de diagnóstico, adaptación, prueba y drift, la plantilla del núcleo portátil y los mega-prompts A y B, todos empezando en MODE: audit.
Para quién es
Incluido en la formación
El kit agente-claude-codex es bash y Markdown, abierto en GitHub. Nada en ~/.claude o ~/.codex se copia en masa ni se borra, e instalar una skill hace un backup al lado.
Por qué esta formación
Todo script y todo mega-prompt empieza analizando, planificando y simulando. Lees el plan antes de cambiar un archivo.
Que un archivo exista no prueba nada. El readback abre una sesión nueva en cada runtime y comprueba si el agente leyó y usó.
La auditoría encontró 89 skills solo en Claude: 71 reutilizables, 15 adaptador, 2 nativo y 1 sin SKILL.md. El registro está en el repositorio.
Las versiones en inglés y español son espejos completos, con progreso separado por idioma.
Preguntas
El orden sugerido es ruta 1 → 2 → 3 y después el kit en tu proyecto. Quien ya conoce runtime, harness y handoff puede empezar por la ruta 2.
Migrar es llegar al nivel 1 o 2: importar en la app o ejecutar el kit. Ser agnóstico es el nivel 3, el único que sobrevive al próximo cambio de modelo. La ruta 1 ayuda a elegir.
No. Ser agnóstico no es abandonar Claude: sigues eligiendo el ejecutor por tarea, con el conocimiento en el proyecto.
Terminal, git y Claude Code o Codex instalados. El kit es bash y Markdown, sin interfaz. El módulo 3.4 añade un modelo local en contenedor.
Son 3 rutas con 6 módulos cada una, 18 en total, y 108 temas. La ruta 3 tiene seis proyectos con objetivo, comandos, criterio de aceptación y riesgos.
Empieza por la ruta 1 y elige un proyecto que conozcas bien. En una sesión en modo audit ya sabes qué es portátil, qué necesita un adaptador y qué depende de un hook.