Konfiguracja

Niestandardowe reguły

Niestandardowe reguły wpływają na sposób, w jaki Bob odpowiada na Twoje żądania, dostosowując wyniki do Twoich konkretnych preferencji i wymagań projektu. Skonfiguruj niestandardowe reguły, aby kontrolować styl kodowania Bob, podejście do dokumentacji i procesy podejmowania decyzji.

Czym są niestandardowe reguły?

Niestandardowe reguły rozszerzają domyślne zachowanie Bob, definiując preferencje, ograniczenia i wytyczne, które kierują sposobem, w jaki Bob podchodzi do zadań, aby dopasować się do Twoich potrzeb.

Typowe zastosowania obejmują:

  • Preferencje stylu kodowania (wcięcia, konwencje nazewnictwa)
  • Formaty i standardy dokumentacji
  • Metodologie i wymagania testowania
  • Przepływy pracy i procesy projektowe
  • Konwencje specyficzne dla zespołu

Dodawanie niestandardowych reguł dla trybu

Możesz dodawać niestandardowe reguły do trybów na dwa sposoby:

Przez interfejs użytkownika

Skonfiguruj reguły, które mają zastosowanie we wszystkich Twoich projektach:

  1. Kliknij trzy kropki w prawym górnym rogu paska bocznego Bob.
  2. Kliknij Tryby.
  3. Wybierz tryb, dla którego chcesz edytować reguły.
  4. Kliknij Edytuj.
  5. Przewiń do Niestandardowe instrukcje specyficzne dla trybu (opcjonalne).
  6. Wpisz swoje reguły.
  7. Kliknij Zapisz.

Przez pliki reguł specyficzne dla trybu

Tryby mogą również mieć dodatkowe pliki reguł przechowywane w katalogach pod .bob/rules-{mode-slug}/:

01-style-guide.md
02-formatting.txt

Pliki w katalogu są ładowane alfabetycznie i łączone z właściwością customInstructions z konfiguracji trybu. Więcej szczegółów znajdziesz w Niestandardowe tryby.

Dowiedz się więcej o standaryzacji zachowania Bob za pomocą reguł na poziomie projektu.

Zakresy reguł

Bob obsługuje dwa zakresy reguł, które określają, gdzie Twoje reguły mają zastosowanie:

  • Reguły globalne: Stosują się automatycznie we wszystkich Twoich projektach
  • Reguły obszaru roboczego: Stosują się tylko w bieżącym projekcie

Używaj reguł globalnych dla standardów osobistych lub organizacyjnych. Używaj reguł obszaru roboczego dla wymagań specyficznych dla projektu.

Metody konfiguracji

Konfiguracja oparta na katalogach

Użyj katalogów pod .bob/ w katalogu głównym obszaru roboczego:

Struktura obszaru roboczego:

coding-style.md
typescript.md
  • rules/ - Ogólne reguły dla wszystkich trybów
  • rules-agent/ - Reguły specyficzne dla trybu Agent

Struktura globalna:

Linux/macOS: ~/.bob/rules/ Windows: %USERPROFILE%\.bob\rules\

Utwórz reguły obszaru roboczego:

mkdir -p .bob/rules
echo "# Standardy projektu" > .bob/rules/coding-style.md

Utwórz reguły globalne:

# Linux/macOS
mkdir -p ~/.bob/rules
echo "# Standardy globalne" > ~/.bob/rules/coding-standards.md

# Windows
mkdir %USERPROFILE%\.bob\rules
echo # Standardy globalne > %USERPROFILE%\.bob\rules\coding-standards.md

Priorytet reguł

Bob łączy reguły z wielu źródeł w tej kolejności:

  1. Reguły globalne (~/.bob/rules/)
  2. Reguły obszaru roboczego (.bob/rules/)

W każdym poziomie reguły specyficzne dla trybu ładują się przed regułami ogólnymi. Reguły obszaru roboczego mogą nadpisywać reguły globalne.

Pisanie skutecznych reguł

Bądź konkretny i praktyczny

Dobre: "Użyj 4 spacji do wcięć w plikach JavaScript"

Unikaj: "Formatuj kod ładnie"

Używaj jasnej struktury

Organizuj reguły według tematu:

# Styl kodu
- Używaj camelCase dla zmiennych
- Używaj PascalCase dla klas

# Testowanie
- Pisz testy jednostkowe dla wszystkich funkcji publicznych
- Używaj Jest jako frameworka testowego

# Dokumentacja
- Dodawaj komentarze JSDoc dla publicznych API

Przykłady skutecznych reguł

  • "Zawsze używaj spacji do wcięć, z szerokością 4 spacji"
  • "Używaj camelCase dla nazw zmiennych"
  • "Pisz testy jednostkowe dla wszystkich nowych funkcji"
  • "Wyjaśnij swoje rozumowanie przed dostarczeniem kodu"
  • "Dodając funkcje do stron internetowych, upewnij się, że są responsywne i dostępne"

Zaawansowana konfiguracja

Reguły specyficzne dla trybu

Kieruj na określone tryby za pomocą dedykowanych katalogów:

KatalogCel
rules/Ogólne reguły dla wszystkich trybów
rules-agent/Tylko tryb Agent
rules-plan/Tylko tryb Plan
rules-ask/Tylko tryb Ask
rules-{mode}/Dowolny niestandardowy tryb

Używanie plików AGENTS.md

Dla standaryzacji zespołowej możesz użyć pliku AGENTS.md w katalogu głównym obszaru roboczego:

# Standardy zespołu
- Przestrzegaj wytycznych kodowania firmy
- Używaj tylko zatwierdzonych bibliotek
- Dokumentuj wszystkie zmiany API

Kluczowe szczegóły:

  • Automatycznie ładowany domyślnie
  • Kontrola wersji z Twoim projektem
  • Wyłącz za pomocą "bob-code.useAgentRules": false w ustawieniach
  • Ładowany po regułach specyficznych dla trybu, ale przed ogólnymi regułami obszaru roboczego

Zachowanie plików

  • Odczyt rekurencyjny: Bob czyta wszystkie pliki w katalogach reguł, w tym podkatalogi
  • Kolejność alfabetyczna: Pliki przetwarzane są w kolejności alfabetycznej według nazwy pliku
  • Automatyczne filtrowanie: Wyklucza pliki cache (.DS_Store, *.bak, *.cache, *.log, *.tmp, Thumbs.db)
  • Linki symboliczne: Obsługiwane z maksymalną głębokością 5
  • Puste pliki: Cicho pomijane

Standaryzacja zespołowa

Standardy na poziomie projektu

Używaj katalogów .bob/rules/ obszaru roboczego pod kontrolą wersji:

# Dodaj do kontroli wersji
git add .bob/rules/
git commit -m "Dodaj niestandardowe reguły Bob"

To zapewnia spójne zachowanie wśród członków zespołu dla określonych projektów.

Standardy organizacyjne

Dystrybuuj reguły globalne członkom zespołu:

  1. Utwórz wspólne repozytorium reguł
  2. Członkowie zespołu klonują do ~/.bob/rules/
  3. Aktualizuj okresowo dla spójności

Podejście hybrydowe

Możesz połączyć oba podejścia:

  • Reguły globalne dla standardów organizacyjnych
  • Reguły obszaru roboczego dla wymagań specyficznych dla projektu
  • Reguły obszaru roboczego nadpisują reguły globalne, gdy jest to potrzebne
Jak oceniasz ten temat?