- Revisión del rendimiento de las versiones: versiones de GitHub desde
v2026.5.28hasta la versión establev2026.4.23, mediante el flujo de trabajoOpenClaw Performance,profile=smoke, en la vía del proveedor simulado. La mayoría de las filas de etiquetas corresponden a una muestra; las filasv2026.5.27yv2026.5.28usan 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, desdev2026.4.1hastav2026.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-scriptsen paquetes temporales, condu -sk node_modulespara el tamaño y un recorrido denode_modulespara contar las instancias de paquetes. - Revisión del tamaño del paquete npm:
npm pack openclaw@<version> --dry-run --jsonpara las versiones publicadas, registrando el tamaño del tarball comprimido, el tamaño descomprimido y el número de archivos.
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.8sv2026.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 entrev2026.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.
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 de2026.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