Перейти до основного вмісту
Ця сторінка фіксує докази, що стоять за очищенням продуктивності, розміру пакета, залежностей і shrinkwrap OpenClaw у травні 2026 року. Це технічний супровід до публічної публікації в блозі. Тут об’єднано два аудити:
  • Перевірка продуктивності релізів: GitHub Releases від v2026.5.28 назад до стабільного v2026.4.23, з використанням workflow OpenClaw Performance, profile=smoke, lane mock-провайдера. Більшість рядків тегів мають один зразок; рядки v2026.5.27 і v2026.5.28 використовують найновіші repeat-3 артефакти гілки релізу.
  • Попередній квітневий контекст: опубліковані базові значення mock-провайдера clawgrit-reports від v2026.4.1 до v2026.5.2, використані лише щоб не вважати зламані релізи кінця квітня публічною базою продуктивності.
  • Перевірка розміру встановлення: свіжі встановлення npm install --ignore-scripts у тимчасові пакети, з du -sk node_modules для розміру та обходом node_modules для підрахунку екземплярів пакетів.
  • Перевірка розміру npm-пакета: npm pack openclaw@<version> --dry-run --json для опублікованих релізів, із записом розміру стисненого tarball, розпакованого розміру та кількості файлів.
Основна перевірка продуктивності використовує один smoke-зразок на тег, крім рядків v2026.5.27 і v2026.5.28, які використовують найновіші repeat-3 артефакти гілки релізу. Попередній квітневий контекст використовує опубліковані repeat-3 медіани з clawgrit-reports. Розглядайте ці числа як доказ тенденції та сигнал для пошуку регресій, а не як статистику release-gate.

Знімок

Покриття продуктивності: 77 запитаних релізів, 74 точки з артефактами, і 3 недоступні CI-запуски. Найновіша виміряна стабільна точка: v2026.5.28.

Stable agent turn

У 5,1 раза швидший холодний turn
  • v2026.4.14: 9,8 с
  • v2026.5.28: 1,9 с

Published package

Tarball 17,9MBНайновіший стабільний пакет, менше за березневий пік розміру пакета 43,3MB.

Latest stable install

Свіже встановлення 361,7MiBv2026.5.28 різко скорочує вкладене дерево залежностей OpenClaw, але менше вкладене дерево 259,7MiB усе ще залишається в локальному аудиті встановлення.

Dependency graph

300 встановлених пакетівНайновіший стабільний реліз, виміряний як унікальні корені імені/версії пакета у свіжому встановленні з вимкненими скриптами.

Хронологія розміру встановлення

Monthly high

645 залежностей2026.2.26 був місячним максимумом кількості залежностей у цьому зразку.

Shrinkwrap introduced

Встановлення 1 020,6MB2026.5.22 додав кореневий shrinkwrap і виявив проблему форми пакета: 911,8MB потрапили у вкладений openclaw/node_modules.

Latest stable

Встановлення 361,7MiB2026.5.28 скорочує розмір свіжого встановлення на 52,8% порівняно з 2026.5.27, але все ще встановлює вкладене дерево OpenClaw розміром 259,7MiB.

Dependency graph

300 коренів пакетів2026.5.28 встановлює на 71 менше унікальних коренів імені/версії пакета, ніж 2026.5.27.
Shrinkwrap сам по собі не був проблемою. Нею була погана форма пакета. v2026.5.28 усе ще постачається зі shrinkwrap, але вкладене дерево залежностей значно менше, а fanout canvas для всіх платформ зник у локальному аудиті.

Що змінилося у 5.28

Очищення між v2026.5.27 і v2026.5.28 зменшило граф встановлення за замовчуванням замість того, щоб прибрати самі можливості.

Кореневий граф за замовчуванням

Кількість унікальних коренів імен/версій пакетів зменшилася з 371 до 300. Кількість екземплярів пакетів зменшилася з 372 до 301.

Вкладене дерево

Вкладений openclaw/node_modules зменшився з 656.1MiB до 259.7MiB у тому самому локальному аудиті встановлення.

Нативні необов’язкові конуси

Загальноплатформний конус нативних пакетів @napi-rs/canvas перестав потрапляти до встановлення за замовчуванням.

Поверхня ланцюга постачання

Менше пакетів за замовчуванням означає менше tarball-файлів, супровідників, нативних бінарних файлів, поведінки під час встановлення та транзитивних шляхів оновлення, яким за замовчуванням треба довіряти.

Головні числа

