Entrar ou criar conta

Laboratório: Triagem Justa de Currículos com Claude Agent SDK e Avaliação Automatizada

Você vai implementar um agente Claude em Python para triagem auditável de currículos, com critérios claros, avaliação automática e registro de decisões. Em cerca de 2 horas, terá um pipeline funcional que processa currículos fictícios, aplica critérios e gera relatório para revisão humana.

Recrutamento e carreira em RH com Claude Agent SDK + OpenAI Agents SDK
Ligado ao treinamento Recrutamento e carreira em RH com Claude Agent SDK + OpenAI Agents SDK

Roteiro para estudo em ambiente de laboratório ou de teste. Execute apenas em equipamentos, redes e contas que você tenha autorização para usar, com backup e homologação próprios. Comandos podem causar indisponibilidade ou perda de dados. Software e marcas citados pertencem aos seus titulares. Termos de Uso.

Status de validaçãoNão validado pela Upnetix: roteiro derivado da documentação oficial, para você executar e validar
Duração estimada
120 min
Passos
11
Validações
4
Versões da documentação consultada
Python 3.9 ou superior · Claude Agent SDK Python a versão estável atual · pip a versão estável atual
Objetivo

O objetivo é demonstrar, de ponta a ponta, como um agente Claude pode automatizar a triagem inicial de currículos em processos seletivos, garantindo critérios auditáveis, avaliação automática e registro de decisões. O laboratório cobre desde o prompt de sistema versionado, definição dos critérios de triagem, integração com arquivos de entrada, execução do agente, geração de relatórios e validação automatizada dos resultados. O foco é a justiça de processo, não a decisão final: toda recomendação é registrada para revisão humana.

Topologia

Uma máquina local (192.168.56.10) executa o agente Claude via SDK Python, processando currículos em arquivos. O agente recebe os critérios e os currículos, aplica as regras e gera um relatório de triagem. Não há conexão externa obrigatória além da API da Anthropic.


+---------------------+
| Máquina Local       |
| (192.168.56.10)     |
|  - Claude Agent SDK |
|  - Currículos .txt  |
|  - Relatório .json  |
+---------------------+
         |
         | HTTPS (API Anthropic)
         v
+----------------------+
| Claude API           |
| (api.anthropic.com)  |
+----------------------+

Equipamentos e software

ItemRequisito, licença ou versão
PC ou VM2 vCPU, 4 GB RAM, acesso à internet, Python 3.9+
PythonPSF · 3.9 ou superior
Claude Agent SDK PythonApache 2.0 · a versão estável atual
pipMIT · a versão estável atual

