Rénich's Blog

La Neta sobre GEMINI.md y AGENTS.md: Poniéndole reglas al juego

09 de enero de 2026

No mames, ¿sabías que la IA puede ser tu mejor chalán o tu peor pesadilla?

Si le estás pegando duro al código asistido por IA, seguro te ha pasado que la IA se pone necia o "alucina" bien gacho. Le pides un script y te lo da para Ubuntu (¡wákala!) cuando tú eres puro Fedora, o te mete librerías bien pesadas cuando tú quieres algo KISS y DRY.

Ahí es donde entran al quite los archivos de configuración de "memoria" o reglas: ~/.gemini/GEMINI.md y ~/.config/opencode/AGENTS.md. La neta, son un paro.

¿Qué son estos archivos?

Básicamente, son el manual de estilo y las reglas del juego que tú le dictas a la IA. Es la forma de decirle: "A ver, carnal, aquí se hacen las cosas así". En lugar de estarle repitiendo en cada prompt las mismas instrucciones, lo escribes una sola vez y la IA lo toma como ley.

Es como poner al tiro a un chalán nuevo, pero este sí tiene memoria fotográfica y no se le va la onda si se lo configuras bien.

La carnita: ¿Qué le pongo al archivo?

No se trata de escribir la Biblia, pero sí de dejar claras tus "líneas rojas". Aquí te van unos ejemplos de lo que yo tengo en mi GEMINI.md para que te sirva de ejemplo:

Preferencias del sistema:

Para que no me salga con cosas de Debian.

- The host system is Fedora 43 x86_64 with SELinux enabled.
- OS Tool Preference: Use tools available in the OS (latest Fedora) via `dnf`.
- Distro Preference: The user despises Debian/Ubuntu; never considers them.
Filosofía de código:

Para que no se pase de listo con soluciones complejas.

- KISS (Keep It Simple, Stupid): Always prefer simple, readable code.
- DRY (Don't Repeat Yourself): Extract repeated code.
- Avoid Premature Optimization: Write clean code first.
Ops y contenedores:

Porque aquí usamos Podman, mi compa. Nada de andar con cosas raras.

- Containers: Prefer Podman over Docker (Docker is sub-optimal).
- Containerfile: Use `Containerfile` instead of `Dockerfile`.
- Quadlets: Use systemd quadlets (`*.container`) when practical.

El truquencio: Un solo archivo

Para no andar manteniendo dos archivos diferentes y que luego se te desincronicen, la movida maestra es crear uno "maestro" y hacer un enlace simbólico (symlink). ¡Bien práctico!

Creas tu ~/.gemini/GEMINI.md bien tuneado y luego tiras el symlink para OpenCode:

ln -sf ~/.gemini/GEMINI.md ~/.config/opencode/AGENTS.md

Tip

Así, cambias una regla en un lado y se actualiza en todos lados. Te ahorras un chingo de chamba y mantienes la consistencia.

¿Cómo se refleja esto en la talacha diaria?

La diferencia es garrafal, carnal; te ahorra un chingo de tiempo:

  1. Git Limpiecito: Si le pones reglas de Git Management, la IA solita te va a sugerir commits con formato Conventional Commits y hasta te va a recordar firmarlos con GPG. Nada de mensajes tipo "fix bug".
  2. Infraestructura al Tiro: Si le pides un despliegue, ya no te va a dar un docker-compose.yml genérico. Te va a dar un archivo Quadlet listo para tu Fedorita.
  3. Seguridad Primero: La IA te va a avisar si estás a punto de regarla subiendo una API key. Es como tener un senior dev cuidándote la espalda.

Note

El código que generas se siente tuyo, adaptado a tu flujo de trabajo (EVALinux, en mi caso), y no un copy/paste genérico de Stack Overflow. ¿No crees que así conectas mejor con la gente?

Conclusión

Dedicarle unos 15 minutos a optimizar tu GEMINI.md no es pérdida de tiempo, es una inversión. Es la diferencia entre pelearte con la IA para que te entienda y tener un copiloto que ya se sabe el camino de memoria.

Así que ya se la saben, configuren sus reglas, no sean desidiosos y ¡a darle al ether!