DEV Community

Victor Aguilar C.
Victor Aguilar C.

Posted on

Apex 1. OpenClaw, Historial de Providers.

Importar historial de chat desde ChatGPT, Anthropic y Google Gemini

Una de las cosas más poderosas que puedes hacer con OpenClaw es bootstrap la memoria de tu agent con años de conversation history de otras plataformas de IA. En vez de empezar desde cero, tu agent hereda contexto sobre tus proyectos, decisiones, preferencias y patrones de pensamiento de miles de conversaciones previas. Ray Fernando demostró esto en su livestream, importando 3 años de historial de ChatGPT (4,000+ conversaciones) y su export completo de Anthropic dentro de su instancia de OpenClaw.


What You’ll Need

  • Tu ChatGPT data export (Settings > Data Controls > Export Data — OpenAI te manda un download link por email)
  • Tu Anthropic/Claude data export (Settings > Export Data — mismo proceso)
  • Tu Google Gemini data export (Ve a https://takeout.google.com > sign in > busca “My Activity” > selecciona solo “Gemini Apps” de la lista de activity data > exporta como JSON. Google te manda un download link por email, que puede tardar unas horas.)
  • Una tool capaz de escribir un conversion script. Cursor con Opus 4.6 funciona bien para esto, pero Claude Code o cualquier LLM-assisted coding tool sirve.
  • El OpenClaw GitHub repo clonado localmente (para que el LLM entienda el memory file format)

Step 1: Exportar tus datos

ChatGPT: Ve a Settings > Data Controls > Export Data. OpenAI te mandará un download link por email en unos minutos. El export es un zip con archivos JSON con todas tus conversaciones, memories y account data. Esto puede ser grande — tres años de uso intenso produjeron un export de 138MB para Ray.

Anthropic/Claude: Ve a Settings > Export Data. Anthropic te mandará un download similar. Esto incluye conversaciones y cualquier Projects que hayas creado, que son especialmente valiosos porque contienen tus workflows curados y system prompts.

Google Gemini: Ve a https://takeout.google.com y sign in con la cuenta Google que usas para Gemini.

  • El Gemini chat history está nested dentro de tu activity data, no aparece como un servicio separado.
  • Baja hasta “My Activity” (bajo la M en la lista alfabética). No solo marques el checkbox — Haz click en el botón “All activity data included” (o “Select specific activity data”).
  • En el popup, haz click en “Deselect all” arriba, luego baja y marca solo “Gemini Apps”. Click OK.
  • De regreso en la lista principal, haz click en “Multiple Formats” junto a “My Activity” y setea el formato a JSON (a menudo está en HTML por default, que es más difícil de parsear).
  • Luego click “Next step”, elige tu delivery method (email es lo más simple) y crea el export. Google te mandará un download link por email — Puede tardar desde minutos hasta horas dependiendo del tamaño de tu historial.

Step 2: Deja que un LLM investigue la estructura de archivos

No intentes parsear estos exports a mano — son JSON profundamente nested con filenames hasheados que para humanos no tienen sentido. Mete los archivos exportados a un Cursor workspace (o similar) y usa este prompt:

“I just exported my ChatGPT history, my Anthropic/Claude history, and my Google Gemini history. The files are in this directory. I want to extract memories from these conversations and convert them into OpenClaw-compatible markdown files. First, investigate the file structure of all three exports and report what you find. Also, clone the OpenClaw repo (https://github.com/openclaw/openclaw) into a temp directory so you can understand how OpenClaw’s memory system works - look at the workspace and memory directory structure.”

La técnica clave aquí — y esto fue lo que hizo tan efectivo el approach de Ray — es decirle al LLM que clone el OpenClaw repo para que entienda el target format. Sin ese contexto, el LLM está adivinando la estructura de los memory files. Con eso, el LLM sabe exactamente cómo formatear el output.

Si usas Cursor, lanza parallel agents para investigar — uno por cada export format y uno para el OpenClaw repo. Esto corre mucho más rápido que investigar secuencialmente.


Step 3: Generar y correr el conversion script

Pídele al LLM que escriba un Python script que:

  • Lea los tres JSON exports (ChatGPT, Anthropic, Gemini)
  • Extraiga key info: topic summaries, decisiones tomadas, project context, personal preferences
  • Genere OpenClaw-compatible markdown files organizados bajo un subdirectorio memory-imports/ (manteniendo imports separados de las notas del propio agent)
  • Cree un index file para búsqueda eficiente
  • Maneje Anthropic Projects como high-value memory files separados (contienen tus system prompts y workflows curados — se traducen directo a agent context)

El script debería ser purely additive — nunca debería tocar tus archivos SOUL.md o AGENTS.md.


Step 4: Transferir a la Mac Mini

Si generaste los files en otra máquina:

# On the source machine, compress the output
tar czf openclaw-import.tar.gz openclaw-import/

# Transfer to Mac Mini via AirDrop, network share, or SCP
# Using SCP over Tailscale:
scp openclaw-import.tar.gz yourusername@100.x.x.x:~/Downloads/

# Or just AirDrop the tar file from your Mac - it's usually the simplest option
Enter fullscreen mode Exit fullscreen mode

En la Mac Mini:

cd ~/Downloads
tar xzf openclaw-import.tar.gz
cd openclaw-import
chmod +x import.sh
./import.sh
Enter fullscreen mode Exit fullscreen mode

Step 5: Habilitar memory search e indexing

Después de importar, habilita memory search para que el agent pueda encontrar y referenciar el historial importado:

openclaw config set memory.search.enable true
Enter fullscreen mode Exit fullscreen mode

Luego reinicia el gateway:

openclaw gateway restart
Enter fullscreen mode Exit fullscreen mode

El agent empezará a indexar los files importados. Con 1,000+ files esto tarda unos minutos. Puedes probarlo preguntándole a tu agent por algo que sabes que está en tu historial — debería poder encontrarlo y referenciarlo.

Important Notes

  • Importa después de completar el soul file bootstrap, no antes. Primero dale identidad al agent, luego rellena memories. Piensa: birth primero, memories después. El agent necesita personalidad y propósito antes de tener historia de la cual tirar.

  • Mantén las imported memories en un subdirectorio separado (memory-imports/chatgpt/, memory-imports/claude/, memory-imports/gemini/) para que no se mezclen con las notas del agent hacia adelante. OpenClaw memory search indexa todos los markdown files bajo memory/, así que los subdirectorios están bien — igual serán searchables.

  • El conversion script va a variar según la estructura específica de tus exports. No esperes un script one-size-fits-all — por eso usas un LLM para generar uno tailor-made para tu data. Cada provider tiene quirks en su export format.

  • Anthropic Projects son particularmente valiosos porque contienen tus system prompts y workflows curados — priorízalos en tu import.

  • Google Gemini chat history está enterrado en Takeout. Está bajo “My Activity”, no aparece como servicio separado. Asegúrate de setear el export format a JSON — el HTML default es más difícil de parsear para scripts.

  • Si después del import openclaw command no se encuentra, sourcea tu shell profile. Abre una nueva ventana de terminal o corre source ~/.zshrc para recargar el path.

Top comments (0)