release security tasks gateway channels breaking-changes

OpenClaw 3.31–4.2: Szczypce w ruch — Blokada pluginów, mózg zadań i oblężenie bezpieczeństwa

OpenClaws.io Team

OpenClaws.io Team

@openclaws

April 3, 2026

12 min czytania

OpenClaw 3.31–4.2: Szczypce w ruch — Blokada pluginów, mózg zadań i oblężenie bezpieczeństwa

3.28 dał homarowi nowy pancerz. Twardszy, gęstszy, gotowy do walki.

A potem rzeczywistość przypomniała o sobie.

Zespół bezpieczeństwa AI Cisco rozebrał na części popularny skill społecznościowy i odkrył, że to w zasadzie malware — po cichu wyprowadzał dane na serwery atakujących i obchodził wytyczne bezpieczeństwa przez prompt injection. Badacze przeskanowali 31 000 skilli: 26% miało co najmniej jedną podatność. Kampania ClawHavoc podrzuciła ponad 800 złośliwych skilli do ClawHub. Homar miał nowy pancerz, ale ocean stał się niebezpieczniejszy.

Trzy wydania w trzy dni. 3.31, 4.1, 4.2. To nie jest sprint funkcjonalności — to oblężenie. Łamiące zmiany, blokady bezpieczeństwa i przepisywanie infrastruktury, wszystko wymierzone w jeden cel: sprawić, żeby OpenClaw było trudniejsze do zaatakowania, łatwiejsze do kontrolowania i bardziej przejrzyste w tym, co robi.

Standardowa rada, podwójna dawka: homary na produkcji, przeczytajcie przed aktualizacją.

Instalacje pluginów mają teraz bramkarza

Zmiana, która najprawdopodobniej zepsuje twój workflow, jest jednocześnie najbardziej potrzebna.

Wcześniej można było zainstalować dowolny skill, niezależnie od tego, co w nim siedziało. Niebezpieczny kod, złośliwe zależności, ładunki prompt injection — instalacja przechodziła gładko, a ty dowiadywałeś się o problemie, gdy było już za późno.

Koniec z tym. OpenClaw uruchamia wbudowany skan niebezpiecznego kodu przed każdą instalacją pluginu. Jeśli zostaną wykryte krytyczne problemy, instalacja natychmiast się kończy. Jedyne obejście: jawna flaga \--dangerously-force-unsafe-install\ — nazwa dobrana tak, żebyś się zawahał, gdy ją wpisujesz.

Kontekst: ekosystem skilli miał problem z zaufaniem. Cisco odkryło, że popularny skill społecznościowy wyprowadzał dane użytkowników przez ciche komendy curl. ClawHub w momencie analizy zawierał 2857 skilli, z których 341 potwierdzono jako złośliwe w ramach wielu kampanii. Później liczba wzrosła do ponad 824. Bramka instalacyjna przychodzi późno, ale jest konieczna.

Jeśli utrzymujesz skille zależne od pakietów z znanymi podatnościami lub ściągasz zależności przez bramę, spodziewaj się błędów instalacji po aktualizacji. Rozwiązanie: wyczyść drzewo zależności albo świadomie zdecyduj się na wymuszoną instalację.

xAI i Firecrawl: ścieżki konfiguracji się przeniosły

Jeśli używasz wyszukiwania xAI lub Firecrawl do web fetchingu, twoje ścieżki konfiguracji są teraz nieważne.

Wyszukiwanie xAI: wszystko z \tools.web.x_search.<em class="italic text-slate-200">\ przenosi się do \plugins.entries.xai.config.xSearch.</em>\. Uwierzytelnianie ujednolicone na \plugins.entries.xai.config.webSearch.apiKey\ / \XAI_API_KEY\.

Firecrawl: stara ścieżka \tools.web.fetch.firecrawl.<em class="italic text-slate-200">\ nie istnieje. Nowy adres: \plugins.entries.firecrawl.config.webFetch.</em>\. Fallback web_fetch przechodzi teraz przez czystą granicę fetch-provider zamiast ekskluzywnej gałęzi core Firecrawl.

Dobra wiadomość: jedno uruchomienie \openclaw doctor --fix\ automatycznie przeprowadza migrację. Ale skrypty, automatyzacje lub pipeline'y CI bezpośrednio odwołujące się do starych ścieżek wymagają ręcznej aktualizacji.

To część szerszej zmiany architekturalnej: ustawienia specyficzne dla dostawców przenoszą się z monolitycznej konfiguracji rdzenia do przestrzeni nazw zarządzanych przez pluginy. Czystsze granice, jaśniejsza odpowiedzialność.

Zadania w tle mają teraz mózg

System zadań w tle OpenClaw został całkowicie przebudowany.

Wcześniej zadania ACP, joby cron i zadania subagentów miały każde swoje mechanizmy śledzenia — albo nie miały żadnych. Debugowanie zawieszonego zadania to zgadywanka. Anulowanie zadania to akt wiary.

Teraz wszystko przechodzi przez zunifikowany rejestr oparty na SQLite. ACP, subagent, cron i wykonanie CLI w tle — wszystko trafia do jednego systemu z właściwym śledzeniem cyklu życia, ścieżkami audytu i widocznością statusu.

