DeepSeek Harness: Quatro Modos de Execução

Última atualização: 2026-08-31

Os quatro modos de execução do DSH são como os diferentes modos de direção de um carro — econômico, esportivo, off-road, pista — mesmo carro, personalidade diferente. Escolha o modo certo e o Agent se comporta exatamente como você espera; escolha o errado e ele ou é conservador demais ou sai do controle.

💡 Dica: O modo Standard é a escolha padrão, adequado para 80% dos cenários. O modo PTC é para tarefas que requerem controle preciso. O modo Minimal é para Q&A puro. O modo Creative é para trabalho exploratório. Na dúvida, use o modo Standard.

📋 Pré-requisitos: Ter completado 04-model-config.md, modelo configurado e disponível

1. O Que Você Vai Aprender

Modos de Despacho de Eventos


2. Visão Geral dos Modos

▶ Exemplo 1:

100%
graph TB
    INPUT[Entrada do Usuário] --> MODE{Selecionar Modo}
    MODE --> STD[Modo Standard<br/>Decisão Autônoma do Agent]
    MODE --> PTC[Modo PTC<br/>Planejar Primeiro, Depois Executar]
    MODE --> MIN[Modo Minimal<br/>Menos Chamadas de Ferramentas]
    MODE --> CRE[Modo Creative<br/>Saída Exploratória]
    
    STD --> ACTION1[Seleção Autônoma de Ferramentas<br/>Decisões Autônomas de Passos]
    PTC --> ACTION2[Exibir Plano Primeiro<br/>Executar Após Confirmação do Usuário]
    MIN --> ACTION3[Preferir Próprio Conhecimento<br/>Chamar Ferramentas Apenas Quando Necessário]
    CRE --> ACTION4[Associação Livre<br/>Encorajar Criatividade e Exploração]

(2) Uma Tabela Comparativa para Entender Todos os Quatro Modos

Dimensão Standard PTC Minimal Creative
Chamadas de Ferramentas Agent decide autonomamente Declaradas no plano Minimizadas Livre para usar
Controle do Usuário Moderado (aprovação) Alto (confirmar plano) Alto (poucas operações) Baixo (expressão livre)
Certeza da Saída Moderada Alta Alta Baixa
Velocidade Moderada Mais lenta (dois passos) Mais rápida Incerta
Casos de Uso Programação geral Tarefas complexas Q&A simples Escrita criativa
Temperature 0.7 0.3 0.2 1.0+
Consumo de Tokens Moderado Maior Menor Maior

3. Modo Standard

(1) Como Funciona

O modo Standard é o modo padrão do DSH. Após receber uma instrução do usuário, o Agent analisa autonomamente quais ferramentas são necessárias e quais operações executar, seguindo seu melhor julgamento:

pt-br Modo Standard


🤖 Agent: 
🔍 Using tool: search
  → Searching for src/utils/format.ts

🔍 Using tool: file_edit (read)
  → Reading src/utils/format.ts

📝 Using tool: file_edit (create)
  → Creating src/utils/date-format.ts

📝 Using tool: file_edit (edit)
  → Updating src/utils/format.ts (removing date functions)

📝 Using tool: file_edit (edit)
  → Updating imports in src/index.ts

✅ Pronto! Função de formatação de data extraída para src/utils/date-format.ts

(2) Lógica de Decisão Autônoma

No modo Standard, a cadeia de decisão do Agent:

100%
graph TD
    INPUT[Instrução do Usuário] --> ANALYZE[Analisar Intenção]
    ANALYZE --> PLAN[Planejamento Interno de Passos]
    PLAN --> DECIDE{Precisa de Ferramentas?}
    DECIDE -->|Sim| EXEC[Chamar Ferramentas]
    DECIDE -->|Não| RESPOND[Responder Diretamente]
    EXEC --> CHECK{Concluído?}
    CHECK -->|Não| PLAN
    CHECK -->|Sim| RESPOND

(3) Quando Usar o Modo Standard


