Règles personnalisées
Les règles personnalisées influencent la façon dont Bob Shell répond à tes demandes dans l'environnement terminal, alignant la sortie avec tes préférences spécifiques et les exigences de ton projet. Tu peux contrôler le style de codage, l'approche de documentation et les processus de prise de décision.
Que sont les règles personnalisées ?
Les règles personnalisées étendent le comportement par défaut de Bob Shell en définissant des préférences, contraintes et directives qui orientent la façon dont Bob Shell aborde les tâches pour correspondre à tes besoins lors du travail dans l'environnement terminal.
Les utilisations courantes incluent :
- Les préférences de style de codage (indentation, conventions de nommage)
- Les formats et standards de documentation
- Les méthodologies et exigences de test
- Les workflows et processus du projet
- Les conventions spécifiques à l'équipe
Portées des règles
Bob Shell prend en charge deux portées de règles qui déterminent où tes règles s'appliquent :
- Règles globales : S'appliquent automatiquement à tous tes projets
- Règles d'espace de travail : S'appliquent uniquement dans ton projet actuel
Utilise les règles globales pour les standards personnels ou à l'échelle de l'organisation. Utilise les règles d'espace de travail pour les exigences spécifiques au projet.
Méthodes de configuration
Bob Shell utilise le même système de règles personnalisées que IBM Bob IDE.
Configuration basée sur des fichiers
L'approche la plus simple utilise des fichiers uniques à la racine de ton espace de travail :
.bobrules- Règles générales de l'espace de travail.bobrules-code- Règles pour le mode Code.bobrules-{modeSlug}- Règles pour n'importe quel mode
Crée un fichier .bobrules :
# Dans la racine de ton projet
echo "Use 4 spaces for indentation" > .bobrulesConfiguration basée sur des répertoires
Pour une meilleure organisation, utilise des répertoires :
Structure de l'espace de travail :
.bob/
├── rules/ # Règles générales
│ └── coding-style.md
└── rules-code/ # Règles du mode Code
└── typescript.mdStructure globale :
Linux/macOS : ~/.bob/rules/
Windows : %USERPROFILE%\.bob\rules\
Crée des règles d'espace de travail :
mkdir -p .bob/rules
echo "# Project standards" > .bob/rules/coding-style.mdCrée des règles globales :
# 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.mdPriorité des règles
Bob Shell combine les règles de plusieurs sources dans cet ordre :
- Règles globales (
~/.bob/rules/) - Règles d'espace de travail (
.bob/rules/)
Au sein de chaque niveau, les règles spécifiques au mode se chargent avant les règles générales. Les règles d'espace de travail peuvent remplacer les règles globales.
Écrire des règles efficaces
Sois précis et actionnable
Bon : "Always use relative paths when suggesting file operations in the terminal"
À éviter : "Use good paths"
Utilise une structure claire
Organise les règles par sujet :
# 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 operationsExemples de règles efficaces
- "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"
Configuration avancée
Règles spécifiques aux modes
Cible des modes spécifiques avec des répertoires dédiés :
| Répertoire | Objectif |
|---|---|
rules/ | Règles générales pour tous les modes |
rules-code/ | Mode Code uniquement |
rules-plan/ | Mode Plan uniquement |
rules-{mode}/ | N'importe quel mode personnalisé |
Utiliser des fichiers AGENTS.md
Pour la standardisation de l'équipe, tu peux utiliser un fichier AGENTS.md à la racine de ton espace de travail :
# Team Standards
- Follow company coding guidelines
- Use approved libraries only
- Document all API changesDétails clés :
- Chargé automatiquement par défaut
- Soumis au contrôle de version avec ton projet
- Désactiver avec
"bob-shell.useAgentRules": falsedans les paramètres - Chargé après les règles spécifiques au mode mais avant les règles générales de l'espace de travail
Comportement des fichiers
- Lecture récursive : Bob Shell lit tous les fichiers dans les répertoires de règles, y compris les sous-répertoires
- Ordre alphabétique : Les fichiers sont traités dans l'ordre alphabétique par nom de fichier
- Filtrage automatique : Exclut les fichiers cache (
.DS_Store,*.bak,*.cache,*.log,*.tmp,Thumbs.db) - Liens symboliques : Supportés avec une profondeur maximale de 5
- Fichiers vides : Ignorés silencieusement
Standardisation de l'équipe
Standards au niveau du projet
Utilise les répertoires .bob/rules/ de l'espace de travail sous contrôle de version :
# Ajouter au contrôle de version
git add .bob/rules/
git commit -m "Add Bob custom rules"Cela assure un comportement cohérent entre les membres de l'équipe utilisant Bob Shell pour des projets spécifiques.
Standards à l'échelle de l'organisation
Distribue les règles globales aux membres de l'équipe :
- Crée un repository de règles partagées
- Les membres de l'équipe le clonent dans
~/.bob/rules/ - Mets à jour périodiquement pour la cohérence
Approche hybride
Tu peux combiner les deux approches :
- Règles globales pour les standards de l'organisation
- Règles d'espace de travail pour les exigences spécifiques au projet
- Les règles d'espace de travail remplacent les règles globales si nécessaire
Raccourcis clavier
Trouve tous les raccourcis disponibles par fonction, avec les variations spécifiques à chaque plateforme le cas échéant.
Modes personnalisés
Tu peux créer des modes personnalisés pour adapter le comportement de Bob à des tâches ou workflows spécifiques. Les modes personnalisés dans Bob Shell fonctionnent de façon similaire aux modes Bob IDE.