Co to oznacza dla użytkowników:

  • \/tasks\ w dowolnej sesji czatu pokazuje panel na żywo ze wszystkimi zadaniami w tle danej sesji — status, ostatnia aktywność i liczniki fallbacków na pierwszy rzut oka.
  • Zablokowane zadania pokazują powód. Koniec z zgadywaniem.
  • Eleganckie anulowanie. Anulowane zadania czekają, aż aktywna praca się zakończy, zanim się zatrzymają. Bez brutalnych przerwań.
  • Odzyskiwanie utraconych przebiegów. System wykrywa osierocone zadania i podaje wskazówki odzyskiwania via doctor.
  • Sterowanie przepływem. \openclaw flows list|show|cancel\ daje liniową powierzchnię sterowania wielozadaniowymi workflow'ami.

Dla tych, którzy prowadzą złożone automatyzacje — łańcuchy agentów, zaplanowane joby, przetwarzanie w tle — debugowanie zadań zmienia się z domysłów w diagnostykę.

Wykonywanie poleceń: zamki jeszcze ciaśniejsze

Tutaj wzmocnienie bezpieczeństwa uderza najmocniej. Kilka zmian bezpośrednio wpływa na to, jak polecenia są wykonywane i kto może je uruchamiać.

Parowanie węzła nie oznacza już prawa do wykonywania poleceń. Wcześniej ukończenie parowania urządzenia automatycznie nadawało uprawnienia do wykonywania poleceń węzła. Teraz parowanie musi być jawnie zatwierdzone, zanim polecenia zostaną aktywowane. Wektor eskalacji uprawnień przez przepływ parowania został zamknięty.

Wrażliwe zmienne środowiskowe są usuwane ze środowiska wykonawczego shell. URL indeksu pakietów Pythona (\PIP_INDEX_URL\), endpointy Dockera, ścieżki certyfikatów TLS, ścieżki kompilatora — wszystko zablokowane przed przekazaniem ze scope'u żądania do środowiska wykonawczego. Zamknięta została udokumentowana powierzchnia ataku na łańcuch dostaw: wcześniej atakujący mogli wstrzykiwać zmienne środowiskowe, żeby przekierowywać pobieranie pakietów do złośliwych źródeł.

\tools.exec.host=auto\ jest teraz czystą flagą routingu. Nie oznacza już domyślnie „użyj sandboxa, jeśli dostępny". Jeśli sandbox nie istnieje, a jest jawnie żądany, następuje natychmiastowy błąd zamiast cichego fallbacku do wykonania bez sandboxa. Koniec z cichymi downgrade'ami.

Aktualizacje platform

WhatsApp

Agenci mogą teraz reagować na wiadomości emoji — ❤️ na zdjęcie, 👍 na potwierdzenie. Nie trzeba za każdym razem pisać „fajne zdjęcie!".

Telegram

Żądania zatwierdzenia w grupach zostają w oryginalnym wątku tematu, zamiast uciekać do głównego czatu. Kontrolki cooldownu błędów (\errorPolicy\ i \errorCooldownMs\) zapobiegają zalewaniu powiadomień tym samym przejściowym błędem.

Matrix

Odpowiedzi strumieniowe aktualizują się in-place w pojedynczej wiadomości, zamiast wysyłać nową wiadomość na każdy fragment. Dostępny jest też kontekst historii wiadomości, dzięki czemu agenci rozumieją rozmowę, która ich aktywowała.

Slack

Żądania zatwierdzenia wykonania poleceń można teraz obsłużyć w całości w Slacku — bez przeskakiwania do interfejsu webowego czy terminala.

Android

Integracja z Google Assistant App Actions pozwala uruchamiać OpenClaw bezpośrednio z asystenta głosowego, przekazując prompty do interfejsu czatu.

macOS

Voice Wake aktywuje tryb konwersacji słowem wybudzającym. Bez użycia rąk.

LINE

Obsługa dołączonych pluginów z wysyłaniem wychodzącym obrazów, wideo i audio. Naprawiono rozwiązywanie kontraktu runtime przy globalnych instalacjach npm.

QQ Bot

Pełny dołączony plugin kanału: konfiguracja wielu kont, komendy slash, przypomnienia i obsługa bogatych mediów dla czatów prywatnych, wiadomości @grupowych i kanałów gildii.

Uwierzytelnianie bramy: koniec z domyślnym zaufaniem

Self-hosterzy, uwaga.

Tryb \trusted-proxy\ bramy odrzuca teraz konfiguracje mieszane z jednoczesnym użyciem współdzielonych tokenów. Fallback bezpośredniego połączenia lokalnego nie przepuszcza już domyślnie wywołujących z tego samego hosta — wymagany jest jawnie skonfigurowany token.

Jeśli twoje środowisko działało na zasadzie „ta sama maszyna = zaufana", po aktualizacji przestanie działać. Dodaj jawną konfigurację uwierzytelniania.

Rate limiting współdzielonego uwierzytelniania pozostaje aktywny podczas prób handshake'u WebSocket, a żądania HTTP trusted-proxy z niezgodnymi nagłówkami Origin są odrzucane.

---

3.28 dał homarowi pancerz. 3.31 do 4.2 nauczyły go walczyć szczypcami.

Instalacje pluginów mają bramkarza. Zadania w tle mają mózg. Ścieżki konfiguracji mają czyste granice. Środowiska wykonawcze zostały pozbawione powierzchni ataku. Brama wymaga poświadczeń zamiast zakładać dobrą wolę.

Trzy wydania. Trzy dni. Perymetr bezpieczeństwa się skurczył, a wszystko wewnątrz stało się trudniejsze do złamania.

Homar wystawił szczypce. Nie sięgaj bez pozwolenia.

Bądź na bieżąco

Otrzymuj informacje o nowych funkcjach i integracjach. Bez spamu, wypisanie w każdej chwili.