Niestandardowe reguły
Niestandardowe reguły wpływają na to, jak Bob Shell odpowiada na twoje żądania w środowisku terminala, dostosowując wyjście do twoich konkretnych preferencji i wymagań projektu. Możesz kontrolować styl kodowania, podejście do dokumentacji i procesy podejmowania decyzji.
Czym są niestandardowe reguły?
Niestandardowe reguły rozszerzają domyślne zachowanie Bob Shell, definiując preferencje, ograniczenia i wytyczne, które kierują podejściem Bob Shell do zadań, aby dopasować się do twoich potrzeb podczas pracy w środowisku terminala.
Typowe zastosowania obejmują:
- Preferencje stylu kodowania (wcięcia, konwencje nazewnictwa)
- Formaty i standardy dokumentacji
- Metodologie i wymagania testowania
- Workflow'y i procesy projektowe
- Konwencje specyficzne dla zespołu
Zakresy reguł
Bob Shell obsługuje dwa zakresy reguł, które określają, gdzie twoje reguły mają zastosowanie:
- Reguły globalne: Stosują się automatycznie we wszystkich projektach
- Reguły obszaru roboczego: Stosują się tylko w bieżącym projekcie
Używaj reguł globalnych dla osobistych lub ogólnoorganizacyjnych standardów. Używaj reguł obszaru roboczego dla wymagań specyficznych dla projektu.
Metody konfiguracji
Bob Shell używa tego samego systemu niestandardowych reguł co IBM Bob IDE.
Konfiguracja oparta na plikach
Najprostsze podejście używa pojedynczych plików w katalogu głównym obszaru roboczego:
.bobrules- Ogólne reguły obszaru roboczego.bobrules-code- Reguły dla trybu Code.bobrules-{modeSlug}- Reguły dla dowolnego trybu
Utwórz plik .bobrules:
# W katalogu głównym projektu
echo "Use 4 spaces for indentation" > .bobrulesKonfiguracja oparta na katalogach
Dla lepszej organizacji używaj katalogów:
Struktura obszaru roboczego:
.bob/
├── rules/ # Reguły ogólne
│ └── coding-style.md
└── rules-code/ # Reguły trybu Code
└── typescript.mdStruktura globalna:
Linux/macOS: ~/.bob/rules/
Windows: %USERPROFILE%\.bob\rules\
Utwórz reguły obszaru roboczego:
mkdir -p .bob/rules
echo "# Project standards" > .bob/rules/coding-style.mdUtwórz reguły globalne:
# Linux/macOS
mkdir -p ~/.bob/rules
echo "# Global standards" > ~/.bob/rules/coding-standards.md
# Windows
mkdir %USERPROFILE%\.bob\rules
echo # Global standards > %USERPROFILE%\.bob\rules\coding-standards.mdPriorytet reguł
Bob Shell łączy reguły z wielu źródeł w następującej kolejności:
- Reguły globalne (
~/.bob/rules/) - Reguły obszaru roboczego (
.bob/rules/)
W każdym poziomie reguły specyficzne dla trybu ładują się przed ogólnymi. Reguły obszaru roboczego mogą zastępować reguły globalne.
Pisanie efektywnych reguł
Bądź konkretny i wykonalny
Dobrze: "Always use relative paths when suggesting file operations in the terminal"
Unikaj: "Use good paths"
Używaj przejrzystej struktury
Organizuj reguły tematycznie:
# Shell Commands
- Prefer using standard Unix commands over specialized tools when possible
- Include explanations of what each flag does
# Script Style
- Format shell script examples with proper error handling
- Use portable shell syntax that works across bash, zsh, and other common shells
# File Operations
- Always check for file existence before operations in shell scripts
- Always use relative paths when suggesting file operationsPrzykłady efektywnych reguł
- "Always use relative paths when suggesting file operations in the terminal"
- "Prefer using standard Unix commands over specialized tools when possible"
- "Format shell script examples with proper error handling"
- "When suggesting commands, include explanations of what each flag does"
- "Always check for file existence before operations in shell scripts"
- "Use portable shell syntax that works across bash, zsh, and other common shells"
Zaawansowana konfiguracja
Reguły specyficzne dla trybu
Kieruj reguły do konkretnych trybów za pomocą dedykowanych katalogów:
| Katalog | Cel |
|---|---|
rules/ | Ogólne reguły dla wszystkich trybów |
rules-code/ | Tylko tryb Code |
rules-plan/ | Tylko tryb Plan |
rules-{mode}/ | Dowolny niestandardowy tryb |
Używanie plików AGENTS.md
Do standaryzacji zespołu możesz używać pliku AGENTS.md w katalogu głównym obszaru roboczego:
# Team Standards
- Follow company coding guidelines
- Use approved libraries only
- Document all API changesKluczowe szczegóły:
- Ładowany automatycznie domyślnie
- Umieszczaj pod kontrolą wersji razem z projektem
- Wyłącz ustawieniem
"bob-shell.useAgentRules": falsew ustawieniach - Ładowany po regułach specyficznych dla trybu, ale przed ogólnymi regułami obszaru roboczego
Zachowanie plików
- Rekurencyjne odczytywanie: Bob Shell odczytuje wszystkie pliki w katalogach reguł, w tym podkatalogi
- Kolejność alfabetyczna: Pliki są przetwarzane w kolejności alfabetycznej według nazwy pliku
- Automatyczne filtrowanie: Wyklucza pliki pamięci podręcznej (
.DS_Store,*.bak,*.cache,*.log,*.tmp,Thumbs.db) - Dowiązania symboliczne: Obsługiwane z maksymalną głębokością 5
- Puste pliki: Cicho pomijane
Standaryzacja zespołu
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 "Add Bob custom rules"Zapewnia to spójne zachowanie wśród członków zespołu używających Bob Shell dla konkretnych projektów.
Standardy ogólnoorganizacyjne
Dystrybuuj reguły globalne do członków zespołu:
- Utwórz współdzielone repozytorium reguł
- Członkowie zespołu klonują do
~/.bob/rules/ - Aktualizuj okresowo dla zachowania spójności
Podejście hybrydowe
Możesz łączyć oba podejścia:
- Reguły globalne dla standardów organizacyjnych
- Reguły obszaru roboczego dla wymagań specyficznych dla projektu
- Reguły obszaru roboczego zastępują reguły globalne w razie potrzeby
Skróty klawiszowe
Znajdź wszystkie dostępne skróty według funkcji, z wariantami specyficznymi dla platformy tam, gdzie mają zastosowanie.
Niestandardowe tryby
Możesz tworzyć niestandardowe tryby, aby dostosować zachowanie Bob do konkretnych zadań lub workflow'ów. Niestandardowe tryby w Bob Shell działają podobnie do trybów Bob IDE.