# Fluxos de trabalho com planejamento primeiro (/pt/docs/verdent-for-vscode/configuration/plan-workflows)

> Usando planejamento assistido por IA para tarefas complexas



Os fluxos de trabalho com planejamento primeiro aproveitam o **Plan Mode**, um modo de execução somente leitura em que o Verdent analisa código, conduz pesquisas e cria planos detalhados antes de executar qualquer mudança. Esse fluxo de trabalho separa o planejamento estratégico da implementação, permitindo revisão e refinamento antes de se comprometer com modificações no código.

### Quando usar o Plan Mode [#quando-usar-o-plan-mode]

* Mudanças complexas em vários arquivos que exigem coordenação
* Incerteza sobre a melhor abordagem de implementação
* Mudanças de alto risco em código crítico para produção
* Tarefas em bases de código desconhecidas onde a exploração é necessária
* Necessidades de planejamento estratégico que exigem aprovação antes da execução

***

## Divisão de tarefas assistida por IA [#divisão-de-tarefas-assistida-por-ia]

O Verdent decompõe automaticamente solicitações complexas em etapas sequenciais e gerenciáveis por meio da divisão de tarefas assistida por IA.

### Processo de divisão [#processo-de-divisão]

<Steps>
  <Step title="Análise da solicitação">
    O Verdent analisa sua solicitação em linguagem natural para identificar:

    * Objetivo principal e resultado desejado
    * Arquivos, componentes ou sistemas afetados
    * Operações técnicas e dependências necessárias
    * Possíveis fatores de complexidade
  </Step>

  <Step title="Contexto da base de código">
    O Verdent examina a estrutura do seu projeto para entender:

    * Arquitetura existente e padrões estabelecidos
    * Organização de arquivos e stack de tecnologia
    * Implementações atuais que exigem modificação
  </Step>

  <Step title="Decomposição de tarefas">
    O Verdent divide a solicitação em subtarefas lógicas:

    * Identifica pontos de quebra naturais e fases de implementação
    * Ordena as tarefas por dependência (tarefas pré-requisito primeiro)
    * Agrupa operações relacionadas
    * Estima o escopo e a complexidade de cada subtarefa
  </Step>

  <Step title="Esclarecimento interativo">
    O Verdent pode fazer perguntas para refinar a divisão:

    * "Devo modificar a validação existente ou criar um novo validador?"
    * "Você quer atualizar os testes de todos os componentes afetados?"
    * "Essa mudança deve se aplicar tanto aos componentes web quanto aos mobile?"
  </Step>
</Steps>

### Características da divisão [#características-da-divisão]

<Tabs>
  <Tab title="Granularidade">
    * Tarefas dimensionadas para 15 a 45 minutos de trabalho focado
    * Pontos de quebra naturais para testes e validação
    * Complexas o suficiente para serem significativas, simples o suficiente para serem executadas
  </Tab>

  <Tab title="Sequenciamento">
    * Dependências respeitadas (configuração antes da implementação)
    * Progressão lógica (camada de dados → lógica de negócios → UI)
    * Etapas de verificação após fases importantes
  </Tab>

  <Tab title="Personalização">
    O formato da divisão do plano pode ser personalizado via `plan_rules.md` para controlar:

    * Nível de detalhe (alto nível vs. granular)
    * Estrutura e seções do plano
    * Informações incluídas (estimativas de tempo, riscos, dependências)
  </Tab>
</Tabs>

***

## Revisão e aprovação do plano [#revisão-e-aprovação-do-plano]

Após enviar uma solicitação no Plan Mode, o Verdent gera um plano estruturado exibido na Chat View para sua revisão.

### Processo de revisão [#processo-de-revisão]

<Steps>
  <Step title="Receber o plano estruturado">
    O Verdent gera um plano com seções claras, etapas numeradas, arquivos afetados e dependências identificadas
  </Step>

  <Step title="Analisar a qualidade do plano">
    Revise quanto a:

    * **Correção:** A abordagem resolve o problema?
    * **Completude:** Todas as etapas necessárias estão incluídas?
    * **Eficiência:** Esta é a melhor abordagem?
    * **Risco:** O que pode dar errado? Casos extremos ou preocupações de segurança?
  </Step>

  <Step title="Fazer perguntas de esclarecimento">
    Solicite informações adicionais se algo não estiver claro:

    ```
    Can you explain step 3 in more detail?
    Why are we modifying both the service and controller?
    What happens if the API call fails in step 5?
    ```
  </Step>

  <Step title="Solicitar modificações">
    Forneça feedback para revisar o plano:

    ```
    Let's use JWT tokens instead of OAuth2
    Can we break step 4 into smaller substeps?
    Add error handling considerations to the plan
    ```
  </Step>

  <Step title="Escolher sua próxima ação">
    Depois que o Verdent gerar o plano, duas opções são apresentadas:

    * **Edit**: Solicite modificações, faça perguntas de esclarecimento ou refine o plano ainda mais
    * **Start Building**: Mude para o Agent Mode e comece a executar o plano aprovado
  </Step>
