Ir al contenido

Código abierto

Dos licencias, divididas donde la arquitectura ya se divide.

El motor es un contrato hecho para difundirse. El host es un producto hecho para ser operado. El mapa de licencias sigue exactamente esa línea, y una dirección de dependencia es lo que la vuelve exigible en lugar de solo prolija.

El mapa

Qué está licenciado cómo, y por qué

RutaLicenciaPor qué
src/monkeyllm/: el motor, las diez primitivas, harvestApache-2.0El contrato MCP es el activo. Intégralo, distribúyelo, construye encima; la concesión explícita de patente es lo que permite a una empresa hacerlo sin una revisión legal.
docs/ · tests/ · bench/ · scripts/ · examples/ · paper/ · deploy/Apache-2.0La spec, el benchmark y el pegamento de despliegue solo sirven si todo el mundo puede copiarlos.
apps/station/: REST, superficie MCP, gobernanzaAGPL-3.0-onlyAutoalojarlo sigue siendo completamente libre. Ofrecerlo como servicio gestionado implica abrir el stack de tu servicio.
apps/studio/: la consola webAGPL-3.0-onlyPor la misma razón: es el producto operado, no el contrato.
apps/clipper/: la extensión de navegadorAGPL-3.0-onlyUn cliente de la Station, distribuido por ella: el mismo producto, del otro lado del cable.

El LICENSE de la raíz es Apache-2.0 y cubre todo excepto `apps/`; cada paquete dentro de `apps/` lleva el suyo. Cada archivo de código declara su propia licencia en una cabecera SPDX, así que un archivo que viaje lejos del repositorio conserva sus términos.

La dirección de la dependencia es estructural

Apache-2.0 es compatible en un solo sentido con AGPL-3.0: una obra AGPL puede incluir código Apache-2.0, nunca al revés. Así que el host puede depender del motor, y el motor jamás debe importar desde `apps/`. Eso ya era cierto arquitectónicamente, porque la Station está especificada como cliente privilegiado del motor y no como extensión. La división de licencias vuelve jurídica esa misma frontera, lo que significa que una violación dejó de ser solo un olor de diseño.

Si alojas una Station modificada

La sección 13 de la AGPL-3.0 trata del uso en red: si modificas la Station o el Studio y permites que otras personas interactúen con ellos por la red, debes ofrecerles el código fuente correspondiente de tu versión modificada. Ejecutar una copia sin modificar para ti o para tu organización no dispara nada.

La excepción comercial

Los derechos de autor están en manos de un único autor, así que la AGPL no es la única forma de obtener este software. Si la AGPL-3.0 no encaja (quieres integrar la Station en un producto cerrado, u ofrecerla como servicio gestionado sin abrir tu stack), hay una licencia comercial disponible.

Hablar sobre licenciamiento

Contribuir, y por qué importa el DCO

Las contribuciones entran bajo Apache-2.0 en todas las rutas, incluida `apps/`, que el proyecto distribuye bajo AGPL-3.0-only. Esa licencia de entrada es lo que mantiene posible el licenciamiento dual: Apache-2.0 viaja en un solo sentido hacia dentro de un árbol AGPL, así que una contribución permisiva puede distribuirse bajo la AGPL y también bajo términos comerciales.

Leer el CONTRIBUTING.md
  • Cada commit va firmado (`git commit -s`) bajo el Developer Certificate of Origin, y la CI lo verifica.
  • El DCO certifica de dónde vino el código; la licencia de entrada decide qué puede hacer el proyecto con él. Ambos son obligatorios: la firma sola no haría posible el licenciamiento dual.
  • Una contribución aceptada solo bajo la AGPL dejaría a un titular de derechos que nunca aceptó relicenciar, y la opción comercial desaparecería en silencio, un pull request a la vez.

Sobre los números de este sitio

Cada cifra sale de scripts versionados en el repositorio, y el paper que las describe es un preprint: escrito, con el depósito del DOI aún pendiente. Dos de sus hallazgos principales son fracasos frente a sus criterios originales, y están escritos en lugar de descartados: el Troop compra exactitud, no velocidad, y el aprendizaje de senderos no encontró un 25% que recuperar cerca del piso de un salto. La forma honesta de evaluar este proyecto es reproducir el 0/11 primero; es un comando, y es todo el argumento.

Tómalo, ejecútalo, haz un fork.

Y si la licencia es lo único entre tú y publicar algo, eso es una conversación, no un muro.