Automatyczne zatwierdzanie

Automatyczne zatwierdzanie akcji w Bob Shell eliminuje powtarzające się monity o zatwierdzenie, ale zwiększa ryzyko bezpieczeństwa. Poznaj bezpieczne praktyki konfiguracji dla uprawnień odczytu, zapisu i wykonania.

Ostrzeżenie:

Ustawienia automatycznego zatwierdzania pomijają monity o potwierdzenie, dając Bob bezpośredni dostęp do systemu. Może to skutkować utratą danych, uszkodzeniem plików lub gorzej. Wykonywanie poleceń jest szczególnie niebezpieczne, gdyż może potencjalnie uruchamiać szkodliwe operacje, które mogą uszkodzić system lub naruszyć bezpieczeństwo. Włączaj automatyczne zatwierdzanie tylko dla akcji, którym w pełni ufasz.

Jak działają zatwierdzenia

Przed uruchomieniem narzędzia przez Bob w terminalu pojawia się monit o zatwierdzenie. Monity pojawiają się jeden po drugim, aby mieć wyraźny, przemyślany wgląd w każdą akcję przed jej uruchomieniem.

Edytowalne polecenia: Gdy Bob proponuje polecenie terminala, możesz je edytować bezpośrednio w monicie zatwierdzenia przed jego zatwierdzeniem. Pozwala to na precyzyjne dostosowania bez anulowania zadania i parafrazowania.

Zatwierdzenia na poziomie zadania: Oprócz globalnych ustawień automatycznego zatwierdzania możesz konfigurować zatwierdzenia grup narzędzi dla każdego zadania. Przesłonięcia na poziomie zadania obowiązują tylko dla bieżącego zadania.

Konfigurowanie automatycznego zatwierdzania

Automatyczne zatwierdzanie jest kontrolowane przez klucz approval w ~/.bob/settings/settings.json. Dodaj identyfikatory grup uprawnień, które chcesz automatycznie zatwierdzać, do tablicy allowed_permissions:

"approval": {
  "allowed_permissions": ["read", "todo", "subtask"]
}

Możesz też przełączać automatyczne zatwierdzanie interaktywnie podczas sesji Shell za pomocą polecenia slash /permissions.

Pełny schemat JSON — w tym listy dozwolonych i zabronionych poleceń oraz opcje per grupy — znajdziesz w dokumentacji Ustawienia zatwierdzeń.

Dostępne akcje

Gdy automatycznie zatwierdzasz akcję, Bob wykonuje ją bez pytania o pozwolenie.

AkcjaOpisPoziom ryzyka
OdczytPrzeglądanie plików i zawartości katalogówŚredni
EdycjaTworzenie, edytowanie i zapisywanie plikówWysoki
WykonanieUruchamianie poleceń w terminaluWysoki
MCPKorzystanie ze skonfigurowanych serwerów MCPŚredni-Wysoki
UmiejętnośćAktywowanie zdefiniowanych umiejętnościŚredni
TodoAktualizacja listy zadańNiski
PodzadanieTworzenie i kończenie podzadańNiski
SubagentUruchamianie subagentów do skupionych zadańNiski
TrybPrzełączanie trybów do wykonania zadaniaNiski

Kiedy używać automatycznego zatwierdzania

Automatyczne zatwierdzanie jest najbardziej przydatne w tych scenariuszach:

  • Powtarzające się zadania deweloperskie: Gdy ufasz akcjom Bob, na przykład generowaniu podstawowego kodu.
  • Operacje wsadowe: Gdy musisz przetwarzać wiele plików bez przerwań.
  • Sesje eksploracyjnego kodowania: Gdy chcesz zachować flow bez ciągłych monitów.
  • Lokalne środowiska deweloperskie: Gdzie ryzyko bezpieczeństwa jest ograniczone.

Rozumienie akcji

Każda akcja kontroluje konkretny przepływ pracy, który Bob może wykonać.

Odczyt

Bob uzyskuje dostęp do plików w projekcie i je odczytuje bez pytania o pozwolenie.

