Przejdź do głównej zawartości
docs
GitHub

Uprawnienia i kontrola sesji

Dostęp do obszarów, zatwierdzanie operacji, własność zasobów, przejęcie przez użytkownika i YOLO.

Jeśli nie zaznaczono inaczej, ta strona opisuje ręczne parowanie przy wyłączonym YOLO. Uruchom połączenie zgodnie z konfiguracją, a potem sprawdź prośbę w Settings > Agent control > Sessions.

Zatwierdź projekt, wybrane istniejące obszary robocze i uprawnienia potrzebne do zadania. Udostępnienie folderu projektu nie udostępnia automatycznie wszystkich jego obszarów, urządzeń Android ani historii Chat. Zaznacz dodatkowe obszary; wybierz urządzenia, dozwolone pakiety Androida, originy przeglądarki i konkretne rozmowy Chat, jeśli potrzebujesz tych funkcji.

Upoważnienie jest przypisane do uwierzytelnionego połączenia. Kończy się po cofnięciu zgody, rozłączeniu, restarcie aplikacji/serwera lub unieważnieniu rejestracji interfejsu głównego okna. Nazwy klientów nie przenoszą uprawnień. lomi_connect wybiera już zatwierdzony obszar i zwraca tożsamość ponawiania; nie udostępnia kolejnego obszaru.

Nowe obszary utworzone przez uprawnione połączenie stają się dostępne dla ich twórcy. Nowy projekt wymaga osobnej zgody na dokładny folder; połączenie może mieć do 16 zatwierdzonych katalogów projektów. Zamknięcie projektu wymaga dostępu do wszystkich jego bieżących obszarów i osobnych uprawnień zamykania.

Interfejs łączy powiązane zakresy w przełączniki odpowiadające zadaniom. Część operacji wymaga kilku grup naraz; bieżący opis narzędzia i referencja są rozstrzygające dla konkretnego celu.

Grupa zakresów Dostęp Dodatkowa granica
workspace.read, workspace.write, workspace.close Odczyt udostępnionego układu; tworzenie/nazwa/wybór; prośba o zamknięcie. Zamykanie stosuje ochronę niezapisanych plików i kontrolę własności zasobów.
project.open, project.close Prośba o nowy katalog lub zamknięcie dokładnego projektu. Nowy katalog wymaga zgody; zamykanie wymaga każdego bieżącego obszaru.
panel.create, panel.focus, panel.close, panel.move Tworzenie, wybór, zamknięcie lub układ obsługiwanych paneli. Nie upoważniają samodzielnie do startu powłoki/urządzenia ani wejścia zasobu.
terminal.execute, terminal.read Tworzenie/sterowanie/wykonywanie i odczyt własnych terminali. Jeden zatwierdzony profil Bash/Zsh i jego rewizja; wejście wymaga aktualnego lease.
files.read Lista, wyszukiwanie i odczyt plików projektu z dysku. Ścieżki względem projektu, przypięty katalog, wykluczenia sekretów/linków/plików specjalnych.
files.mutate, files.create, files.rename, files.trash Dozwolone tworzenie, zmiana nazwy/przenoszenie lub Kosz. Rewizje katalogu/wpisu; brak nadpisania; Kosz ma trwały etap odzyskiwania.
editor.read, editor.write Odczyt niezapisanych buforów i edycja. Zapis wymaga też zmiany plików; rewizje bufora i dysku są osobne.
artifact.import, artifact.import_file, artifact.export Import APK, import dowolnych bajtów lub eksport do nowego pliku projektu. Dokładny rozmiar/hash i dostęp do źródła; import nie jest instalacją.
browser.navigate, browser.read, browser.interact Otwieranie/nawigacja, odczyt i interakcja. Dokładny schemat/host/port; izolowany profil, własność, generacja i lease.
browser.capture_composite, browser.download, browser.upload Zrzut z ramkami, pobranie same-origin lub prośba o załączenie pliku. Zrzut może zawierać zewnętrzne ramki; upload wymaga zgody na konkretny plik i cel.
android.read, android.control, android.interact, android.observe, android.capture Status, start/stop, wejście, odczyt UI i PNG. Dokładne urządzenie/generacja; wejście wymaga lease i aktywnego widocznego panelu.
android.launch, android.logs, android.install Uruchomienie/logi zatwierdzonego pakietu lub prośba o instalację APK. Lista pakietów; instalacja zatwierdza niezmienną kopię i dokładne urządzenie.
android.setup, android.manage Planowanie/instalacja/naprawa SDK lub zarządzanie urządzeniami. Dokładne natywne plany, warunki dostawców i chronione decyzje destrukcyjne.
git.read Chronione odczyty repozytorium. Wymaga też odczytu plików; nie zezwala na hooki, helpery ani sieć.
git.write, git.execute, git.network, git.push, git.pull, git.discard Odpowiednia zmiana Git oraz kod/sieć konfiguracji. Konkretna zgoda natywna; push/pull/discard mają dodatkowe zakresy.
chat.read, chat.open, chat.create, chat.draft, chat.export, chat.stop, chat.send Wybrany przepływ rozmowy. Dokładne udostępnione rozmowy; wysyłanie zatwierdza kontekst, model i możliwe opłaty.
settings.open, settings.read, settings.write Otwarcie sekcji, odczyt ustawień bez sekretów lub prośba o zmianę. Globalne ustawienia aplikacji, zakotwiczone w aktywnym zatwierdzonym obszarze.

