@jossuealcala/madre 1.0.1 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ADDITIONAL-TERMS.md +93 -0
- package/CHANGELOG.en.md +1945 -0
- package/CHANGELOG.md +34 -1
- package/CONTRIBUTING.md +1 -1
- package/LICENSE +661 -202
- package/NOTICE +26 -14
- package/README.en.md +245 -0
- package/README.md +19 -10
- package/TRADEMARKS.en.md +50 -0
- package/TRADEMARKS.md +33 -16
- package/bin/madre.mjs +2 -0
- package/docs/INTERNALS.md +6 -0
- package/docs/REFERENCE.md +11 -2
- package/docs/en/INTERNALS.md +103 -0
- package/docs/en/REFERENCE.md +339 -0
- package/docs/en/SDK.md +306 -0
- package/docs/en/training/README.md +59 -0
- package/docs/training/README.md +20 -8
- package/docs/training/train.sh +2 -1
- package/package.json +11 -3
- package/public/abduction.js +2 -0
- package/public/app.js +1549 -409
- package/public/attribution.js +71 -0
- package/public/brands.js +3 -1
- package/public/editor.js +2 -0
- package/public/es.js +620 -400
- package/public/i18n.js +25 -1
- package/public/index.html +13 -10
- package/public/inquiry.js +2 -0
- package/public/loader.js +2 -0
- package/public/macroverso.js +2 -0
- package/public/nostromo-engine.js +2 -0
- package/public/resay.js +6 -0
- package/public/review-ask.js +2 -0
- package/public/routing.js +23 -1
- package/public/salas-mac.css +21 -4
- package/public/salas-mac.html +5 -1
- package/public/salas-mac.js +53 -28
- package/public/salas.css +2 -0
- package/public/salas.html +1 -0
- package/public/salas.js +4 -2
- package/public/styles.css +957 -18
- package/public/syntax.js +2 -0
- package/public/touch.js +2 -0
- package/public/tour-chapters.js +2 -0
- package/public/tour.js +37 -0
- package/public/troubleshooting.js +18 -16
- package/src/adapters/claude.mjs +2 -0
- package/src/adapters/codex.mjs +2 -0
- package/src/adapters/gemini.mjs +3 -1
- package/src/adapters/madre.mjs +3 -1
- package/src/adapters/opencode.mjs +7 -3
- package/src/adapters/process.mjs +2 -0
- package/src/asking.mjs +2 -0
- package/src/auth-probe.mjs +3 -1
- package/src/bridge/devices.mjs +2 -0
- package/src/bridge/handoff.mjs +2 -0
- package/src/bridge/host.mjs +2 -0
- package/src/bridge/network.mjs +2 -0
- package/src/bridge/policy.mjs +3 -1
- package/src/bridge/qr.mjs +2 -0
- package/src/bridge/server.mjs +2 -0
- package/src/capabilities.mjs +2 -0
- package/src/chats.mjs +2 -0
- package/src/checkpoint.mjs +2 -0
- package/src/choices.mjs +2 -0
- package/src/cli-args.mjs +2 -0
- package/src/cold.mjs +2 -0
- package/src/commands.mjs +2 -0
- package/src/config.mjs +2 -0
- package/src/conversation-context.mjs +15 -1
- package/src/credentials.mjs +32 -3
- package/src/dataset.mjs +2 -0
- package/src/directives.mjs +2 -0
- package/src/distiller.mjs +2 -0
- package/src/embeddings.mjs +2 -0
- package/src/enlaces.mjs +6 -4
- package/src/event-store.mjs +2 -0
- package/src/exam.mjs +6 -4
- package/src/extensions.mjs +2 -0
- package/src/eyecat-watch.mjs +2 -0
- package/src/eyecat.mjs +2 -0
- package/src/file-ops.mjs +2 -0
- package/src/files.mjs +32 -0
- package/src/github.mjs +2 -0
- package/src/heartbeat.mjs +2 -0
- package/src/i18n.mjs +15 -1
- package/src/image-studio.mjs +2 -0
- package/src/json-file.mjs +2 -0
- package/src/launch.mjs +2 -0
- package/src/lease.mjs +5 -1
- package/src/lobby-work.mjs +2 -0
- package/src/local-ai.mjs +2 -0
- package/src/looks.mjs +2 -0
- package/src/maturity.mjs +3 -1
- package/src/mcp/connect.mjs +345 -0
- package/src/mcp/github-server.mjs +2 -0
- package/src/mcp/image-server.mjs +2 -0
- package/src/mcp/memory-server.mjs +2 -0
- package/src/mcp/proxy.mjs +153 -0
- package/src/mcp/smtp-server.mjs +2 -0
- package/src/memory-dashboard.mjs +2 -0
- package/src/memory-tools.mjs +2 -0
- package/src/memory.mjs +2 -0
- package/src/models.mjs +45 -3
- package/src/modules/ahp.mjs +2 -0
- package/src/modules/ash-policy.mjs +2 -0
- package/src/modules/ash.mjs +3 -1
- package/src/modules/bishop-plan.mjs +5 -3
- package/src/modules/bishop.mjs +13 -11
- package/src/modules/choices.mjs +2 -0
- package/src/modules/correo.mjs +2 -0
- package/src/modules/enlaces.mjs +2 -0
- package/src/modules/git-pulse.mjs +2 -0
- package/src/modules/github.mjs +2 -0
- package/src/modules/helpers.mjs +2 -0
- package/src/modules/image-studio.mjs +3 -1
- package/src/modules/index.mjs +4 -1
- package/src/modules/intents-calibration.mjs +2 -0
- package/src/modules/intents-desk.mjs +4 -2
- package/src/modules/intents-observe.mjs +2 -0
- package/src/modules/intents-policy.mjs +4 -1
- package/src/modules/intents-try.mjs +2 -0
- package/src/modules/intents.mjs +8 -6
- package/src/modules/mcp-connect.mjs +293 -0
- package/src/modules/ollama.mjs +3 -1
- package/src/modules/playwright.mjs +25 -10
- package/src/modules/ripley.mjs +2 -0
- package/src/modules/runs.mjs +5 -3
- package/src/modules/sdk.mjs +2 -0
- package/src/modules/updates.mjs +2 -0
- package/src/mother.mjs +2 -0
- package/src/ollama.mjs +2 -0
- package/src/outbound.mjs +7 -5
- package/src/override.mjs +2 -0
- package/src/ports.mjs +2 -0
- package/src/prices.mjs +2 -0
- package/src/privacy.mjs +2 -0
- package/src/quota-monitor.mjs +2 -0
- package/src/quota-sources.mjs +2 -0
- package/src/request-guard.mjs +2 -0
- package/src/review-ask.mjs +2 -0
- package/src/room/archivist.mjs +2 -0
- package/src/room/attachments.mjs +2 -0
- package/src/room/budget.mjs +2 -0
- package/src/room/context.mjs +2 -0
- package/src/room/control.mjs +7 -1
- package/src/room/copilot.mjs +76 -0
- package/src/room/economy.mjs +2 -0
- package/src/room/escalation.mjs +2 -0
- package/src/room/ghost.mjs +2 -0
- package/src/room/guard.mjs +2 -0
- package/src/room/prompt.mjs +13 -4
- package/src/room/returns.mjs +82 -0
- package/src/room/runs.mjs +4 -0
- package/src/room/vectors.mjs +2 -0
- package/src/room.mjs +209 -31
- package/src/router.mjs +2 -0
- package/src/runs.mjs +2 -0
- package/src/runtime-detection.mjs +2 -0
- package/src/salas.mjs +2 -0
- package/src/sentinel-errors.mjs +2 -0
- package/src/server-sentinel.mjs +2 -0
- package/src/server.mjs +141 -34
- package/src/setup.mjs +2 -0
- package/src/smtp.mjs +2 -0
- package/src/tour.mjs +2 -0
- package/src/updates.mjs +2 -0
- package/src/usage-sentinel.mjs +2 -0
- package/src/vault.mjs +2 -0
- package/src/verdict.mjs +3 -1
- package/src/whats-new.mjs +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,7 +4,40 @@ Todas las versiones publicadas de `@jossuealcala/madre`. Fechas en ISO.
|
|
|
4
4
|
|
|
5
5
|
Una versión se cierra cuando está en npm: hasta entonces su sección se llama **Sin publicar** y puede crecer. Cada versión publicada tiene exactamente una etiqueta `vX.Y.Z`, una release en GitHub y una sección aquí; el parche puede llegar a dos dígitos (`0.2.10`) antes de subir el menor. Ver `docs/ROADMAP.md` para el criterio de qué sube cada número.
|
|
6
6
|
|
|
7
|
-
## 1.0.
|
|
7
|
+
## 1.0.3 · Sin publicar
|
|
8
|
+
|
|
9
|
+
## 1.0.2 · 2026-10-16
|
|
10
|
+
|
|
11
|
+
**Licencia nueva.** Desde 1.0.2, MADRE es software libre bajo la **GNU AGPL v3** con [términos adicionales](ADDITIONAL-TERMS.md) según su sección 7: cualquiera puede usarlo, estudiarlo, modificarlo y hacer forks, también con fines comerciales, siempre que su versión siga abierta con la misma licencia y mantenga visible la autoría —«MADRE ‹versión› · © 2026 Jossue Alcalá» en la esquina de cada proyecto y de Inicio, con enlace a jossuealcala.com, o «Desarrollado con MADRE de Jossue Alcalá» si lleva otro nombre—. Ajustes › Actualizaciones y errores › **Licencia y autoría** dice todo esto en la app. Hasta la 1.0.1, MADRE se publicó con licencia Apache 2.0, y esas versiones la conservan.
|
|
12
|
+
|
|
13
|
+
Para quien la usa es un parche: no hay saludo, recorrido ni «Qué hay de nuevo». Lo nuevo se dice con avisos de la primera vez, uno a la vez y una sola vez, en palabras simples y con lo que nombran iluminado en la pantalla: el copiloto, Herramientas externas (MCP), los archivos que se mantienen al día, la memoria sin escribir el nombre, los avisos que se hacen puntos y, en Inicio, el botón para agregar widgets.
|
|
14
|
+
|
|
15
|
+
- **El resultado de los comandos que pide un agente le regresa solo.** Cuando corres las líneas de un ```pulse-run, el resultado vuelve al agente que lo pidió en una respuesta propia, con el modo que tenía (hasta #3), lo que estaba contestando y la salida de cada línea; ya no hace falta escribir «ya lo corrí». Si ese agente sigue contestando, espera; DETENER TODO lo retiene. La tarjeta trae **Correr todos**, **Devolver lo que corrió** (cuando no quieres correr el resto) y dice a quién vuelve. Una salida larga ya no saca de la conversación la petición del humano: en lo que leen todos los agentes ocupa como mucho ~1,200 caracteres (su principio y su final).
|
|
16
|
+
- **Los agentes ya no confunden su permiso.** En #3 y #4 la instrucción del modo decía «solo lectura» encima del permiso para editar: con ACCESO TOTAL un agente respondía que solo inspeccionaría. Ahora dice lo que cada modo permite.
|
|
17
|
+
- **El permiso se pide con su tiempo.** Un agente que necesita más pide el modo y cuánto («Necesito #3 por 15 min»); la tarjeta lo muestra, deja elegir 5, 15 o 30 min (#4: 5) o solo este mensaje, y al confirmar, el permiso dura ese tiempo.
|
|
18
|
+
- **Planes en todos los modos.** La regla de no usar subagentes de la propia app se leía como «no armes planes», y con #2, #3 y #4 los agentes dejaban de proponerlos. El selector de modo dice ahora que cada modo también arma planes con otros agentes.
|
|
19
|
+
- **Copiloto.** Un robot junto a modo · modelo · esfuerzo. Lo enciendes confirmando #3 EDITAR una sola vez, por 30 min, 1, 4, 8 o 24 h, y mientras dura, el agente al que le escribes conduce el proyecto en #3 sin pedirte confirmar cada mensaje: edita, arma planes y le da a cada paso del plan hasta #3, y corre por su cuenta los comandos seguros (leer, pruebas, compilar, git local), cuyo resultado le regresa. Nunca borra (si se borra un archivo, MADRE lo regresa al terminar la respuesta), nunca toca las carpetas de MADRE ni los secretos, nunca abre #4 ni sube, publica o envía nada fuera de la computadora; tras 8 rondas seguidas sin ti se detiene y avisa. Arriba de la caja de escribir se lee HUMANO › COPILOTO › @AGENTE ›, y sus respuestas llevan un robot verde. DETENER TODO o un reinicio lo apagan.
|
|
20
|
+
- **Herramientas externas (MCP)**, en los Ajustes de cada proyecto. Agrega servidores MCP por comando o por dirección web (sin sesión, con token o iniciando sesión con OAuth, como los conectores de Claude), o tráelos de `.mcp.json`, `opencode.json`, Claude Code, Codex, Gemini CLI o Cursor; al importar solo se leen nombres y los valores se guardan de forma segura en MADRE. MADRE arranca y revisa cada servidor antes de que un agente lo use: el que no responde se queda fuera y su fila dice por qué. Las herramientas que solo leen van desde #1; las que actúan, desde el modo que elijas (#4 si no lo bajas). Ningún secreto queda en la línea de comandos ni en un archivo del proyecto.
|
|
21
|
+
- **La terminal, compacta.** Cada salida de comando es una píldora del ancho de lo que dice —si salió bien o falló y en cuánto, el comando y quién lo pidió—; la salida completa se abre con un clic.
|
|
22
|
+
- **Un chat más fácil de leer.** Las respuestas van en burbuja con el nombre del agente en su píldora; los adjuntos son tarjetas con tipo y tamaño; mientras un agente piensa, su avatar respira junto a lo que hace y el tiempo; el plan es una lista de tareas; al pie queda la hora y lo que costó aparece al pasar el cursor; las elecciones son una lista con número; el permiso cabe en una línea y, al concederse, queda como divisoria; los comandos pedidos van en pasos numerados que marcan ✓ o ✕; y hay más aire entre respuestas. Todo lo de un agente (su cabecera, su respuesta, lo que pide y sus comandos) empieza en el mismo borde, y su cabecera cabe en una línea: con poco espacio se calla primero el esfuerzo.
|
|
23
|
+
- **Los avisos se vuelven puntos.** Los avisos del chat se hacen un punto a los 10 s, del color de su tipo (rojo diagnóstico, ámbar permiso, verde bien, gris lo demás); un clic los abre en una lista que se lee: la etiqueta arriba, lo que dice debajo y lo repetido una sola vez con «×N». Los puntos son pequeños y tenues para no ensuciar la conversación. Se quedan abiertos los que piden algo: una falla con REINTENTAR, un permiso esperando, un módulo por instalar, los cambios con DESHACER, el aviso de solo lectura y los de Diagnóstico.
|
|
24
|
+
- **La lista de archivos ve lo que cambió.** Lo que un comando o un agente deja donde git no mira (una carpeta ignorada como `output/`) se encuentra por su fecha y se reporta; la lista se actualiza al terminar cada respuesta y cada comando, y tiene botón de actualizar junto a Ajustes. Las carpetas del camino llevan un punto hueco con el color de quien tocó algo dentro, y el archivo, uno lleno con «Último cambio: @agente · hace 5 min».
|
|
25
|
+
- **Navegador de pruebas.** Si falta el navegador elegido, el aviso dice cuál y el comando exacto (`npx @playwright/mcp install-browser webkit`, `chromium`…), en vez de pedir siempre chrome-for-testing; la revisión ya no reutiliza la respuesta de otro navegador.
|
|
26
|
+
- **Ajustes más fáciles de entender**, en español y en inglés: Memoria es «Lo que recuerda», Conectar MCP es «Herramientas externas (MCP)», Intenciones es «Esfuerzo sugerido», y cada ajuste dice qué hace sin jerga (archivista, destilar, recall, embeddings…).
|
|
27
|
+
- **El Mapa de memoria puede dejar de pedir el nombre.** «No volver a preguntar…» en su confirmación lleva a **Ajustes › Permisos › Acceso a la memoria**: pedir siempre, 1, 8 o 24 h, o nunca. Se guarda en este navegador y para ese proyecto (también el Coordinador).
|
|
28
|
+
- **Agregar widgets a Inicio desde la barra.** Un botón propio junto a Recargar abre «Agregar a Inicio»; antes solo se llegaba con clic derecho.
|
|
29
|
+
- **Inicio y los proyectos en pantallas angostas.** En tableta, un panel lateral solo pasa a ventana en vez de dejarle una tira a la conversación; en teléfono, las barras ya no quedan debajo de sus botones de la derecha: del logo queda solo el pulso, la píldora del recorrido dice «Recorrido · 3/13» y Recargar sale de la barra (la página se recarga sola al jalar). «+n» de los proyectos abiertos siempre se ve completo.
|
|
30
|
+
- **OpenCode con esfuerzo y todos sus proveedores.** Cada modelo de OpenCode ofrece sus propios niveles de razonamiento (los que publica: de «ninguno» a «máximo») y se mandan con `--variant`. Agregar un proveedor ya ofrece todos los que una sola llave abre en el catálogo de OpenCode (Groq, DeepSeek, Mistral, xAI, Together, Fireworks…), los más usados primero. Gemini CLI no tiene cómo elegir el esfuerzo por mensaje: lo decide él.
|
|
31
|
+
- **Entrena tu propia IA, explicado y en orden.** Qué son los datos de entrenamiento, siete pasos numerados y la opción para Linux con tarjeta NVIDIA (experimental: MLX funciona ahí, pero mlx-lm solo garantiza los chips de Apple).
|
|
32
|
+
- **Tarjetas más claras.** La de cada agente: su sesión, una cifra, cuatro datos, su plan y un botón a Ajustes. «Lo que se envía» se ve como el resto de MADRE: título alineado, pestañas centradas, los botones de siempre y sin los textos en mayúsculas de la consola. El panel del copiloto, más ordenado; «AUTO» en la esquina de «Cuánto piensa» y los avisos que flotan sobre el fondo.
|
|
33
|
+
- **La vista dividida cabe.** La barra del proyecto se acomoda a su propio ancho cuando está junto a otra conversación, al navegador o a dos paneles laterales, sin pisar Inicio · Proyectos · Ajustes; y la conversación se desvanece antes de la caja de escribir en vez de asomarse debajo.
|
|
34
|
+
- **Las ventanas vuelven de una en una.** Abrir los archivos o cualquier otra ventana desde la barra ya no trae de vuelta las que habías mandado al borde; cada una vuelve cuando la pides.
|
|
35
|
+
- **MADRE se abre en tu idioma.** La primera vez, si nadie lo ha elegido, MADRE toma el idioma de tu navegador: español en cualquiera de sus variantes, inglés para cualquier otro. Se guarda como si lo hubieras elegido, así que Inicio y todos los proyectos lo siguen, y se cambia cuando quieras en Ajustes › Apariencia. Quien ya eligió idioma no nota nada.
|
|
36
|
+
- **MADRE también en inglés fuera de la app.** El README, el CHANGELOG, las marcas y la documentación de uso (referencia, SDK, internos, conectores, hoja de ruta, entrenamiento y recolector de reportes) tienen su versión en inglés (`README.en.md`, `CHANGELOG.en.md`, `TRADEMARKS.en.md`, `docs/en/`), y las notas de cada versión en GitHub van en los dos idiomas. El español sigue siendo el original.
|
|
37
|
+
- **Las conversaciones abren al instante.** Una conversación de 166 mensajes tardaba 11.5 s en dibujarse: cada evento leía la altura de la conversación y la bajaba al final, y el navegador volvía a acomodarla entera dos veces por evento. Ahora el historial se dibuja de una vez y baja al final una sola vez: 40 ms, también al cambiar de conversación. La página recibe solo la última lectura de cuota de cada agente (eran el 87 % de lo que se descargaba: 3.3 MB → 0.6 MB; el registro las guarda todas), lo que está fuera de la pantalla no se dibuja hasta acercarse (`content-visibility`), y los scripts y estilos se reutilizan entre visitas (`ETag`, 304) y viajan comprimidos.
|
|
38
|
+
- **La esquina de MADRE lleva a su autor.** «MADRE 1.0.2 · © 2026 Jossue Alcalá», en cada proyecto y en Inicio, es un enlace a jossuealcala.com y ya no se pega a la barra de modo cuando el centro es angosto. Los términos adicionales de la licencia exigen conservarla.
|
|
39
|
+
- **«Mac» solo en una Mac.** Donde corre en otra computadora, como Linux, MADRE dice «esta computadora» en vez de «esta Mac», en los dos idiomas; lo que habla de hardware de Apple («Mac con chip M») no cambia.
|
|
40
|
+
- **El inglés dice lo mismo que el español.** 215 frases reescritas con los nombres nuevos y sin jerga (lease, key, aberration, sentinel, HOLD/BRIDGE…).
|
|
8
41
|
|
|
9
42
|
## 1.0.1 · 2026-10-14
|
|
10
43
|
|
package/CONTRIBUTING.md
CHANGED
|
@@ -14,7 +14,7 @@ node ./bin/madre.mjs start --no-open # the room from source, URL in the termi
|
|
|
14
14
|
|
|
15
15
|
## Sign your work
|
|
16
16
|
|
|
17
|
-
Every commit carries a `Signed-off-by:` line (`git commit -s`). It is the [Developer Certificate of Origin](https://developercertificate.org): you wrote the change, or have the right to submit it, and it goes in under the project's [
|
|
17
|
+
Every commit carries a `Signed-off-by:` line (`git commit -s`). It is the [Developer Certificate of Origin](https://developercertificate.org): you wrote the change, or have the right to submit it, and it goes in under the project's licence: the [GNU AGPL v3](LICENSE) with the [additional terms](ADDITIONAL-TERMS.md) of its Section 7. Contributions are credited in the history; MADRE's name, logo, NOTICE and the author's attribution on screen stay as they are ([TRADEMARKS.md](TRADEMARKS.md)).
|
|
18
18
|
|
|
19
19
|
## What a good change looks like
|
|
20
20
|
|