Przejdź do głównej zawartości

Automatyzacja przeglądarki

Integracja automatyzacji przeglądarki udostępnia w Speedwave instancję Chromium w trybie headless, napędzaną oficjalnym serwerem Microsoft @playwright/mcp. Claude może nawigować po złożonych aplikacjach webowych, analizować strukturę dynamicznie renderowanego drzewa DOM oraz drzewa dostępności (a11y), wypełniać formularze, wykonywać skrypty JavaScript oraz tworzyć zrzuty ekranu. Przykłady procesów znajdziesz w rozdziale Automatyczne testowanie w przeglądarce.

Automatyzacja przeglądarki działa jako nieuprzywilejowana usługa compose o nazwie speedwave_<projekt>_mcp_playwright. Ponieważ worker wykonuje zadania bezpośrednio na wskazanych adresach URL bez potrzeby przechowywania poświadczeń API, nie wymaga podpinania wolumenów z tokenami.

Instancja workera jest współdzielona przez aktywne skille oraz wtyczki, co zapobiega uruchamianiu nadmiarowych procesów Chromium.

Integracja @playwright/mcp udostępnia 21 operacji:

NarzędzieZakres działania
browser_navigatePrzejście pod wskazany adres URL na aktywnej stronie.
browser_navigate_backPowrót do poprzedniej strony w historii sesji przeglądarki.
browser_tabsWyświetlanie listy, otwieranie, przełączanie i zamykanie kart przeglądarki.
browser_snapshotPobranie hierarchii drzewa dostępności aktywnej strony.
browser_take_screenshotWykonanie zrzutu ekranu widocznego obszaru (viewport) lub całej strony jako obrazu w formacie base64.
browser_console_messagesOdczyt komunikatów z konsoli przeglądarki.
browser_network_requestsInspekcja strumienia żądań sieciowych HTTP/HTTPS.
browser_evaluateWykonywanie wyrażeń JavaScript w kontekście strony lub elementu.
browser_run_codeWykonywanie bloków kodu automatyzacji Playwright.
browser_clickWysłanie zdarzenia kliknięcia do wskazanego elementu DOM.
browser_hoverWysłanie zdarzenia najechania kursorem myszy na element (hover).
browser_dragWykonanie akcji przeciągnięcia i upuszczenia między elementami (drag-and-drop).
browser_typeWprowadzanie tekstu w pole edycyjne.
browser_press_keyWysłanie kodu konkretnego klawisza lub skrótu klawiszowego.
browser_select_optionWybór opcji z listy rozwijanej HTML.
browser_fill_formWypełnianie wielu pól formularza jednocześnie.
browser_file_uploadDołączanie plików lokalnych do elementów wyboru pliku w formularzu HTML.
browser_handle_dialogAkceptowanie lub odrzucanie okien dialogowych JavaScript (alert, confirm).
browser_wait_forOczekiwanie na widoczność elementu, wyrenderowanie tekstu lub upływ określonego czasu.
browser_resizeZmiana wymiarów widocznego obszaru okna przeglądarki (viewport).
browser_closeZamknięcie aktywnej strony przeglądarki.

Zrzuty ekranu oraz zrzuty drzewa dostępności są zwracane bezpośrednio w odpowiedziach narzędzia. Tymczasowa pamięć podręczna przeglądarki i pliki cookie są usuwane przy restarcie kontenera.

Aby połączyć się z lokalnym serwerem deweloperskim na stacji roboczej, użyj adresu http://host.docker.internal:<PORT> zamiast localhost.

  1. Włącz funkcje Beta features w menu zasobnika systemowego Speedwave.
  2. Aktywuj Automatyzację przeglądarki w panelu integracji projektu.
  3. Poczekaj, aż środowisko kontenerów zbuduje obraz workera Chromium. Kolejne aktywacje korzystają z warstw zapisanych w pamięci podręcznej.

Kontener workera wymusza pełne zabezpieczenia odizolowanego środowiska (cap_drop: ALL, no-new-privileges, główny system plików tylko do odczytu, noexec,nosuid dla partycji tmpfs). Wewnętrzna izolacja Chromium zostaje oddelegowana do granic kontenera. Szczegółowe specyfikacje bezpieczeństwa znajdziesz w rozdziale Model izolacji.