OpenClaw

OpenClaw blog

OpenClaw Is Getting Faster, Smaller, and Easier to Trust

A release sweep across February through May shows faster agent turns, fewer dependencies, and a cleaner package shape.

OpenClaw has been getting faster and smaller at the same time. The performance work is visible in agent turns. The dependency work is quieter, but it cuts npm size, install size, audit surface, and native package surprises.

The package grew while OpenClaw gained channels, providers, media, memory, and plugin SDK surface. Then we started moving heavier plugin dependency cones out of core. The full release rows and caveats live in the technical report.

Stable cold turn 5.1x faster

v2026.4.149.8sv2026.5.281.9s

Stable warm turn 4.0x faster

v2026.4.147.5sv2026.5.281.9s

Agent peak RSS 15% lower

v2026.4.14686 MBv2026.5.28581 MB

Published tarball 59% smaller

2026.3.3143.3 MB2026.5.2817.9 MB

Cold agent turn trend
4.14
9.8s
5.12
7.2s
5.27
2.2s
5.28
1.9s
Published tarball size
1.30
12.8 MB
2.26
23.6 MB
3.31
43.3 MB
5.28
17.9 MB
Fresh install footprint
2.26
575.7 MB
4.29
335.0 MB
5.22*
1,020.6 MB
5.28*
361.7 MiB

* Root shrinkwrap landed in 5.22; 5.28 cuts the duplicate tree sharply, but a smaller nested dependency tree still remains.

Installed dependency count
2.26
645
3.31
438
5.22
401
5.28
300

Measured as unique package name/version roots in a fresh npm install with scripts disabled.

Installed dependencies 300

Latest release, down 19% from 5.27 in the same fresh-install audit.

Down 53% from the monthly high.

Duplicate install copy smaller

5.28 cuts nested openclaw/node_modules from 656.1 MiB to 259.7 MiB in the local audit.

Still not fully gone.

Published files 9,082

Down 27% from 5.27 because 5.28 no longer ships the internal dist/plugin-sdk/src/** declaration mirror.

February and March More product, larger package

The npm package grew from 82.9 MB unpacked to 182.6 MB unpacked while the surface area expanded.

2026.5.12 Plugin extraction becomes visible

Bedrock, Slack, OpenShell, Anthropic Vertex, Matrix, and WhatsApp move out of the core dependency path.

2026.5.22 Shrinkwrap exposed bad package shape

npm materialized a large nested tree with every canvas platform package.

2026.5.28 Latest release: faster turns, much smaller installs

17.9 MB published tarball, 300 installed package roots, and a 361.7 MiB fresh install in the local audit.

Compared with 5.27: cold turns down 14.5%, warm turns down 16.0%, install size down 52.8%.

The direction is simple: keep core small, move optional capabilities into plugins, make dependency ownership explicit, and measure the user-visible effects. The 5.27 and 5.28 performance rows are repeat-3 mock-provider workflow runs from release branches; the install row is a fresh local npm install with scripts disabled. Useful for spotting large shifts, not for pretending every millisecond is a benchmark law.

For methodology, caveats, per-release rows, and the shrinkwrap boundary audit, read the technical report.

Growth, here, looks more like molting than adding.