Entrevista Rigorosa
Origem. Escrito por Matt Pocock em mattpocock/skills (MIT), fixado em
49dd158. O texto upstream abaixo é literal, exceto pelas edições listadas em UPSTREAM.md. Nossas adições estão sob Notas de campo no final.
Entreviste o usuário sem piedade até que vocês cheguem a um entendimento compartilhado. Mapeie isso como uma árvore de decisão: cada decisão se ramifica nas decisões que dependem dela.
Trabalhe a árvore em rodadas. A fronteira é toda decisão cujos pré-requisitos já foram resolvidos: as perguntas que você pode fazer agora sem adivinhar respostas que ainda não ouviu. Faça toda a fronteira em uma rodada: numere cada pergunta e dê sua resposta recomendada. Em seguida, aguarde as respostas do usuário antes da próxima rodada.
Formate uma rodada assim:
❓ **P1** - **<título da pergunta>**: <corpo da pergunta, pode ter vários parágrafos, incluindo múltiplas escolhas>
➡️ <sua resposta recomendada>
---
❓ **P2** - **<título da pergunta>**: <corpo da pergunta, pode ter vários parágrafos, incluindo múltiplas escolhas>
➡️ <sua resposta recomendada>
Formule cada pergunta de modo que "sim" aceite sua resposta recomendada.
A cada rodada, as respostas do usuário remodelam a árvore: decisões resolvidas empurram a fronteira para fora e desbloqueiam perguntas que dependiam delas. Recalcule a fronteira e faça a próxima rodada. Uma pergunta cuja resposta depende de outra pergunta ainda aberta nesta rodada pertence a uma rodada posterior, não a esta.
Encontrar fatos é seu trabalho, nunca do usuário. Quando uma pergunta da fronteira precisar de um fato do ambiente (sistema de arquivos, ferramentas, etc.), despache um subagente para encontrá-lo; não pergunte ao usuário por nada que você mesmo possa consultar. Não bloqueie nisso: uma exploração em andamento é um pré-requisito não resolvido, então apenas as perguntas a jusante dela esperam o subagente relatar; faça o restante da fronteira agora. As decisões são do usuário: apresente cada uma a ele e aguarde.
A sessão termina quando a fronteira está vazia: todo ramo da árvore de decisão foi visitado, nada ficou assumido em silêncio. Não aja até que o usuário confirme que vocês chegaram a um entendimento compartilhado.
Notas de campo
Evidência: 26 sessões reais onde a entrevista rigorosa foi carregada (método em docs/field-data.md).
- Mantenha um registro de decisões que o usuário possa reverter. Os usuários voltaram atrás em uma resposta anterior 3 vezes ("traga as decisões de volta, eu tomei uma errada"). Após cada rodada, imprima uma lista numerada das decisões resolvidas. Uma reversão reabre apenas os ramos a jusante dessa decisão.
- Atribua letras às opções. Os usuários responderam com uma letra solta ou uma lista numerada em 16 respostas curtas. Dê a cada pergunta de múltipla escolha opções com letras para que
P2: bseja uma resposta completa. - Modo de auto-entrevista. Cerca de 19 solicitações pediram que o agente se entrevistasse a si mesmo ("faça você mesmo a sessão de entrevista para a segurança"). Quando solicitado, execute a mesma árvore de decisão com o agente como entrevistado. Resolva cada pergunta de fato a partir de evidências que você coleta. Neste modo, as regras de espera e confirmação acima se aplicam apenas a chamadas de preferência, que vão para o usuário em um lote com respostas recomendadas.
principal-autopilotexecuta este modo em seu passo 3, antes de qualquer código.