Przejdź do głównej zawartości

Klucze konfiguracji

Speedwave trzyma swoją konfigurację w ~/.speedwave/config.json. Projekt może dodatkowo nieść własny plik .speedwave.json w repozytorium. Zostaje on wtedy scalony z konfiguracją, ale tylko w wąskim zakresie (zobacz co może ustawić plik z repozytorium). Jeśli dostrajasz limity pamięci albo CPU dla kontenera, to właśnie tutaj odsyła przewodnik po wydajności.

KluczZnaczenie
projectsWszystkie zarejestrowane projekty. Każdy wpis opisano poniżej.
active_projectNazwa aktualnie aktywnego projektu.
selected_ideIDE wybrane dla mostka IDE: ide_name oraz port.
ui.beta_enabledWłącza dopracowywane dopiero elementy interfejsu w aplikacji Desktop. Domyślnie wyłączone. Ustawia je tylko użytkownik, plik z repozytorium nie może tego zmienić.
telemetryUstawienia eksportu telemetrii OTLP. Ustawia je tylko użytkownik, plik z repozytorium nie może tego zmienić. Zobacz poniżej.

Każdy element w projects[]:

KluczZnaczenie
nameNazwa projektu.
dirBezwzględna ścieżka katalogu projektu na hoście.
claudeNadpisania dla kontenera, w którym Speedwave uruchamia Claude Code. Zobacz poniżej.
integrationsPrzełączniki integracji, osobno dla każdego projektu. Zobacz poniżej.
plugin_settingsWartości ustawień poszczególnych wtyczek, indeksowane identyfikatorem (slug) wtyczki.
KluczZnaczenie
claude.envZmienne środowiskowe przekazywane do Claude Code w kontenerze.
claude.settingsPoprawki scalane z ~/.claude/settings.json.
claude.llmKonfiguracja dostawcy LLM i modelu. Zobacz poniżej.

Z claude.env w warstwie repozytorium przed scaleniem usuwane są dwie grupy kluczy: klucze autoryzacji i routingu Anthropic (ANTHROPIC_BASE_URL, ANTHROPIC_AUTH_TOKEN, ANTHROPIC_CUSTOM_HEADERS) oraz lista zastrzeżona, obejmująca między innymi PATH, HOME, LD_PRELOAD i NODE_OPTIONS. ANTHROPIC_MODEL to jedyny klucz Anthropic, jaki repozytorium wciąż może ustawić. Pełną listę zmiennych oraz informację, gdzie każda z nich obowiązuje, znajdziesz w opisie zmiennych środowiskowych.

claude.llm niesie zarówno dawne pola płaskie, jak i obecne pola z listą dostawców. Schemat ma numer wersji, a aplikacja zapisuje wersję 3.

KluczZnaczenie
schema_versionWersja schematu LLM. Brak oznacza dawną wersję 1.
providersSkonfigurowani dostawcy. Każdy wpis ma id, kind oraz własne pole model. Zobacz poniżej.
activeWskazanie aktywnego dostawcy i modelu dla sesji danego projektu.
proxy_enabledWyłącznik awaryjny proxy. Domyślnie true. Ustawia go tylko użytkownik.
providerDawny płaski identyfikator dostawcy. Migrowany automatycznie.
modelDawny płaski identyfikator modelu. Migrowany automatycznie.
base_urlDawny płaski adres URL lokalnego serwera. Migrowany automatycznie.
context_tokensDawne płaskie okno kontekstu, w tokenach.
has_api_keyDawna flaga obecności pliku z kluczem API.
has_custom_headersDawna flaga obecności pliku z niestandardowymi nagłówkami.
KluczZnaczenie
idIdentyfikator (slug) tego dostawcy. Nadaje też nazwę jego plikowi tokenu oraz zmiennej środowiskowej SPW_KEY_<ID>.
kindRodzaj zaplecza: anthropic_oauth, anthropic_api_key, local lub open_router.
base_urlAdres URL dla rodzaju local.
modelModel, na który ten dostawca kieruje ruch. Główne źródło prawdy dla routingu.
has_api_keyMa wartość true, gdy plik z kluczem dostawcy istnieje na dysku.
context_tokensOkno kontekstu modelu tego dostawcy, o ile jest znane.
has_custom_headersMa wartość true, gdy do zmigrowanego wpisu local stosuje się plik z niestandardowymi nagłówkami.
KluczZnaczenie
provider_idid wybranego wpisu z providers[].
modelWskazanie modelu aktywnego dostawcy, a nie źródło prawdy dla routingu. Jeśli wpis dostawcy nie ma modelu, model ustawiony wyłącznie w active zostaje odrzucony.