Obejmuje to przeglądanie zawartości plików, listowanie struktur katalogów i przeszukiwanie bazy kodu. To uprawnienie dotyczy zbierania informacji, a nie wprowadzania zmian w systemie.

Edycja

Bob tworzy, modyfikuje i usuwa pliki bez pytania o pozwolenie.

Bob może automatycznie stosować zmiany w kodzie, refaktoryzować istniejący kod i zarządzać strukturą plików. Bezpośrednio modyfikuje bazę kodu i wiąże się z wysokim ryzykiem.

Wykonanie

Bob może automatycznie uruchamiać polecenia terminala bez pytania o pozwolenie. Obejmuje to uruchamianie skryptów budowania, menedżerów pakietów i innych narzędzi wiersza poleceń.

Polecenia mogą wykonywać operacje na poziomie systemu i potencjalnie uruchamiać szkodliwe procesy. Ta akcja wiąże się z wysokim ryzykiem.

MCP

Bob może korzystać ze skonfigurowanych serwerów Model Context Protocol (MCP) bez pytania o pozwolenie.

Serwery MCP dostarczają dodatkowe narzędzia i zasoby rozszerzające możliwości Bob. Poziom ryzyka zależy od tego, do czego konkretne serwery MCP mają dostęp i co mogą modyfikować.

Umiejętność

Bob może automatycznie aktywować zdefiniowane umiejętności bez pytania o pozwolenie.

Umiejętności to wielokrotnego użytku zestawy instrukcji uczące Bob wyspecjalizowanych przepływów pracy i zadań. Po włączeniu Bob ładuje i postępuje zgodnie z instrukcjami umiejętności na podstawie żądania i opisu umiejętności. Poziom ryzyka zależy od akcji, do których kierują instrukcje umiejętności, ale umiejętności działają w ramach istniejących ograniczeń narzędzi Bob.

Więcej informacji znajdziesz w dokumentacji Umiejętności.

Todo

Bob może automatycznie aktualizować listę zadań bez pytania o pozwolenie.

Pozwala to Bob śledzić postępy i zarządzać ukończeniem zadań w trakcie pracy. To uprawnienie dotyczy zarządzania zadaniami, a nie dostępu do systemu.

Podzadanie

Podzadania to oddzielne instancje zadań, które Bob tworzy, aby podzielić złożoną pracę na łatwe do zarządzania elementy. Bob może automatycznie tworzyć i kończyć te podzadania bez pytania o potwierdzenie.

To uprawnienie dotyczy organizacji przepływu pracy, a nie dostępu do systemu.

Subagent

Bob może automatycznie uruchamiać subagenty do obsługi skupionych, samodzielnych zadań bez pytania o pozwolenie.

Subagenty działają we własnym izolowanym kontekście i zwracają podsumowanie po zakończeniu. To uprawnienie dotyczy delegowania przepływu pracy, a nie bezpośredniego dostępu do systemu.

Więcej informacji znajdziesz w dokumentacji Subagenty.

Tryb

Bob może automatycznie przełączać się między różnymi trybami w zależności od wymagań zadania.

Ta akcja dotyczy organizacji przepływu pracy i nie wpływa na dostęp do systemu.

Najlepsze praktyki bezpieczeństwa

Stosuj te wskazówki, aby bezpiecznie korzystać z automatycznego zatwierdzania:

  • Zacznij restrykcyjnie: Zacznij od minimalnych uprawnień i dodawaj więcej tylko w razie potrzeby.
  • Używaj ustawień specyficznych dla projektu: Dostosuj ustawienia automatycznego zatwierdzania do każdego projektu zgodnie z tolerancją ryzyka.
  • Wyłączaj, gdy nie jest potrzebne: Wyłącz automatyczne zatwierdzanie przy pracy z wrażliwym kodem lub systemami produkcyjnymi.
  • Regularnie przeglądaj zmiany: Okresowo sprawdzaj, jakie akcje podjął Bob, szczególnie modyfikacje plików.
  • Nigdy nie automatyzuj zatwierdzania na produkcji: Ogranicz ustawienia automatycznego zatwierdzania wyłącznie do środowisk deweloperskich.
Jak oceniasz ten temat?