Не використовуйте зламані рядки кінця квітня як публічні базові показники продуктивності. v2026.4.23 і v2026.4.29 корисні як докази регресії, але великі дельти у стилі 14x здебільшого описують відновлення після невдалої лінійки релізів. Для наративу в блозі використовуйте ранішу квітневу опубліковану базову лінію як масштаб:
МетрикаРаніша квітнева базова лініяv2026.5.28Дельта
Холодний хід агента9,819ms1,908msна 80.6% нижче, у 5.1x швидше
Теплий хід агента7,458ms1,870msна 74.9% нижче, у 4.0x швидше
Піковий RSS агента686.2MB581.0MBна 15.3% нижче
Раніша квітнева базова лінія — це v2026.4.14 з опублікованого запуску mock-provider clawgrit-reports. У цьому запуску використовувався repeat 3, і він зазнав невдачі лише тому, що діагностичну часову шкалу не було виведено; медіани холодного, теплого та RSS усе ще корисні як приблизний масштаб. Розглядайте це як наративний контекст, а не як статистику для релізного шлюзу. У межах травневого проходу останній рядок релізної гілки суттєво зрушився від v2026.5.2:
Метрикаv2026.5.2v2026.5.28Дельта
Холодний хід агента3,897ms1,908msна 51.0% нижче
Теплий хід агента3,610ms1,870msна 48.2% нижче
Піковий RSS агента613.7MB581.0MBна 5.3% нижче
Порівняно з попереднім стабільним релізом:
Метрикаv2026.5.27v2026.5.28Дельта
Холодний хід агента2,231ms1,908msна 14.5% нижче
Теплий хід агента2,226ms1,870msна 16.0% нижче
Піковий RSS агента649.0MB581.0MBна 10.5% нижче

Обсяг встановлення

МетрикаБазова лініяv2026.5.28Дельта
Розмір встановлення від піку 2026.5.221,020.6MB361.7MiBна 64.6% нижче
Розмір встановлення від останнього релізу 2026.5.27767.1MiB361.7MiBна 52.8% нижче
Залежності від місячного максимуму 2026.2.26645300на 53.5% нижче
Залежності від останнього релізу 2026.5.27371300на 19.1% нижче
Вкладений openclaw/node_modules від 2026.5.22911.8MB259.7MiBна 71.5% нижче
Вкладений openclaw/node_modules від 2026.5.27656.1MiB259.7MiBна 60.4% нижче

Розмір пакета npm

ВерсіяСтиснений tarballРозпакований пакетФайлиПримітки
2026.1.3012.8MB33.5MB4,607ранній ребрендований пакет
2026.2.2623.6MB82.9MB10,125зростання функцій
2026.3.3143.3MB182.6MB21,037найвища точка розміру пакета
2026.4.2922.9MB74.6MB9,309помітне обрізання пакета
2026.5.1223.4MB80.1MB12,035великий поділ зовнішніх plugin
2026.5.2217.2MB76.9MB12,386docs/assets виключено з пакета
2026.5.2717.8MB79.0MB12,509попередній стабільний пакет
2026.5.2817.9MB81.0MB9,082останній стабільний пакет
2026.5.12 — це помітна віха винесення plugin у changelog: Amazon Bedrock, Bedrock Mantle, Slack, OpenShell sandbox, Anthropic Vertex, Matrix і WhatsApp вийшли з шляху залежностей ядра, тож їхні конуси залежностей встановлюються разом із цими plugins, а не з кожним встановленням ядра.

Підсумок ходу агента Kova

Квітнева стабільна лінійка містить дві різні історії. Ранній квітень був повільним, але впізнаваним. Кінець квітня перетворився на регресійний обрив. v2026.5.2 — це місце, де лінія mock-provider уперше опускається в діапазон 3-5s і починає послідовно проходити у наданому проході. Раніший опублікований контекст:
РелізKovaХолодний хідТеплий хідПіковий RSS агента
v2026.4.10ЗБІЙ11,031ms7,962ms679.0MB
v2026.4.12ЗБІЙ11,965ms8,289ms713.5MB
v2026.4.14ЗБІЙ9,819ms7,458ms686.2MB
v2026.4.20ЗБІЙ22,314ms18,811ms810.8MB
v2026.4.22ЗБІЙ9,630ms7,459ms743.0MB
Наданий прохід:
РелізKovaХолодний хідТеплий хідПіковий RSS агента
v2026.4.23ЗБІЙ47,847ms8,010ms1,082.7MB
v2026.4.24ЗБІЙ48,264ms25,483ms996.0MB
v2026.4.25ЗБІЙ81,080ms59,172ms1,113.9MB
v2026.4.26ЗБІЙ76,771ms54,941ms1,140.8MB
v2026.4.27ЗБІЙ60,902ms33,699ms1,156.0MB
v2026.4.29ЗБІЙ94,031ms57,334ms3,613.7MB
v2026.5.2УСПІХ3,897ms3,610ms613.7MB
v2026.5.7УСПІХ3,923ms3,693ms654.1MB
v2026.5.12УСПІХ7,248ms6,629ms834.8MB
v2026.5.18УСПІХ3,301ms2,913ms630.3MB
v2026.5.20УСПІХ3,413ms2,952ms643.2MB
v2026.5.22УСПІХ4,494ms4,093ms654.3MB
v2026.5.26УСПІХ2,626ms2,282ms660.4MB
v2026.5.27-beta.1УСПІХ2,575ms2,217ms635.3MB
v2026.5.27УСПІХ2,231ms2,226ms649.0MB
v2026.5.28УСПІХ1,908ms1,870ms581.0MB

Вихідні зонди

