knowledge-transfer

Transferencia de conocimiento del proyecto impulsada por IA para Claude Code y Codex: documentos de incorporación más memorias filtradas por privacidad, verificadas contra el código actual antes de importar.

¿Qué es knowledge-transfer?

Esta habilidad permite la transferencia estructurada de conocimiento entre colegas que trabajan en el mismo proyecto, generando un paquete que incluye un documento de incorporación no técnico y las memorias acumuladas por la IA del agente, filtradas para eliminar información personal o confidencial. Es compatible con Claude Code (como habilidad independiente o plugin) y Codex (a través de SKILL.md). Durante la exportación, la habilidad analiza el proyecto, lee las memorias del agente, aplica estrictamente filtros de privacidad, y genera un manifiesto con los archivos resultantes en una carpeta `handover/`. En la importación, verifica que cada memoria siga siendo válida contra el código actual (usando git diff o búsqueda de archivos). En caso de archivos renombrados, intenta corregir las rutas automáticamente; si no es posible, descarta la memoria con una explicación. Finalmente, instala las memorias aceptadas en el nuevo agente y presenta el documento de incorporación completo al usuario. La habilidad maneja casos extremos como proyectos sin git, memorias ausentes, colisiones de slugs y versiones de manifiesto desconocidas, siempre deteniéndose y pidiendo instrucciones al usuario ante situaciones ambiguas o peligrosas.

Compatible con✓Claude Code✓Codex CLI✓Cursor✓Gemini CLI
npx skills add ferdinandobons/knowledge-transfer

Installed? Explore more Investigación y análisis de datos skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

Preguntar en tu IA favorita

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

Documentación

¿Qué hace knowledge-transfer?

Transfiere conocimiento del proyecto entre colegas: un breve documento de incorporación no técnico más las memorias acumuladas por la IA del proyecto, empaquetadas dentro del repositorio para que el nuevo integrante comience orientado y su IA comience informada.

Uso

Habilidad independiente de Claude Code:

/knowledge-transfer            # modo de detección automática (ver abajo)
/knowledge-transfer export     # colega saliente: construir el paquete de transferencia
/knowledge-transfer import     # nuevo colega: verificar + instalar memorias, leer el documento

Instalación como plugin de Claude Code:

/knowledge-transfer:knowledge-transfer
/knowledge-transfer:knowledge-transfer export
/knowledge-transfer:knowledge-transfer import

Codex u otro agente que lea SKILL.md:

$knowledge-transfer            # modo de detección automática
$knowledge-transfer export     # colega saliente
$knowledge-transfer import     # nuevo colega

Detección de modo (sin argumento)

  1. Si handover/manifest.json existe en la raíz del proyecto → anuncia modo de importación.
  2. De lo contrario → anuncia modo de exportación.

Indica el modo detectado en una línea y continúa. El usuario puede anularlo en cualquier momento.

Contratos

Lee estos antes de producir cualquier cosa:

  • references/package-format.md — estructura del paquete y esquema del manifiesto
  • references/privacy-filter.md — qué se puede y qué no se puede exportar
  • references/onboarding-template.md — estructura, tono y extensión del documento
  • references/agent-memory.md — cómo localizar e instalar memorias en Claude, Codex u otro agente

Fase de exportación

Se ejecuta desde la raíz del proyecto por el colega que abandona el proyecto.

1. Analizar el proyecto

  • Lee README, archivos de guía del agente (CLAUDE.md, AGENTS.md, GEMINI.md, .cursor/rules/, etc. si existen), la estructura de nivel superior, puntos de entrada y archivos de configuración principales. Usa subagentes para bases de código grandes en lugar de leer todo en línea.
  • Identifica: qué hace el proyecto, los 3–7 componentes principales y 2–3 flujos lógicos de extremo a extremo que valga la pena narrar.
  • Detecta el idioma dominante del proyecto (README, documentación, mensajes de commit recientes); el documento de incorporación se escribe en ese idioma. Si no está claro o es mixto → inglés.

2. Leer las memorias

  • Localiza la fuente de memoria del proyecto del agente actual usando references/agent-memory.md.
  • Lee solo las memorias con alcance a este proyecto o repositorio. No exportes preferencias globales del usuario ni historial de proyectos no relacionados.
  • Si no hay directorio de memorias o no hay memorias → continúa solo con el documento, establece memories: {"exported": 0, "excluded": 0} en el manifiesto e informa al usuario que el paquete no contiene memorias.

