Curso 3: Desenvolvimento Agêntico
Claude Code Básico
Do chat ao terminal
Instrutor: Rodrigo Pinto
A Jornada até Aqui
Nível 4 — VOCÊS ESTÃO AQUI
Desenvolvimento Agêntico
"Construo com IA" — Este curso!
Nível 3
Context Engineering
"Projeto com IA"
Nível 2
Wrappers e Automação
"Configuro IA" — Curso 2
Nível 1
Engenharia de Prompt
"Converso com IA" — Curso 1
Curso 1
Chat web
1 prompt → 1 resposta
Curso 2
Wrappers + n8n
1 workflow → automação
Curso 3
Terminal (CLI)
Sistema completo → agentes
A IA deixa de ser uma ferramenta de texto e vira um parceiro de desenvolvimento.
Abertura Interativa
E quem já usou IA dentro do terminal?
Hoje vamos juntar as duas coisas.
Objetivo do Encontro 1
1. O que é Claude Code e por que usar o terminal para desenvolvimento
2. Como criar e estruturar um CLAUDE.md — o DNA do seu projeto
3. Os comandos básicos e como usar Claude Code para construir
Mapa do Encontro
30 min
Ciclo 1
O que é Claude Code
Instalação + Setup
30 min
Ciclo 2
CLAUDE.md
O DNA do Projeto
20 min
Intervalo
Café
30 min
Ciclo 3
Primeiros Comandos
Exercício Prático
20 min
Recap
Recap em Duplas
+ Fechamento
CLI vs Interfaces Gráficas
Claude.ai (Chat)
Ótimo para perguntas e texto
Claude Code (CLI)
Agente de desenvolvimento completo
Acesso total ao projeto — Lê qualquer arquivo, entende a estrutura
Loop de feedback — Edita, roda, vê o erro, corrige. Sozinho.
Contexto real — Não precisa copiar/colar. Ele vê o que você vê.
Ferramentas nativas — Git, npm, pip, testes... tudo integrado.
Copiar/colar código no chat ficou no passado.
| Componente | Descrição |
|---|---|
| Você | Descreve a tarefa em linguagem natural |
| Claude Code | Planeja, lê arquivos, escreve código, executa |
| Ferramentas | Read, Edit, Write, Bash, Grep, Glob... |
| Seu projeto | Arquivos, git, configs — o agente navega tudo |
O fluxo: você pede → agente planeja → lê contexto → executa → verifica → repete até concluir.
Setup
# 1. Instalar via npm (Node.js 18+ necessário)
$ npm install -g @anthropic-ai/claude-code
# 2. Navegar até o projeto
$ cd meu-projeto/
# 3. Iniciar Claude Code
$ claude
Claude Code v1.x.x
? How can I help you?
Pré-requisito: Node.js 18+, conta Anthropic com API key ou plano Max/Pro.
Demo ao Vivo
claude> o que tem nesse projeto?
Vou analisar a estrutura do projeto...
# Claude lê arquivos, analisa package.json,
# README, estrutura de pastas...
Este é um projeto React com TypeScript que...
Percebam: ele não "imaginou" o projeto.
Ele LEU os arquivos. Contexto real, não alucinação.
Chat (Claude.ai)
Você: "Corrija o bug no login"
IA: "Tente trocar a linha 42 por..."
Você: *copia, cola, testa*
Você: "Não funcionou"
IA: "Então tente..."
→ 10 ciclos manuais
Agente (Claude Code)
Você: "Corrija o bug no login"
Agente: *lê o código*
Agente: *encontra o bug*
Agente: *edita o arquivo*
Agente: *roda os testes*
→ 1 comando, pronto
1. Abram o terminal (VS Code ou sistema)
2. Verifiquem: node --version (precisa ser 18+)
3. Instalem: npm install -g @anthropic-ai/claude-code
4. Naveguem até qualquer pasta com código e rodem: claude
5. Perguntem: "O que tem nesse projeto?" — Observem o que ele faz!
O DNA do Projeto
CLAUDE.md é o system prompt do seu projeto. Tudo que o agente precisa saber para trabalhar bem, num único arquivo.
O que colocar
O que NÃO colocar
~/.claude/CLAUDE.md — Global
Suas preferências pessoais. Linguagem, estilo, convenções que você usa em TODOS os projetos.
./CLAUDE.md — Projeto (raiz)
Informações do projeto: stack, comandos, arquitetura, convenções do time.
./pasta/CLAUDE.md — Subpasta
Instruções específicas daquela área. Ex: ./api/CLAUDE.md com regras de endpoints.
Claude Code le todos os níveis e combina. Mais específico prevalece.
Exemplo Real
# Projeto: API de Gestão de Documentos
## Stack
- Python 3.12, FastAPI, SQLAlchemy, PostgreSQL
- Testes: pytest + httpx
## Comandos
- Rodar: uvicorn app.main:app --reload
- Testes: pytest -x --tb=short
- Lint: ruff check .
## Convenções
- Endpoints retornam Pydantic models, nunca dicts
- Toda rota tem docstring com exemplo
- Nomes de variáveis em português (snake_case)
## Arquitetura
- app/routers/ — endpoints por domínio
- app/models/ — SQLAlchemy models
- app/schemas/ — Pydantic schemas
CLAUDE.md ruim
"Este é um projeto legal.
Use boas práticas.
Faça código bonito.
Siga os padrões."
Vago, genérico, inútil
CLAUDE.md bom
"Stack: React 18 + TypeScript 5
Testes: vitest, cobertura min 80%
CSS: Tailwind, nunca CSS inline
Rodar: npm run dev (porta 3000)
Testar: npm test"
Específico, acionável, mensurável
Regra: se um humano novo no time não entenderia, o agente também não vai.
1. Escolham um projeto pessoal (ou criem uma pasta nova)
2. Criem um arquivo CLAUDE.md na raiz
3. Incluam: Stack, Comandos, Convenções, Arquitetura
4. Iniciem Claude Code nessa pasta e perguntem algo sobre o projeto
5. Comparem: resposta COM CLAUDE.md vs SEM. Qual é mais precisa?
Dica: podem pedir ao próprio Claude Code para AJUDAR a criar o CLAUDE.md!
Debrief — Exercício 2
Sem CLAUDE.md
Respostas genéricas, suposições erradas, estilo inconsistente
CLAUDE.md básico
Respostas alinhadas com a stack, comandos corretos
CLAUDE.md completo
Agente segue convenções, testa, e entrega código production-ready
CLAUDE.md é Context Engineering aplicado ao nível de projeto.
☕
20 minutos
Voltamos para colocar a mão no código — primeiros comandos reais.
Como dar tarefas ao agente
Ler
Read — lê arquivosGlob — busca por padrãoGrep — busca em conteúdoEscrever
Write — cria arquivosEdit — edita trechosNotebookEdit — JupyterExecutar
Bash — comandos shellWebFetch — busca webWebSearch — pesquisaVocê não precisa chamar as ferramentas. O agente escolhe sozinho qual usar.
Dicas Práticas
Seja específico: "Crie um endpoint GET /users que retorna lista páginada" — não "faz a API"
Dê contexto: "Olhe o arquivo routes/auth.py como referência de estilo"
Peça verificação: "Depois de implementar, rode os testes e corrija se falhar"
Itere: "Agora refatore para usar async/await" — o contexto persiste na sessão
Claude Code pede permissão antes de agir. Você controla o nível.
Leitura — Sempre permitido
Read, Glob, Grep: o agente sempre pode ler. Sem risco.
Escrita — Pede confirmação
Write, Edit: mostra o diff antes de aplicar. Você aprova ou rejeita.
Execução — Pede confirmação
Bash: mostra o comando antes de rodar. Você decide se executa.
Dica: --dangerously-skip-permissions existe, mas nunca use em produção.
Referência Rápida
# Iniciar conversa
$ claude
# Comando direto (sem modo interativo)
$ claude -p "liste todos os TODOs neste projeto"
# Continuar sessão anterior
$ claude --continue
# Dentro do Claude Code:
claude> /help # ver comandos disponíveis
claude> /clear # limpar contexto
claude> /cost # ver custo da sessão
Escolham UMA das opções:
Opção A: Script Python
"Crie um script que le um CSV, calcula estatísticas básicas, e gera um relatório em Markdown"
Opção B: Página HTML
"Crie uma página HTML responsiva com um formulário de contato bonito, usando apenas HTML e CSS"
Opção C: Seu próprio projeto
"Peça algo útil para o SEU trabalho: script de automação, template, ferramenta interna"
Lembrem: o CLAUDE.md que vocês criaram está lá. O agente vai usá-lo!
Debrief — Exercício 3
O agente leu arquivos existentes antes de criar novos?
Ele seguiu as convenções do CLAUDE.md?
Quando deu erro, ele tentou corrigir sozinho?
Isso é o loop agêntico: planejar → executar → verificar → corrigir → repetir
Você não está mais usando IA. Você está colaborando com um agente.
1. Formem duplas
2. Mostrem ao colega: seu CLAUDE.md é o que construíram no Exercício 3
3. Expliquem: qual a diferença entre usar chat e usar Claude Code?
4. Discutam: como poderiam usar isso no trabalho do dia-a-dia?
1
Qual a diferença entre Claude.ai (chat) e Claude Code (agente)?
2
O que deve conter um bom CLAUDE.md e por que ele importa?
3
De um exemplo de tarefa que é melhor para o agente do que para o chat.
Fechamento
Claude Code é um agente, não um chatbot — ele age, não apenas responde
CLAUDE.md é o system prompt do projeto — quanto melhor, melhor o resultado
O loop agêntico: planejar → ler → executar → verificar → corrigir
Permission modes garantem que você está no controle
Próximo Encontro
Hoje aprenderam a usar a ferramenta. Na próxima, vão aprender a maximizar o contexto que o agente recebe.
CLAUDE.md hierárquico
Contexto por camadas
Skills
Ferramentas reutilizáveis
Memory files
Persistência entre sessões
Tarefa para o Próximo Encontro
1. Usem Claude Code em pelo menos 1 tarefa real do trabalho
2. Refinem o CLAUDE.md do projeto — adicionem mais detalhes
3. Anotem: 1 coisa que o agente fez melhor que você esperava, e 1 que fez pior
Curso 3: Desenvolvimento Agêntico
Rodrigo Pinto
Método Tempo para o que Importa