Chuyển đến nội dung chính
Trang này ghi lại bằng chứng đằng sau đợt dọn dẹp về hiệu năng, kích thước gói, phụ thuộc và shrinkwrap của OpenClaw vào tháng 5 năm 2026. Đây là tài liệu kỹ thuật đi kèm bài đăng blog công khai. Hai đợt kiểm tra được kết hợp tại đây:
  • Rà soát hiệu năng bản phát hành: các GitHub Releases từ v2026.5.28 trở về bản ổn định v2026.4.23, sử dụng quy trình OpenClaw Performance, profile=smoke, luồng nhà cung cấp mô phỏng. Hầu hết các hàng thẻ phiên bản dùng một mẫu; các hàng v2026.5.27v2026.5.28 sử dụng những hiện vật nhánh phát hành lặp lại 3 lần mới nhất.
  • Bối cảnh đầu tháng 4: các đường cơ sở nhà cung cấp mô phỏng clawgrit-reports đã công bố từ v2026.4.1 đến v2026.5.2, chỉ được dùng để tránh coi các bản phát hành bị lỗi vào cuối tháng 4 là đường cơ sở hiệu năng công khai.
  • Rà soát dung lượng cài đặt: chạy npm install --ignore-scripts mới vào các gói tạm thời, dùng du -sk node_modules để đo kích thước và duyệt node_modules để đếm số phiên bản gói.
  • Rà soát kích thước gói npm: chạy npm pack openclaw@<version> --dry-run --json cho các bản phát hành đã công bố, ghi lại kích thước tarball nén, kích thước sau khi giải nén và số lượng tệp.
Đợt rà soát hiệu năng chính sử dụng một mẫu smoke cho mỗi thẻ phiên bản, ngoại trừ các hàng v2026.5.27v2026.5.28, vốn sử dụng những hiện vật nhánh phát hành lặp lại 3 lần mới nhất. Bối cảnh đầu tháng 4 sử dụng các giá trị trung vị lặp lại 3 lần đã công bố từ clawgrit-reports. Hãy coi các con số là bằng chứng xu hướng và tín hiệu tìm kiếm hồi quy, không phải số liệu thống kê cho cổng phát hành.

Ảnh chụp tổng quan

Phạm vi hiệu năng: 77 bản phát hành được yêu cầu, 74 điểm có hiện vật hỗ trợ, và 3 lượt chạy CI không khả dụng. Điểm đo bản ổn định mới nhất: v2026.5.28.

Lượt chạy tác tử ổn định

Lượt chạy nguội nhanh hơn 5,1 lần
  • v2026.4.14: 9,8 giây
  • v2026.5.28: 1,9 giây

Gói đã công bố

Tarball 17,9MBGói ổn định mới nhất, giảm từ đỉnh kích thước gói 43,3MB vào tháng 3.

Bản cài đặt ổn định mới nhất

Bản cài đặt mới 361,7MiBGiảm mạnh cây phụ thuộc OpenClaw lồng nhau so với đỉnh khi đưa shrinkwrap vào ở 2026.5.22, dù trong lần kiểm tra cài đặt cục bộ vẫn còn một cây lồng nhau nhỏ hơn với kích thước 259,7MiB.

Đồ thị phụ thuộc

300 gói đã cài đặtĐược đo dưới dạng các gốc tên/phiên bản gói duy nhất trong một bản cài đặt mới với tập lệnh bị tắt; ít hơn bản phát hành ổn định trước 71 gốc.

Những thay đổi trong 5.28

Đợt dọn dẹp từ v2026.5.27 đến v2026.5.28 đã giảm đồ thị cài đặt mặc định thay vì loại bỏ chính các khả năng.

Đồ thị mặc định gốc

Số gốc tên/phiên bản gói duy nhất giảm từ 371 xuống 300. Số phiên bản gói giảm từ 372 xuống 301.

Cây lồng nhau

openclaw/node_modules lồng nhau giảm từ 656,1MiB xuống 259,7MiB trong cùng lần kiểm tra cài đặt cục bộ.

Các nhánh phụ thuộc native tùy chọn

Nhánh gói native @napi-rs/canvas cho tất cả nền tảng không còn được đưa vào bản cài đặt mặc định.

Bề mặt chuỗi cung ứng

Ít gói mặc định hơn đồng nghĩa với ít tarball, người bảo trì, tệp nhị phân native, hành vi khi cài đặt và đường dẫn cập nhật bắc cầu phải mặc định tin cậy hơn.
Bản thân shrinkwrap không phải là vấn đề. Cấu trúc gói không phù hợp mới là vấn đề. v2026.5.28 vẫn cung cấp shrinkwrap, nhưng cây phụ thuộc lồng nhau nhỏ hơn nhiều và sự phân nhánh canvas cho tất cả nền tảng đã biến mất trong lần kiểm tra cục bộ.

Các số liệu nổi bật

