Tools
Aprende como Bob Shell usa tools especializadas para ler ficheiros, editar código, executar comandos e interagir com o teu ambiente de desenvolvimento a partir da linha de comando.
Fluxo de trabalho das tools
Quando descreves o que queres fazer em linguagem natural, Bob Shell irá:
- Selecionar a tool adequada com base no teu pedido.
- Apresentar a tool com os seus parâmetros para revisão.
- Executar a tool aprovada e mostrar-te os resultados.
- Continuar este processo até a tua tarefa estar concluída.
Categorias de tools
As tools do Bob Shell estão organizadas em categorias com base na sua função principal. Compreender estas categorias ajuda-te a saber o que Bob Shell pode fazer e como realiza as tarefas.
Tools de leitura
Acede ao conteúdo de ficheiros e compreende a estrutura do código sem fazer alterações.
| Tool | Finalidade | Exemplo de uso |
|---|---|---|
read_file | Ler o conteúdo de um ou mais ficheiros | Ver ficheiros de configuração, examinar código fonte |
search_files | Pesquisar padrões em múltiplos ficheiros usando regex | Encontrar todos os comentários TODO, localizar definições de funções |
list_files | Listar ficheiros e diretórios num caminho especificado | Explorar a estrutura do projeto, encontrar tipos de ficheiros específicos |
list_code_definition_names | Extrair nomes de classes, funções e métodos de ficheiros fonte | Obter uma visão geral da organização do código |
Quando Bob Shell usa tools de leitura: Quando lhe pedes para rever código, encontrar padrões específicos ou compreender a estrutura do projeto.
Tools de escrita
Cria novos ficheiros ou modifica código existente com precisão.
| Tool | Finalidade | Exemplo de uso |
|---|---|---|
write_to_file | Criar um novo ficheiro ou reescrever completamente um existente | Gerar novos componentes, criar ficheiros de configuração |
apply_diff | Fazer alterações direcionadas a secções específicas de um ficheiro | Atualizar lógica de funções, corrigir bugs, refatorar código |
insert_content | Adicionar novas linhas numa localização específica de um ficheiro | Adicionar imports, inserir novas funções |
Quando Bob Shell usa tools de escrita: Quando lhe pedes para criar ficheiros, implementar funcionalidades, corrigir bugs ou refatorar código.
Tools de comando
Executa comandos e realiza operações de sistema no teu terminal.
| Tool | Finalidade | Exemplo de uso |
|---|---|---|
execute_command | Executar comandos CLI no teu workspace | Instalar dependências, executar testes, construir projetos |
Quando Bob Shell usa tools de comando: Quando lhe pedes para executar comandos, instalar pacotes, executar scripts ou completar operações de sistema.
Tools MCP
Expande as capacidades do Bob Shell através de servidores Model Context Protocol.
| Tool | Finalidade | Exemplo de uso |
|---|---|---|
use_mcp_tool | Aceder a tools fornecidas por servidores MCP conectados | Consultar bases de dados, interagir com APIs, aceder a serviços externos |
Tools de modo
Muda entre diferentes modos do Bob Shell para tarefas especializadas.
| Tool | Finalidade | Exemplo de uso |
|---|---|---|
switch_mode | Mudar para um modo diferente (Agent, Plan, Ask, entre outros) | Mudar para o modo Plan para design de arquitetura, modo Agent para implementação |
Quando Bob Shell usa tools de modo: Quando a tarefa atual beneficiaria das capacidades especializadas de um modo diferente.
Tools de pergunta
Recolhe informações adicionais necessárias para completar as tarefas.
| Tool | Finalidade | Exemplo de uso |
|---|---|---|
ask_followup_question | Solicitar esclarecimentos ou detalhes adicionais | Perguntar sobre a abordagem de implementação preferida, solicitar informações em falta |
Grupos de tools
Os grupos de tools são coleções nomeadas de tools relacionadas que podes ativar ou desativar em conjunto. Usa os grupos de tools para restringir o que Bob Shell pode fazer numa determinada sessão — por exemplo, para impedir escritas de ficheiros numa auditoria apenas de leitura, ou para desativar a execução de comandos num ambiente controlado.
Grupos de tools disponíveis
| Grupo | Tools incluídas | Padrão em Agent | Padrão em Plan | Padrão em Ask |
|---|---|---|---|---|
read | Tools de leitura, pesquisa e listagem de ficheiros | ✓ | ✓ | ✓ |
edit | Tools de escrita e diff de ficheiros | ✓ | ✓ | ✓ |
execute | Tools de execução de comandos shell | ✓ | — | — |
mcp | Tools de servidores MCP | ✓ | ✓ | ✓ |
skill | Tools relacionadas com skills | ✓ | ✓ | ✓ |
todo | Tools de gestão de listas de tarefas | ✓ | ✓ | — |
subagent | Tools de criação de subagentes | ✓ | — | — |
mode | Tools de troca de modo | ✓ | ✓ | ✓ |
Desativar grupos de tools
Passa --disable-tool-groups a bob run ou bob chat com uma lista separada por vírgulas de nomes de grupos:
# Desativar execução de comandos e tools MCP
bob run --disable-tool-groups execute,mcp "Review @src/"
# Executar em modo apenas de leitura
bob run --disable-tool-groups edit,execute,mcp "Summarize the codebase"Também podes desativar todos os servidores MCP de uma vez com a flag dedicada:
bob run --disable-mcp "Explain @app.js"