switch_mode
A ferramenta switch_mode
permite que o AI Cockpit Reasoning alterne entre diferentes modos operacionais, cada um com capacidades especializadas para tipos específicos de tarefas. Isso permite transições perfeitas entre modos como Código, Arquiteto, Pergunta ou Depuração quando a tarefa atual exige conhecimentos diferentes.
Parâmetros
A ferramenta aceita estes parâmetros:
mode_slug
(obrigatório): O slug do modo para o qual alternar (por exemplo, "code", "ask", "architect")reason
(opcional): O motivo da troca de modos, fornecendo contexto para o usuário
O Que Faz
Esta ferramenta solicita uma mudança de modo quando a tarefa atual seria melhor tratada pelas capacidades de outro modo. Ela mantém o contexto enquanto desloca o foco e os conjuntos de ferramentas disponíveis do AI Cockpit Reasoning para corresponder aos requisitos da nova fase da tarefa.
Quando é usada?
- Ao fazer a transição da coleta de informações para a implementação de código
- Ao mudar da codificação para a arquitetura ou design
- Quando a tarefa atual requer capacidades disponíveis apenas em um modo diferente
- Quando é necessária especialização para uma fase específica de um projeto complexo
Principais Características
- Mantém a continuidade do contexto nas transições de modo
- Fornece um raciocínio claro para as recomendações de troca de modo
- Requer a aprovação do usuário para todas as mudanças de modo
- Impõe restrições de grupo de ferramentas específicas para cada modo
- Adapta perfeitamente a disponibilidade de ferramentas com base no modo selecionado
- Funciona com modos padrão e personalizados
- Exibe a troca de modo e o raciocínio na interface do usuário
- Usa formatação no estilo XML para especificação de parâmetros
- Lida com restrições de tipo de arquivo específicas para certos modos
Limitações
- Não pode alternar para modos que не existem no sistema
- Requer aprovação explícita do usuário para cada transição de modo
- Não pode usar ferramentas específicas de um modo até que a troca seja concluída
- Aplica um atraso de 500ms após a troca de modo para permitir que a alteração entre em vigor
- Alguns modos têm restrições de tipo de arquivo (por exemplo, o modo Arquiteto só pode editar arquivos markdown)
- A preservação do modo para retomada se aplica apenas à funcionalidade
new_task
, não à troca geral de modo
Como Funciona
Quando a ferramenta switch_mode
é invocada, ela segue este processo:
-
Validação da Solicitação:
- Valida que o modo solicitado existe no sistema
- Verifica se o parâmetro
mode_slug
foi fornecido e é válido - Verifica se o usuário já não está no modo solicitado
- Garante que o parâmetro
reason
(se fornecido) esteja formatado corretamente
-
Preparação da Transição de Modo:
- Empacota a solicitação de mudança de modo com o motivo fornecido
- Apresenta a solicitação de mudança ao usuário para aprovação
-
Ativação do Modo (Após Aprovação do Usuário):
- Atualiza a interface do usuário para refletir o novo modo
- Ajusta as ferramentas disponíveis com base na configuração do grupo de ferramentas do modo
- Aplica o prompt e o comportamento específicos do modo
- Aplica um atraso de 500ms para permitir que a alteração entre em vigor antes de executar a próxima ferramenta
- Impõe quaisquer restrições de arquivo específicas do modo
-
Continuação:
- Prossegue com a tarefa usando as capacidades do novo modo
- Retém o contexto relevante da interação anterior
Associação de Grupo de Ferramentas
A ferramenta switch_mode
pertence ao grupo de ferramentas "modos", mas também está incluída na lista de ferramentas "sempre disponíveis". Isso significa:
- Ela pode ser usada em qualquer modo, independentemente dos grupos de ferramentas configurados do modo
- Está disponível juntamente com outras ferramentas principais como
ask_followup_question
eattempt_completion
- Permite transições de modo a qualquer momento em um fluxo de trabalho quando os requisitos da tarefa mudam
Estrutura do Modo
Cada modo no sistema tem uma estrutura específica:
slug
: Identificador único para o modo (por exemplo, "code", "ask")name
: Nome de exibição para o modo (por exemplo, "Código", "Pergunta")roleDefinition
: A função especializada e as capacidades do modocustomInstructions
: Instruções opcionais específicas do modo que orientam o comportamentogroups
: Grupos de ferramentas disponíveis para o modo com restrições opcionais
Capacidades do Modo
Os modos principais fornecem estas capacidades especializadas:
- Modo Code: Focado em tarefas de codificação com acesso total às ferramentas de edição de código
- Modo Architect: Especializado para design de sistema e planejamento de arquitetura, limitado a editar apenas arquivos markdown
- Modo Ask: Otimizado para responder a perguntas e fornecer informações
- Modo Debug: Equipado para diagnóstico e resolução sistemática de problemas
- Modo Orchestrator: Um orquestrador de fluxo de trabalho estratégico que coordena tarefas complexas, delegando-as aos modos especializados apropriados
Modos Personalizados
Além dos modos principais, o sistema suporta modos personalizados específicos do projeto:
- Modos personalizados podem ser definidos com grupos de ferramentas específicos habilitados
- Eles podem especificar definições de função e instruções personalizadas
- O sistema verifica os modos personalizados primeiro antes de recorrer aos modos principais
- As definições de modo personalizado têm precedência sobre os modos principais com o mesmo slug
Restrições de Arquivo
Diferentes modos podem ter restrições de tipo de arquivo específicas:
- Modo Arquiteto: Só pode editar arquivos que correspondem à extensão
.md
- A tentativa de editar tipos de arquivo restritos resulta em um
FileRestrictionError
- Essas restrições ajudam a impor a separação adequada de preocupações entre os modos
Exemplos de Quando Usado
- Ao discutir um novo recurso, o AI Cockpit Reasoning muda do modo Pergunta para o modo Arquiteto para ajudar a projetar a estrutura do sistema.
- Após concluir o planejamento da arquitetura no modo Arquiteto, o AI Cockpit Reasoning muda para o modo Código para implementar os recursos projetados.
- Ao encontrar bugs durante o desenvolvimento, o AI Cockpit Reasoning muda do modo Código para o modo Depuração para solução sistemática de problemas.
Exemplos de Uso
Mudando para o modo Code para implementação:
<switch_mode>
<mode_slug>code</mode_slug>
<reason>Preciso implementar a funcionalidade de login com base na arquitetura que discutimos</reason>
</switch_mode>
Mudando para o modo Architect para design:
<switch_mode>
<mode_slug>architect</mode_slug>
<reason>Preciso projetar a arquitetura do sistema antes da implementação</reason>
</switch_mode>
Mudando para o modo Debug para solução de problemas:
<switch_mode>
<mode_slug>debug</mode_slug>
<reason>Preciso diagnosticar sistematicamente o erro de autenticação</reason>
</switch_mode>
Mudando para o modo Ask para obter informações:
<switch_mode>
<mode_slug>ask</mode_slug>
<reason>Preciso responder a perguntas sobre o recurso implementado</reason>
</switch_mode>
Mudando para o modo Orchestrator para melhor delegação de tarefas:
<switch_mode>
<mode_slug>orchestrator</mode_slug>
<reason>preciso delegar as tarefas para o modo certo</reason>
</switch_mode>