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.
📋 Pré-requisitos: Ter completado 04-model-config.md, modelo configurado e disponível
1. O Que Você Vai Aprender
- Filosofia de design e diferenças comportamentais dos quatro modos de execução
- Mecanismo de decisão autônoma do modo Standard
- Fluxo Plan-then-Code do modo PTC
- Estratégia de chamadas mínimas de ferramentas do modo Minimal
- Características de saída exploratória do modo Creative
- Cenários aplicáveis e métodos de troca para cada modo
2. Visão Geral dos Modos
▶ Exemplo 1:
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:

🤖 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:
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
- Tarefas de programação diárias (escrever código, corrigir bugs, refatorar)
- Tarefas onde você não tem certeza de quantos passos são necessários
- Quando quer que o Agent gerencie os detalhes autonomamente
- Maior parte do trabalho de rotina
4. Modo PTC (Plan-then-Code)
(1) Como Funciona
O modo PTC divide o comportamento do Agent em dois passos:

- Fase de Planejamento: O Agent analisa a tarefa e exibe um plano detalhado sem executar nenhuma operação
- Fase de Código: Após o usuário confirmar o plano, o Agent o executa passo a passo
👤 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:
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:
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
- Tarefas complexas (5+ passos)
- Modificar código crítico (banco de dados, autenticação, pagamentos)
- Inseguro se o Agent entendeu corretamente; quer ver o plano primeiro
- Refatoração de código, mudanças de arquitetura
- Necessidade de registros de operação auditáveis
5. Modo Minimal
(1) Como Funciona
No modo Minimal, o Agent minimiza chamadas de ferramentas, preferindo responder perguntas usando seu próprio conhecimento:

🤖 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:
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
- Q&A de conhecimento (sem necessidade de operações de arquivo)
- Conselhos rápidos ou soluções
- Não quer que o Agent "exagere"
- Economizar consumo de tokens
6. Modo Creative
(1) Como Funciona
O modo Creative dá ao Agent a máxima liberdade, encorajando saída exploratória e criativa:
👤 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
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
- A saída é incontrolável — pode desviar do requisito original
- Não adequado para tarefas de modificação precisa de código
- Não adequado para cenários que requerem resultados determinísticos
- O consumo de tokens é tipicamente maior
7. Troca e Combinação de Modos
(1) Métodos de Troca
Troca na Web UI:
Barra de controle superior → Menu suspenso de Modo → Selecionar modo alvo
Troca no CLI:
# Especificar na inicialização
npx @deepseek-ai/dsh cli --mode ptc
# Trocar durante a sessão
/mode creative
Modo Padrão na Configuração:
# dsh.config.yaml
default_mode: ptc
(2) Estratégia de Combinação de Modos
Na prática, diferentes fases podem usar modos diferentes:
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
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:
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
📖 Resumo
- Quatro modos: Standard (decisão autônoma), PTC (planejar depois executar), Minimal (menos ferramentas), Creative (saída exploratória)
- O modo Standard é a escolha padrão, adequado para 80% dos cenários
- O modo PTC fornece controle preciso através do fluxo Planejar → Confirmar → Executar
- O modo Minimal prefere respostas baseadas em conhecimento, economizando tokens
- O modo Creative oferece alta liberdade, adequado para criatividade e exploração
- Projetos reais podem combinar diferentes modos em diferentes fases
- Modos influenciam o comportamento do Agent através de Temperature, System Prompt e estratégia de ferramentas
📝 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.