Skip to main content
Esta página recopila las pruebas que respaldan la limpieza de rendimiento, tamaño de paquetes, dependencias y shrinkwrap de OpenClaw de mayo de 2026. Es el complemento técnico de la publicación pública del blog. Aquí se combinan dos auditorías:
  • Revisión del rendimiento de las versiones: versiones de GitHub desde v2026.5.28 hasta la versión estable v2026.4.23, mediante el flujo de trabajo OpenClaw Performance, profile=smoke, en la vía del proveedor simulado. La mayoría de las filas de etiquetas corresponden a una muestra; las filas v2026.5.27 y v2026.5.28 usan los artefactos más recientes de la rama de versión con 3 repeticiones.
  • Contexto anterior de abril: líneas base publicadas del proveedor simulado clawgrit-reports, desde v2026.4.1 hasta v2026.5.2, utilizadas únicamente para evitar considerar las versiones defectuosas de finales de abril como la línea base pública de rendimiento.
  • Revisión de la huella de instalación: instalaciones nuevas de npm install --ignore-scripts en paquetes temporales, con du -sk node_modules para el tamaño y un recorrido de node_modules para contar las instancias de paquetes.
  • Revisión del tamaño del paquete npm: npm pack openclaw@<version> --dry-run --json para las versiones publicadas, registrando el tamaño del tarball comprimido, el tamaño descomprimido y el número de archivos.
La revisión principal del rendimiento usa una muestra de prueba rápida por etiqueta, excepto las filas v2026.5.27 y v2026.5.28, que usan los artefactos más recientes de la rama de versión con 3 repeticiones. El contexto anterior de abril usa medianas publicadas de 3 repeticiones de clawgrit-reports. Los números deben considerarse pruebas de tendencias y señales para detectar regresiones, no estadísticas de los criterios de aprobación de versiones.

Resumen

Cobertura de rendimiento: 77 versiones solicitadas, 74 puntos respaldados por artefactos y 3 ejecuciones de CI no disponibles. Último punto estable medido: v2026.5.28.

Turno estable del agente

Turno en frío 5.1 veces más rápido
  • v2026.4.14: 9.8s
  • v2026.5.28: 1.9s

Paquete publicado

Tarball de 17.9MBPaquete estable más reciente, por debajo del máximo de tamaño de paquete de marzo de 43.3MB.

Instalación estable más reciente

Instalación nueva de 361.7MiBReduce considerablemente el árbol anidado de dependencias de OpenClaw desde el máximo de introducción de shrinkwrap de 2026.5.22, aunque en la auditoría de instalación local todavía queda un árbol anidado más pequeño de 259.7MiB.

Grafo de dependencias

300 paquetes instaladosMedidos como raíces únicas de nombre y versión de paquete en una instalación nueva con los scripts desactivados; 71 raíces menos que en la versión estable anterior.

Qué cambió en 5.28

La limpieza entre v2026.5.27 y v2026.5.28 redujo el grafo de instalación predeterminado en lugar de eliminar las propias capacidades.

Grafo raíz predeterminado

Las raíces únicas de nombre y versión de paquete bajaron de 371 a 300. Las instancias de paquetes bajaron de 372 a 301.

Árbol anidado

El openclaw/node_modules anidado bajó de 656.1MiB a 259.7MiB en la misma auditoría de instalación local.

Conos nativos opcionales

El cono de paquetes nativos multiplataforma de @napi-rs/canvas dejó de incluirse en la instalación predeterminada.

Superficie de la cadena de suministro

Menos paquetes predeterminados implican menos tarballs, mantenedores, binarios nativos, comportamientos durante la instalación y rutas de actualización transitivas en las que confiar de forma predeterminada.
Shrinkwrap no era el problema por sí solo. El problema era la estructura deficiente del paquete. v2026.5.28 sigue distribuyendo shrinkwrap, pero el árbol anidado de dependencias es mucho más pequeño y la ramificación multiplataforma de canvas ha desaparecido en la auditoría local.

Cifras principales

