Um Claude Skill que pega uma lista de candidatos prospectados — do Gem, LinkedIn Recruiter ou qualquer exportação CSV — e gera uma linha de assunto personalizada e um parágrafo de abertura de 2-3 frases para cada candidato, fundamentado em sinais públicos reais do LinkedIn e GitHub em vez de variáveis de template genérico. O skill aplica uma verificação de proxies de classe protegida antes de gerar qualquer mensagem, impõe uma proteção contra fabricações que recusa o uso de sinais inferidos, e retorna um fallback genérico limpo para candidatos onde nenhum sinal qualificado existe, em vez de inventar um. O bundle fica em apps/web/public/artifacts/candidate-personalization-at-scale-skill/ e contém SKILL.md, um template de configuração de personalização, um guia de hierarquia de sinais e outputs de exemplo para três níveis de confiança.
Quando usar
Use esse skill quando sua equipe de sourcing está enviando mais de 20-30 mensagens de outreach por recrutador por dia e o primeiro contato é um template que todo candidato consegue reconhecer como template. As taxas de resposta a mensagens genéricas de sourcing em funções técnicas diminuíram de forma mensurável nos últimos 4 anos à medida que os candidatos passaram a receber mais delas. Uma mensagem que referencia um projeto público específico, um trabalho nomeado no LinkedIn, ou uma contribuição recente no GitHub performa de forma diferente de uma que não faz isso, pois sinaliza que o remetente leu algo além do “cargo” e “empresa atual.”
O skill foi desenvolvido para sourcing outbound. Não foi desenvolvido para candidatos inbound (que devem receber respostas referenciando sua candidatura real), nem para funções onde a personalização baseada em dados de perfil público requer aprovação legal prévia.
Pontos de invocação típicos:
- Uma sequência Gem onde o primeiro contato é personalizado por candidato antes da inscrição em massa. O skill é executado antes da inscrição, não dentro do Gem — você gera os rascunhos em lote, revisa e cola as versões aprovadas nas variáveis da sequência.
- Um workflow manual do sourcer onde o sourcer exporta uma lista do LinkedIn Recruiter, processa pelo skill, revisa os rascunhos, edita os de confiança média e envia manualmente ou pelo Gem.
- Um script sobre uma exportação CSV que adiciona uma coluna “personalized_subject” e “personalized_opening” a cada linha antes do sourcer revisar e inscrever.
Quando NÃO usar
Não use esse skill para candidatos inbound. O contexto relevante para um candidato que se inscreveu é o currículo e a carta de apresentação, não o perfil público — enviar uma mensagem referenciando o GitHub deixa de lado que você já tem o mais relevante.
Não use quando o único sinal disponível para um candidato é demográfico — um nome, uma foto, uma universidade que funciona como proxy demográfico. O skill tem uma barreira rígida para isso. Não reduza o limite nem modifique o prompt para contornar isso. Usar filiação universitária ou associação a comunidades como gancho de personalização seletiva é tratamento diferenciado na maioria das jurisdições de contratação, independentemente da intenção.
Não use com mais de 500 candidatos em um único lote não supervisionado. Nesse volume, um erro de fabricação ou um sinal incorreto que seria detectado na revisão chega a centenas de candidatos antes de alguém ver. Inclua no mínimo uma etapa de revisão de amostra.
Não use para funções onde sua equipe de compliance restringe o uso de dados de perfil público em comunicações de contratação (certos contextos de defesa, financeiros ou regulados). Consulte o jurídico antes de implementar.
Configuração
A configuração leva 30-60 minutos para configurar o skill e calibrar a lista de proxies de classe protegida. A conexão com a sequência depende de como você usa o Gem.
- Instale o Skill. Coloque
apps/web/public/artifacts/candidate-personalization-at-scale-skill/SKILL.mde a pastareferences/em.claude/skills/candidate-personalization/ou faça upload como Skill no claude.ai. - Edite a configuração de personalização. Abra
references/1-personalization-config.mde atualize o registro de tom para refletir sua marca empregadora, defina oopening_paragraph_max_charspara se ajustar ao tamanho do campo da sua ferramenta de sequência, e edite o template de fallback para corresponder à sua abertura padrão. - Revise a lista de proxies de classe protegida. A lista padrão em
references/1-personalization-config.mdcobre URL de foto, gênero inferido, sinais de etnia derivados do nome e universidades usadas como proxies demográficos. Peça à sua equipe jurídica ou de RH para revisar e ampliar esta lista antes do primeiro uso. Isso não é opcional. - Ajuste a hierarquia de sinais. Abra
references/2-signal-hierarchy.mde verifique os ajustes por família de funções. Se você prospecta principalmente funções de engenharia, os padrões funcionam. Se você prospecta funções de design ou jurídicas, ajuste quais níveis de sinal têm maior prioridade. - Configure o formato de entrada. O skill espera um objeto candidato com
name,current_title,current_companyelinkedin_urlcomo mínimo. Opcionalmente adicionegithub_handlepara funções técnicas. Mapeie as colunas da exportação CSV para esses campos — a maioria das exportações do LinkedIn Recruiter mapeia diretamente. - Construa a etapa de revisão. Configure seu workflow para que rascunhos de confiança média e baixa exijam edição do recrutador antes da inscrição na sequência. O skill marca estes com
Recruiter action required before send— conecte esse flag a um estado de espera no seu processo.
O que o skill realmente faz
Passo 1 — verificação de proxies de classe protegida. Antes de gerar qualquer mensagem, o skill verifica os campos de entrada de cada candidato contra a lista de proxies de classe protegida em references/1-personalization-config.md. Se os únicos sinais disponíveis estiverem na lista de proxies — URL de foto, gênero inferido, sinais de etnia derivados do nome, universidades usadas como proxies demográficos — o skill retorna o fallback genérico sem tentar personalização. Esta é uma barreira rígida, não um aviso suave.
Por que uma barreira rígida em vez de um aviso: um aviso depende do recrutador tomar a decisão certa sob pressão de meta. Uma barreira rígida remove a decisão do workflow completamente. Se sua organização tem um programa documentado de recrutamento afirmativo que usa intencionalmente filiação universitária (por exemplo, uma parceria com uma HBCU), configure isso explicitamente no arquivo de configuração com a base jurídica documentada.
Passo 2 — extração de sinais. O skill avalia os sinais disponíveis na ordem de prioridade definida em references/2-signal-hierarchy.md: notas do recrutador primeiro, depois repositórios públicos do GitHub, depois bullets de funções do LinkedIn, depois título e resumo. Extrai os 1-2 principais sinais que sejam (a) específicos o suficiente para o candidato se reconhecer — não apenas pelo cargo e empresa — e (b) relevantes para o JD da função alvo. Uma biblioteca Redis com 1.200 estrelas é um sinal. “Engenheiro sênior na Acme” não é, porque qualquer recrutador consegue ver isso.
Se nenhum sinal atender ao limite mínimo de especificidade, o skill retorna imediatamente o fallback genérico em vez de baixar o padrão para incluir sinais não específicos.
Passo 3 — filtro de relevância com o JD. Para cada sinal extraído, o skill avalia se é relevante para o JD da função alvo. Um background em Python é um sinal; para uma função de design lead não é um gancho de personalização relevante. Sinais irrelevantes são descartados mesmo que sejam específicos.
Passo 4 — proteção contra fabricações. Antes de redigir, o skill verifica que cada sinal usado pode ser rastreado a um campo específico nos dados de entrada. Sinais inferidos — “você parece se importar com sistemas distribuídos” derivado de títulos de funções vagos — não são usados. Este é o passo de maior risco na personalização em escala.
Passo 5 — geração do rascunho. O skill escreve uma linha de assunto e um parágrafo de abertura de 2-3 frases. A linha de assunto referencia o sinal específico em vez do título da função. O parágrafo de abertura nomeia o sinal na primeira frase, conecta ao papel na segunda e faz a solicitação na terceira. Sem copy de venda no primeiro contato.
Passo 6 — pontuação de confiança. Cada rascunho é marcado com confiança alta, média ou baixa. Alta: sinal específico, relevante para o JD, ao nível de GitHub ou nota do recrutador. Média: sinal ao nível do LinkedIn, específico mas menos verificável. Baixa: fallback usado, sem sinal qualificado. Outputs de confiança média e baixa requerem revisão do recrutador antes do envio.
Realidade de custos
O custo de tokens por candidato depende do tamanho do perfil e se dados do GitHub são incluídos, mas para uma linha de candidato padrão (nome, cargo, empresa, título do LinkedIn, um ou dois bullets de funções) e um JD, espere aproximadamente 800-1.500 tokens de entrada e 200-400 tokens de saída. Com os preços do Claude Sonnet 4.x (aproximadamente $3 por milhão de tokens de entrada e $15 por milhão de saída, em meados de 2026), cada mensagem personalizada custa aproximadamente $0,005-0,01.
Um sourcer processando 100 candidatos por dia gasta aproximadamente $0,50-$1,00 por dia em tokens do Claude. Uma equipe de 5 sourcers processando 200 candidatos por dia cada gasta aproximadamente $5-10 por dia — cerca de $100-200 por mês. O prompt caching do JD (idêntico para todos os candidatos de um lote) reduz o custo de tokens de entrada em 30-50%.
Métrica de sucesso
A métrica a acompanhar é a taxa de resposta por nível de confiança. Mensagens personalizadas de alta confiança devem produzir uma taxa de resposta visivelmente maior do que as de confiança média e as genéricas do mesmo lote. Se os três níveis de confiança produzirem taxas de resposta semelhantes, ou os sinais não são específicos o suficiente (reexamine o limite mínimo de especificidade) ou a personalização não está sendo recebida como genuína pelos candidatos (a estrutura da mensagem precisa de edição).
Métrica secundária: taxa de detecção de fabricações na revisão do recrutador. Durante o primeiro mês, peça aos sourcers que marquem cada rascunho onde o sinal citado seja impreciso ou não possa ser verificado. Se a taxa de marcação estiver acima de 5%, o limite da proteção contra fabricações em references/1-personalization-config.md precisa ser ajustado.
Comparação com alternativas
vs personalização manual. Um recrutador habilidoso escrevendo mensagens personalizadas manualmente produz um output melhor do que este skill — eles captam nuances, contexto e sinais de tom que o skill não consegue. O skill não é melhor do que um recrutador que tem tempo para escrever manualmente; é melhor do que um recrutador que não tem esse tempo, o que é a maioria dos sourcers enviando 50-100 mensagens de outreach por dia. O uso correto é gerar um rascunho que o recrutador edita em 30 segundos, não substituir completamente o julgamento do recrutador.
vs templates InMail do LinkedIn Recruiter. O InMail integrado do LinkedIn tem variáveis de template (nome, empresa, cargo) mas nenhuma extração de sinal. As taxas de resposta aos templates InMail são menores do que em mensagens que referenciam trabalhos específicos, e a diferença é mais pronunciada para candidatos técnicos sênior que recebem muitos InMails com templates. Este skill não substitui o InMail como canal de entrega — substitui o template genérico por um rascunho que parece escrito por uma pessoa que leu o perfil.
vs colunas AI do Clay para personalização. A abordagem de colunas AI do Clay para personalização de outreach é similar em princípio. A diferença está na profundidade das proteções: este skill tem uma proteção explícita contra fabricações, uma verificação de proxies de classe protegida e um workflow de revisão por nível de confiança. Para equipes que já construíram um workflow de personalização com Clay, este skill é uma alternativa se sua equipe de compliance exigir proteções documentadas.
Pontos de atenção
- Detalhes de personalização fabricados. Um sinal inferido que soa específico mas está errado destrói imediatamente a confiança do candidato. Guard: o skill só usa sinais rastreáveis a campos de entrada explícitos e rotula a fonte do sinal em cada output. Recrutadores revisam a linha
Signal sourceantes de enviar. - Exposição de proxies de classe protegida. Um gancho de personalização que referencia uma HBCU, uma comunidade de mulheres em tecnologia ou um programa codificado por nacionalidade constitui tratamento diferenciado seletivo na maioria das jurisdições de contratação. Guard: a lista de proxies de classe protegida do skill é uma barreira rígida verificada antes de qualquer personalização ser gerada. Revise a lista anualmente com o jurídico ou RH.
- Fallback genérico enviado sem edição. Um rascunho de baixa confiança contém texto placeholder que ocasionalmente é enviado literalmente sob pressão de meta. Guard: outputs de baixa e média confiança são marcados com
Recruiter action required before send. Construa um estado de espera no seu workflow de inscrição em sequências. - Obsolescência de sinais. Um repositório GitHub ativo há 3 anos não é evidência de trabalho atual. Guard: o skill aplica um filtro de atualidade de 24 meses por padrão, configurável em
references/1-personalization-config.md.
Bundle de referência
apps/web/public/artifacts/candidate-personalization-at-scale-skill/SKILL.md— definição completa do skill, entradas, método, formato de output e pontos de atenção.apps/web/public/artifacts/candidate-personalization-at-scale-skill/references/1-personalization-config.md— registro de tom, limite de tamanho de mensagem, template de fallback, limites de proteção contra fabricações, lista de proxies de classe protegida. O arquivo de calibração principal. Revisar com o jurídico antes do primeiro uso.apps/web/public/artifacts/candidate-personalization-at-scale-skill/references/2-signal-hierarchy.md— ordem de prioridade de sinais, especificidade mínima por nível, ajustes por família de funções.apps/web/public/artifacts/candidate-personalization-at-scale-skill/references/3-sample-outputs.md— três exemplos literais: alta confiança (sinal GitHub), confiança média (bullet LinkedIn), baixa confiança (fallback genérico). Para calibração de recrutadores e conexão de inscrição em sequências.