integrations przechowuje przełączniki włączające poszczególne integracje, osobno dla każdego projektu, każdy w postaci { "enabled": <bool> }. Domyślnie wszystkie są wyłączone.

KluczZnaczenie
integrations.slackSlack
integrations.sharepointSharePoint
integrations.redmineRedmine
integrations.gitlabGitLab
integrations.githubGitHub
integrations.atlassianAtlassian
integrations.officeDokumenty Office
integrations.playwrightPlaywright
integrations.context7Context7
integrations.os.remindersPrzypomnienia macOS
integrations.os.calendarKalendarz macOS
integrations.os.mailPoczta macOS
integrations.os.notesNotatki macOS
integrations.plugins.<slug>Przełącznik zainstalowanej wtyczki.

telemetry konfiguruje eksport OTLP dla własnych metryk i logów Speedwave. To klucz najwyższego poziomu, ustawiany tylko przez użytkownika: repozytoryjny plik .speedwave.json nie może go ustawić. Aplikacja Desktop udostępnia te same pola w Ustawienia > Telemetria.

KluczZnaczenieDomyślnie
telemetry.enabledGłówny przełącznik. Gdy true, wymagany jest endpoint, inaczej ustalanie konfiguracji kończy się błędem.false
telemetry.endpointAdres URL kolektora OTLP.brak
telemetry.protocolTransport: grpc, http/protobuf lub http/json.grpc
telemetry.export_metricsEksportuje sygnał metryk.true
telemetry.export_logsEksportuje sygnał logów i zdarzeń.false
telemetry.headersNagłówki uwierzytelniania kolektora, Klucz=Wartość,.... Poufne.brak
telemetry.resource_attributesNiestandardowe atrybuty zasobu, klucz=wartość,....brak
telemetry.include_account_uuidDołącza UUID konta jako atrybut metryki.true
telemetry.log_user_promptsZabezpieczenie prywatności: dołącza treść promptów użytkownika.false
telemetry.log_assistant_responsesZabezpieczenie prywatności: dołącza treść odpowiedzi asystenta.false
telemetry.log_tool_detailsZabezpieczenie prywatności: dołącza szczegóły poleceń i parametrów narzędzi.false
telemetry.log_raw_api_bodiesZabezpieczenie prywatności: dołącza surowe treści żądań i odpowiedzi API.false
telemetry.metric_export_interval_msInterwał eksportu metryk, w milisekundach.domyślny dla dostawcy
telemetry.logs_export_interval_msInterwał eksportu logów, w milisekundach.domyślny dla dostawcy

Gdy enabled ma wartość false, Speedwave ustawia tylko główną zmienną przełącznika CLAUDE_CODE_ENABLE_TELEMETRY i nic poza tym. Gdy ma wartość true, ustawia dodatkowo OTEL_EXPORTER_OTLP_ENDPOINT, OTEL_EXPORTER_OTLP_PROTOCOL, OTEL_EXPORTER_OTLP_HEADERS, OTEL_RESOURCE_ATTRIBUTES, OTEL_METRICS_INCLUDE_ACCOUNT_UUID, cztery zmienne zabezpieczeń prywatności OTEL_LOG_* oraz dwie zmienne interwałów eksportu. Zajrzyj do zmiennych środowiskowych, by sprawdzić, gdzie każda z nich obowiązuje.

Administrator IT może zablokować dowolne z tych pól za pomocą pliku managed-config.json na poziomie urządzenia (macOS: /Library/Application Support/Speedwave/managed-config.json; Windows: <ProgramData>/Speedwave/managed-config.json). Zablokowane pole zawsze bierze górę nad konfiguracją telemetry użytkownika, plik z góry odrzuca nieznane klucze, a plik uszkodzony lub polityka, której nie da się rozwiązać, jest wychwytywana przy starcie i zatrzymuje uruchomienie Speedwave, zamiast po cichu wracać do wartości domyślnych.

Wersjonowany w repozytorium plik .speedwave.json jest odczytywany tylko w zakresie claude oraz integrations, a przy scalaniu dodatkowo się go oczyszcza.

KluczWarstwa repozytorium
claude.env ANTHROPIC_MODELDozwolone
claude.env klucze autoryzacji i routingu AnthropicUsuwane
claude.env klucze zastrzeżone (PATH, LD_PRELOAD i podobne)Usuwane
claude.llm.modelDozwolone, jako sugestia
claude.llm.provider / base_url / context_tokensPomijane
claude.llm.providers / activePomijane, ustawia je tylko użytkownik
claude.llm.proxy_enabledPomijane, ustawia je tylko użytkownik
integrations.*Dozwolone
ui.beta_enabled, telemetry, projects, active_project, selected_ide, plugin_settingsNieobecne w schemacie repozytorium