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.
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.
| Akcja | Opis | Poziom ryzyka |
|---|---|---|
| Odczyt | Przeglądanie plików i zawartości katalogów | Średni |
| Edycja | Tworzenie, edytowanie i zapisywanie plików | Wysoki |
| Wykonanie | Uruchamianie poleceń w terminalu | Wysoki |
| MCP | Korzystanie ze skonfigurowanych serwerów MCP | Średni-Wysoki |
| Umiejętność | Aktywowanie zdefiniowanych umiejętności | Średni |
| Todo | Aktualizacja listy zadań | Niski |
| Podzadanie | Tworzenie i kończenie podzadań | Niski |
| Subagent | Uruchamianie subagentów do skupionych zadań | Niski |
| Tryb | Przełączanie trybów do wykonania zadania | Niski |
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.