Claude Code x DeepSeek: qual deles roda teste, build e git na sua máquina?

Claude Code x DeepSeek não é bem uma briga de modelo contra modelo: são camadas diferentes da pilha. O Claude Code é uma ferramenta agêntica que lê o codebase, edita arquivos, roda comandos e opera o git (stage, mensagem de commit, branch e abertura de PR), disponível no terminal, na IDE, no desktop e no navegador. Já a DeepSeek documenta que o modelo não executa a função: ele devolve o pedido de chamada e quem integra executa. Ou seja, teste, build e git precisam de um agente rodando na sua máquina, e a própria DeepSeek documenta como plugar os modelos dela dentro do Claude Code
Fala aí, beleza? Tem uma diferença enorme entre receber um bloco de código lindo no chat e ver o comando rodando no SEU terminal, com exit code e tudo
Os dois nomes aparecem juntos em toda comparação de "melhor IA pra programar", só que eles não ocupam o mesmo andar da pilha
Um é ferramenta agêntica que mexe no seu repositório
O outro é modelo, e modelo (por definição na doc oficial deles) não executa nada sozinho
Então bora separar quem SUGERE de quem EXECUTA, que é onde a conversa fica útil de verdade
Claude Code x DeepSeek: a tabela do que cada lado faz
A tabela abaixo compara o Claude Code como ferramenta agêntica e a DeepSeek pela API, do jeito que cada documentação oficial descreve
| Tarefa | Claude Code | DeepSeek pela API |
|---|---|---|
| Rodar os testes | Roda: escrever teste, executar e corrigir falha é exemplo documentado nos fluxos comuns | O modelo devolve um pedido de chamada de função, a execução é de quem integra |
| Rodar o build | Roda, porque roda comandos no projeto (comando Bash pede aprovação) | Não executa: devolve o pedido, você (ou seu código) roda |
| Operar o git | Opera direto: prepara as mudanças, escreve a mensagem de commit, cria branch e abre pull request | Fora do escopo do modelo, o fluxo de git depende de quem integra |
| Abrir PR | Usa a CLI gh do GitHub, a doc recomenda instalar o gh |
Não abre |
| Editar arquivo no disco | Edita arquivos do projeto | Sem execução própria, não toca no disco |
| Ler o codebase | Lê o código do projeto | Só o que for enviado no contexto pela integração |
| Executar comando de shell | Sim, com aprovação do usuário nos comandos Bash | Não |
| Conta / plano | Exige Pro, Max, Team, Enterprise ou Console (o plano gratuito do Claude.ai não dá acesso) | Uso via API |
| Onde vive | Terminal, IDE, app de desktop e navegador | Onde a sua integração colocar |
Domine o Claude Code do básico ao avançado
Você vai aprender a criar sistemas completos com Claude Code, sem precisar ser programador. Inscreva-se para ter acesso a um desconto de lançamento e bônus especiais!
Do lado da DeepSeek ainda vale registrar o contexto de 1 milhão de tokens como padrão em todos os serviços oficiais deles, com os modelos deepseek-v4-pro e deepseek-v4-flash aceitando raciocínio em low, high e max
A linha que decide tudo, porém, é a do shell
A documentação de function calling da DeepSeek é bem explícita: o modelo NÃO executa a função, ele devolve um pedido de chamada, quem chama a API executa e devolve o resultado, e só então o modelo responde em linguagem natural
O tipo de ferramenta no schema oficial de Chat Completions deles é function, que permite pedir trabalho externo sem executar
Do outro lado, a descrição oficial do repositório do Claude Code fala em executar tarefas rotineiras e cuidar de fluxos de git por comandos em linguagem natural
É literalmente a fronteira do post em duas frases de documentação, né? 🙂
As tarefas que caem de cada lado da fronteira
O que cai no lado de quem executa:
- escrever os testes de um módulo, rodar os testes e corrigir as falhas (esse é o exemplo que a doc de fluxos comuns usa)
- preparar as mudanças e escrever a mensagem de commit
- criar branch
- abrir o pull request pela CLI
gh - retomar depois a sessão vinculada àquele PR
Quando o PR é criado com gh pr create, a sessão fica vinculada a ele e dá pra recuperar depois pelo número:
claude --from-pr 1234
Esse ciclo de testar de verdade é justamente onde a fronteira aparece, e eu já escrevi por aqui sobre fazer o Claude Code rodar os testes em vez de aceitar um "tudo certo" de boca
O que cai no lado de quem só sugere:
- explicar um trecho de código
- propor a implementação
- revisar em texto
- gerar o comando pra você colar no terminal
E tem uma regra prática pra não errar: se a tarefa termina com um ARQUIVO mudado no disco ou com um exit code, ela precisa de quem executa
Se ela termina com uma explicação na tela, o chat resolve
Simples assim
O que aparece quando o agente roda de verdade
No vídeo abaixo eu testei o Pi Coding Agent, que é outro agente de terminal (não é o Claude Code), justamente pelo lado do tooling de execução: leitura, escrita e execução de comandos bash, não só a geração de texto com código
Pedi pro agente criar um projeto Next do zero na pasta atual, usar PNPM, configurar Tailwind e TypeScript strict com App Router, instalar a biblioteca de gráficos e, no fim, subir o servidor de desenvolvimento e confirmar a porta
Ele executou a sequência inteira sozinho: instalou as dependências, montou os arquivos mínimos e subiu o servidor, e eu abri o projeto pronto no editor logo em seguida
E aí vem o detalhe que só existe quando alguém RODA o comando: o servidor subiu na porta 3005, porque as anteriores estavam ocupadas na minha máquina
Se liga nisso, porque é o tipo de coisa que nenhuma sugestão em texto te entrega
O texto diz "rode e acesse na porta 3000"
A execução real diz que a 3000 tava ocupada e o negócio subiu em outro lugar
Outra coisa que curti foi ver todo o passo a passo explícito no terminal, com o trace visível, em vez de só o output final que a ferramenta julga importante
Teve fricção também, claro: a primeira tentativa de instalação pelo comando padrão falhou no terminal dentro do VS Code, e eu resolvi instalando de forma global pelo npm (lembrando que é preciso ter o Node instalado)
Antes de gerar código eu configurei a autenticação com o provider e só depois escolhi o modelo, porque o Pi sobe cru e precisa dessa configuração inicial (fluxo diferente do Claude Code, que vai pela conta do seu plano)
Depois criei um arquivo de instruções do projeto na raiz e usei um comando de recarga pro agente contemplar o arquivo novo sem fechar e reabrir a sessão
E antes de liberar geração de código eu pedi uma confirmação em uma frase, só pra validar se ele tinha entendido o contexto mesmo
Na etapa seguinte pedi uma server action que busca commits públicos de um usuário e retorna um array tipado, e ele entregou os arquivos já com uma validação da funcionalidade por conta própria
Testar antes de entregar virou padrão nos agentes atuais, e mesmo assim eu quis rodar um teste mais manual pra conferir com os próprios olhos
Que é mais ou menos o mesmo cuidado de escrever teste que realmente valida alguma coisa, em vez de teste que só concorda com o código existente
No vídeo você vê a instalação, a conexão com o provider, o agente montando a base do projeto e os comandos rodando no terminal com transparência total
Como o Claude Code controla o que pode rodar
"Mas deixar uma IA rodar comando na minha máquina não é doideira?"
É aqui que entra a camada de permissão, que é o que torna a execução aceitável no dia a dia
Comandos Bash pedem aprovação do usuário
Ferramentas somente leitura (ler arquivo, buscar texto) não pedem, e existe um conjunto embutido de comandos Bash reconhecidos como somente leitura que roda sem prompt em todos os modos
Dá pra liberar padrões específicos com a flag --allowedTools:
claude --allowedTools "Bash(git log:*)" "Bash(git diff:*)"
Os modos de permissão:
default(exibido como Manual na CLI)acceptEditsplanbypassPermissions
No modo plan o Claude pesquisa e propõe as mudanças sem aplicar: ele lê arquivos, roda comandos de shell pra explorar e escreve um plano, mas não edita o código-fonte
É o modo de "me mostra o que você pretende fazer antes de fazer"
Tome cuidado com o bypassPermissions: ele desliga os prompts e as checagens de segurança, e a própria documentação orienta usar apenas em ambientes isolados, tipo containers, VMs ou dev containers
Acima de tudo isso ainda existem os hooks
Hooks PreToolUse rodam ANTES do prompt de permissão e podem permitir, negar ou forçar a pergunta na chamada de ferramenta
E a hierarquia é o detalhe que importa: um hook que devolve deny bloqueia mesmo em bypassPermissions, e um hook que devolve allow não fura as regras de deny das configurações
Tem ainda o sandbox, que é outra camada: uma restrição de nível de sistema operacional sobre o que os comandos Bash podem acessar em arquivos e rede
Detalhe importante: o sandbox vale somente pra comandos Bash e seus processos filhos
Usar os modelos DeepSeek dentro do Claude Code
Agora o plot twist que parece quebrar a oposição toda (mas não quebra a fronteira)
A própria DeepSeek documenta o uso agêntico dos modelos dela como integração com ferramentas de terceiros, listando Claude Code, Codex, GitHub Copilot, GitHub Copilot CLI, Oh My Pi e Deep Code
Ou seja: não é "um ou outro", dá pra usar o motor DeepSeek dentro do agente que executa
A configuração documentada é por variáveis de ambiente:
export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic
export ANTHROPIC_AUTH_TOKEN=sua-chave-deepseek
export ANTHROPIC_MODEL=deepseek-v4-pro
Tá no Windows? No PowerShell a sintaxe é $env: no lugar do export:
$env:ANTHROPIC_BASE_URL = "https://api.deepseek.com/anthropic"
$env:ANTHROPIC_AUTH_TOKEN = "sua-chave-deepseek"
$env:ANTHROPIC_MODEL = "deepseek-v4-pro"
Nessa integração os nomes de modelo da Anthropic são mapeados automaticamente: Opus vira deepseek-v4-pro, e Haiku e Sonnet viram deepseek-v4-flash
O GitHub Copilot CLI segue a mesma lógica por BYOK, apontando pro endpoint compatível com a Anthropic em https://api.deepseek.com/anthropic
E repara que a fronteira continua exatamente onde estava: o modelo DeepSeek continua só devolvendo o pedido de chamada, quem roda bash, mexe no disco e opera o git é o AGENTE
Trocar o motor não muda quem tem as mãos no teclado da sua máquina
Veredito: qual escolher para rodar teste, build e git
Sem eleger vencedor absoluto, porque a resposta muda por perfil
Se a sua tarefa termina no repositório, você quer o Claude Code
É ele que roda os testes, executa os comandos, edita os arquivos e opera o git de ponta a ponta
A instalação por npm é assim:
npm install -g @anthropic-ai/claude-code
Precisa de Node.js 18 ou superior, e NÃO deve ser feita com sudo
Depois disso, a verificação pós-instalação é o claude doctor
O limite dessa escolha: exige conta Pro, Max, Team, Enterprise ou Console, o plano gratuito do Claude.ai não dá acesso
Se você quer o motor DeepSeek, plugue ele no agente pelas variáveis de ambiente ali de cima
O limite aqui: você depende da integração e do endpoint compatível, e o comportamento de execução continua sendo do agente, não do modelo
Se você só quer ideia de código, explicação de trecho ou revisão em texto, o chat resolve e você não precisa instalar nada
O limite: nada disso encosta no seu disco, então build quebrado continua quebrado até você rodar
Conclusão
Sugerir código e executar comando são camadas diferentes, e a escolha depende de onde a SUA tarefa termina
Terminou em explicação? Chat
Terminou em arquivo mudado, teste rodado ou commit criado? Agente
O próximo passo concreto é bem curto: instala, roda claude doctor pra conferir, começa no modo plan pra ver o que o agente pretende fazer antes de liberar execução, e vai soltando comandos de leitura pelo --allowedTools conforme a confiança cresce
Começar apertado e afrouxar depois é bem melhor que o contrário, acredite 😀
Até o próximo post!
Perguntas frequentes
Claude Code roda comando no terminal sem pedir permissão?
Depende do comando. Bash exige aprovação do usuário, enquanto ferramentas somente leitura, como ler arquivo ou buscar texto, não pedem confirmação. Existe também um conjunto embutido de comandos Bash reconhecidos como somente leitura que roda sem prompt em todos os modos, e a flag –allowedTools libera padrões específicos, como Bash(git log:*), sem precisar confirmar toda hora.
DeepSeek consegue rodar teste e build sozinho, igual ao Claude Code?
Não. A documentação oficial de function calling da DeepSeek é clara: o modelo não executa a função, ele devolve um pedido de chamada, e quem chama a API é que executa e devolve o resultado. O tipo de ferramenta do schema de Chat Completions deles é function, feito justamente pra pedir trabalho externo sem executar.
Dá pra usar os modelos da DeepSeek dentro do Claude Code?
Dá, a própria DeepSeek documenta essa integração por variáveis de ambiente: ANTHROPIC_BASE_URL igual a https://api.deepseek.com/anthropic, ANTHROPIC_AUTH_TOKEN com a chave DeepSeek e ANTHROPIC_MODEL com deepseek-v4-pro. No Windows PowerShell a sintaxe usada é $env: no lugar de export. E a fronteira não muda com isso: o modelo DeepSeek continua devolvendo o pedido de chamada, quem executa bash, edita arquivo e opera o git é o Claude Code.
Qual o tamanho de contexto dos modelos DeepSeek atuais?
O contexto de 1 milhão de tokens é o padrão em todos os serviços oficiais da DeepSeek. Os modelos atuais são deepseek-v4-pro e deepseek-v4-flash, com raciocínio em três níveis: low, high e max.
Claude Code funciona no plano gratuito do Claude.ai?
Não. O Claude Code exige conta Pro, Max, Team, Enterprise ou Console, e o plano gratuito do Claude.ai não dá acesso à ferramenta.
Como o Claude Code abre pull request sozinho?
Ele usa a CLI gh do GitHub pra isso, e a documentação recomenda instalar o gh antes de contar com esse fluxo. Quando o PR é criado com gh pr create, a sessão fica vinculada a ele e dá pra retomar depois com claude –from-pr seguido do número do PR.
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 27min
Blog | Mais populares
As diferenças de var, let e const
Como fazer redirecionamento com PHP
Neste artigo você vai aprender a como fazer redirecionamento com PHP, utilizaremos abordagens fáceis de entender e de aplicar Fala programador(a), beleza? Bora aprender mais […]
Checklist de segurança n8n VPS pública: guia essencial para proteger sua instalação
Checklist de segurança n8n VPS pública: guia essencial para proteger sua instalação A popularidade da automação de processos com o n8n está em alta, principalmente […]
