As Três Camadas
Ajuda enxergar a assistência de IA como três camadas, cada uma te dando um pouco mais de corda.
- Completions no editor. A IA sugere a próxima linha ou bloco enquanto você digita. Você está no controle total; aceita ou rejeita cada sugestão. A unidade de trabalho é de poucas linhas, e você revisa todas elas por padrão porque aparecem bem abaixo do cursor.
- Assistentes de nível de repositório. Você conversa com um assistente que enxerga o projeto inteiro, edita vários arquivos de uma vez, roda comandos e lê a saída. É aqui que acontece a maior parte do trabalho descrito neste livro. A unidade de trabalho é um passo ou uma pequena funcionalidade, e você revisa o diff (a diferença entre o código antes e depois da mudança) após cada rodada.
- Agentes autônomos. Você dá uma meta — "faça a suíte de testes passar", "migre este módulo para a nova (Application Programming Interface, o conjunto de comandos que um software expõe para outros usarem)" — e o agente planeja, edita, roda, lê os erros e tenta de novo ao longo de muitos passos. Você revisa o resultado, não cada ação individual. A unidade de trabalho é a tarefa inteira.
Cada camada te dá mais corda: uma unidade de trabalho maior, menos direcionamento contínuo, e um ponto de revisão mais tardio:
TIER UNIT OF WORK YOU REVIEW CONTROL
┌──────────────────────────────────────────────────────────────┐
│ completions a few lines each suggestion ███████ tight
│ ▼ ─────────── ─────────────
│ repo assistant a step/feature the diff/turn ████░░░
│ ▼ ─────────── ─────────────
│ autonomous a whole task the RESULT █░░░░░░ loose
│ agent
└──────────────────────────────────────────────────────────────┘
more rope ▼ ── steer continuously → set loose, check outcome
O salto que importa é o último. Nas duas primeiras camadas você direciona continuamente; com um agente autônomo você o solta e confere o resultado. Essa é uma habilidade diferente, e é o assunto do resto deste capítulo.