Trabajar con un agente de IA es como vivir con el protagonista de Memento

| Última modificación: 4 de mayo de 2026 | Tiempo de Lectura: 5 minutos
Premios Blog KeepCoding 2025

Co-Fundador de KeepCoding

Imagínate que tienes un compañero de trabajo brillante. Resuelve problemas complejos, escribe código limpio, entiende lo que le pides a la primera. Pero cada mañana, cuando le dices «abre el proyecto del curso», te mira con cara de póker y pregunta: «¿Qué curso? ¿Dónde está?»

Todos los días. Sin excepción.

Es exactamente como vivir con Leonard Shelby, el protagonista de Memento. El tipo que no puede formar memorias nuevas y tiene que tatuarse las cosas importantes en el cuerpo para no olvidarlas.

Yo trabajo con Claude Code en cuatro o cinco proyectos distintos a diario. Y durante semanas, cada vez que le decía «vamos al proyecto del curso» o «abre el blog», el tío se ponía a hacer find / -name "p101" como un explorador victoriano buscando las fuentes del Nilo. Cinco minutos rastreando el disco duro para encontrar un directorio que yo uso todos los días.

Me sacaba de quicio.

El problema: amnesia anterógrada digital

Tu agente de IA empieza cada sesión con una hoja en blanco. No sabe dónde vives. No sabe qué proyectos tienes. No sabe que ~/courses/p101/program existe, que tu blog está en ~/code/frr.dev, o que el repo de Ansible se llama wuwei y está en ~/code/wuwei/ansible.

Cada sesión nueva, vuelta a empezar. Como Leonard despertándose en aquella habitación de motel.

La primera reacción natural es decirle la ruta. Cada vez. Manualmente. «Está en /Users/fernando/code/tokamak.» Y funciona, pero es como tener que presentarte a tu compañero de mesa cada mañana. A la tercera semana te planteas si no será más fácil trabajar solo.

La solución del mundo real: zoxide

Antes de tatuar nada, hablemos de la herramienta que resuelve el problema para humanos.

zoxide es un cd con memoria. En román paladino: un reemplazo del comando cd que recuerda a qué directorios has ido y te lleva al más probable con un patrón parcial.

# En vez de esto:
cd /Users/fernando/courses/p101/program

# Escribes esto:
z p101

Ya está. zoxide sabe que cuando dices «p101», quieres ir a /Users/fernando/courses/p101/program, porque es donde has ido las últimas 47 veces que has escrito algo parecido.

Funciona con frecency — un algoritmo que combina frecuencia y recencia. Los directorios que visitas mucho y has visitado hace poco suben al tope. Los que no tocas en meses bajan. Como el algoritmo de TikTok, pero para tu filesystem.

Instalarlo es trivial

brew install zoxide

# Añadir a tu shell (Fish en mi caso):
# en ~/.config/fish/config.fish
zoxide init fish | source

A partir de ahí, cada cd que hagas alimenta la base de datos de zoxide. Y z <patron> te lleva donde quieres sin pensar.

z tokamak    # → /Users/fernando/code/tokamak
z blog       # → /Users/fernando/code/frr.dev
z wuwei      # → /Users/fernando/code/wuwei/ansible
z p101       # → /Users/fernando/courses/p101/program

Si alguna vez hay ambigüedad (dos directorios que podrían encajar), zi te abre un selector interactivo con fzf.

zoxide para tu agente: zoxide query

Aquí viene la parte buena. zoxide tiene un comando query que no cambia de directorio, solo devuelve la ruta más probable:

zoxide query p101
# → /Users/fernando/courses/p101/program

Esto es oro para un agente de IA. En vez de hacer find por todo el disco, una sola llamada a zoxide query le da la ruta correcta en milisegundos. Cero exploración. Cero suposiciones.

El problema es que tu agente no sabe que existe. Ahí es donde entran los tatuajes.

El tatuaje: CLAUDE.md

Memento tiene una escena mítica donde Leonard se mira al espejo y lee lo que se ha tatuado: hechos. Instrucciones. Cosas que no puede permitirse olvidar.

Claude Code tiene su equivalente: el fichero CLAUDE.md. Es un archivo de texto plano que se carga automáticamente al inicio de cada sesión. Todo lo que escribas ahí, Claude lo «recuerda» — aunque técnicamente no recuerda nada, simplemente lo lee cada vez que arranca.

Es la diferencia entre memoria real y un tatuaje. El resultado es el mismo: la información está ahí cuando la necesitas.

Así es como le tatuamos las rutas:

# En ~/.claude/CLAUDE.md

## Herramientas

- **`zoxide`** instalado como alias de `cd` en Fish.
  Cuando no conozcas la ruta de un proyecto, usar
  `zoxide query <patron>` en vez de `find`.

