Zmienne środowiskowe
Speedwave korzysta ze zwięzłego zestawu zmiennych środowiskowych. Część z nich można zdefiniować na hoście przed uruchomieniem aplikacji, natomiast pozostałe Speedwave konfiguruje automatycznie wewnątrz kontenerów na podstawie profilu użytkownika. Zmienna z oznaczeniem host pochodzi ze środowiska twojej powłoki. Zmienne oznaczone jako container są ustawiane automatycznie przez Speedwave i nie należy ich modyfikować ręcznie.
Układ poniższej tabeli odpowiada strukturze opisanej w zestawieniu Klucze konfiguracji.
Wykaz zmiennych środowiskowych
Dział zatytułowany „Wykaz zmiennych środowiskowych”| Zmienna | Zakres | Opis |
|---|---|---|
SPEEDWAVE_DATA_DIR | host | Zmienia domyślny katalog danych ~/.speedwave/. Wymaga ścieżki bezwzględnej. Nazwa bazowa katalogu izoluje całą instancję. |
SPEEDWAVE_RESOURCES_DIR | host | Wskazuje narzędziu CLI katalog z zasobami dołączonymi do aplikacji Desktop. W razie braku CLI korzysta z pliku znacznika. |
SPW_TOKENS_DIR | container | Zmienia ścieżkę w kontenerze, z której proxy odczytuje zamontowane pliki kluczy API dostawców. Domyślnie /tokens. |
POLICY_FILE | container | Ścieżka do pliku obowiązującej polityki tokenizacji w kontenerze mcp-hub (/policy/policy.json). W tym samym katalogu znajduje się klucz szyfrujący projektu. |
RUST_LOG | host | Poziom logowania dla CLI oraz kontenera proxy (domyślnie info). |
ANTHROPIC_MODEL | container | Dla dostawców lokalnych i OpenRouter: identyfikator routingu wybranego modelu. W przypadku Anthropic zmienna nie jest ustawiana przez Speedwave. |
CLAUDE_CODE_MAX_CONTEXT_TOKENS | container | Rozmiar okna kontekstu modelu lokalnego lub OpenRouter, o ile został ustalony podczas wykrywania modeli. |
SPW_KEY_<ID> | container | Nazwa zmiennej przekazywanej do proxy zawierającej identyfikator klucza dostawcy. <ID> to identyfikator dostawcy zapisany wielkimi literami z zastąpieniem - znakiem _. |
SPEEDWAVE_PLUGINS | container | Lista identyfikatorów aktywnych wtyczek rozdzielona przecinkami, przekazywana do kontenera Claude. |
WORKER_<SLUG_UPPER>_URL | container | Adres URL do wykrywania workera zewnętrznej wtyczki MCP wyliczany na podstawie jej pola service_id. |
WORKER_SLACK_URL, WORKER_GITHUB_URL, WORKER_GITLAB_URL, WORKER_ATLASSIAN_URL, WORKER_REDMINE_URL, WORKER_SHAREPOINT_URL, WORKER_OFFICE_URL, WORKER_PLAYWRIGHT_URL | container | Stałe adresy URL do wykrywania wbudowanych workerów integracji. |
SPEEDWAVE_VERSION | container | Zarezerwowana zmienna środowiskowa wstrzykiwana do każdej usługi MCP wtyczki, informująca o wersji aplikacji. Wtyczka nie może jej modyfikować. |
SPEEDWAVE_DATA_DIR
Dział zatytułowany „SPEEDWAVE_DATA_DIR”Zmienna SPEEDWAVE_DATA_DIR pozwala zmienić domyślny katalog danych ~/.speedwave/. Gdy zmienna nie jest ustawiona lub jest pusta, Speedwave używa ścieżki standardowej. Wartość musi być ścieżką bezwzględną.
Nazwa bazowa katalogu odpowiada za izolację instancji, dlatego podlega dodatkowej walidacji: po usunięciu ewentualnych wiodących kropek musi pasować do wzorca ^[a-z][a-z0-9-]{0,63}$ (musi rozpoczynać się małą literą, zawierać wyłącznie małe litery, cyfry i myślniki oraz mieć maksymalnie 64 znaki). Podanie nieprawidłowej lub względnej ścieżki przerywa uruchamianie aplikacji.
Na podstawie nazwy bazowej Speedwave tworzy nazwę maszyny wirtualnej Lima, prefiks projektu compose oraz nazwę instalowanego CLI. Dzięki temu jedna wartość SPEEDWAVE_DATA_DIR całkowicie izoluje maszynę wirtualną, kontenery i dane instancji. Przykładowo ze ścieżki .speedwave-dev powstanie nazwa speedwave-dev, co pozwala uruchamiać wersje deweloperskie obok standardowej instalacji bez ryzyka konfliktów. Taka instancja instaluje swoje CLI jako speedwave-dev zamiast speedwave, a to polecenie samo odnajduje własny katalog danych, bez ustawiania zmiennej.
export SPEEDWAVE_DATA_DIR=/opt/speedwave-ciSPEEDWAVE_RESOURCES_DIR
Dział zatytułowany „SPEEDWAVE_RESOURCES_DIR”Zmienna SPEEDWAVE_RESOURCES_DIR wskazuje narzędziu CLI lokalizację zasobów powiązanych z aplikacją Desktop (np. /usr/lib/Speedwave). Aplikacja Desktop konfiguruje tę zmienną automatycznie podczas wywoływania CLI.
Podczas samodzielnego uruchamiania CLI w terminalu zmienna zazwyczaj pozostaje nieustawiona. W takim przypadku CLI odczytuje ścieżkę z pliku znacznika ~/.speedwave/resources-dir. Po odczytaniu wartość trafia do środowiska procesu, umożliwiając prawidłowe działanie narzędzi pomocniczych.
Proces samoaktualizacji czyści tę zmienną przed ponownym uruchomieniem pliku binarnego CLI, co gwarantuje odczytanie aktualnej ścieżki z pliku znacznika.
SPW_TOKENS_DIR
Dział zatytułowany „SPW_TOKENS_DIR”Kontener proxy domyślnie odczytuje klucze API dostawców z woluminu zamontowanego pod ścieżką /tokens. Zmienna SPW_TOKENS_DIR pozwala wskazać alternatywny katalog montowania wewnątrz kontenera.
POLICY_FILE
Dział zatytułowany „POLICY_FILE”Zmienna POLICY_FILE wskazuje kontenerowi mcp-hub lokalizację pliku z obowiązującą polityką tokenizacji dla aktywnego projektu. Domyślnie wskazuje na /policy/policy.json wewnątrz katalogu zamontowanego w trybie tylko do odczytu. W tym samym katalogu przechowywany jest klucz tokenizacji AES dla danego projektu. Więcej informacji znajdziesz w sekcji Tokenizacja.
RUST_LOG
Dział zatytułowany „RUST_LOG”Zmienna RUST_LOG definiuje poziom szczegółowości rejestrowania zdarzeń dla CLI oraz kontenera proxy (domyślna wartość to info). Szczegółowe informacje o logach znajdziesz w artykule Logi i diagnostyka.
ANTHROPIC_MODEL
Dział zatytułowany „ANTHROPIC_MODEL”Dla dostawców lokalnych oraz OpenRouter Speedwave ustawia zmienną ANTHROPIC_MODEL (a także aliasy opus, sonnet, haiku i fable) na identyfikator modelu wybranego w composerze, dzięki czemu zapytania trafiają na właściwą trasę w proxy. W przypadku dostawcy Anthropic Speedwave nie ustawia tej zmiennej: wybór z composera jest zapisywany jako parametr model w konfiguracji Claude Code projektu. Wartość wpisana bezpośrednio w claude.env nadal trafia do kontenera, a Claude Code przy starcie sesji traktuje ją priorytetowo względem pliku ustawień, nadpisując wybór z composera.
Gdy rozmiar okna kontekstu modelu lokalnego lub OpenRouter jest znany, Speedwave konfiguruje również zmienną CLAUDE_CODE_MAX_CONTEXT_TOKENS. Jeśli rozmiar nie jest znany, zmienna nie jest definiowana, dzięki czemu Claude Code nie narzuca sztucznych ograniczeń.
Klucze dostawców: SPW_KEY_<ID>
Dział zatytułowany „Klucze dostawców: SPW_KEY_<ID>”Klucze API dostawców są przekazywane do kontenera proxy wyłącznie w postaci nazw zmiennych, nigdy jako jawne wartości tekstowe. Nazwa zmiennej powstaje z identyfikatora dostawcy zapisanego wielkimi literami z zamianą znaków - na _ (np. dla openrouter będzie to SPW_KEY_OPENROUTER). Właściwą wartość klucza proxy odczytuje bezpośrednio z zamontowanego pliku (patrz SPW_TOKENS_DIR).
Wykrywanie wtyczek: SPEEDWAVE_PLUGINS i WORKER_<SLUG_UPPER>_URL
Dział zatytułowany „Wykrywanie wtyczek: SPEEDWAVE_PLUGINS i WORKER_<SLUG_UPPER>_URL”Zmienna SPEEDWAVE_PLUGINS zawiera listę identyfikatorów aktywnych wtyczek oddzielonych przecinkami i jest przekazywana do kontenera Claude.
Dla każdej aktywnej wtyczki MCP Speedwave konfiguruje zmienną WORKER_<SID>_URL na podstawie jej identyfikatora service_id (lub domyślnie sluga wtyczki), zapisanego wielkimi literami ze znakiem _ zamiast -. Przykładowo dla wtyczki example-plugin utworzona zostanie zmienna WORKER_EXAMPLE_PLUGIN_URL.
Wbudowane workery integracji korzystają ze stałych zmiennych środowiskowych zdefiniowanych w aplikacji: WORKER_SLACK_URL, WORKER_GITHUB_URL, WORKER_GITLAB_URL, WORKER_ATLASSIAN_URL, WORKER_REDMINE_URL, WORKER_SHAREPOINT_URL, WORKER_OFFICE_URL oraz WORKER_PLAYWRIGHT_URL.
Więcej informacji o komunikacji z wtyczkami znajdziesz w sekcji Korzystanie z wtyczek oraz w zestawieniu Klucze konfiguracji.
SPEEDWAVE_VERSION
Dział zatytułowany „SPEEDWAVE_VERSION”Zmienna SPEEDWAVE_VERSION to zarezerwowana zmienna środowiskowa, którą Speedwave przekazuje do każdej usługi MCP wtyczki. Zawiera numer wersji aplikacji, umożliwiając narzędziom wtyczki odnotowanie wersji, która wygenerowała dany wynik. Manifest wtyczki nie może ustawiać ani nadpisywać tej zmiennej.