FireAI 1.0, wydany 30 września 2026 roku, to nowe ujęcie tego, jak zapora pokazuje, co Mac robi w sieci. FireAI to zapora sieciowa dla macOS rozwijana przez HisnLabs, z działającym na urządzeniu modelem AI, który podpowiada decyzje. Ta notatka wymienia zmiany od wersji 0.1.8, a każda z nich wynika z jednej z czterech opisanych niżej decyzji projektowych.
Te cztery decyzje to: pokazywać stan zamiast wymagać od użytkownika odczytywania liczb; działać tam, gdzie się patrzy; nie poruszać niczym, dopóki coś się nie wydarzy, co obniża też zużycie procesora; oraz sprawić, by każdy alert prostymi słowami mówił, co się stało i co można z tym zrobić.
Co zmieniło się od wersji 0.1.8
| Obszar | Wcześniej (0.1.8) | Teraz (1.0) |
|---|---|---|
| World map | Łuki pokazywały sumy z całego okresu; kropki poruszały się także na bezczynnych połączeniach | Rzeki danych: szerokość i ruchome kropki odpowiadają bieżącej przepustowości i pojawiają się tylko podczas przepływu danych; cieniowanie dnia i nocy; pierścień bieżącego ruchu |
| Kraje | Niepokazywane jako lista | „Requests by country” pod globusem, z przyciskami Filter i Block w każdym wierszu |
| Alerty wysyłania | Brak alertu dotyczącego wysyłania | Nietypowe wysyłanie danych do kraju jest oznaczane na liście, na globusie, na ekranie Home i na pasku menu |
| Activity | Listy połączeń | 60-sekundowy pasek pulsu dla każdego połączenia; Replay dla zablokowanych połączeń |
| Home | Liczby | Wskaźnik „pogody prywatności” i maskotka reagująca na zdarzenia |
| Suggestions | Lista sugestii | Stos kart Quick Review z odpowiedziami przez przeciąganie i klawiaturę |
| Threats | Szczegóły zagrożenia | Oś czasu „Why?” z tym, co zaobserwowano |
| Pasek menu | Ikona stanu | Czerwony błysk przy blokadzie; czerwona strzałka i kod kraju podczas skoku wysyłanych danych |
| FireAI Pilot | Jeden profil dla całego Maca w 0.1.8; dla każdej sieci od 0.1.8 build 3 | Uczy się osobno dla każdej sieci Wi-Fi i każdego trybu bezpieczeństwa |
| Zużycie procesora | Obniżone od 0.1.8 build 3 | Odświeżane jest tylko to, co się zmieniło; globus zatrzymuje się, gdy aplikacja działa w tle |
World map: przepustowość jako kształt
W wersji 0.1.8 łuki na mapie przedstawiały sumy z całego okresu, a ich kropki poruszały się nawet na połączeniach, które ucichły. Suma niewiele mówi o teraźniejszości, a ruchoma kropka na bezczynnej linii sugeruje aktywność, której nie ma. World map rysuje teraz „rzeki danych”. Szerokość linii odpowiada bieżącej przepustowości w skali logarytmicznej od około 1 KB/s do około 1 MB/s. Białe kropki biegną od Maca, gdy aplikacja wysyła dane, a kolorowe wracają, gdy pobiera, i tylko podczas przepływu danych. Bezczynne linie pozostają cienkie i nieruchome, więc ruch na mapie zawsze oznacza ruch sieciowy. Szczegóły podaje dokumentacja World map.
Kontekst jest dodawany tam, gdzie zmienia odczytanie połączenia. Rzeczywista nocna strona Ziemi jest zacieniona, mały księżyc oznacza miejsca docelowe aktywne w czasie, gdy panuje tam noc, a karta połączenia podaje przybliżony czas lokalny w miejscu docelowym, na przykład „About 1 AM there”. Pierścień wokół globusa pokazuje udział każdego kraju w bieżącym ruchu, z podpisem „LIVE · 1.2 MB/s”. Wskazanie wycinka pokazuje kraj, jego udział i prędkość oraz przygasza linie pozostałych krajów, aby jeden kraj można było odczytać osobno.
Requests by country: działanie tam, gdzie się patrzy
Pod globusem nowa lista pokazuje każdy kraj z flagą, paskiem i liczbą żądań, która jest sumą połączeń i zablokowanych prób. Wybranie wiersza obraca globus do tego kraju najkrótszą drogą, z płynnym przejściem, i oznacza go etykietą. Ponowne wybranie wiersza pozwala globusowi obracać się dalej bez skoku. Etykiety sąsiednich krajów układają się jedna pod drugą zamiast na siebie nachodzić.
Uzasadnieniem projektowym jest bliskość obserwacji i działania. Wskazanie wiersza odsłania dwa przyciski. Filter ogranicza globus i listę do tego kraju. Block, po potwierdzeniu, tworzy reguły blokujące dla miejsc docelowych już tam zaobserwowanych. Nowe miejsca docelowe w tym kraju nadal wywołują pytanie lub podlegają bieżącemu trybowi, więc działanie obejmuje to, co zaobserwowano, i nie rozszerza się po cichu na to, czego nie zaobserwowano. Zob. Requests by country i skoki wysyłanych danych.
Skoki wysyłanych danych: alert, który wskazuje kraj
Kraj jest oznaczany, gdy w ciągu ostatnich 10 sekund otrzymuje co najmniej 5 MB i co najmniej 10-krotność swojej zwykłej szybkości. Kraj przesuwa się na górę listy, wyróżniony na czerwono wraz z prędkością, na przykład „↑ 4.2 MB/s”, a czerwony wiersz brzmi „Unusual upload to France · since 14:02”. Globus pokazuje czerwone linie i pulsujący znacznik, pogoda na ekranie Home zmienia się na „Storm”, a pasek menu pokazuje czerwoną strzałkę ↑ z kodem kraju.
Ten sam fakt jest więc pokazywany w czterech miejscach, z których każde odpowiada poziomowi uwagi, na jakim prawdopodobnie znajduje się użytkownik: pasek menu dla rzutu oka, Home dla sesji, mapa dla analizy, a lista dla decyzji. Oznaczenie utrzymuje się przez minutę po zakończeniu skoku. Stałe wysyłanie, takie jak kopia zapasowa, staje się normą po około dwóch minutach, co ogranicza powtarzające się alerty dotyczące spodziewanego zachowania. FireAI nie blokuje ruchu samodzielnie; alert podaje, co się stało, a decyzję pozostawia użytkownikowi.
Activity: minuta zachowania w jednym pasku
Każde połączenie ma teraz 60-sekundowy pasek pulsu, na swojej karcie oraz jako kolumnę „Last minute” w tabeli. Szpic oznacza nagły wybuch, fala stały strumień, czerwona kreska zablokowaną próbę, a płaska linia ciche połączenie. Pasek aktualizuje się co sekundę i tylko wtedy, gdy jest widoczny na ekranie. Zastępuje wiersz wartości liczbowych kształtem, który można porównać między połączeniami na pierwszy rzut oka. Szczegóły zawiera Activity i historia połączeń.
Zablokowane połączenie ma przycisk Replay. Odtwarza on 2-sekundową animację: pakiet opuszcza aplikację, maskotka FireAI tej części, która go zablokowała, łapie pakiet, a w miejscu docelowym pojawia się ✕. Po animacji wyświetlana jest informacja, co zablokowało połączenie i ile razy próbowało się ono nawiązać. Celem jest odpowiedź na pytanie, co zatrzymało połączenie, w kolejności, w jakiej wystąpiły zdarzenia, bez osobnego widoku dziennika.
Home, pasek menu i maskotka: nic nie porusza się bez powodu
Ekran Home zaczyna się teraz od wskaźnika „pogody prywatności”. „Clear” oznacza, że w tej godzinie nic nie zostało zablokowane, „A few clouds” i „Showers” oznaczają odpowiednio kilka i wiele zablokowanych połączeń, „Storm” oznacza skok wysyłanych danych, a „Sheltered” oznacza włączony wyłącznik awaryjny (kill switch). „Calm” i „Calm night” oznaczają, że prawie nic nie wychodzi. Wybranie wskaźnika otwiera Activity, a podczas burzy World map. Dokumentacja panelu Home opisuje każdy stan.
Trójwymiarowa maskotka reaguje na te same zdarzenia. Kręci głową przy serii blokad, zdefiniowanej jako pięć lub więcej w ciągu 10 sekund, podskakuje przy skoku wysyłanych danych i drzemie późną nocą, gdy prawie nic nie przepływa. Gdy nic się nie dzieje, niczego nie rysuje. Ikona na pasku menu stosuje tę samą zasadę: przy blokadzie błyska na czerwono przez około sekundę, nie częściej niż raz na 3 sekundy, a podczas skoku wysyłanych danych pokazuje czerwoną strzałkę ↑ z kodem kraju (zob. Menu bar widget). Animacja pełni tu funkcję sygnału, więc jej brak również jest informacją.
Quick Review, oś czasu Threats i FireAI Pilot
Quick Review zamienia listę sugestii w stos kart. Przeciągnięcie karty lub naciśnięcie ← blokuje, → zezwala, ↓ pomija, a Esc kończy. Podczas przeciągania pojawiają się stemple BLOCK i ALLOW, aby wynik był widoczny przed puszczeniem karty, a na końcu wyświetlane jest podsumowanie. Każda odpowiedź tworzy regułę i uczy FireAI Pilot, więc decyzja jest podejmowana raz i wykorzystywana dwukrotnie.
Na stronie Threats oś czasu „Why?” podaje, kiedy aplikacja po raz pierwszy połączyła się z siecią i czy była podpisana, jej pierwszy kontakt z serwerem i kraj serwera, sygnały ostrzegawcze oraz działania FireAI. Werdyktowi towarzyszą więc dowody w kolejności chronologicznej.
FireAI Pilot uczy się osobno dla każdej sieci Wi-Fi i każdego trybu bezpieczeństwa; zmiana ta rozpoczęła się w 0.1.8 build 3 i jest częścią wersji 1.0. Sieć jest przechowywana jako krótki odcisk jej nazwy lub zapisanego miejsca, nigdy jako sama nazwa, i wyłącznie na Macu. Odczytanie nazwy sieci Wi-Fi wymaga uprawnienia do lokalizacji. Decyzja podjęta w innej sieci liczy się w około jednej trzeciej w porównaniu z decyzją podjętą w bieżącej sieci.
Niższe zużycie procesora
Zasada, że nic nie porusza się, dopóki coś się nie wydarzy, ma skutek uboczny dla zużycia zasobów. Home odświeża tylko to, co się zmieniło, globus jest rysowany z prędkością 24 klatek na sekundę i zatrzymuje się, gdy FireAI działa w tle, a trójwymiarowa maskotka przestaje być rysowana po swoim wejściu. Paski pulsu aktualizują się tylko wtedy, gdy są widoczne. FireAI jest programem działającym nieprzerwanie obok innej pracy, dlatego interfejs zaprojektowano tak, by kosztował niewiele, gdy w sieci panuje spokój.
Zasady projektowe, które zachowaliśmy
- Pokazuj stan, nie liczby: szerokość, kolor, kształt i słowo opisujące pogodę przekazują znaczenie, zanim zostanie odczytana jakakolwiek wartość.
- Działaj tam, gdzie patrzysz: Filter i Block znajdują się w wierszu kraju, Replay przy zablokowanym połączeniu, odpowiedzi na karcie.
- Nic nie porusza się, dopóki coś się nie wydarzy: ruch sygnalizuje ruch sieciowy, a bezruch sygnalizuje spokój.
- Każdy alert prostymi słowami mówi, co się stało i co można zrobić, a FireAI nie reaguje na skok wysyłanych danych bez udziału użytkownika.
- Działania obejmują to, co zaobserwowano: blokada kraju dotyczy miejsc docelowych już zaobserwowanych, a nowe pozostawia bieżącemu trybowi.
Ograniczenia
- Próg wysyłania (co najmniej 5 MB w ciągu 10 sekund i 10-krotność zwykłej szybkości) jest heurystyką. Krótkie, uprawnione wysyłanie poniżej progu nie jest oznaczane, a duże wysyłanie do kraju, który regularnie otrzymuje duże ilości danych, może nie zostać oznaczone.
- Kraj miejsca docelowego jest ustalany na podstawie jego adresu, a czas lokalny i znacznik nocy są przybliżeniami dla tego kraju.
- Blokowanie według kraju obejmuje miejsca docelowe już zaobserwowane. Nie jest regułą wymierzoną w kraj jako całość.
- Stałe wysyłanie z założenia staje się normą po około dwóch minutach, więc powolny, ciągły transfer danych nie jest oznaczany po tym czasie.
- Bez uprawnienia do lokalizacji FireAI nie może odczytać nazwy sieci Wi-Fi, a FireAI Pilot nie potrafi wtedy odróżnić sieci.
Jak zaktualizować
FireAI aktualizuje się samodzielnie z poziomu Settings. Użytkownicy bez automatycznych aktualizacji mogą pobrać FireAI 1.0 i wypróbować go bezpłatnie przez 17 dni. Strona wydań wymienia zmiany w każdej kompilacji.
Jaką rolę odgrywają FireAI i HisnLabs
Zobacz, z czym łączy się Twój Mac, i działaj z tego samego ekranu.
FireAI to własny produkt HisnLabs: zapora sieciowa z AI działająca bezpośrednio na Macu. Pokazuje prostym językiem każde połączenie nawiązywane przez twoje aplikacje i pozwala ci decydować, co opuszcza twojego Maca — jej AI działa lokalnie, więc twój ruch nigdy nie jest wysyłany do nas ani do nikogo innego. Zespół badań nad bezpieczeństwem HisnLabs dba o to, by te decyzje pozostały trafne: kataloguje, które domeny to zwykła telemetria, a które prawdziwa usługa, śledzi kraj i sieć stojące za połączeniem oraz trenuje lokalny model (funkcję FireAI Pilot) na rzeczywistych wzorcach ruchu — a nic z tego nie opuszcza twojego Maca.
Możesz przeczytać o decyzjach technicznych, które za tym stoją, albo wypróbować FireAI przez 17 dni na FireAI od HisnLabs.
