royo-learn
AGENTS.md7 starsChanged 4 months agoMITView on GitHub
Construir agent-royo-learn completo, instalable y probado según esta especificación. No entregar un prototipo decorativo ni reemplazar requisitos por TODOs. Orden de precedencia: Cuando dos documentos parezcan incompatibles, detener la implementación de esa parte, registrar el conflicto en docs/IMPLEMENTATION-NOTES.md y escoger la opción más segura y reversible. No inventar capacidades. El binario no decide por sí solo si una experiencia es una verdad universal. El agente, guiado por Skills, envía una propuesta estructurada. El binario valida, persiste, relaciona, controla permisos y…
- Reads credentials
- Commits and pushes
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,843 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository5 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- capture-learningSkill
- curate-learningSkill
- publish-learningSkill
- royo-learn-onboardingSkill
The file
Show its rules and text
We split this AGENTS.md into the rules it gives an agent
18 rules. About 0 are common, 14 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈14
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 29
No acceder directamente a ~/.engram/engram.db.
- Distinctive: line 32
No insertar un proveedor LLM dentro del binario en v1.
- Very specific: line 35
No ejecutar comandos mediante sh -c, cmd /c o concatenación de cadenas.
- Distinctive: line 39
No declarar “terminado” mientras falte un criterio obligatorio.
- Distinctive: line 40
No ocultar fallos de integración: debe existir degradación explícita y observable.
- Distinctive: line 41
No modificar archivos administrados por Gentle-AI.
- Very specific: line 71
No agregar dependencias sin registrar la razón en docs/IMPLEMENTATION-NOTES.md.
- Distinctive: line 104
No crear un fork de Gentle-AI.
- Distinctive: line 105
No crear un fork de Engram.
- Distinctive: line 106
No escribir en bases internas de terceros.
- Distinctive: line 107
No auto-publicar una regla global.
- Distinctive: line 108
No usar embeddings ni base vectorial en v1.
- Distinctive: line 109
No capturar conversaciones completas por defecto.
- Distinctive: line 110
No guardar razonamiento privado del modelo.
- Distinctive: line 111
No modificar globalmente Codex, OpenCode o Claude sin backup y consentimiento.
- Distinctive: line 112
No generar un instalador que descargue y ejecute código no fijado sin mostrar procedencia.
- Distinctive: line 113
No sustituir pruebas por mocks cuando el comportamiento real pueda verificarse localmente.
- Very specific: line 114
No eliminar aprendizajes: usar estados rejected, superseded o archived.
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AGENTS.md — Instrucciones obligatorias para Codex
Misión
Construir agent-royo-learn completo, instalable y probado según esta especificación. No entregar un prototipo decorativo ni reemplazar requisitos por TODOs.
Fuente de verdad
Orden de precedencia:
docs/14-ACCEPTANCE-CRITERIA.mddocs/01-PRD.mddocs/02-ARCHITECTURE.md- contratos específicos de
docs/04adocs/10 docs/lessons.md— patrones operacionales aprendidos en sesiones previas (shell detection, WSL bypass, review scope, PR base)TASKS.md- este archivo
- README
Cuando dos documentos parezcan incompatibles, detener la implementación de esa parte, registrar el conflicto en docs/IMPLEMENTATION-NOTES.md y escoger la opción más segura y reversible. No inventar capacidades.
Reglas no negociables
- Lenguaje: Go 1.25 o superior.
- Un solo binario:
royo-learn. - MCP principal por
stdio. - En modo MCP,
stdoutse reserva exclusivamente para mensajes MCP. Logs y diagnósticos van astderr. - SQLite mediante
database/sqly un driver sin CGO, salvo que una prueba multiplataforma demuestre que existe una opción superior. - No acceder directamente a
~/.engram/engram.db. - Engram se integra solo mediante interfaz pública local.
- Gentle-AI no se forkea ni se modifica.
- No insertar un proveedor LLM dentro del binario en v1.
- Las operaciones de escritura son
dry-runpor defecto cuando pueden modificar Skills,AGENTS.mdo bibliotecas compartidas. - Toda publicación compartida o cambio de
AGENTS.mdrequiere aprobación humana verificable. - No ejecutar comandos mediante
sh -c,cmd /co concatenación de cadenas. - Validar rutas contra traversal, symlinks y escapes de raíz.
- Redactar secretos antes de persistir evidencia.
- Toda transición de estado debe ser transaccional y auditada.
- No declarar “terminado” mientras falte un criterio obligatorio.
- No ocultar fallos de integración: debe existir degradación explícita y observable.
- No modificar archivos administrados por Gentle-AI.
- Las Skills del proyecto se mantienen bajo
skills/. - El sistema debe poder funcionar sin red.
Modelo mental
El binario no decide por sí solo si una experiencia es una verdad universal. El agente, guiado por Skills, envía una propuesta estructurada. El binario valida, persiste, relaciona, controla permisos y aplica cambios aprobados.
LLM + Skill → propuesta semántica
royo-learn → garantía operacionalMétodo de trabajo obligatorio
Antes de codificar
- Leer todos los documentos indicados en
CODEX_START_HERE.md. - Ejecutar el inventario de dependencias y herramientas.
- Crear
docs/IMPLEMENTATION-NOTES.md. - Crear un checkpoint Git inicial.
- Convertir
TASKS.mden una secuencia ejecutable, sin borrar los criterios.
Durante la implementación
- Implementar por slices verticales, no por carpetas vacías.
- Cada slice debe incluir dominio, persistencia, CLI/MCP y pruebas cuando corresponda.
- Ejecutar
go test ./...después de cada slice. - Ejecutar
go vet ./.... - Mantener
go.modygo.sumreproducibles. - No agregar dependencias sin registrar la razón en
docs/IMPLEMENTATION-NOTES.md. - Preferir biblioteca estándar.
- Mantener funciones pequeñas y errores tipados.
- Todas las escrituras a archivos deben ser atómicas.
- Toda migración debe poder ejecutarse más de una vez sin dañar datos.
Antes de terminar
Ejecutar exactamente:
go fmt ./...
go test -race ./...
go vet ./...
royo-learn doctor --json
royo-learn e2e --tempEn Windows, si -race no es soportado por el entorno, documentar esa limitación y ejecutar la carrera en Linux CI.
También:
- compilar Windows, Linux y macOS;
- probar MCP con el Inspector o con un cliente de prueba;
- probar instalación limpia;
- probar actualización;
- probar desinstalación;
- verificar que Gentle-AI y Engram continúan funcionando;
- revisar que no haya secretos ni rutas personales en fixtures;
- generar
docs/FINAL-IMPLEMENTATION-REPORT.md.
Prohibiciones
- No crear un fork de Gentle-AI.
- No crear un fork de Engram.
- No escribir en bases internas de terceros.
- No auto-publicar una regla global.
- No usar embeddings ni base vectorial en v1.
- No capturar conversaciones completas por defecto.
- No guardar razonamiento privado del modelo.
- No modificar globalmente Codex, OpenCode o Claude sin backup y consentimiento.
- No generar un instalador que descargue y ejecute código no fijado sin mostrar procedencia.
- No sustituir pruebas por mocks cuando el comportamiento real pueda verificarse localmente.
- No eliminar aprendizajes: usar estados
rejected,supersededoarchived.
Calidad mínima
- Cobertura del paquete de dominio y storage: 80% o más.
- Ramas críticas de publicación, aprobación y path security: 90% o más.
- Pruebas e2e para el ciclo completo.
- Pruebas de compatibilidad Windows path/CRLF.
- Mensajes de error accionables.
- Salidas CLI estables en JSON.
- MCP tools con esquemas estrictos.
- Audit log append-only.
Regla de entrega
Codex no debe limitarse a explicar cómo hacerlo. Debe crear, compilar, instalar y comprobar el producto dentro del entorno permitido.
Workflow de push a GitHub (operator + orchestrator)
Deploy keys registradas en RoyoTech/royo-learn
| Nombre | Fingerprint SHA256 | Permisos | Ubicación local |
royo-learn-deploy | 28vajSJ0cGstFngwHngb68TcyKPpX5OvFPGczSLln7Y | Read/write | C:\Users\angel\.ssh\id_ed25519 (Windows) — desde WSL: /mnt/c/Users/angel/.ssh/id_ed25519 |
royotech_ops | MPJ2HfWldUR4lC2b9TNGC6hPBMMbxTPHvd6rM3+bDjI | Read-only | ~/.codex/github_keys/royotech_ops_deploy_ed25519 (WSL) |
id_ed25519 (legacy) | A4CEAIwfc8tYORvgpGXjnqbmG6VqLYC/zWconpJPxRs | Read-only (deploy key) | /home/angel/.ssh/id_ed25519 (WSL) — NO usar para push |
Procedimiento de push desde el sandbox (WSL)
- NO confiar en
gh.exeni encmd.exe/powershell.exe— la interoperabilidad WSL falla con "Exec format error" (verdocs/lessons.mdentrada 2). - NO usar la remote HTTPS
https://github.com/RoyoTech/royo-learn.git— el credential helpergh.exe auth git-credentialno se puede invocar y no hay PAT. - Cambiar a remote SSH:
git remote set-url origin git@github.com:RoyoTech/royo-learn.git. - Copiar la clave con permisos correctos antes de invocar SSH (SSH rechaza archivos 0777):
cp /mnt/c/Users/angel/.ssh/id_ed25519 /tmp/royo-learn-deploy-key chmod 600 /tmp/royo-learn-deploy-key - Push con la clave explícita:
GIT_SSH_COMMAND="ssh -i /tmp/royo-learn-deploy-key -o IdentitiesOnly=yes -o StrictHostKeyChecking=accept-new" \ git push -u origin <branch> - Para PR:
gh.exeno funciona desde WSL. Usar la URL que devuelve el push remoto (https://github.com/RoyoTech/royo-learn/pull/new/<branch>) o elghnativo desde PowerShell/Windows terminal.
Si la push falla con "denied to deploy key"
El error significa que la clave usada está registrada como read-only. Verificar:
- Fingerprint de la clave usada:
ssh-keygen -lf <key>. - Comparar contra la tabla de arriba. Solo
royo-learn-deploy(fingerprint28vajSJ...) tiene write access. - El resto de claves son deploy keys de otros repos (chat-piscineria, mathquestgalaxy, servicio-terreno, etc.) o personales sin acceso.
Lección aprendida (sesión 2026-07-28)
La clave que abre write access vive en el lado Windows (C:\Users\angel\.ssh\id_ed25519), no en WSL (/home/angel/.ssh/). Las dos carpetas .ssh son independientes. La regla "agente busca primero en ~/.ssh/" falla aquí porque esa es la clave equivocada.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

