Skip to content

Commit 2b42300

Browse files
docs: add multilingual readmes
1 parent 735e38a commit 2b42300

4 files changed

Lines changed: 1037 additions & 0 deletions

File tree

README.es.md

Lines changed: 345 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,345 @@
1+
<!-- Translated from README.md at commit: 735e38a -->
2+
3+
<div align="center">
4+
5+
<img src="mascot/mex-mascot.svg" alt="Mascota de Mex" width="80">
6+
7+
<br>
8+
9+
<img src="mascot/mex-ascii.svg" alt="Logotipo ASCII de MEX" width="520">
10+
11+
<h1 align="center">Mex: capa de memoria de proyectos para agentes de programación con IA</h1>
12+
13+
**Memoria persistente de proyectos para agentes de programación con IA.**
14+
15+
[English](README.md) | [简体中文](README.zh-CN.md) | **Español** | [Português (Brasil)](README.pt-BR.md)
16+
17+
[![npm version](https://img.shields.io/npm/v/mex-agent.svg)](https://www.npmjs.com/package/mex-agent)
18+
[![npm downloads](https://img.shields.io/npm/dm/mex-agent.svg)](https://www.npmjs.com/package/mex-agent)
19+
[![GitHub stars](https://img.shields.io/badge/stars-1.2K%2B-111111)](https://github.com/theDakshJaitly/mex/stargazers)
20+
[![Website](https://img.shields.io/badge/website-mexmemory.com-4f7cff)](https://mexmemory.com)
21+
[![Discord](https://img.shields.io/badge/Discord-Join-5865F2?logo=discord&logoColor=white)](https://discord.gg/VG7ySSMQM)
22+
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
23+
[![CI](https://github.com/theDakshJaitly/mex/actions/workflows/ci.yml/badge.svg)](https://github.com/theDakshJaitly/mex/actions/workflows/ci.yml)
24+
[![Node.js >=20](https://img.shields.io/badge/node-%3E%3D20-339933)](package.json)
25+
[![TypeScript](https://img.shields.io/badge/TypeScript-5.7-3178c6)](package.json)
26+
[![Agent memory](https://img.shields.io/badge/agent%20memory-compatible-6f8cff)](README.md)
27+
[![MCP](https://img.shields.io/badge/MCP-compatible-6f8cff)](#servidor-mcp)
28+
29+
</div>
30+
31+
---
32+
33+
Los agentes de programación con IA olvidan todo entre sesiones. Mex les proporciona una memoria de proyecto permanente y navegable para que cada sesión comience con el contexto adecuado, en lugar de un bloque de instrucciones sin orientación. Ayuda a comprender el código, conservar decisiones y mantener el contexto del proyecto alineado con el repositorio mediante herramientas para desarrolladores.
34+
35+
> **Estado de la versión:** npm y `main` permanecen en la versión estable v0.6.3. El grafo de código basado en AST/Tree-sitter es una vista previa para desarrolladores de la versión v0.7.0 aún no publicada, disponible en `code-graph-preview`; todavía no se ha publicado en npm.
36+
37+
💬 **Únete a la comunidad de Mex en Discord** — comenta ideas, obtén ayuda, comparte tus opiniones y contribuye al proyecto.
38+
39+
[Unirse a Discord →](https://discord.gg/VG7ySSMQM)
40+
41+
```bash
42+
npx mex-agent setup
43+
```
44+
45+
<p align="center">
46+
<img src="screenshots/mex-DashNew.jpg" alt="Panel operativo de memoria de proyectos de Mex" width="640">
47+
</p>
48+
49+
## ¿Por qué Mex?
50+
51+
La mayoría de las soluciones de memoria para agentes terminan convertidas en un enorme archivo de instrucciones. Eso funciona durante un tiempo, pero después satura la ventana de contexto, consume tokens y se aleja del código real.
52+
53+
| Sin Mex | Con Mex |
54+
|---------|---------|
55+
| Archivos enormes de `CLAUDE.md` / reglas | Un pequeño archivo de anclaje y contexto dirigido |
56+
| Los agentes olvidan decisiones y convenciones | Las decisiones, patrones y el estado del proyecto persisten |
57+
| La documentación se desvía del código en silencio | `mex check` detecta afirmaciones obsoletas o rotas en el scaffold |
58+
| Cada sesión comienza desde cero | Los agentes cargan solo los archivos relevantes para la tarea |
59+
| El trabajo repetido depende del conocimiento informal | Los nuevos patrones surgen de tareas reales |
60+
61+
## Qué hace
62+
63+
Mex crea un scaffold estructurado en Markdown para la memoria del agente:
64+
65+
- `AGENTS.md` / `CLAUDE.md` — pequeño archivo de anclaje cargado por la herramienta
66+
- `ROUTER.md` — tabla que dirige cada tarea a su contexto específico
67+
- `context/` — arquitectura, stack, configuración, decisiones y convenciones
68+
- `patterns/` — guías reutilizables con consideraciones y pasos de verificación
69+
- `.mex/events/decisions.jsonl` — notas de solo anexado mediante `mex log`
70+
71+
La CLI mantiene ese scaffold en orden. Comprueba rutas, comandos, dependencias, índices de patrones, antigüedad y cobertura de scripts sin consumir tokens de IA. Cuando aparece una desviación, `mex sync` genera instrucciones específicas para que el agente corrija únicamente las partes obsoletas.
72+
73+
## Inicio rápido
74+
75+
La versión estable de npm es v0.6.3. Instálala con Node.js 20 o posterior:
76+
77+
El paquete de npm se llama `mex-agent` porque `mex` ya estaba ocupado. El comando de la CLI sigue siendo `mex`.
78+
79+
```bash
80+
npx mex-agent setup
81+
```
82+
83+
Para probar o contribuir a la vista previa del grafo de código, usa Node.js 22.5 o posterior y compila `code-graph-preview` desde el código fuente:
84+
85+
```bash
86+
git clone https://github.com/theDakshJaitly/mex.git
87+
cd mex
88+
git switch code-graph-preview
89+
npm install
90+
npm run build
91+
```
92+
93+
La configuración crea el scaffold `.mex/`, pregunta qué herramienta de IA utilizas, preanaliza el repositorio y genera una instrucción específica para completar los archivos de memoria. Tarda unos cinco minutos.
94+
95+
Al terminar, puedes instalar Mex globalmente:
96+
97+
```bash
98+
mex check # puntuación de desviación
99+
mex sync # corregir desviaciones
100+
```
101+
102+
Si omites la instalación global, usa npx:
103+
104+
```bash
105+
npx mex-agent check
106+
npx mex-agent sync
107+
```
108+
109+
También puedes instalarlo globalmente más adelante:
110+
111+
```bash
112+
npm install -g mex-agent
113+
```
114+
115+
### Windows
116+
117+
El flujo recomendado, `npx mex-agent setup`, funciona en cualquier terminal (Símbolo del sistema, PowerShell o WSL) y no necesita bash. Por tanto, la mayoría de los usuarios de Windows no tienen que preocuparse por esta sección.
118+
119+
> **Usuarios de Windows (flujo antiguo con `setup.sh`):** ejecuten todos los comandos dentro de WSL o Git Bash. No mezclen entornos.
120+
121+
Si instalaste mediante el script antiguo `setup.sh`, compilar dentro de WSL y ejecutar después la CLI desde una terminal nativa de Windows provoca errores de “module not found”, porque `node_modules` y la resolución de rutas difieren entre ambos sistemas de archivos. Ejecuta la instalación, compilación y comandos de la CLI en un único entorno: todo en WSL / Git Bash, o todo en Windows nativo mediante `npx mex-agent`.
122+
123+
Consulta el [issue #10](https://github.com/theDakshJaitly/mex/issues/10) para conocer el contexto.
124+
125+
## Cómo funciona
126+
127+
![Flujo de enrutamiento de contexto de Mex](docs/diagrams/context-routing.svg)
128+
129+
El agente comienza con un pequeño archivo cargado automáticamente. Este archivo apunta a `ROUTER.md`, y el router carga únicamente el contexto necesario para la tarea actual. Después de un trabajo significativo, el paso GROW actualiza el estado del proyecto, las decisiones y los patrones de tareas para que el scaffold resulte más útil con el tiempo.
130+
131+
Fuente editable: [docs/diagrams/context-routing.excalidraw](docs/diagrams/context-routing.excalidraw)
132+
133+
## Detección de desviaciones
134+
135+
Once verificadores validan el scaffold frente al código real. Cero tokens, cero IA.
136+
137+
| Verificador | Qué detecta |
138+
|-------------|-------------|
139+
| **path** | Rutas de archivos referenciadas que no existen en el disco |
140+
| **edges** | Destinos de aristas en el frontmatter YAML que apuntan a archivos inexistentes |
141+
| **index-sync** | `patterns/INDEX.md` no sincronizado con los archivos de patrones reales |
142+
| **staleness** | Archivos del scaffold sin actualizar durante más de 30 días o 50 commits |
143+
| **command** | Referencias `npm run X` / `make X` a scripts inexistentes |
144+
| **dependency** | Dependencias declaradas que faltan en `package.json` |
145+
| **cross-file** | Una misma dependencia con versiones distintas entre archivos |
146+
| **script-coverage** | Scripts de `package.json` no mencionados en ningún archivo del scaffold |
147+
| **tool-config-sync** | Archivos de configuración de herramientas de IA instaladas (p. ej., `CLAUDE.md`, `.cursorrules`) sin sincronizar entre sí |
148+
| **todo-fixme** | Marcadores `TODO` / `FIXME` sin resolver en el Markdown del scaffold |
149+
| **broken-link** | Enlaces Markdown locales a archivos que no existen en el disco |
150+
151+
La puntuación comienza en 100. Mex resta 10 por error, 3 por advertencia y 1 por información.
152+
153+
![Bucle de detección y sincronización de desviaciones de Mex](docs/diagrams/drift-sync.svg)
154+
155+
Fuente editable: [docs/diagrams/drift-sync.excalidraw](docs/diagrams/drift-sync.excalidraw)
156+
157+
## Comandos
158+
159+
Todos los comandos se ejecutan desde la raíz del proyecto. Si no hiciste una instalación global, sustituye `mex` por `npx mex-agent`.
160+
161+
| Comando | Qué hace |
162+
|---------|----------|
163+
| `mex` | Abre el panel interactivo de terminal |
164+
| `mex tui` | Abre explícitamente el panel interactivo de terminal |
165+
| `mex setup` | Configuración inicial: crea el scaffold `.mex/` y lo completa con IA |
166+
| `mex setup --mode agent-memory` | Crea plantillas para espacios de memoria de agentes persistentes / homelab |
167+
| `mex setup --dry-run` | Previsualiza la configuración sin realizar cambios |
168+
| `mex check` | Ejecuta los verificadores de desviación y muestra un informe con puntuación |
169+
| `mex check --quiet` | Una línea: `mex: drift score 92/100 (1 warning)` |
170+
| `mex check --json` | Informe completo en JSON |
171+
| `mex check --fix` | Comprueba y pasa directamente a la sincronización si encuentra errores |
172+
| `mex sync` | Detecta desviaciones, elige un modo, permite que la IA corrija, verifica y repite |
173+
| `mex sync --dry-run` | Previsualiza instrucciones específicas sin ejecutarlas |
174+
| `mex sync --warnings` | Incluye en la sincronización archivos que solo tienen advertencias |
175+
| `mex init` | Preanaliza el repositorio y crea un resumen estructurado para la IA |
176+
| `mex init --json` | Resumen bruto del analizador en JSON |
177+
| `mex log <message>` | Añade una nota, decisión, riesgo o tarea pendiente |
178+
| `mex timeline` | Muestra las entradas recientes del registro de eventos |
179+
| `mex heartbeat` | Ejecuta una vez las comprobaciones ligeras de salud para agentes persistentes |
180+
| `mex doctor` | Resumen legible del estado del scaffold |
181+
| `mex watch` | Instala un hook post-commit |
182+
| `mex watch --interval` | Ejecuta heartbeat repetidamente en primer plano |
183+
| `mex watch --uninstall` | Elimina el hook |
184+
| `mex completion <shell>` | Imprime el autocompletado para el shell |
185+
| `mex commands` | Enumera comandos y scripts con sus descripciones |
186+
187+
## Herramientas compatibles
188+
189+
`mex setup` pregunta qué herramienta utilizas y crea el archivo de configuración correspondiente.
190+
191+
| Herramienta | Archivo de configuración |
192+
|-------------|--------------------------|
193+
| Claude Code | `CLAUDE.md` |
194+
| Cursor | `.cursorrules` |
195+
| Windsurf | `.windsurfrules` |
196+
| GitHub Copilot | `.github/copilot-instructions.md` |
197+
| OpenCode | `.opencode/opencode.json` |
198+
| Codex | `AGENTS.md` |
199+
200+
Los usuarios de Neovim pueden consultar [docs/vim-neovim.md](docs/vim-neovim.md) para configurar Claude Code, Avante.nvim, Copilot.vim y plugins genéricos.
201+
202+
## Servidor MCP
203+
204+
`packages/mex-mcp` expone Mex a agentes de IA mediante llamadas nativas del [Model Context Protocol](https://modelcontextprotocol.io): sin invocar un shell y con respuestas JSON estructuradas. Importa `mex-agent` directamente, por lo que las herramientas ejecutan el mismo código que la CLI y nunca se desvían de ella.
205+
206+
| Herramienta | CLI equivalente | Devuelve |
207+
|-------------|-----------------|----------|
208+
| `mex_check` | `mex check --json` | Informe de desviación: puntuación, problemas y archivos comprobados |
209+
| `mex_log` | `mex log` / `mex timeline` | Añade un evento (`decision`/`note`/`risk`/`todo`) o lee los recientes |
210+
| `mex_timeline` | `mex timeline` | Eventos filtrados por tipo/fecha, los más recientes primero |
211+
| `mex_heartbeat` | `mex heartbeat` | Comprobación de salud: archivos obsoletos y limpieza de memoria pendiente |
212+
| `mex_read_file` || Contenido de un archivo del scaffold, restringido a `.mex/` |
213+
214+
Cada herramienta acepta un `projectRoot` opcional (el directorio actual de forma predeterminada), por lo que un servidor puede trabajar con cualquier proyecto. Ejecuta primero `mex setup`: las herramientas necesitan un scaffold `.mex/`.
215+
216+
Configura tu cliente (Claude Code / `.mcp.json` de Cursor):
217+
218+
```json
219+
{
220+
"mcpServers": {
221+
"mex": {
222+
"command": "node",
223+
"args": ["packages/mex-mcp/dist/index.js"]
224+
}
225+
}
226+
}
227+
```
228+
229+
Compílalo primero con `npm run build --workspace mex-mcp`. Una vez publicado, se convertirá en `"command": "npx", "args": ["mex-mcp"]`.
230+
231+
Al comenzar una sesión, el agente se orienta con dos llamadas:
232+
233+
```
234+
mex_check() # ¿se está desviando el scaffold?
235+
mex_read_file("ROUTER.md") # carga el router y después solo el contexto necesario
236+
```
237+
238+
## Antes y después
239+
240+
Salida real de las pruebas de Mex en Agrow, una línea de ayuda agrícola por voz basada en IA.
241+
242+
**Scaffold antes de la configuración:**
243+
244+
```markdown
245+
## Current Project State
246+
<!-- What is working. What is not yet built. Known issues.
247+
Update this section whenever significant work is completed. -->
248+
```
249+
250+
**Scaffold después de la configuración:**
251+
252+
```markdown
253+
## Current Project State
254+
255+
**Working:**
256+
- Voice call pipeline (Twilio -> STT -> LLM -> TTS -> response)
257+
- Multi-provider STT with configurable selection
258+
- RAG system with Supabase pgvector
259+
- Streaming pipeline with barge-in support
260+
261+
**Not yet built:**
262+
- Admin dashboard for call monitoring
263+
- Automated test suite
264+
- Multi-turn conversation memory across calls
265+
266+
**Known issues:**
267+
- Sarvam AI STT bypass active; ElevenLabs fallback in use
268+
```
269+
270+
**Directorio de patrones después de la configuración:**
271+
272+
```text
273+
patterns/
274+
├── add-api-client.md
275+
├── add-language-support.md
276+
├── debug-pipeline.md
277+
└── add-rag-documents.md
278+
```
279+
280+
## Resultados en el mundo real
281+
282+
Un miembro de la comunidad lo probó de forma independiente en **OpenClaw** con 10 escenarios estructurados de homelab que abarcan Ubuntu 24.04, Kubernetes, Docker, Ansible, Terraform, redes y monitorización. Las 10 pruebas fueron satisfactorias. Puntuación de desviación: 100/100.
283+
284+
| Escenario | Sin Mex | Con Mex | Ahorro |
285+
|-----------|---------|---------|--------|
286+
| «¿Cómo funciona K8s?» | ~3,300 tokens | ~1,450 tokens | 56% |
287+
| «Abrir un puerto UFW» | ~3,300 tokens | ~1,050 tokens | 68% |
288+
| «Explicar Docker» | ~3,300 tokens | ~1,100 tokens | 67% |
289+
| Consulta multicontexto | ~3,300 tokens | ~1,650 tokens | 50% |
290+
291+
**Reducción media de tokens de aproximadamente un 60 % por sesión.**
292+
293+
## Modo de memoria del agente
294+
295+
`mex setup --mode agent-memory` crea un scaffold para agentes persistentes cuyo «proyecto» es un entorno operativo y no un repositorio de código. Añade un contrato `HEARTBEAT.md` y plantillas que presentan Mex como memoria estructurada y dirigida por tareas:
296+
297+
- `ROUTER.md` registra el estado operativo actual y dirige al agente a los archivos de memoria correctos.
298+
- `context/` almacena arquitectura, stack, convenciones, configuración y decisiones.
299+
- `patterns/` almacena procedimientos reutilizables.
300+
- `.mex/events/decisions.jsonl` almacena notas y razonamientos de solo anexado mediante `mex log`.
301+
302+
`mex heartbeat` es intencionadamente más ligero que `mex check`: lee el frontmatter `last_updated` y los metadatos de limpieza de memoria, imprime `HEARTBEAT_OK` cuando todo está correcto y solo informa cuando el agente debe revisar archivos de contexto o memoria obsoletos. Usa `mex watch --interval` para ejecutar heartbeat repetidamente en un espacio de trabajo de agente persistente.
303+
304+
## Configuración
305+
306+
Los ajustes opcionales se encuentran en `.mex/config.json`. Los valores ausentes usan los predeterminados.
307+
308+
```json
309+
{
310+
"staleness": {
311+
"warnDays": 30,
312+
"errorDays": 90,
313+
"warnCommits": 50,
314+
"errorCommits": 200
315+
},
316+
"heartbeat": {
317+
"staleDays": 7,
318+
"memoryCleanupDays": 7,
319+
"dailyMemoryRetentionDays": 14
320+
},
321+
"watch": {
322+
"intervalMinutes": 30
323+
}
324+
}
325+
```
326+
327+
## Telemetría
328+
329+
Mex recopila datos de uso anónimos y opcionales (nombre del comando, versión y sistema operativo; nunca rutas, argumentos, contenido de archivos, IP ni datos personales) para comprender cómo se utiliza. Inspecciona la carga exacta con `mex telemetry inspect` y desactívala en cualquier momento con `DO_NOT_TRACK=1`, `MEX_TELEMETRY=0` o `mex config set telemetry off`. Consulta todos los detalles en [TELEMETRY.md](TELEMETRY.md).
330+
331+
## Ecosistema
332+
333+
Mex es independiente del proveedor. Las guías de integración, los ejemplos patrocinados y las recetas de la comunidad deben ser útiles por sí mismos, estar claramente identificados y vivir en la documentación en lugar de modificar silenciosamente la experiencia predeterminada.
334+
335+
## Contribuir
336+
337+
Las contribuciones son bienvenidas. Consulta [CONTRIBUTING.md](CONTRIBUTING.md) para ver la configuración y las directrices.
338+
339+
## Registro de cambios
340+
341+
Consulta [CHANGELOG.md](CHANGELOG.md) para conocer el historial de versiones.
342+
343+
## Licencia
344+
345+
[MIT](LICENSE)

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88

99
**Persistent project memory for AI coding agents.**
1010

11+
**English** | [简体中文](README.zh-CN.md) | [Español](README.es.md) | [Português (Brasil)](README.pt-BR.md)
12+
1113
[![npm version](https://img.shields.io/npm/v/mex-agent.svg)](https://www.npmjs.com/package/mex-agent)
1214
[![npm downloads](https://img.shields.io/npm/dm/mex-agent.svg)](https://www.npmjs.com/package/mex-agent)
1315
[![GitHub stars](https://img.shields.io/badge/stars-1.2K%2B-111111)](https://github.com/theDakshJaitly/mex/stargazers)

0 commit comments

Comments
 (0)