ArtificialGuyBR

Home / Blog / Fixing things

Optimizador de CV + ATS + LinkedIn: skill de agente sin invención

Skill de Claude Code que crea y audita CV para el ATS, la lectura de 7 segundos del reclutador y la búsqueda de LinkedIn — con comprobaciones en Python y nin…

2 sources cited Fixing things

Optimizador de CV + ATS + LinkedIn: skill de agente sin invención

TL;DR

  • Una sola skill de agente crea, reescribe, adapta y audita el CV y el perfil de LinkedIn a la vez, contra tres objetivos: lectura del ATS, lectura de 7 segundos del reclutador y búsqueda de reclutador en LinkedIn.
  • La regla dura es cero invención: ninguna empresa, cargo, fecha, titulación ni cifra inventada. Cada versión del CV es una selección de un Master Profile con cosas que realmente hiciste.
  • Cuatro herramientas en Python se ocupan de la parte mecánica: render (.docx/.pdf seguro para ATS), validate (invariantes de veracidad), coverage (estimación etiquetada de cobertura de palabras clave) y deslop (marcas de texto de IA).
  • Es Markdown puro más un script pequeño, así que funciona en Claude Code y en cualquier agente que pueda leer el SKILL.md.

Qué es y para quién

Resume + ATS + LinkedIn Optimizer es una Agent Skill para Claude Code y para cualquier agente que cargue un SKILL.md. El repositorio entrega una skill, no una app: clonas una carpeta en el directorio de skills de tu agente y él la usa cuando la conversación trata de CV, ATS o LinkedIn.

Está escrita para quien ya envió decenas de candidaturas y dejó de recibir respuesta, y para quien ayuda a esa persona. El README declara el objetivo sin rodeos: convertir la experiencia real de la persona en el CV y el perfil de LinkedIn más fuertes posibles, sin inventar nada.

Por qué importa la regla de "cero invención"

La mayoría de los prompts de CV optimizan para sonar impresionante, y así es como un CV acaba alegando una métrica que nadie puede defender en una comprobación de referencias. Esta skill hace lo contrario: excava las métricas que ya tienes y etiqueta las estimaciones honestas como estimaciones. El README enumera lo que eso aporta:

  • Cero invención — nunca crea empresa, cargo, fecha, titulación ni cifra.
  • Tres objetivos a la vez — legibilidad por el ATS, lectura humana y ranking en la búsqueda de reclutador de LinkedIn, sin cambiar uno por otro.
  • Afirmaciones con fuente — career services de Harvard/MIT, la fórmula XYZ de Google, el eye-tracking de Ladders, reclutadores ex-Amazon/Google y el comportamiento documentado de parsing de los ATS reales.
  • Master Profile como fuente de verdad — adaptar a la oferta deja de ser improvisación y pasa a ser selección, lo que mantiene las versiones coherentes.

Qué puede hacer

El README conecta pedidos simples con resultados:

Quieres…Pídele al agente
Crear el CV desde notas sueltas"Crea mi CV a partir de esta experiencia."
Mejorar un CV existente"Mejora mi CV."
Adaptar a una oferta"Adapta mi CV a esta descripción del puesto: …"
Comprobar si el ATS lo lee bien"Audita mi CV para ATS."
Convertir tareas en bullets"Convierte estas tareas en bullets cuantificados."
Ajustar LinkedIn"Optimiza mi headline / About / skills de LinkedIn."
Escribir carta de presentación"Escribe una carta para esta oferta."
Decidir si vale aplicar"¿Debería aplicar a esta oferta?"

El flujo de trabajo

El agente sigue una secuencia con puertas y ejecuta solo las fases que la tarea necesita:

Intake → Master Profile → Metric Excavation → Content Engineering
       → ATS Formatting → Keyword Tailoring → Render → Evaluate → (LinkedIn)

El Master Profile (assets/master-profile-template.md) es tu registro privado y exhaustivo. Toda versión de CV y de LinkedIn es una selección de él: eso es lo que hace que adaptar sea rápido y veraz a la vez.

Cómo usarla

Clona el repositorio en el directorio de skills:

git clone https://github.com/artificialguybr/resume-ats-linkedin-optimizer.git \
  ~/.claude/skills/resume-ats-linkedin-optimizer