4. Modo PTC (Plan-then-Code)

(1) Como Funciona

O modo PTC divide o comportamento do Agent em dois passos:

pt-br Modo PTC

  1. Fase de Planejamento: O Agent analisa a tarefa e exibe um plano detalhado sem executar nenhuma operação
  2. Fase de Código: Após o usuário confirmar o plano, o Agent o executa passo a passo
TEXT 📖 Somente leitura
👤 Bob: Adicione um sistema de autenticação de usuário ao projeto, suportando JWT

🤖 Agent (Fase de Planejamento):
📋 Plano de Execução:
  1. Instalar dependências: jsonwebtoken, bcryptjs
  2. Criar src/auth/jwt.ts — Assinatura e verificação JWT
  3. Criar src/auth/middleware.ts — Middleware de autenticação
  4. Criar src/routes/auth.ts — Rotas de login/registro
  5. Modificar src/app.ts — Registrar rotas e middleware
  6. Adicionar variável de ambiente JWT_SECRET

Estimativa: 5 arquivos modificados, 3 arquivos criados.
Executar este plano?

👤 Bob: Execute, mas pule o passo 1 — dependências já estão instaladas

🤖 Agent (Fase de Código):
📝 Passo 2: Criando src/auth/jwt.ts...
📝 Passo 3: Criando src/auth/middleware.ts...
📝 Passo 4: Criando src/routes/auth.ts...
📝 Passo 5: Editando src/app.ts...
📝 Passo 6: Adicionando JWT_SECRET ao .env.example...

✅ Sistema de autenticação adicionado!

(2) Formato do Plano PTC

O modo PTC exibe planos contendo:

TYPESCRIPT
interface PTCPlan {
  steps: PlanStep[];
  estimatedFiles: { created: number; modified: number; deleted: number };
  riskLevel: 'low' | 'medium' | 'high';
  reversible: boolean;
}

interface PlanStep {
  id: number;
  description: string;
  tool: string;           // Ferramenta a usar
  files: string[];        // Arquivos envolvidos
  dependsOn: number[];    // Passos pré-requisitos
}

▶ Exemplo 3:

100%
graph TD
    INPUT[Instrução do Usuário] --> PLAN[Agent Exibe Plano]
    PLAN --> REVIEW[Usuário Revê Plano]
    REVIEW -->|Confirmar| EXEC[Agent Executa]
    REVIEW -->|Modificar| MODIFY[Usuário Modifica Plano]
    MODIFY --> EXEC
    REVIEW -->|Rejeitar| CANCEL[Cancelar Execução]
    EXEC --> STEP[Execução Passo a Passo]
    STEP --> DONE{Tudo Completo?}
    DONE -->|Não| STEP
    DONE -->|Sim| RESULT[Exibir Resultados]

(4) Quando Usar o Modo PTC


5. Modo Minimal

(1) Como Funciona

No modo Minimal, o Agent minimiza chamadas de ferramentas, preferindo responder perguntas usando seu próprio conhecimento:

pt-br Modo Minimal

TEXT 📖 Somente leitura

🤖 Agent: 
Promise é uma representação em objeto de operações assíncronas; async/await é açúcar sintático para Promises:

1. Promise usa encadeamento .then():
   fetchData().then(data => process(data)).catch(err => handle(err));

2. async/await usa sintaxe com aparência síncrona:
   const data = await fetchData();
   process(data);

Diferenças principais:
- Promise é um objeto; async/await é sintaxe
- await só pode ser usado dentro de funções async
- Funções async sempre retornam Promises
- Tratamento de erros: .catch() vs try/catch

Nota: O Agent não chamou nenhuma ferramenta — respondeu diretamente a partir do conhecimento.

▶ Exemplo 2:

100%
graph TD
    INPUT[Instrução do Usuário] --> EVAL{Pode responder pelo conhecimento?}
    EVAL -->|Sim| RESPOND[Responder Diretamente]
    EVAL -->|Não| TOOL[Chamar Ferramentas Mínimas Necessárias]
    TOOL --> RESPOND

