Przejdź do głównej zawartości

Jak działa Speedwave

W rozdziale Czym jest Speedwave opisaliśmy aplikację od strony użytkownika (interfejs graficzny i terminalowe CLI). Ten dokument wyjaśnia architekturę pod spodem: jak Speedwave uruchamia i izoluje komponenty po otwarciu projektu.

Architektura opiera się na trzech zasadach: pełnej izolacji zasobów per projekt, wydzielonych kontenerach workerów dla zewnętrznych usług oraz centralnej bramce MCP (Tool Gateway) pośredniczącej w komunikacji z modelem.

Speedwave organizuje pracę wokół projektów - każdy odpowiada katalogowi roboczemu na twoim dysku. Każdy projekt otrzymuje własną odizolowaną sieć kontenerów, osobny magazyn tokenów oraz wydzielony katalog domowy Claude. Dzięki temu działania w jednym projekcie nie mają wpływu na inne. Nawet jeśli doszłoby do przejęcia pojedynczego kontenera workera, atakujący nie uzyska dostępu do sieci ani poświadczeń innych projektów. Szczegóły opisano w rozdziale Model izolacji.

Kontener z Claude Code nie przechowuje poświadczeń do zewnętrznych serwisów i nie ma bezpośredniego wyjścia do sieci. Gdy projekt korzysta z integracji (np. GitLaba lub Slacka), usługa działa w osobnym kontenerze workera, z kluczami zamontowanymi wyłącznie w trybie tylko do odczytu. Model generujący kod nigdy nie ma wglądu w tokeny autoryzacyjne.

Komunikacja między Claude a workerami przechodzi wyłącznie przez Tool Gateway. Niezależnie od liczby włączonych integracji Claude widzi tylko dwa narzędzia: search_tools oraz execute_code. Dzięki temu definicje dziesiątek funkcji nie zapychają okna kontekstu. Tool Gateway prowadzi też pełny log audytowy i dba o to, by dane zwracane przez integracje przeszły tokenizację PII zanim trafią do modelu.

Każdy projekt uruchamia Claude w przygotowanym kontenerze z kompletem zasobów Claude Code: wbudowanymi skillami, regułami formatowania odpowiedzi, wskaźnikami statusu i domyślną konfiguracją. Przy starcie kontener ładuje również pięć oficjalnych wtyczek Anthropic oraz wszystkie podpisane wtyczki Speednet włączone w projekcie. Te zasoby działają równolegle z plikami w katalogu .claude/ w repozytorium, przy czym konfiguracja zespołu ma zawsze pierwszeństwo. Pełną listę znajdziesz w sekcji Wbudowane skille i wtyczki.

Claude Code jest uruchamiany w konkretnej, stałej wersji z predefiniowanym zestawem flag, co gwarantuje identyczne zachowanie na każdej maszynie w zespole:

ParametrWartość
Wersja2.1.206 (stałe wydanie, nigdy latest)
Ścieżka binarna/usr/local/bin/claude
Flagi CLI--dangerously-skip-permissions, --mcp-config, --strict-mcp-config (ignoruje plik .mcp.json z obszaru roboczego), --thinking-display summarized, --ide
Środowisko bazoweWyłączona telemetria i automatyczne aktualizacje, aktywny tryb sandbox, eliminacja migotania terminala, obsługa schowka przez shim, 30-minutowy limit bezczynności narzędzi MCP

Speedwave nie wymusza domyślnych wartości zmiennej ANTHROPIC_MODEL; wybór modelu zależy wyłącznie od twojego pliku claude.env. Szczegóły weryfikacji pakietów binarnych opisano w rozdziale Autentyczność pliku binarnego.