</Steps>

### Opções de interação com o plano [#opções-de-interação-com-o-plano]

Após revisar o plano gerado, o Verdent apresenta duas opções:

**Edit:**

Escolha essa opção para:

* Solicitar mudanças específicas na abordagem do plano
* Fazer perguntas de esclarecimento sobre detalhes de implementação
* Adicionar elementos ou considerações ausentes
* Simplificar ou expandir determinadas etapas
* Explorar abordagens alternativas

Isso mantém você no Plan Mode para refinamento iterativo sem executar nenhuma mudança.

**Start Building:**

Escolha essa opção para:

* Mudar para o Agent Mode e iniciar a execução
* Implementar o plano aprovado com total autonomia
* Fazer modificações em arquivos e executar comandos conforme planejado

Você também pode optar por:

* **Implementação manual**: Revisar o plano e implementar as mudanças você mesmo
* **Execução incremental**: Pedir ao Verdent para implementar fases específicas com checkpoints de revisão entre os estágios

<Tip>
  Use **Edit** para iterar no plano quantas vezes forem necessárias. Escolha **Start Building** somente quando estiver confiante de que a abordagem está correta e completa.
</Tip>

***

## Planejamento iterativo [#planejamento-iterativo]

Os usuários podem modificar e iterar livremente os planos escolhendo **Edit** e fornecendo feedback conversacional. O Verdent trata a geração de planos como um processo interativo e iterativo.

### Métodos de modificação [#métodos-de-modificação]

**Solicitar mudanças específicas:**

```
Change step 3 to use Redux instead of Context API
Add input validation before the database insert
Swap the order of steps 4 and 5
```

**Adicionar elementos ausentes:**

```
Add error handling for network failures
Include rollback procedures
Add performance optimization considerations
```

**Simplificar ou expandir:**

```
This is too complex - can we simplify the approach?
Break down step 5 into more detailed substeps
Give me more detail on the database schema changes
```

**Explorar alternativas:**

```
What if we used webhooks instead?
Show me an alternative plan using microservices architecture
Can we accomplish this without changing the database schema?
```

### Exemplo de fluxo de iteração [#exemplo-de-fluxo-de-iteração]

```
User: "Add user authentication to the API"

[Verdent generates initial plan with JWT tokens]

User: "Actually, let's use OAuth2 instead of JWT"

[Verdent revises plan to use OAuth2]

User: "Add step for migrating existing users"

[Verdent adds migration step to plan]

User: "Can you break down the migration step more?"

[Verdent expands migration with detailed substeps]

User: Chooses **Start Building**

[Verdent switches to Agent Mode and begins execution]
```

**Iterações ilimitadas:**

* Sem limite para o número de revisões
* Cada iteração mantém o contexto da conversa
* Versões anteriores preservadas no histórico do chat
* Possibilidade de referenciar versões anteriores do plano: "volte para a primeira abordagem"

<Note>
  A rejeição de um plano é uma parte natural do processo de planejamento iterativo. Ela garante que apenas estratégias aprovadas e bem compreendidas sejam executadas, reduzindo o esforço desperdiçado com implementações incorretas.
</Note>

***

## Perguntas frequentes (FAQs) [#perguntas-frequentes-faqs]

<Accordion title="O Plan Mode realmente escreve algum código nos meus arquivos?">
  **Não.** O Plan Mode é estritamente somente leitura:

  * O Verdent pode ler arquivos, pesquisar código e analisar sua base de código
  * **Nenhuma gravação, edição ou exclusão de arquivos** ocorre durante o Plan Mode
  * Os planos são exibidos apenas na Chat View
  * A execução de código começa somente depois que você aprova explicitamente e muda para o Agent Mode

  **Garantia de segurança:** O Plan Mode não consegue modificar seu código acidentalmente. Ele foi projetado para exploração segura e desenvolvimento de estratégias.
</Accordion>

<Accordion title="Posso executar um plano de forma incremental em vez de tudo de uma vez?">
  **Sim.** A execução incremental é totalmente suportada:

  **Padrão de aprovação incremental:**

  ```
  Let's start with Phase 1 first, then we'll review before continuing
  Implement steps 1-3, then stop for review
  Do the database migration first, I'll review before the API changes
  ```

  **Como funciona:**

  1. O Verdent executa as etapas especificadas
  2. Para em um checkpoint de revisão
  3. Você revisa os resultados e fornece feedback
  4. Continua com a próxima fase ou ajusta a abordagem
  5. Repete até concluir

  **Melhor para:** Mudanças de alto risco, padrões desconhecidos, código crítico para produção onde a implantação em fases reduz o risco.

  <Tip>
    A execução incremental permite que você aprove partes de um plano enquanto adia outras, útil quando as prioridades mudam no meio da tarefa.
  </Tip>
</Accordion>

<Accordion title="O que acontece se eu rejeitar um plano?">
  **A rejeição de um plano é completamente normal e esperada:**

  * O Verdent gera um novo plano com base no seu feedback
  * As versões anteriores do plano permanecem no histórico do chat para referência
  * Nenhuma mudança de código ocorre (o Plan Mode é somente leitura)
  * Você pode iterar quantas vezes quiser até ficar satisfeito

  **Motivos comuns de rejeição:**

  * A abordagem é complexa demais ou simples demais
  * Casos extremos ou tratamento de erros ausentes
  * Existe uma arquitetura alternativa melhor
  * Requisitos mal compreendidos

  **Dica profissional:** A rejeição faz parte do processo. É melhor refinar os planos iterativamente do que desperdiçar esforço executando estratégias incorretas.
</Accordion>

<Accordion title="Como alterno entre o Plan Mode e o Agent Mode?">
  **A alternância é instantânea pela Input Box:**

  **Para entrar no Plan Mode:**

  * Clique no botão **Switch Mode** na Input Box
  * Selecione **Plan Mode** no menu suspenso
  * OU diga: "Mude para o Plan Mode"

  **Para sair do Plan Mode:**

  * Clique no botão **Switch Mode** na Input Box
  * Selecione **Agent Mode** no menu suspenso
  * OU escolha **Start Building** após revisar um plano

  **Persistência do modo:**

  * A escolha do modo persiste dentro da sessão atual
  * Novas sessões começam no Agent Mode padrão
  * Você pode alternar entre os modos livremente a qualquer momento

  **Fluxo de trabalho típico:** Plan Mode → revisar → Agent Mode → executar → voltar ao Plan Mode para o próximo recurso complexo.
</Accordion>

<Accordion title="Posso personalizar o formato e o nível de detalhe dos planos gerados?">
  **Sim, usando o `plan_rules.md`:**

  **Local:** `~/.verdent/plan_rules.md` (diretório de configuração global)

  **O que você pode personalizar:**

  * **Nível de detalhe:** Visão geral de alto nível vs. passo a passo granular
  * **Estrutura do plano:** Seções a incluir (resumo, riscos, dependências, testes)
  * **Informações incluídas:** Estimativas de tempo, caminhos de arquivos, etapas de verificação
  * **Preferências de formato:** Listas numeradas, fases, categorização

  **Exemplo de plan\_rules.md:**

  ```markdown
  # Plan Rules

  ## Plan Structure
  - Start with a brief summary (2-3 sentences)
  - Include estimated time for each major step
  - List prerequisites before implementation steps
  - Identify potential risks and mitigation strategies

  ## Level of Detail
  - Break tasks into subtasks of 15-30 minutes
  - Include specific file paths for modifications
  - List functions or components to create/modify
  - Provide verification steps for each phase
  ```

  **As mudanças se aplicam imediatamente** às novas sessões do Plan Mode.
</Accordion>

<Accordion title="O Plan Mode usa o mesmo contexto que o Agent Mode?">
  **Não, o Plan Mode tem gerenciamento de contexto separado:**

  * **Contexto do Plan Mode:** Otimizado para análise e pensamento estratégico
  * **Contexto do Agent Mode:** Otimizado para execução e implementação
  * **Benefício:** Os planos não poluem o contexto de execução com pesquisas exploratórias

  **Por que a separação importa:**

  * O Plan Mode pode explorar várias abordagens sem sobrecarregar o Agent Mode
  * Tentativas de planos rejeitados não consomem o contexto do Agent Mode
  * Um começo limpo ao mudar para a execução

  **Redefinição de contexto:** Alternar entre os modos fornece um contexto novo para o novo tipo de tarefa.
</Accordion>

<Accordion title="E se o Verdent fizer perguntas de esclarecimento durante o planejamento?">
  **As perguntas de esclarecimento fazem parte do processo de divisão:**

  **Por que as perguntas são feitas:**

  * Requisitos ambíguos precisam de esclarecimento
  * Existem várias abordagens válidas (escolha uma)
  * Casos extremos ou restrições ainda não especificados
  * Preferências não claras na solicitação inicial

  **Como responder:**

  * Responda diretamente em linguagem conversacional
  * Forneça exemplos se for útil
  * Diga "sua escolha" se você confiar no julgamento do Verdent
  * Faça contraperguntas se estiver em dúvida

  **Exemplo de troca:**

  ```
  Verdent: "Should I modify the existing validation or create a new validator?"
  You: "Create a new validator - we'll deprecate the old one later"
  Verdent: [Updates plan with new validator approach]
  ```

  **Dica profissional:** As perguntas ajudam o Verdent a gerar planos precisos e relevantes, adaptados às suas necessidades específicas.
</Accordion>

***

## Veja também [#veja-também]

<CardGroup cols="2">
  <Card title="Modos de execução" icon="sliders" href="/docs/verdent-for-vscode/execution-modes/overview">
    Saiba mais sobre o Plan Mode e outros modos de execução
  </Card>

  <Card title="Boas práticas: prompts" icon="message" href="/docs/verdent-for-vscode/best-practices/prompts">
    Escreva prompts eficazes para o Plan Mode
  </Card>
</CardGroup>