(3) Comparação Modo Minimal vs. Standard

Cenário Modo Standard Modo Minimal
"O que é um closure?" Pode buscar exemplos de closure no projeto Explica o conceito diretamente
"Escreva uma função de ordenação" Primeiro busca estilo de código do projeto, depois escreve Escreve uma implementação geral diretamente
"Como corrigir este bug?" Lê arquivos, busca código relacionado Dá uma solução geral primeiro; lê arquivos apenas se o usuário pedir

(4) Quando Usar o Modo Minimal


6. Modo Creative

(1) Como Funciona

O modo Creative dá ao Agent a máxima liberdade, encorajando saída exploratória e criativa:

TEXT 📖 Somente leitura
👤 Alice: Desenvolva uma página 404 única para mim

🤖 Agent: 
🎨 Vou desenvolver uma página 404 interativa — usando Canvas para desenhar um campo de asteroides onde os usuários podem mover o mouse para desviar de meteoros!

📝 Using tool: file_edit (create)
  → Creating src/pages/404.html

🎨 Funcionalidades:
- Fundo de campo estelar dinâmico renderizado em Canvas
- Movimento de nave espacial controlado pelo mouse
- Geração aleatória de meteoros e detecção de colisão
- Dificuldade crescente ao longo do tempo
- Após colisão, exibe "You found 404!" e redireciona para a página inicial

🔧 Ideias adicionais:
- Adicionar efeitos sonoros usando Web Audio API
- Suporte a toque mobile
- Placar de líderes (localStorage)

(2) Características do Modo Creative

Característica Descrição
Temperature Alta Saída mais aleatória, mais diversa
Associação Livre Proativamente oferece sugestões e ideias adicionais
Além das Instruções Pensa além do escopo da requisição do usuário
Encoraja Exploração Tenta abordagens não convencionais
Saída Mais Longa Geralmente produz mais conteúdo que outros modos

(3) Cenários Aplicáveis ao Modo Creative

100%
graph LR
    A[Escrita Criativa] --> CRE[Modo Creative]
    B[Design UI/UX] --> CRE
    C[Brainstorming] --> CRE
    D[Exploração de Protótipo] --> CRE
    E[Aprendendo Novos Frameworks] --> CRE

(4) Ressalvas do Modo Creative


7. Troca e Combinação de Modos

(1) Métodos de Troca

Troca na Web UI:

TEXT 📖 Somente leitura
Barra de controle superior → Menu suspenso de Modo → Selecionar modo alvo

Troca no CLI:

BASH
# Especificar na inicialização
npx @deepseek-ai/dsh cli --mode ptc

# Trocar durante a sessão
/mode creative

Modo Padrão na Configuração:

YAML
# dsh.config.yaml
default_mode: ptc

(2) Estratégia de Combinação de Modos

Na prática, diferentes fases podem usar modos diferentes:

TEXT 📖 Somente leitura
Fase de Planejamento do Projeto → Modo PTC (planejar primeiro)
  ↓
Fase de Implementação → Modo Standard (execução autônoma)
  ↓
Resolução de Problemas → Modo Minimal (Q&A rápido)
  ↓
Design de UI → Modo Creative (explorar ideias)

(3) Melhores Combinações Modo-Modelo

Tarefa Modo Recomendado Modelo Recomendado Motivo
Escrita de código Standard deepseek-coder Modelo de código + decisão autônoma
Refatoração complexa PTC deepseek-reasoner Modelo de raciocínio + confirmação de plano
Q&A técnico Minimal deepseek-chat Modelo geral + respostas rápidas
Design criativo Creative gpt-4o Alta criatividade + saída diversa
Depuração de bugs Standard deepseek-coder Compreensão de código + uso de ferramentas

8. Princípios de Implementação dos Modos

(1) Estrutura de Configuração dos Modos