Вихідні зонди було пропущено для 17 успішних старіших refs, оскільки ті дерева вихідного коду ще не мали потрібних точок входу зондів. Метрики ходів агента для цих refs усе ще існують. Репрезентативні точки вихідних зондів:
Релізreadyz p50 за замовчуванням50 plugins readyz p50CLI health p50Максимальний RSS Plugin
v2026.4.292,819ms2,618ms1,679ms389.0MB
v2026.5.22,324ms2,013ms1,384ms377.2MB
v2026.5.71,649ms1,540ms1,175ms387.6MB
v2026.5.181,942ms1,927ms607ms426.5MB
v2026.5.201,966ms1,987ms621ms455.0MB
v2026.5.222,081ms1,884ms5,095ms444.2MB
v2026.5.261,546ms1,634ms656ms400.4MB
v2026.5.27-beta.11,462ms1,548ms548ms394.0MB
v2026.5.271,491ms1,571ms553ms401.5MB
v2026.5.281,457ms1,474ms623ms386.1MB
Сплеск справності CLI у v2026.5.22 видно в цій таблиці, хоча лінія agent-turn усе ще пройшла. Зберігайте вихідні зонди під час розслідування цільових регресій CLI або Gateway.

Аудит інсталяційного відбитка

Вибірки залежностей використовують по одному стабільному випуску на місяць, а також подію запровадження shrinkwrap у 2026.5.22 і найновіший випуск 2026.5.28.
ТочкаВстановлені залежностіСвіже встановленняПакет OpenClawВкладений openclaw/node_modulesКореневий shrinkwrapПоведінка встановлення Canvas
Січ. 2026.1.30605438.4MB45.8MB2.4MBніобгортка верхнього рівня + darwin-arm64
Лют. 2026.2.26645575.7MB110.1MB3.5MBніобгортка верхнього рівня + darwin-arm64
Бер. 2026.3.31438584.1MB234.8MB0MBніобгортка верхнього рівня + darwin-arm64
Квіт. 2026.4.29392335.0MB97.4MB0MBнінічого не встановлено
2026.5.224011,020.6MB1,020.4MB911.8MBтаквкладено: усі 12 пакетів @napi-rs/canvas
Трав. 2026.5.26371767.5MB767.4MB656.4MBтаквкладено: усі 12 пакетів @napi-rs/canvas
2026.5.27371767.1MiB766.9MiB656.1MiBтаквкладено: усі 12 пакетів @napi-rs/canvas
Найновіший 2026.5.28300361.7MiB361.6MiB259.7MiBтакнічого не встановлено

Межа shrinkwrap

До shrinkwrap

2026.5.20 не має кореневого shrinkwrap і великого вкладеного дерева залежностей OpenClaw.

Запроваджено

2026.5.22 додає кореневий shrinkwrap і встановлює 911.8MB у вкладений openclaw/node_modules.

Найновіший стабільний

2026.5.28 зберігає shrinkwrap і все ще встановлює 259.7MiB у вкладений openclaw/node_modules.

Розгортання Canvas виправлено

2026.5.28 більше не встановлює жодних пакетів @napi-rs/canvas у локальному аудиті свіжого встановлення.
Перевірка опублікованого tarball підтверджує межу:
ВерсіяОпубліковано як стабільну?Кореневий npm-shrinkwrap.jsonПримітки
2026.5.20такніостанній стабільний випуск до shrinkwrap
2026.5.21нін/днемає стабільного npm-випуску
2026.5.22тактакshrinkwrap запроваджено
2026.5.23нін/днемає стабільного npm-випуску
2026.5.24нін/днемає стабільного npm-випуску
2026.5.25нін/днемає стабільного npm-випуску
2026.5.26тактаквкладене дерево залежностей усе ще наявне
2026.5.27тактаквкладене дерево залежностей усе ще наявне
2026.5.28тактаквкладене дерево залежностей значно менше
Важлива відмінність: сам shrinkwrap не є проблемою. v2026.5.28 усе ще постачається з кореневим shrinkwrap. Проблемою була форма пакета, через яку npm матеріалізував велике вкладене дерево залежностей OpenClaw і всі 12 платформних пакетів @napi-rs/canvas. У v2026.5.28 вкладене дерево менше, а розгортання платформ Canvas більше не потрапляє в локальний аудит. Просте пояснення shrinkwrap і перевірок пакетів на рівні супровідників див. у npm shrinkwrap.

Інтерпретація ланцюга постачання

Кількість залежностей є метрикою операційної безпеки, а не лише метрикою розміру встановлення. Кожен пакет розширює набір супровідників, tarball, транзитивних оновлень, необов’язкових нативних бінарних файлів і поведінки під час встановлення, яким оператори мають довіряти. Напрям очищення такий:
  • тримати важкі й необов’язкові можливості поза стандартним встановленням ядра
  • зробити так, щоб пакети Plugin володіли своїм графом runtime-залежностей
  • уникати runtime-відновлення через менеджер пакетів під час запуску Gateway
  • зберегти детерміновані встановлення без матеріалізації нативних пакетів для всіх платформ
  • тримати скрипти встановлення вимкненими в шляхах приймання та вимірювання пакетів
  • виявляти вкладені дерева залежностей і вибухове зростання нативних необов’язкових залежностей до публікації
Пов’язані документи: