Codex: Melhores Práticas de Prompt do Codex
Última atualização: 2026-08-31
Prompts são sua ponte para o Codex. Bons Prompts fazem o Codex acertar de primeira; ruins exigem correções repetidas.
📋 Pré-requisitos: Entendimento das operações básicas do Codex
1. O Que Você Vai Aprender
- Princípios core de Prompts eficazes
- Métodos de descrição estruturada
- Técnicas de fornecimento de contexto
- Templates de Prompt comuns
2. Princípios Core
(1) O Princípio CLEAR
| Princípio | Descrição | Exemplo |
|---|---|---|
| Context | Fornecer contexto | "Follow the style of auth.py" |
| Limit | Definir escopo | "Only modify src/api/ directory" |
| Example | Dar exemplos | "Output format following types.ts" |
| Assert | Incluir verificação | "Ensure npm test passes" |
| Reason | Explicar porquê | "Because Unicode support is needed" |
(2) Comparação Bom vs Ruim
# Prompt Ruim
"Help me write a function"
# Prompt Bom
"In src/utils/date.ts, create a formatDate function,
input: Date object and locale string,
output: localized date string,
follow the style of formatNumber in the same file,
include null handling and unit tests."
3. Descrição Estruturada
(1) Estrutura Padrão
[Objetivo]: O que realizar
[Escopo]: Quais arquivos/diretórios modificar
[Referência]: Qual código existente referenciar
[Restrições]: Quais regras seguir
[Verificação]: Como verificar conclusão
▶ Exemplo 1: Prompt Estruturado de Alice
[Objetivo] Adicionar funcionalidade de redefinição de senha do usuário
[Escopo] src/auth/reset.ts, src/api/reset.ts
[Referência] Estilo de código de src/auth/login.ts
[Restrições] Usar bcrypt hashing, token expira em 1 hora
[Verificação] npm test -- --grep "reset" todos passam
(2) Instruções Passo a Passo
Para tarefas complexas, descreva em passos:
Passo 1: Create PasswordReset model with token, expires_at, user_id fields
Avise-me quando terminar, confirmarei antes de continuar para o passo 2.
Passo 2: Implement POST /api/auth/reset-request endpoint
Passo 3: Implement POST /api/auth/reset-confirm endpoint
Passo 4: Write integration tests for all endpoints
4. Técnicas de Fornecimento de Contexto
(1) Referências Precisas
# Bom: referenciar arquivos específicos
> Follow the User type definition in src/models/user.ts, add Profile type
# Ruim: descrição vaga
> Follow existing models, add new ones
(2) Anexar Informações Suplementares
# Anexar imagens no App
> Implement this page following the UI layout in the screenshot
# Referenciar logs de erro
> Output from cat error.log:
> TypeError: Cannot read property 'id' of undefined
> Fix this error
(3) Descrição do Ambiente
> Project uses Next.js 14 + App Router + TypeScript
> Database uses Prisma ORM + PostgreSQL
> Test framework is Vitest
> Add CRUD functionality for the new page
5. Instruções de Verificação
(1) Verificação de Testes
# Exigir execução de testes
> Ensure npm test passes
> Run pytest, fix all failing cases
> Test coverage no less than 80%
(2) Verificação de Tipos
> Ensure tsc --noEmit has no errors
> Add complete TypeScript type annotations
(3) Verificação de Lint
> Ensure eslint has no errors
> Fix all lint warnings
▶ Exemplo 2: Verificação Completa de Bob
Add pagination to the orders API:
1. Modify GET /api/orders endpoint
2. Support page and pageSize query parameters
3. Return pagination metadata
4. Ensure tsc --noEmit has no errors
5. Ensure eslint has no errors
6. npm test all pass
7. New tests covering pagination logic
6. Templates de Prompt Comuns
(1) Corrigir Bug
Fix <Bug-description> in <file>.
Error message: <paste-error-log>
Expected behavior: <correct-behavior>
Ensure <verify-command> passes.
(2) Adicionar Funcionalidade
Add <feature> to <module>.
Follow the code style of <existing-file>.
Include input validation and error handling.
Write unit tests, ensure <verify-command> passes.
(3) Refatorar Código
Refactor <old-impl> to <new-impl>.
Maintain the external interface.
Ensure all existing tests pass.
Add new tests covering the new implementation.
(4) Revisão de Código
Review <file/PR>, focusing on:
1. Security vulnerabilities (SQL injection, XSS, etc.)
2. Performance issues (N+1 queries, memory leaks, etc.)
3. Code style consistency
4. Error handling completeness
5. Test coverage
(5) Geração de Documentação
Generate documentation for <module/API>:
- API interface docs (Markdown format)
- Usage examples (including curl commands)
- Parameter description table
- Error code list
7. Técnicas Avançadas
(1) Definição de Papel
You are a senior security engineer specializing in Web security.
Review the following code for security vulnerabilities, categorized by OWASP Top 10.
(2) Controle de Formato de Saída
Output in the following format:
1. One issue per line
2. Format: [Severity] file:line - Issue description
3. Severity: 🔴Critical 🟡Medium 🟢Low
4. Finally, provide a fix priority ranking
(3) Condições de Restrição
Only use dependencies already in the project, do not install new packages.
Do not modify .env files.
Do not delete existing tests.
All new functions must have TypeScript type annotations.
❓ Perguntas Frequentes
P: Prompts devem ser em inglês ou outra língua? R: O Codex suporta múltiplas línguas, mas inglês geralmente funciona melhor. Tarefas complexas devem usar inglês; tarefas simples podem usar sua língua preferida.
P: Prompts longos afetam os resultados? R: Não. Descrições detalhadas funcionam melhor que breves. Apenas tome cuidado para não exceder a janela de contexto.
P: Posso dar múltiplas tarefas de uma vez? R: Sim, mas ordene por prioridade ou especifique claramente execução passo a passo. Muitas tarefas de uma vez podem fazer o Codex perder algumas.
P: Como faço o Codex seguir estilos de código específicos? R: Defina regras de estilo no AGENTS.md, ou referencie arquivos de estilo no Prompt. Você também pode referenciar configs de ESLint/Prettier.
P: Posso referenciar URLs nos Prompts? R: O Codex não pode acessar URLs diretamente, mas você pode copiar conteúdo-chave das URLs para seu Prompt.
📖 Resumo
- Princípio CLEAR: Context / Limit / Example / Assert / Reason
- Descrição estruturada: Objetivo + Escopo + Referência + Restrições + Verificação
- Fornecimento de contexto: referências precisas de arquivos + anexar screenshots/logs
- Instruções de verificação: testes + verificação de tipos + lint
- Prompts baseados em templates aumentam a eficiência
📝 Exercícios
- Básico (⭐): Escreva 3 Prompts para diferentes cenários usando o princípio CLEAR.
- Intermediário (⭐⭐): Crie sua própria biblioteca de Templates de Prompt cobrindo 5 cenários comuns.
- Avançado (⭐⭐⭐): Compare a mesma tarefa usando um "Prompt bom" vs "Prompt ruim", escreva um relatório de análise sobre as diferenças de execução.