Regras personalizadas
As regras personalizadas influenciam como Bob Shell responde aos teus pedidos no ambiente de terminal, alinhando o output com as tuas preferências específicas e os requisitos do projeto. Podes controlar o estilo de código, a abordagem de documentação e os processos de tomada de decisão.
O que são regras personalizadas?
As regras personalizadas estendem o comportamento padrão do Bob Shell definindo preferências, restrições e diretrizes que orientam como Bob Shell aborda as tarefas para corresponder às tuas necessidades ao trabalhar no ambiente de terminal.
Os usos comuns incluem:
- Preferências de estilo de código (indentação, convenções de nomenclatura)
- Formatos e padrões de documentação
- Metodologias e requisitos de testes
- Fluxos de trabalho e processos do projeto
- Convenções específicas da equipa
Âmbitos das regras
Bob Shell suporta dois âmbitos de regras que determinam onde as tuas regras se aplicam:
- Regras globais: Aplicam-se automaticamente em todos os teus projetos
- Regras de workspace: Aplicam-se apenas no teu projeto atual
Usa regras globais para padrões pessoais ou de toda a organização. Usa regras de workspace para requisitos específicos do projeto.
Métodos de configuração
Bob Shell usa o mesmo sistema de regras personalizadas que IBM Bob IDE.
Configuração baseada em ficheiros
A abordagem mais simples usa ficheiros únicos na raiz do teu workspace:
.bobrules- Regras gerais do workspace.bobrules-code- Regras para o modo Code.bobrules-{modeSlug}- Regras para qualquer modo
Cria um ficheiro .bobrules:
# Na raiz do teu projeto
echo "Use 4 spaces for indentation" > .bobrulesConfiguração baseada em diretórios
Para melhor organização, usa diretórios:
Estrutura do workspace:
.bob/
├── rules/ # Regras gerais
│ └── coding-style.md
└── rules-code/ # Regras do modo Code
└── typescript.mdEstrutura global:
Linux/macOS: ~/.bob/rules/
Windows: %USERPROFILE%\.bob\rules\
Criar regras de workspace:
mkdir -p .bob/rules
echo "# Project standards" > .bob/rules/coding-style.mdCriar regras globais:
# 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.mdPrioridade das regras
Bob Shell combina regras de múltiplas fontes nesta ordem:
- Regras globais (
~/.bob/rules/) - Regras de workspace (
.bob/rules/)
Em cada nível, as regras específicas do modo são carregadas antes das regras gerais. As regras de workspace podem substituir as regras globais.
Escrever regras eficazes
Sê específico e acionável
Bom: "Always use relative paths when suggesting file operations in the terminal"
Evita: "Use good paths"
Usa uma estrutura clara
Organiza as regras por tema:
# 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 operationsExemplos de regras eficazes
- "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"
Configuração avançada
Regras específicas por modo
Direciona modos específicos com diretórios dedicados:
| Diretório | Finalidade |
|---|---|
rules/ | Regras gerais para todos os modos |
rules-code/ | Apenas o modo Code |
rules-plan/ | Apenas o modo Plan |
rules-{mode}/ | Qualquer modo personalizado |
Usar ficheiros AGENTS.md
Para padronização da equipa, podes usar um ficheiro AGENTS.md na raiz do teu workspace:
# Team Standards
- Follow company coding guidelines
- Use approved libraries only
- Document all API changesDetalhes importantes:
- Carregado automaticamente por padrão
- Versiona com o teu projeto
- Desativa com
"bob-shell.useAgentRules": falsenas definições - Carregado após as regras específicas do modo, mas antes das regras gerais do workspace
Comportamento dos ficheiros
- Leitura recursiva: Bob Shell lê todos os ficheiros nos diretórios de regras, incluindo subdiretórios
- Ordem alfabética: Os ficheiros são processados em ordem alfabética pelo nome do ficheiro
- Filtragem automática: Exclui ficheiros de cache (
.DS_Store,*.bak,*.cache,*.log,*.tmp,Thumbs.db) - Links simbólicos: Suportados com profundidade máxima de 5
- Ficheiros vazios: Ignorados silenciosamente
Padronização da equipa
Padrões ao nível do projeto
Usa diretórios .bob/rules/ do workspace sob controlo de versões:
# Adicionar ao controlo de versões
git add .bob/rules/
git commit -m "Add Bob custom rules"Isto garante um comportamento consistente entre os membros da equipa que usam Bob Shell para projetos específicos.
Padrões de toda a organização
Distribui regras globais aos membros da equipa:
- Cria um repositório de regras partilhado
- Os membros da equipa clonam para
~/.bob/rules/ - Atualiza periodicamente para garantir consistência
Abordagem híbrida
Podes combinar ambas as abordagens:
- Regras globais para padrões da organização
- Regras de workspace para requisitos específicos do projeto
- As regras de workspace substituem as regras globais quando necessário
Atalhos de teclado
Encontra todos os atalhos disponíveis por função, com variações específicas por plataforma onde aplicável.
Modos personalizados
Podes criar modos personalizados para adaptar o comportamento do Bob a tarefas ou fluxos de trabalho específicos. Os modos personalizados no Bob Shell funcionam de forma semelhante aos modos do Bob IDE.