No se deben usar las filas defectuosas de finales de abril como líneas base públicas de rendimiento. v2026.4.23 y v2026.4.29 son pruebas útiles de regresiones, pero las grandes diferencias del tipo 14x describen principalmente la recuperación de una línea de versiones deficiente. Para la narrativa del blog, debe usarse la línea base publicada de principios de abril como referencia de escala. La línea base es v2026.4.14 de la ejecución publicada del proveedor simulado clawgrit-reports (3 repeticiones; esa ejecución solo falló porque no se emitió la cronología de diagnóstico, por lo que las medianas en frío, en caliente y de RSS siguen siendo útiles como escala aproximada). Esto debe considerarse contexto narrativo, no una estadística de los criterios de aprobación de versiones. Dentro de la revisión de mayo, la fila más reciente de la rama de versión cambió sustancialmente respecto de v2026.5.2: En comparación con la versión estable anterior:

Huella de instalación

Tamaño del paquete npm

2026.5.12 es el hito visible de extracción de plugins en el registro de cambios: Amazon Bedrock, Bedrock Mantle, Slack, el entorno aislado OpenShell, Anthropic Vertex, Matrix y WhatsApp salieron de la ruta de dependencias del núcleo, de modo que sus conos de dependencias se instalan con esos plugins en lugar de con cada instalación del núcleo.

Resumen de turnos del agente Kova

La línea estable de abril contiene dos historias diferentes. A principios de abril era lenta, pero reconocible. A finales de abril se convirtió en un precipicio de regresiones. v2026.5.2 es el punto en el que la vía del proveedor simulado entra por primera vez en el intervalo de 3-5s y empieza a aprobar de forma consistente en la revisión proporcionada. Contexto publicado anteriormente: Revisión proporcionada:

Sondeos de código fuente

Los sondeos de código fuente se omitieron para 17 referencias antiguas correctas porque esos árboles de código fuente todavía no tenían los puntos de entrada necesarios para los sondeos. Las métricas de turnos del agente siguen existiendo para esas referencias. Puntos representativos de los sondeos de código fuente: El pico de estado de la CLI de v2026.5.22 es visible en esta tabla aunque la vía de turnos del agente siguiera aprobando. Deben conservarse los sondeos de código fuente al investigar regresiones específicas de la CLI o del Gateway.

Auditoría de la huella de instalación

Las muestras de dependencias usan una versión estable por mes, además del evento de introducción de shrinkwrap de 2026.5.22 y la versión más reciente de 2026.5.28.

Límite de shrinkwrap

2026.5.20 se publicó sin shrinkwrap raíz y sin un gran árbol anidado de dependencias de OpenClaw. 2026.5.22 introdujo el shrinkwrap raíz e instaló 911.8MB bajo el openclaw/node_modules anidado. 2026.5.28 mantiene el shrinkwrap y todavía instala 259.7MiB bajo el openclaw/node_modules anidado, pero ya no instala ningún paquete de @napi-rs/canvas en la auditoría local de instalación limpia. La inspección del tarball publicado verifica el límite: La distinción importante: el shrinkwrap en sí no es el problema. v2026.5.28 todavía incluye el shrinkwrap raíz. El problema era la estructura del paquete que hacía que npm materializara un gran árbol anidado de dependencias de OpenClaw y los 12 paquetes de plataforma de @napi-rs/canvas. El árbol anidado es más pequeño en v2026.5.28, y la distribución entre plataformas de Canvas ya no aparece en la auditoría local. Para obtener una explicación sencilla de shrinkwrap y de las comprobaciones de paquetes destinadas a responsables de mantenimiento, consulte shrinkwrap de npm.

Interpretación de la cadena de suministro

El recuento de dependencias es una métrica de seguridad operativa, no solo una métrica del tamaño de instalación. Cada paquete amplía el conjunto de responsables de mantenimiento, tarballs, actualizaciones transitivas, binarios nativos opcionales y comportamientos durante la instalación en los que los operadores deben confiar. La dirección de la depuración es:
  • mantener las capacidades pesadas y opcionales fuera de la instalación predeterminada del núcleo
  • hacer que los paquetes de plugins sean propietarios de su grafo de dependencias de ejecución
  • evitar la reparación mediante el gestor de paquetes durante el inicio del Gateway
  • preservar las instalaciones deterministas sin provocar la materialización de paquetes nativos para todas las plataformas
  • mantener deshabilitados los scripts de instalación en las rutas de aceptación y medición de paquetes
  • detectar árboles de dependencias anidados y expansiones descontroladas de dependencias nativas opcionales antes de publicar
Documentación relacionada: