Local Bridge — Przewodnik konfiguracji

Połącz swój lokalny komputer z Arc OS w mniej niż 90 sekund. Workerzy w chmurze czytają i edytują pliki na twoim komputerze przez jeden plik binarny — bez Dockera, bez Bun, bez łańcucha narzędzi kompilacji.

Phase 23.2 · Ostatnia aktualizacja: 2026-05-14 · Testowane na macOS 14+, Ubuntu 22+, Windows 11


Wybierz swój system — przejdź od razu do kroków

Twój komputer Otwórz ten przewodnik
macOS (Apple Silicon lub Intel) Local Bridge — Konfiguracja macOS
Linux (x64 lub arm64) Local Bridge — Konfiguracja Linux
Windows 10 / 11 Local Bridge — Konfiguracja Windows

Reszta tej strony obejmuje to, co jest wspólne dla wszystkich platform: lista pre-flight, co bridge faktycznie robi, typowe błędy, model bezpieczeństwa i diagnostyka. Przeczytaj raz; wróć, gdy coś przestanie działać.


▶ Obejrzyj 90-sekundowy przewodnik

🎬 Miejsce na wideo — tu pojawi się embed Loom po nagraniu. Nazwa pliku: bridge-walkthrough-2026-05.mp4 · 90s · narracja CEO · napisy w EN. Śledzenie: zob. shotlist mediów §1.

┌──────────────────────────────────────────┐
│   ▶ Loom: Bridge Setup in 90 Seconds     │
│        (placeholder until recorded)      │
└──────────────────────────────────────────┘

Co będziesz mieć na końcu

Dwa okna obok siebie, oba ze statusem „connected":

🖼️ Miejsce na zrzut ekranumedia/bridge/success-state.png Specyfikacja zdjęcia: podzielony ekran — lewo = Terminal z ✓ Connected to ws://… as <project>, prawo = strona CRM Bridge Setup z zielonym punktem i Online obok nazwy twojego komputera.

┌─ Terminal ─────────────────────┐  ┌─ Browser: arc-os.co ──────────────┐
│ $ bash install.sh               │  │  Bridge Setup                     │
│ ✓ Quarantine stripped           │  │  ●  <your-machine>     Online     │
│ ✓ Token validated               │  │  Last seen: just now              │
│ ✓ Connected                     │  │                                   │
│   Watching ~/projects/<project> │  │  Connected workers can read /     │
└─────────────────────────────────┘  └───────────────────────────────────┘

Lista pre-flight

Przed rozpoczęciem pobierz te dane z CRM:

Element Gdzie to znaleźć Format
Token Settings → Integrations → Bridge Setup → kliknij Copy eyJhbG… JWT, ~250 znaków, TTL 24h
Techniczna nazwa projektu Sidebar → twój projekt → slug URL (ta małymi literami, nie nazwa wyświetlana) małe litery, tylko myślniki/podkreślenia
Architektura systemu macOS: ⌘+Space → „About This Mac" · Win: Settings → System → About · Linux: uname -m arm64, x64, aarch64

🖼️ Miejsce na zrzut ekranumedia/bridge/where-to-find-token.png Specyfikacja zdjęcia: strona CRM Settings → Integrations z podświetlonym czerwoną strzałką + kółkiem przyciskiem „Copy". Pole tokena częściowo ukryte (pokaż tylko eyJhbG...***...xyz).


Krok 0 — Co pobierasz

Local Bridge to pojedynczy plik binarny, który uruchamiasz na swoim komputerze. Nie ma kreatora instalacji, usługi systemowej ani potrzeby uprawnień administratora. Pobierasz jeden plik, klikasz dwukrotnie (lub uruchamiasz z terminala) i działa.

Inny system = inny plik binarny. Dlatego strona Bridge Setup w CRM pokazuje 4 przyciski — każdy pobiera inny plik skompilowany dla tego systemu + architektury CPU. Wybór niewłaściwego spowoduje, że komputer odmówi uruchomienia (Exec format error na Linuksie, damaged na macOS, not a valid Win32 application na Windows).

🖼️ Miejsce na zrzut ekranumedia/bridge/bridge-setup-page-4-buttons.png Specyfikacja zdjęcia: strona CRM Settings → Integrations → Bridge Setup z 4 przyciskami pobierania w rzędzie: 🍎 macOS (Apple Silicon), 🍏 macOS (Intel), 🐧 Linux (x64), 🪟 Windows (x64). Pole tokena powyżej z przyciskiem Copy. 1280×720, tryb jasny. Adnotacja: czerwone kółko wokół przycisku 🍎 jako przykładowy wybór użytkownika.

Rozmiar pliku i tabela pobrań

Twój komputer Kliknij ten przycisk Pobierz ten plik Rozmiar
Mac z Apple Silicon (M1/M2/M3/M4/M5) macOS (Apple Silicon) bridge-darwin-arm64.tar.gz ~50 MB
Starszy Mac (Intel, przed 2020) macOS (Intel) bridge-darwin-x64.tar.gz ~50 MB
Laptop Linux / VM / serwer Linux (x64) bridge-linux-x64.tar.gz ~50 MB
Linux ARM (Raspberry Pi, AWS Graviton) Linux (arm64) bridge-linux-arm64.tar.gz ~50 MB
Windows 10/11 PC Windows (x64) bridge-windows-x64.exe ~55 MB

Dlaczego archiwa (.tar.gz) na macOS/Linux, ale surowy .exe na Windows? macOS poddaje kwarantannie niepodpisane pobrane pliki binarne z mylącym błędem „damaged". Archiwum zawiera plik binarny + mały skrypt install.command, który usuwa kwarantannę. Windows używa SmartScreen — klikasz przez jedno okno dialogowe, archiwum nie jest potrzebne.

Wybierz platformę — drzewo decyzyjne

flowchart TD
    Start[👤 Otwórz CRM →<br/>Settings → Integrations →<br/>Bridge Setup] --> OS{Jakiego systemu<br/>używasz?}
    OS -->|macOS| Mac[Otwórz<br/>przewodnik macOS]
    OS -->|Linux| Lin[Otwórz<br/>przewodnik Linux]
    OS -->|Windows| Win[Otwórz<br/>przewodnik Windows]

    Mac --> Connect[Wklej token →<br/>nazwa projektu → Enter]
    Lin --> Connect
    Win --> Connect
    Connect --> Done([✅ Connected])

Nie wiesz, jaki chip ma twój Mac? Kliknij logo 🍎 w lewym górnym rogu → About This Mac → szukaj „Chip: Apple M1/M2/M3/M4/M5" (Apple Silicon) lub „Processor: Intel Core …" (Intel). W razie wątpliwości: Apple Silicon — każdy Mac sprzedany od listopada 2020.


Po uruchomieniu

🖼️ Miejsce na zrzut ekranumedia/bridge/crm-bridge-list.png Specyfikacja zdjęcia: strona CRM Bridge Setup z twoim komputerem na liście połączonych — zielony punkt, hostname, projekt, „last seen: just now", licznik czasu sesji.

Trzymaj otwarte okno Terminala/PowerShell — zamknięcie go zatrzymuje bridge.

Każdy przewodnik dotyczący systemu pokazuje, jak uruchomić bridge w tle (nohup na Unix, Start-Process -WindowStyle Hidden na Windows). Tryb trwałej usługi (launchd / systemd / Windows Service) jest w roadmapie — zob. Phase 23.4.


Typowe błędy — wizualny przegląd

Błąd Co widzisz Co zrobić
bridge-darwin-arm64 is damaged Dialog macOS z przyciskami Trash/Cancel Kliknij Cancel, zamiast tego uruchom install.command. Zob. przewodnik macOS
install.command can't be opened because Apple cannot check it for malicious software Dialog macOS przy pierwszym uruchomieniu Kliknij prawym przyciskiem install.commandOpenOpen
Windows protected your PC Niebieski dialog SmartScreen More infoRun anyway. Zob. przewodnik Windows
Token is required / Invalid token Bridge kończy działanie z czerwonym błędem Token wygasł (TTL 24h). Zaloguj się ponownie do CRM, skopiuj nowy token
Project not found Bridge kończy działanie Użyj technicznej nazwy (slug URL), nie nazwy wyświetlanej
Bridge ciągle się łączy ponownie Reconnecting in 4s… 8s… 16s… VPS może być niedostępny: curl http://62.171.128.248:18888/api/master/health
search_files zwraca pusty wynik Narzędzie działa, ale brak wyników Zainstaluj ripgrep dla wysokiej jakości wyszukiwania; bez niego przechodzi do wolniejszego natywnego skanowania

🖼️ Miejsce na zrzut ekranumedia/bridge/error-gallery.png Specyfikacja zdjęcia: kompozyt 4-kwadrantowy: lewy górny = dialog macOS damaged, prawy górny = dialog weryfikacji install.command, lewy dolny = niebieski ekran Windows SmartScreen, prawy dolny = Terminal z ✗ Token expired. Każdy podpisany błędem z tabeli powyżej.


Co bridge faktycznie robi

Bridge łączy twój lokalny komputer z przekaźnikiem WebSocket Arc OS. Workerzy CRM mogą wtedy wywoływać 5 narzędzi z piaskownicą do dostępu do twoich plików:

sequenceDiagram
    participant W as Worker (cloud)
    participant R as Relay (VPS WS)
    participant B as Bridge (your laptop)
    participant FS as Local FS

    W->>R: read_file("./src/index.ts")
    R->>B: tool call
    B->>B: validate path (sandbox)
    B->>FS: read file
    FS-->>B: contents
    B-->>R: response
    R-->>W: contents
    Note over W,FS: All 5 tools follow the same loop.<br/>execute_command shows yellow banner first.
Narzędzie Co robi
read_file Odczytuje zawartość pliku
write_file Tworzy lub nadpisuje plik
list_directory Wyświetla pliki i foldery z rozmiarami
search_files Przeszukuje zawartość plików (używa ripgrep jeśli dostępny)
execute_command Uruchamia komendę powłoki — wyświetlana w twoim terminalu z żółtym banerem

Wszystkie ścieżki plików są izolowane do katalogu, z którego uruchomiono bridge. Workerzy nie mogą go opuścić przez ../.


Model bezpieczeństwa

Warstwa Ochrona
Uwierzytelnianie WebSocket wymaga ważnego JWT (TTL 24h, HMAC-SHA256, porównanie timingSafeEqual po stronie serwera)
Izolacja ścieżek Wszystkie operacje na plikach ograniczone do katalogu uruchomienia; safePath() odrzuca .., ścieżki absolutne, ucieczki przez symlinki
Whitelist narzędzi Dozwolonych tylko 5 narzędzi; zarówno klient, jak i serwer odrzucają nieznane nazwy
Widoczność komend execute_command wyświetla żółty baner w twoim terminalu przed uruchomieniem — możesz wysłać SIGINT, żeby przerwać
Wygaśnięcie tokena TTL 24h — nawet jeśli wycieknie, okno ekspozycji jest ograniczone
Automatyczne ponowne łączenie Zerwanie połączenia → wykładniczy backoff 2s → 4s → 8s → … → max 30s

Zaawansowane — flagi i środowisko

Dla skryptów CI lub przepływów sterowanych zmiennymi środowiskowymi:

# Linux / macOS — zmienna środowiskowa
CRM_TOKEN="eyJhbG..." ./bridge-linux-x64 --project <project>

# Windows PowerShell
$env:CRM_TOKEN = "eyJhbG..."
.\bridge-windows-x64.exe --project <project>

# Uruchom ze źródła (wymaga Bun ≥ 1.0)
CRM_TOKEN="eyJhbG..." bun scripts/bridge.ts --project <project>
Flaga Domyślna Opis
--project <name> (interaktywny prompt) Nazwa projektu do powiązania
--server <url> ws://62.171.128.248:18888/ws/local-bridge URL przekaźnika WebSocket
--help, -h Wyświetl pomoc

Diagnostyka

Utknąłeś? Uruchom te komendy kolejno:

# 1. Czy VPS jest osiągalny?
curl -s http://62.171.128.248:18888/api/master/health
# Oczekiwane: {"status":"ok","children":N,...}

# 2. Czy twój bridge jest zarejestrowany? (zastąp <token>)
curl -s -H "Authorization: Bearer <token>" \
  http://62.171.128.248:18888/api/internal/bridges
# Oczekiwane: lista JSON zawierająca twój hostname

Jeśli obie komendy się powiodą, ale bridge ciągle się łączy ponownie → problem jest między bridgem a przekaźnikiem (firewall, VPN, firmowe proxy). Przetestuj WebSocket bezpośrednio:

# wymaga `wscat` — npm install -g wscat
wscat -c "ws://62.171.128.248:18888/ws/local-bridge?token=<token>"

Kompilacja ze źródeł (dla deweloperów)

# Jedna platforma
bash scripts/build-bridge.sh linux

# Wszystkie 4 platformy
bash scripts/build-bridge.sh

Wyniki trafiają do dist/bridge-{platform} i są przesyłane do CRM jako pliki binarne serwowane na stronie Bridge Setup.


Odniesienia


Utrzymywane przez Arc OS Team. Jeśli utknąłeś w miejscu, gdzie ten przewodnik nie pomógł, to błąd — napisz do CEO lub opublikuj w @arcos_beta_feedback.