3. Filtrar las memorias

Aplica estrictamente references/privacy-filter.md a cada memoria. Produce las versiones portátiles (reescritas, neutrales) y la lista de exclusión por memoria con razones.

4. Escribir el paquete

  • Si handover/ ya existe, DETENTE y pregunta antes de sobrescribir.
  • Escribe handover/ONBOARDING.md siguiendo references/onboarding-template.md.
  • Escribe cada memoria superviviente en handover/memories/<slug>.md en formato portátil.
  • Escribe handover/manifest.json según el esquema (SHA del commit desde git rev-parse HEAD; omite commit si no es un repositorio git, omite author si la configuración de git no tiene nombre).

5. Lista de verificación final — verificar antes de declarar como terminado

  • grep en todo el árbol handover/ buscando el nombre, correo electrónico y nombre de usuario del colega: cero coincidencias.
  • Ninguna memoria de tipo user en handover/memories/.
  • ONBOARDING.md tiene entre 600 y 1000 palabras (wc -w) y contiene las seis secciones de la plantilla.
  • Cada archivo/ruta citado en una memoria exportada existe en el proyecto.
  • manifest.json se analiza correctamente y los recuentos coinciden con los archivos reales.

Informa al usuario: contenido del paquete, lista de exclusión con razones y sugiere confirmar handover/ en el repositorio. No confirmes sin preguntar.


Fase de importación

Se ejecuta por el nuevo colega, desde la raíz del proyecto, después de clonar.

1. Leer el paquete

  • Lee handover/manifest.json, handover/ONBOARDING.md y cada archivo en handover/memories/.
  • Si falta handover/ → detente: explica que el colega saliente debe ejecutar /knowledge-transfer export primero y luego confirmar el resultado.
  • Si manifest.version es desconocido → detente y di que la habilidad es demasiado antigua para este paquete.

2. Verificar cada memoria contra el código actual

  • Si el repositorio es git y el manifiesto tiene commit, ejecuta git diff --stat <commit>..HEAD para ver qué áreas cambiaron desde la exportación.
  • Para cada memoria, verifica que los archivos, rutas e identificadores que cita aún existan (Glob/Grep, no suposiciones). Clasifica:
    • válida — todo correcto → instalar tal cual;
    • obsoleta, corrección obvia — por ejemplo, un archivo citado fue renombrado y la nueva ruta es inequívoca (git log --follow, o una búsqueda única que coincida) → actualizar el cuerpo de la memoria, luego instalar;
    • obsoleta, sin corrección obvia — descartar, anotar la razón en una línea.

3. Instalar

  • Instala cada memoria aceptada a través del mecanismo de memoria del agente actual (ver references/agent-memory.md), manteniendo intacto el contenido de la memoria portátil y adaptando solo el envoltorio de almacenamiento/índice si el agente destino lo requiere.
  • Colisión de slug con una memoria existente: NO sobrescribir. Informa de la colisión y pregunta al usuario cuál conservar.
  • Si el almacén de memoria destino tiene un archivo de índice, añade una línea de índice por cada memoria instalada (crearlo si está ausente). Si el agente actual prohíbe escrituras directas en memoria, crear o presentar el artefacto de actualización de memoria aprobado en su lugar.

4. Informar

Presenta al usuario, en este orden:

  1. El contenido completo de ONBOARDING.md (es corto por diseño).
  2. El resumen de importación: instaladas / actualizadas / descartadas, una línea de razón cada una.
  3. Una nota final: las preguntas técnicas ahora pueden apoyarse en las memorias importadas.

Casos extremos

SituaciónComportamiento
Sin memorias en la exportaciónPaquete solo con documento; decirlo explícitamente.
El proyecto no es un repositorio gitManifiesto sin commit; la verificación de importación recae solo en comprobaciones de existencia.
handover/ existe al exportarPreguntar antes de sobrescribir.
handover/ falta al importarDetenerse con instrucciones para el colega saliente.
Colisión de slug al importarNunca sobrescribir; mostrar y preguntar.
manifest.version desconocidoDetenerse; pedir al usuario que actualice la habilidad.

Skills relacionados