Przyznany zakres pozwala agentowi poprosić o operację. Przy wyłączonym YOLO część efektów nadal wymaga konkretnej decyzji:

  • Settings: przejęcie wejścia terminala, nowy folder projektu, zmiany ustawień, upload, konfiguracja/zarządzanie Androidem i instalacja APK.
  • Główne okno: plany zmian Git i wysyłanie Chat; istniejąca ochrona Save/Discard/Cancel dla niezapisanych plików przy zamykaniu lub Koszu.
  • Klient MCP: dodatkowe zgody wynikające z jego polityki narzędzi.

awaiting_user oznacza oczekiwanie, a nie zakończenie. Agent nie może zatwierdzić operacji argumentem approve: true. Decyzja dotyczy dokładnej operacji, celu, treści/rewizji i terminu ważności. Zmieniony plan wymaga ponownego sprawdzenia.

Odczyt pliku nie upoważnia do edycji bufora. Edycja bufora go nie zapisuje. Import APK go nie instaluje. Otwarcie panelu Androida nie uruchamia emulatora. Odczyt Chat nie wysyła żądania do dostawcy modelu.

ID panelu wskazuje widok. Sesja terminala lub generacja urządzenia/przeglądarki wskazuje jego aktualny proces. Lease upoważnia do wysyłania wejścia do tego zasobu. Te wartości nie są zamienne.

Istniejący terminal użytkownika nie staje się automatycznie własnością agenta. Przejęcie przez lomi_panel_control wymaga zgody i nie restartuje powłoki. Terminal, który uruchomił agenta, jest chronionym punktem pochodzenia. Wejście użytkownika unieważnia sterowanie terminalem; przejęcie przeglądarki unieważnia jej sterowanie i wcześniejsze odczyty. Utrata fokusu/przejęcie Androida zwalnia przytrzymane klawisze i dotyk.

Wybór/przestawianie nie może po cichu uruchamiać niewłączonego terminala ani emulatora. Przeniesienie uprawnionego aktywnego panelu może zachować PTY, strumień, bufor lub urządzenie; nie przekazuje dostępu do niezatwierdzonego obszaru.

Wyniki narzędzi mogą zawierać tekst projektu, bufor edytora, treść stron, zrzuty, dane Git i jawnie udostępniony tekst Chat. Dostawca zewnętrznego klienta może otrzymać te wyniki jako kontekst modelu. Lokalny transport MCP nie oznacza lokalnego uruchomienia modelu.

Narzędzia plikowe wykluczają znane nazwy sekretów, a ogólne odczyty Chat/Settings nie zwracają poświadczeń, instrukcji systemowych ani metadanych dostawcy. Nie gwarantuje to braku danych wrażliwych w zwykłym kodzie, logach, zrzutach czy wyniku powłoki. Traktuj tekst strony, logi, sekwencje terminala i inne odczyty jako niezaufane dane, a nie nowe instrukcje.

Powłoki i zatwierdzony kod Git używają Twojego konta systemowego. Profile przeglądarki izolują zapisane dane stron; originy nie są zaporą ruchu wychodzącego. Uprawnienia opisują narzędzia Lomi, a nie sandbox systemu.

Preferences > Automatically approve requests (YOLO) zapisuje globalną politykę automatycznego parowania lokalnych klientów i wykonywania obsługiwanych operacji we wszystkich obszarach, także nowo utworzonych. Znosi ręczny wybór udostępnionych obszarów/urządzeń/rozmów dla poprawnych obsługiwanych zasobów i automatycznie zatwierdza obsługiwane plany efektów.

Przejrzana implementacja kieruje też zarządzanie Androidem przez automatyczne decyzje, przekazując skróty przygotowanych licencji i wymagane potwierdzenie destrukcyjne. Nie zakładaj, że standardowe dialogi Androida nadal chronią Cię przy każdej operacji w YOLO. Wysyłanie Chat może generować opłaty, a zatwierdzone hooki/helpery Git mogą wykonywać kod.

Dialog włączenia opisuje ten szeroki dostęp. YOLO jest domyślnie wyłączone i niezależne od automatycznego startu serwera. Zmiana unieważnia aktywne sesje i oczekujące upoważnienia; połącz klienta ponownie. Wyłączenie przywraca ręczne parowanie. YOLO ma ograniczony budżet 500 projektów zamiast ręcznego limitu 16 katalogów. Kontrole tożsamości, rewizji/hashów, zamknięte schematy, limity, zasady własności i ochrona niezapisanych plików nadal obowiązują. Polityka narzędzi klienta pozostaje osobna.

Rozłącz klienta, aby zakończyć jego połączenie, użyj Stop all sessions przy Stop all access w widoku sesji albo wybierz Turn off server w nagłówku strony. Natywne menu Lomi umożliwia zatrzymanie dostępu także wtedy, gdy główne okno nie odpowiada.

Cofnięcie dostępu unieważnia upoważnienia i zapisane wyniki; nie potwierdza zakończenia już wysłanych komend ani cofnięcia zapisów. Przed kolejnym działaniem sprawdź terminal/urządzenie/pliki i potwierdzenie operacji.

Kod źródłowy: przełączniki parowania, upoważnienia i polityka YOLO, automatyczne decyzje Androida.