## Rutas habituales de proyectos

| Proyecto        | Ruta                              |
| --------------- | --------------------------------- |
| Mi app          | `~/code/mi-app`                   |
| Curso           | `~/courses/mi-curso/program`      |
| Blog (Hugo)     | consultar con `zoxide query blog` |
| Infra (ansible) | `~/code/infra/ansible`            |

Dos cosas pasan aquí:

  1. Le das las rutas directamente. Para los proyectos más frecuentes, ni necesita buscar. Las tiene en la tabla.
  2. Le enseñas la herramienta. Para cualquier proyecto que no esté en la tabla, sabe que puede hacer zoxide query <nombre> y obtener la ruta al instante.

Es un fallback en cascada:

  1. Mirar la tabla → ruta directa, cero coste.
  2. zoxide query <patron> → milisegundos, casi siempre acierta.
  3. find → último recurso, lento, ruidoso. Pero nunca debería llegar aquí.

Lo que cambió

Antes de los tatuajes, una sesión típica empezaba así:

Yo: "Abre el proyecto del curso y revisa los tests"
Claude: *ejecuta find . -name "p101" -type d*
Claude: *espera 8 segundos*
Claude: *prueba otro find con maxdepth*
Claude: "He encontrado /Users/fernando/courses/p101/program"

Después:

Yo: "Abre el proyecto del curso y revisa los tests"
Claude: *lee la tabla, va directo a ~/courses/p101/program*
Claude: "Hay 3 tests fallando en el módulo de autenticación..."

De 15 segundos perdidos y tres intentos a cero fricción. Multiplicado por las docenas de veces que cambias de proyecto al día, es tiempo real recuperado.

El segundo tatuaje: memory

Claude Code tiene otro mecanismo de persistencia más fino: los ficheros de memory por proyecto. Son notas que el agente (o tú) pueden guardar y que se cargan solo cuando trabajas en ese proyecto específico.

Cuando Claude perdió tiempo buscando un directorio con find, le dije que se lo apuntara. Y creó esto en su memoria del proyecto:

# zoxide-directories

Cuando no sepas la ruta de un proyecto, usar
`zoxide query <patron>` en vez de `find`.

Se perdió tiempo buscando /courses/p101 con find
cuando zoxide query p101 lo habría resuelto al instante.

Es como los Post-its que Leonard pega por la habitación del motel. Notas para su yo futuro. «No busques. Pregunta a zoxide.»

La lección que va más allá de las rutas

El patrón aquí no es «instala zoxide». Eso es la herramienta concreta. El patrón es:

Si tu agente repite un error, no le grites — tatúale la corrección.

¿Usa npm install cuando debería usar pnpm? Ponlo en CLAUDE.md. ¿Crea ficheros con encoding Latin-1? Ponlo en CLAUDE.md. ¿No sabe que tu API requiere un header custom? Ponlo en CLAUDE.md.

Cada frustración repetida es un tatuaje que no has escrito todavía.

Y aquí está la diferencia fundamental con un compañero humano: un humano aprende solo (o debería). Un agente de IA necesita que le escribas los tatuajes. Pero una vez escritos, nunca los olvida. No tiene días malos. No se distrae. No decide que «ya lo sabe» y deja de leer las instrucciones.

En eso, Leonard con sus tatuajes es más fiable que la mayoría de nosotros con nuestra memoria de pez.

Cómo empezar

Si trabajas con Claude Code (o cualquier agente que soporte ficheros de instrucciones), hazte un favor:

  1. Instala zoxidebrew install zoxide, añade el init a tu shell, y usa z en vez de cd durante una semana. Después de eso, no querrás volver.

  2. Crea tu CLAUDE.md — Empieza con lo básico: tu shell, tus rutas, tus herramientas preferidas. No hace falta que sea largo. Cinco líneas útiles valen más que una página de bla bla.

  3. Cada vez que el agente haga algo mal dos veces, para y escribe el tatuaje. No la tercera. La segunda. La segunda vez ya no es un error puntual — es un patrón. Y los patrones se tatúan.

# Tu primer tatuaje podría ser algo tan simple como:
echo '- Shell: Fish. NO es bash/zsh.' >> ~/.claude/CLAUDE.md

No es glamuroso. No es una arquitectura de plugins con dependency injection. Es un fichero de texto plano que le dice a tu agente cómo funciona tu mundo.

Pero funciona. Todos los días. Sin olvidarse. Como un buen tatuaje.


Read this article in English.

Noticias recientes del mundo tech


¡CONVOCATORIA ABIERTA!

Desarrollo de apps móviles ios & Android

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado

Descárgate también el informe de tendencias en el mercado laboral 2026.

Fórmate con planes adaptados a tus objetivos y logra resultados en tiempo récord.
KeepCoding Bootcamps
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.