El README muestra la ruta de usuario; .claude/skills/ dentro de un proyecto da la instalación por proyecto. Para otro agente (Cursor, Cline, harness propio), la skill es Markdown puro: incluye SKILL.md y las carpetas references/, assets/ y scripts/ en el contexto, o pega el SKILL.md como instrucción de sistema.

El paso opcional de render necesita una dependencia por formato:

pip install -r scripts/requirements.txt   # python-docx (.docx) + reportlab (.pdf)

Las otras tres herramientas son biblioteca estándar:

python scripts/resume_tools.py render   --resume resume.json --out resume.pdf
python scripts/resume_tools.py render   --resume resume.json --out resume.docx
python scripts/resume_tools.py validate --resume resume.json --source master-profile.json
python scripts/resume_tools.py coverage --resume resume.json --jd job.txt
python scripts/resume_tools.py deslop   --resume resume.json

render infiere el formato por la extensión. validate comprueba invariantes de veracidad (ninguna empresa o fecha inventada, identidad intacta, nada descartado sin querer). coverage produce una estimación etiquetada de cobertura de palabras clave frente a la descripción del puesto — explícitamente no un "score de ATS" inventado. deslop marca jerga, verbos inflados, relleno y tics de guion largo. La forma de entrada está en assets/example-resume.json; el esquema completo, en assets/resume.schema.json.

Qué hay dentro de la skill

Ocho archivos de referencia llevan el criterio: cómo hace parsing cada ATS y qué formatos sobreviven (01-ats-and-formatting.md), bullets XYZ/CAR y cuantificación (02-content-and-bullets.md), análisis de la oferta y jerarquía de palabras clave (03-keywords-and-tailoring.md), algoritmo de LinkedIn y límites de cada campo (04-linkedin.md), el Master Profile (05-master-profile.md), la rúbrica de evaluación (06-scoring-and-evaluation.md), los mitos desmontados (07-myths-and-truth.md) y las cartas de presentación (08-cover-letters.md).

Mitos que se niega a repetir

El README señala cuatro habituales: "el ATS rechaza automáticamente el 75% de los CV" (de un proveedor extinto de 2012, con cerca del 92% de los reclutadores diciendo que su ATS no rechaza solo), palabras clave escondidas en blanco (las capas de IA modernas lo detectan), "el ATS no lee PDF" (desactualizado desde unos 2019 — el problema es un layout en dos columnas o imagen, no el contenedor PDF) y repetir la palabra clave doce veces (la saturación posiciona peor).

Cuándo usarla, cuándo no

Úsala cuando quieras un CV que el ATS lea limpio y que un humano entienda en siete segundos, o cuando necesites adaptar un CV a una oferta sin inventar nada. Úsala con la IA, no en lugar de tu criterio: la skill aporta las reglas y las comprobaciones; qué es verdad sobre tu carrera lo decides tú.

Evítala cuando quieras un CV de portafolio diseñado, donde el layout lleva el significado: aquí el documento es de una columna y pensado para el parser, y un PDF muy diseñado pelea con eso. También si no quieres mantener un Master Profile: adaptar sin fuente de verdad es donde entra el adorno.

Sources

  1. Resume + ATS + LinkedIn Optimizer — repositorio — estructura de la skill, fases del flujo, herramientas incluidas, archivos de referencia y la sección de mitos citada arriba.
  2. README.md — comandos de instalación, subcomandos de scripts/resume_tools.py, master-profile-template.md, licencia MIT.

Página del proyecto: Optimizador de CV + ATS + LinkedIn

La skill es MIT y acepta issues y PRs, sobre todo acerca del comportamiento más reciente de los ATS y de cambios de campos de LinkedIn.

FAQ

¿La skill inventa métricas para que el CV parezca más fuerte? No. El README hace de la cero invención la regla central: excava las métricas reales que ya existen y advierte las estimaciones honestas, en vez de inventar empresa, fecha o cifra.

¿Genera el archivo del CV? Sí. render convierte el JSON estructurado en .docx o .pdf de una columna, seguro para ATS, e infiere el formato por la extensión de salida.

¿El coverage da un score real de ATS? No. El README lo llama estimación etiquetada de cobertura de palabras clave frente a la descripción del puesto — explícitamente no un score de ATS.

¿Funciona fuera de Claude Code? Sí. La skill es Markdown puro; Cursor, Cline y agentes propios pueden cargar SKILL.md y las carpetas de referencia, o usarla como instrucción de sistema.