Roteiro

  1. Preparar ambiente Python isolado

    Isolar dependências evita conflitos e facilita a limpeza depois. Use venv.

    python3 -m venv venv
    source venv/bin/activate

    O que você deve ver: Prompt do terminal muda para indicar ambiente virtual ativo.

  2. Instalar Claude Agent SDK

    O SDK oficial conecta seu código à API e implementa o laço de agente.

    pip install claude-agent-sdk-python

    O que você deve ver: Mensagem de sucesso do pip, pacote instalado.

  3. Obter chave de API Anthropic

    A chave é obrigatória para autenticar o agente. Guarde em variável de ambiente.

    export ANTHROPIC_API_KEY='SUA_CHAVE_AQUI'

    O que você deve ver: Nenhuma saída (variável definida).

  4. Criar diretório do projeto e arquivos de dados

    Organize os arquivos: currículos fictícios, critérios e saída.

    mkdir triagem_rh
    cd triagem_rh
    echo 'João Silva
    Formação: Engenharia
    Experiência: 3 anos
    Certificação: EXEMPLO
    ' > cv1.txt
    echo 'Maria Souza
    Formação: Administração
    Experiência: 5 anos
    ' > cv2.txt

    O que você deve ver: Dois arquivos cv1.txt e cv2.txt criados com dados de exemplo.

  5. Definir critérios auditáveis de triagem

    Critérios claros garantem justiça e transparência. Use um arquivo YAML.

    echo 'criterios:
      - nome: Formação em Engenharia
        regra: O currículo deve citar formação em Engenharia
      - nome: Experiência mínima
        regra: O currículo deve citar pelo menos 3 anos de experiência
    ' > criterios.yaml

    O que você deve ver: Arquivo criterios.yaml criado com critérios de exemplo.

  6. Criar prompt de sistema versionado para o agente

    O prompt define o comportamento do agente e deve ser versionado.

    echo 'Você é um agente de RH. Para cada currículo recebido, avalie se atende aos critérios abaixo. Para cada critério, responda "Atende" ou "Não atende" e justifique com base no texto do currículo. Nunca invente informações. Registre tudo em JSON. Critérios: [Formação em Engenharia, Experiência mínima de 3 anos].' > prompt_v1.txt

    O que você deve ver: Arquivo prompt_v1.txt criado com instruções claras.

  7. Implementar script Python para rodar o agente

    O script lê currículos e critérios, monta a entrada e chama o Claude Agent SDK.

    cat > triagem.py <<'EOF'
    import os
    from claude_agent_sdk import ClaudeAgent, ClaudeAgentConfig
    import yaml
    import json
    
    def carregar_criterios(path):
        with open(path) as f:
            return yaml.safe_load(f)['criterios']
    
    def carregar_cv(path):
        with open(path) as f:
            return f.read()
    
    def main():
        criterios = carregar_criterios('criterios.yaml')
        cvs = ['cv1.txt', 'cv2.txt']
        resultados = []
        with open('prompt_v1.txt') as f:
            prompt = f.read()
        agent = ClaudeAgent(ClaudeAgentConfig(api_key=os.environ['ANTHROPIC_API_KEY'], system_prompt=prompt))
        for cv in cvs:
            entrada = f'Currículo:\n{carregar_cv(cv)}\nCritérios:\n{json.dumps(criterios, ensure_ascii=False)}'
            resposta = agent.run(entrada)
            resultados.append({'cv': cv, 'resposta': resposta})
        with open('relatorio.json', 'w') as f:
            json.dump(resultados, f, ensure_ascii=False, indent=2)
    if __name__ == '__main__':
        main()
    EOF

    O que você deve ver: Arquivo triagem.py criado com código funcional.

  8. Executar o agente de triagem

    Rode o script e aguarde o processamento dos currículos.

    python triagem.py

    O que você deve ver: Arquivo relatorio.json gerado com os resultados da triagem.

  9. Inspecionar relatório de triagem

    Confira se as respostas do agente estão estruturadas e justificadas.

    cat relatorio.json

    O que você deve ver: JSON com cada currículo, critérios avaliados e justificativas.

  10. Implementar avaliação automatizada dos resultados

    Garanta que o agente seguiu os critérios: crie um script de teste.

    cat > teste_avaliacao.py <<'EOF'
    import json
    with open('relatorio.json') as f:
        dados = json.load(f)
    for item in dados:
        print(f'CV: {item["cv"]}')
        if 'Formação em Engenharia' in item['resposta']:
            print('Critério Formação presente')
        else:
            print('FALHA: critério Formação ausente')
    EOF

    O que você deve ver: Arquivo teste_avaliacao.py criado para checagem básica.

  11. Rodar avaliação automatizada

    Execute o script e veja se os critérios foram aplicados corretamente.

    python teste_avaliacao.py

    O que você deve ver: Saída indicando se cada critério foi avaliado para cada currículo.

Como saber que funcionou

TesteComandoCritério
Verificar se o arquivo relatorio.json existe e está bem formadocat relatorio.jsonJSON com entradas para cada currículo, incluindo critérios e justificativas
Checar se todos os critérios foram avaliadosgrep 'Formação' relatorio.jsonCada currículo avaliado cita todos os critérios definidos
Avaliação automatizada dos resultadospython teste_avaliacao.pySaída indica que todos os critérios foram processados
Prompt versionadols prompt_v1.txtArquivo de prompt existe e é referenciado no script

Troubleshooting

SintomaCausa provávelCorreção
Erro de autenticação na APIChave ANTHROPIC_API_KEY ausente ou incorretaDefinir variável de ambiente corretamente
Arquivo relatorio.json não geradoErro no script ou resposta inesperada do agenteRevisar logs e garantir que os arquivos de entrada existem
Critérios não aparecem no relatórioPrompt do agente não lista os critérios corretamenteRevisar prompt_v1.txt e o formato dos critérios
Saída do agente não é JSON válidoResposta do modelo não estruturadaAjustar prompt para exigir resposta em JSON

Segurança e hardening

  • Nunca inclua dados pessoais reais nos arquivos de teste
  • Guarde a chave de API apenas em variáveis de ambiente, nunca em arquivos de código
  • Restrinja permissões dos arquivos de dados e relatórios
  • Desative e remova a chave de API após o laboratório

Checklist final

Referências

  1. Claude Agent SDK Python · Code.claude (code.claude.com)
  2. Anthropic API Reference · Platform.claude (platform.claude.com)
  3. Python venv · Python Software Foundation (docs.python.org)
  4. LGPD (Lei 13.709/2018) · Presidência da República (Planalto) (planalto.gov.br)
Verificação editorial
Publicado
13/09/2026
Última revisão
13/09/2026
Versão do conteúdo
1.0
Referências
4 oficiais · 1 de normas ou órgãos
Revisão técnica
redação e revisão por IA, URLs conferidas na publicação
Status
Atual
Encontrou um erro? Escreva para comercial@upnetix.com.br com o endereço da página. A revisão semestral por IA nunca altera comandos ou configurações sem passar pela fila de revisão.