Slash commands
Cria slash commands personalizados para automatizar tarefas repetitivas, executar comandos integrados e expandir a funcionalidade do Bob com simples ficheiros markdown.
Visão geral
Para começar, escreve / no chat para ver todos os comandos disponíveis, ou cria os teus adicionando um ficheiro markdown em .bob/commands/ ou ~/.bob/commands/.
Benefícios principais:
- Automatização do workflow: Converte processos complexos em várias etapas em comandos únicos
- Padronização da equipa: Partilha comandos com a tua equipa para práticas consistentes
- Preservação do contexto: Inclui contexto específico do projeto em cada comando
- Acesso rápido: Pesquisa fuzzy e autocompletar para descoberta instantânea de comandos
Comandos integrados
Bob inclui vários comandos integrados que fornecem funcionalidade básica:
/init
Inicializa um novo projeto ou workspace com Bob. Este comando ajuda a configurar a configuração e estrutura necessárias para trabalhar com Bob no teu projeto.
/review
Revê alterações de código com análise abrangente. Este comando pode ser usado de várias formas:
/review– Revê alterações locais não confirmadas no teu diretório de trabalho/review <branch>– Compara um branch com o teu branch atual (HEAD)/review #<issue-number> --issue-coverage– Valida alterações locais contra um issue do GitHub/review <issue-url> --issue-coverage– Valida alterações locais contra um URL de issue do GitHub
O comando de revisão realiza uma análise minuciosa do código incluindo deteção de bugs, verificações de segurança, problemas de desempenho e consistência de estilo.
/create-pr
Cria um pull request com descrição gerada por IA. Este comando analisa as tuas alterações e gera uma descrição abrangente do PR baseada no diff entre branches.
Criar comandos personalizados
Os comandos personalizados expandem a funcionalidade do Bob adicionando ficheiros markdown a diretórios específicos:
- Específico do projeto:
.bob/commands/na raiz do teu workspace - Global:
~/.bob/commands/no teu diretório home
O nome do ficheiro torna-se o nome do comando. Por exemplo:
review.md→/reviewtest-api.md→/test-apideploy-check.md→/deploy-check
Processamento de nomes de comandos
Ao criar comandos através da interface, os nomes dos comandos são processados automaticamente:
- Convertidos para minúsculas
- Espaços substituídos por hífens
- Caracteres especiais removidos
- Hífens iniciais/finais removidos
Exemplo: "O Meu Comando Fixe!" torna-se o-meu-comando-fixe
Formato básico de comando
Cria um comando simples adicionando um ficheiro markdown:
Help me review this code for security issues and suggest improvements.Comando avançado com frontmatter
Adiciona metadados usando frontmatter para funcionalidade melhorada:
---
description: Create a new API endpoint
argument-hint: <endpoint-name> <http-method>
---
Create a new API endpoint called $1 that handles $2 requests.
Include proper error handling and documentation.Campos do frontmatter
description: Aparece no menu de comandos para ajudar os utilizadores a entender o propósito do comandoargument-hint: Fornece uma dica sobre os argumentos esperados ao usar o comando
Interface de gestão de comandos
Bob fornece uma interface dedicada para gerir comandos personalizados.
Clica no ícone de comandos no painel Bob para abrir o gestor de comandos.
Criar um novo comando
- Escreve o nome do teu comando no campo de entrada (p. ex., "Nome de comando de exemplo")
- Clica no botão + para criar o comando
- Um novo ficheiro será criado e aberto automaticamente (p. ex.,
nome-de-comando-de-exemplo.md)
Usar slash commands
Escreve / no chat para ver um menu unificado contendo ambos os tipos de comandos. O menu mostra tanto comandos de workflow personalizados como comandos de mudança de modo na mesma interface.
- Menu unificado: Tanto os comandos personalizados como os de mudança de modo aparecem juntos
- Autocompletar: Começa a escrever para filtrar comandos (p. ex.,
/exemostraexemplo-de-comando) - Pesquisa fuzzy: Encontra comandos mesmo com correspondências parciais
- Pré-visualização de descrição: Vê as descrições dos comandos no menu
- Indicadores visuais: Os comandos de modo são distinguidos dos comandos personalizados com ícones especiais
Hints de argumentos
Os hints de argumentos fornecem ajuda instantânea para slash commands, mostrando-te que tipo de informação fornecer quando um comando espera entrada adicional.
Quando escreves / para abrir o menu de comandos, os comandos que esperam argumentos apresentarão um hint cinzento claro ao seu lado. Este hint indica-te que tipo de argumento o comando está a esperar.
Por exemplo:
/mode <mode_slug>– O hint<mode_slug>indica que deves fornecer um nome de modo comocodeoudebug/api-endpoint <endpoint-name> <http-method>– Mostra que precisas de um nome de endpoint e de um método HTTP
Após selecionar o comando, ele será inserido no campo de entrada do chat seguido de um espaço. O hint não é inserido; é apenas um guia visual para ajudares a saber o que escrever a seguir. Deves depois escrever manualmente o argumento após o comando.
Adicionar hints de argumentos a comandos personalizados
Podes adicionar hints de argumentos aos teus comandos personalizados usando o campo argument-hint no frontmatter:
---
description: Create a new API endpoint
argument-hint: <endpoint-name> <http-method>
---
Create a new API endpoint called $1 that handles $2 requests.Isto aparecerá como /api-endpoint <endpoint-name> <http-method> no menu de comandos.
Boas práticas para hints de argumentos
- Sê específico: Usa marcadores descritivos como
<file-path>em vez de genéricos como<arg> - Mostra múltiplos argumentos: Se o teu comando precisar de várias entradas, mostra-as todas:
<source><destination> - Usa formato consistente: Envolve sempre os marcadores em parênteses angulares:
<marcador> - Mantém a concisão: Os hints devem ser breves e claros
Perguntas frequentes
- "O que acontece se não fornecer o argumento?" O comando pode não funcionar como esperado, ou pode pedir-te mais informações. O hint está lá para te ajudar a acertar à primeira.
- "Todos os comandos têm hints?" Não, apenas os comandos concebidos para receber argumentos terão hints. Os comandos que funcionam sem entrada adicional não mostrarão hints.
- "Posso usar um comando sem substituir o hint?" O texto do hint (como
<mode_slug>) precisa ser substituído por valores reais. Deixar o texto do hint provavelmente fará com que o comando falhe ou se comporte de forma inesperada.
Boas práticas
Nomenclatura de comandos
- Usa nomes descritivos e orientados para a ação
- Mantém os nomes concisos mas claros
- Usa hífens para comandos com várias palavras
- Evita nomes genéricos como
helpoutest - Nota: Os nomes são automaticamente slugificados (minúsculas, caracteres especiais removidos)
- A extensão
.mdé adicionada/removida automaticamente conforme necessário
Conteúdo do comando
- Começa com uma diretiva clara
- Usa formatos estruturados (listas, secções)
- Inclui requisitos específicos
- Referencia as convenções do projeto
- Mantém os comandos focados numa única tarefa
Organização
- Agrupa comandos relacionados em subdiretórios
- Usa padrões de nomenclatura consistentes
- Documenta comandos complexos
- Versiona os teus comandos
- Partilha comandos da equipa no repositório do projeto
Resolução de problemas
Comandos não aparecem
- Verifica a localização do ficheiro: Garante que os ficheiros de comandos personalizados estão em
.bob/commands/ou~/.bob/commands/ - Verifica a extensão do ficheiro: Os comandos personalizados devem ser ficheiros
.md
Comando não encontrado
Quando um slash command não é encontrado, o LLM verá:
The slash command '/unknown-command' was not found. Please check the command name and try again.Conflitos de comandos
- Os comandos personalizados do projeto substituem os comandos personalizados globais com o mesmo nome
- Usa nomes únicos para evitar conflitos
- Ao criar nomes duplicados através da interface, são adicionados números (p. ex.,
novo-comando-1,novo-comando-2)
Sobre os comandos de modo
O menu slash inclui comandos de mudança de modo (como /code, /ask) que mudam fundamentalmente o modo operacional da IA — não inserem apenas texto mas mudam todo o contexto da IA. Os modos personalizados que criares também aparecem como slash commands (p. ex., um modo com slug reviewer torna-se /reviewer). Estes comandos de modo não podem ser substituídos por comandos de workflow personalizados.
Sabe mais em Modos e Modos personalizados.
Dicas do Bob
As dicas do Bob detectam problemas de qualidade de código em tempo real com sugestões de refatoração impulsionadas por IA para funções complexas. Reduza a dívida técnica enquanto programa.
Ações de código
Acesse as ações de código baseadas em IA do Bob que fornecem correções rápidas, refatorações e explicações de código diretamente no Bob IDE por meio de ícones de lâmpada e menus de contexto.