Không sử dụng các hàng bị lỗi vào cuối tháng 4 làm đường cơ sở hiệu năng công khai. v2026.4.23v2026.4.29 là bằng chứng hồi quy hữu ích, nhưng các mức chênh lệch lớn kiểu 14x chủ yếu mô tả sự phục hồi từ một dòng bản phát hành kém. Đối với nội dung blog, hãy dùng đường cơ sở đã công bố từ đầu tháng 4 để thể hiện quy mô. Đường cơ sở là v2026.4.14 từ lượt chạy nhà cung cấp mô phỏng clawgrit-reports đã công bố (lặp lại 3 lần; lượt chạy đó chỉ thất bại vì dòng thời gian chẩn đoán không được phát ra, nên các giá trị trung vị nguội, ấm và RSS vẫn hữu ích để ước lượng quy mô). Hãy coi đây là bối cảnh tường thuật, không phải số liệu thống kê cho cổng phát hành. Trong đợt rà soát tháng 5, hàng nhánh phát hành mới nhất đã thay đổi đáng kể so với v2026.5.2: So với bản phát hành ổn định trước:

Dung lượng cài đặt

Kích thước gói npm

2026.5.12 là cột mốc tách Plugin dễ thấy trong nhật ký thay đổi: Amazon Bedrock, Bedrock Mantle, Slack, môi trường cách ly OpenShell, Anthropic Vertex, Matrix và WhatsApp đã được chuyển ra khỏi đường dẫn phụ thuộc lõi để các nhánh phụ thuộc của chúng được cài đặt cùng các Plugin đó thay vì trong mọi bản cài đặt lõi.

Tóm tắt lượt chạy tác tử Kova

Dòng ổn định tháng 4 chứa hai câu chuyện khác nhau. Đầu tháng 4 chậm nhưng vẫn có thể nhận diện. Cuối tháng 4 trở thành một vực hồi quy. v2026.5.2 là thời điểm luồng nhà cung cấp mô phỏng lần đầu giảm xuống khoảng 3–5 giây và bắt đầu đạt yêu cầu ổn định trong đợt rà soát được cung cấp. Bối cảnh đã công bố trước đó: Đợt rà soát được cung cấp:

Các phép dò mã nguồn

Các phép dò mã nguồn đã được bỏ qua đối với 17 tham chiếu cũ thành công vì các cây mã nguồn đó chưa có những điểm vào cần thiết cho phép dò. Các chỉ số lượt chạy tác tử vẫn tồn tại cho những tham chiếu đó. Các điểm dò mã nguồn tiêu biểu: Mức tăng đột biến về tình trạng CLI của v2026.5.22 thể hiện rõ trong bảng này dù luồng lượt chạy tác tử vẫn đạt yêu cầu. Hãy giữ lại các phép dò mã nguồn khi điều tra các hồi quy CLI hoặc Gateway có mục tiêu cụ thể.

Kiểm tra dung lượng cài đặt

Các mẫu phụ thuộc sử dụng một bản phát hành ổn định mỗi tháng, cộng thêm sự kiện đưa shrinkwrap vào ở 2026.5.22 và bản phát hành 2026.5.28 mới nhất.

Ranh giới shrinkwrap

2026.5.20 được phát hành không có shrinkwrap gốc và không có cây phụ thuộc OpenClaw lồng nhau lớn. 2026.5.22 đưa shrinkwrap gốc vào và cài đặt 911.8MB trong openclaw/node_modules lồng nhau. 2026.5.28 vẫn giữ shrinkwrap và vẫn cài đặt 259.7MiB trong openclaw/node_modules lồng nhau, nhưng không còn cài đặt bất kỳ gói @napi-rs/canvas nào trong đợt kiểm tra cài đặt mới cục bộ. Việc kiểm tra tarball đã xuất bản xác nhận ranh giới này: Điểm phân biệt quan trọng: bản thân shrinkwrap không phải là vấn đề. v2026.5.28 vẫn phát hành kèm shrinkwrap gốc. Vấn đề nằm ở cấu trúc gói khiến npm hiện thực hóa một cây phụ thuộc OpenClaw lồng nhau lớn và cả 12 gói nền tảng @napi-rs/canvas. Cây lồng nhau nhỏ hơn trong v2026.5.28, và nhóm gói nền tảng Canvas không còn xuất hiện trong đợt kiểm tra cục bộ. Để xem phần giải thích bằng ngôn ngữ thông thường về shrinkwrap và các bước kiểm tra gói ở cấp độ người bảo trì, hãy xem npm shrinkwrap.

Diễn giải về chuỗi cung ứng

Số lượng phụ thuộc là một chỉ số bảo mật vận hành, không chỉ là chỉ số kích thước cài đặt. Mỗi gói đều mở rộng tập hợp người bảo trì, tarball, bản cập nhật bắc cầu, tệp nhị phân gốc tùy chọn và hành vi trong lúc cài đặt mà người vận hành phải tin cậy. Hướng dọn dẹp là:
  • giữ các khả năng nặng và tùy chọn bên ngoài bản cài đặt lõi mặc định
  • để các gói Plugin sở hữu đồ thị phụ thuộc thời gian chạy của chúng
  • tránh việc trình quản lý gói sửa chữa trong thời gian chạy khi Gateway khởi động
  • duy trì cài đặt xác định mà không khiến các gói gốc cho mọi nền tảng được hiện thực hóa
  • tiếp tục vô hiệu hóa các tập lệnh cài đặt trong các quy trình chấp nhận và đo lường gói
  • phát hiện cây phụ thuộc lồng nhau và sự bùng nổ phụ thuộc gốc tùy chọn trước khi xuất bản
Tài liệu liên quan: