Skip to main content
Ця сторінка містить свідчення, на яких ґрунтується виконане в травні 2026 року очищення OpenClaw, пов’язане з продуктивністю, розміром пакета, залежностями та shrinkwrap. Вона є технічним доповненням до публічної статті в блозі. Тут об’єднано два аудити:
  • Перевірка продуктивності випусків: GitHub Releases від v2026.5.28 до стабільного v2026.4.23 включно з використанням робочого процесу OpenClaw Performance, profile=smoke і контуру з імітованим постачальником. Більшість рядків тегів містять один зразок; рядки v2026.5.27 і v2026.5.28 використовують найновіші артефакти гілок випусків із трьома повтореннями.
  • Контекст початку квітня: опубліковані базові показники 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 для опублікованих випусків із фіксацією розміру стисненого архіву tar, розпакованого пакета та кількості файлів.
Основна перевірка продуктивності використовує один smoke-зразок для кожного тегу, крім рядків v2026.5.27 і v2026.5.28, які використовують найновіші артефакти гілок випусків із трьома повтореннями. Для контексту початку квітня використано опубліковані медіани трьох повторень із clawgrit-reports. Розглядайте ці числа як свідчення тенденцій і сигнал для пошуку регресій, а не як статистику для блокування випуску.

Знімок стану

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

Стабільний цикл агента

Холодний цикл у 5,1 раза швидший
  • v2026.4.14: 9,8 с
  • v2026.5.28: 1,9 с

Опублікований пакет

Архів tar розміром 17,9 МБНайновіший стабільний пакет — менше за березневий максимум розміру пакета 43,3 МБ.

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

Чисте встановлення розміром 361,7 МіБЗначно скорочує вкладене дерево залежностей OpenClaw порівняно з піковим значенням під час запровадження shrinkwrap у 2026.5.22, хоча в локальному аудиті встановлення все ще залишається менше вкладене дерево розміром 259,7 МіБ.

Граф залежностей

300 установлених пакетівВиміряно як унікальні корені за назвою та версією пакета в чистому встановленні з вимкненими сценаріями; на 71 корінь менше, ніж у попередньому стабільному випуску.

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

Очищення між v2026.5.27 і v2026.5.28 скоротило граф стандартного встановлення, а не видалило самі можливості.

Кореневий стандартний граф

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

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

Розмір вкладеного openclaw/node_modules зменшився з 656,1 МіБ до 259,7 МіБ у тому самому локальному аудиті встановлення.

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

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

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

Менше стандартних пакетів означає менше архівів tar, супроводжувачів, нативних двійкових файлів, дій під час встановлення та транзитивних шляхів оновлення, яким потрібно довіряти за замовчуванням.
Shrinkwrap сам по собі не був проблемою. Проблемою була невдала структура пакета. v2026.5.28 усе ще постачається зі shrinkwrap, але вкладене дерево залежностей стало значно меншим, а розгалуження canvas для всіх платформ зникло в локальному аудиті.

Основні показники

Не використовуйте несправні рядки кінця квітня як публічні базові показники продуктивності. v2026.4.23 і v2026.4.29 є корисними свідченнями регресії, але великі різниці на кшталт 14x переважно описують відновлення після невдалої лінійки випусків. Для викладу в блозі використовуйте як масштаб опубліковану базу початку квітня. Базовим є v2026.4.14 з опублікованого запуску clawgrit-reports з імітованим постачальником (3 повторення; цей запуск завершився невдало лише тому, що не було створено діагностичну часову шкалу, тому медіани холодного й теплого циклів і RSS усе ще корисні як приблизний масштаб). Розглядайте це як контекст для викладу, а не як статистику для блокування випуску. У межах травневої перевірки найновіший рядок гілки випуску істотно змінився порівняно з v2026.5.2: Порівняно з попереднім стабільним випуском:

Розмір встановлення

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

2026.5.12 — це помітний у журналі змін етап виділення плагінів: Amazon Bedrock, Bedrock Mantle, Slack, пісочницю OpenShell, Anthropic Vertex, Matrix і WhatsApp було винесено з основного шляху залежностей, тому їхні конуси залежностей встановлюються разом із відповідними плагінами, а не з кожним встановленням ядра.

Підсумок циклу агента Kova

Стабільна квітнева лінійка містить дві різні історії. Початок квітня був повільним, але впізнаваним. Наприкінці квітня стався різкий обвал через регресію. У v2026.5.2 контур з імітованим постачальником уперше опускається до діапазону 3–5 с і починає стабільно проходити надану перевірку. Раніше опублікований контекст: Надана перевірка:

Перевірки вихідного коду

Перевірки вихідного коду було пропущено для 17 успішних старіших посилань, оскільки ті дерева вихідного коду ще не мали необхідних точок входу для перевірок. Метрики циклу агента для цих посилань усе одно доступні. Репрезентативні точки перевірок вихідного коду: Сплеск показника стану CLI у v2026.5.22 видно в цій таблиці, хоча контур циклу агента все одно пройшов перевірку. Зберігайте перевірки вихідного коду під час дослідження цільових регресій CLI або Gateway.

Аудит розміру встановлення

Зразки залежностей використовують по одному стабільному випуску на місяць, а також подію запровадження shrinkwrap у 2026.5.22 і найновіший випуск 2026.5.28.

Межа shrinkwrap

2026.5.20 постачалася без кореневого shrinkwrap і без великого вкладеного дерева залежностей OpenClaw. У 2026.5.22 з’явився кореневий shrinkwrap, а у вкладений openclaw/node_modules встановлювалося 911.8MB. 2026.5.28 зберігає shrinkwrap і досі встановлює 259.7MiB у вкладений openclaw/node_modules, але під час локального аудиту чистого встановлення більше не встановлює жодних пакетів @napi-rs/canvas. Перевірка опублікованих tarball-файлів підтверджує цю межу: Важлива відмінність: сам shrinkwrap не є проблемою. v2026.5.28 досі постачається з кореневим shrinkwrap. Проблемою була структура пакета, через яку npm створював велике вкладене дерево залежностей OpenClaw і встановлював усі 12 платформних пакетів @napi-rs/canvas. У v2026.5.28 вкладене дерево стало меншим, а розгортання платформних пакетів Canvas більше не потрапляє до локального аудиту. Зрозуміле пояснення shrinkwrap і перевірок пакетів на рівні супроводу див. у розділі npm shrinkwrap.

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

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