TYPESCRIPT
interface ModeConfig {
  name: string;
  allowTools: boolean;
  requirePlan: boolean;
  temperature: number;
  maxToolCalls: number | null;
  systemPromptExtra: string;
}

const MODES: Record<string, ModeConfig> = {
  standard: {
    name: 'standard',
    allowTools: true,
    requirePlan: false,
    temperature: 0.7,
    maxToolCalls: null,
    systemPromptExtra: 'You have full autonomy to use tools as needed.'
  },
  ptc: {
    name: 'ptc',
    allowTools: true,
    requirePlan: true,
    temperature: 0.3,
    maxToolCalls: null,
    systemPromptExtra: 'Always create a plan first. Do not execute until the user confirms.'
  },
  minimal: {
    name: 'minimal',
    allowTools: true,
    requirePlan: false,
    temperature: 0.2,
    maxToolCalls: 1,
    systemPromptExtra: 'Minimize tool usage. Prefer answering from knowledge.'
  },
  creative: {
    name: 'creative',
    allowTools: true,
    requirePlan: false,
    temperature: 1.0,
    maxToolCalls: null,
    systemPromptExtra: 'Be creative, explore unusual approaches, think beyond the obvious.'
  }
};

(2) Como os Modos Afetam o System Prompt

Cada modo anexa instruções adicionais no final do System Prompt para guiar o comportamento do Agent:

TEXT 📖 Somente leitura
Modo Standard anexa:
"Use tools freely when they help accomplish the task."

Modo PTC anexa:
"Before any action, output a numbered plan. Wait for user confirmation before executing."

Modo Minimal anexa:
"Answer from your knowledge first. Only use tools when absolutely necessary."

Modo Creative anexa:
"Think creatively and explore novel approaches. Offer additional ideas beyond the request."

❓ Perguntas Frequentes

P Qual modo economiza mais tokens?
R O modo Minimal — menos chamadas de ferramentas, saída mais concisa. O modo PTC custa mais tokens (saída de plano + execução em dois passos).
P Posso modificar o plano do modo PTC?
R Sim. Você pode excluir, modificar ou reordenar passos no plano, ou dizer ao Agent "pule o passo 3."
P O modo Creative escreverá código inseguro?
R Possivelmente. O modo Creative encoraja exploração e pode usar abordagens não convencionais. Para tarefas sensíveis à segurança, o modo Creative não é recomendado.
P A tomada de decisão do Agent no modo Standard é previsível?
R Maior parte previsível — a mesma entrada geralmente produz sequência de chamadas de ferramentas similar. No entanto, a saída do LLM tem aleatoriedade inerente e não é totalmente determinística.
P Posso trocar de modo dentro da mesma sessão?
R Sim. A troca de modo entra em vigor imediatamente e não afeta o histórico de conversas existente. Mensagens subsequentes seguirão as regras de comportamento do novo modo.
P O modo Minimal evita completamente o uso de ferramentas?
R Não completamente — ele minimiza o uso de ferramentas. Se uma pergunta realmente exige ler arquivos ou executar comandos, o Agent ainda chamará ferramentas, mas muito menos frequentemente que o modo Standard.

📖 Resumo


📝 Exercícios

1. ⭐ Básico: Faça ao Agent a mesma pergunta em todos os quatro modos: "Escreva uma função de quicksort," e compare as diferenças de saída (contagem de chamadas de ferramentas, comprimento da saída, estilo de código).

2. ⭐⭐ Intermediário: Use o modo PTC para completar uma tarefa de 5+ passos (ex.: "Adicione um sistema de logging ao projeto"). Registre o conteúdo do plano do Agent, modifique manualmente o plano (exclua ou ajuste passos) e observe os resultados da execução.

3. ⭐⭐⭐ Desafio: Desenvolva um "plano de combinação de modos" — selecione o modo mais apropriado para cada fase de um projeto de desenvolvimento Web completo (do design à implantação), e use um fluxograma Mermaid para mostrar o momento e os motivos da troca de modos.

Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%