Communitygithub.com

Gestor de Currículums

Esta habilidad se usa cuando los usuarios necesitan ayuda para crear currículums, actualizar perfiles profesionales, hacer seguimiento de experiencias laborales, gestionar portafolios de proyectos o generar currículums adaptados para solicitudes de empleo. En el primer uso, extrae datos del currículum existente del usuario y mantiene una base de datos estructurada de experiencias, proyectos, educación y habilidades. Genera currículums PDF profesionales de una página, adaptados a roles laborales específicos, seleccionando solo la información más relevante de la base de datos.

¿Qué es Gestor de Currículums?

Esta habilidad convierte a Claude en un sistema integral de gestión de currículums. Su función principal es mantener una base de datos estructurada del perfil profesional del usuario y generar currículums en PDF personalizados y de aspecto profesional para aplicaciones de empleo específicas. Es útil porque automatiza el tedioso proceso de adaptar manualmente un currículum para cada solicitud, seleccionando inteligentemente las experiencias, proyectos y habilidades más relevantes según el rol objetivo. Soporta la extracción inicial de datos desde archivos PDF, DOCX o TXT, así como desde enlaces a LinkedIn. La habilidad funciona en dos fases: una fase de configuración inicial donde se extrae y almacena la información del currículum existente en una base de datos de Python, y una fase de generación donde, dada una descripción de trabajo, filtra los datos almacenados, extrae palabras clave y produce un PDF listo para usar con estilo profesional y optimizado para sistemas ATS. Además, permite actualizar la base de datos agregando nuevas experiencias, proyectos, habilidades y certificaciones mediante scripts de Python, y ofrece funciones de visualización y exportación de datos.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ailabs-393/ai-labs-claude-skills/tree/HEAD/packages/skills/resume-manager

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Gestor de Currículums (Resume Manager)

Descripción general

Esta habilidad transforma a Claude en un sistema integral de gestión de currículums que mantiene una base de datos estructurada de tu perfil profesional y genera currículums PDF adaptados y con estilo profesional para solicitudes de empleo específicas. La habilidad selecciona y resalta inteligentemente las experiencias, proyectos y habilidades más relevantes según el rol objetivo.

Cuándo usar esta habilidad

Invoca esta habilidad para tareas relacionadas con currículums:

  • Crear currículums adaptados para solicitudes de empleo
  • Actualizar experiencias y proyectos profesionales
  • Gestionar habilidades y certificaciones
  • Hacer seguimiento de la progresión profesional
  • Generar currículums específicos para roles
  • Mantener un portafolio profesional completo
  • Optimizar el contenido del currículum para sistemas ATS

Flujo de trabajo

Paso 1: Verificar si existen datos

Antes de cualquier operación con el currículum, verifica si la base de datos está inicializada:

python3 scripts/resume_db.py is_initialized

Si la salida es "false", continúa con el Paso 2 (Configuración inicial). Si es "true", continúa con el Paso 3 (Operaciones con el currículum).

Paso 2: Configuración inicial - Extraer del currículum existente

Cuando no hay datos, pídele al usuario que proporcione su currículum existente.

Pregunta al usuario:

Para ayudarte a crear currículums adaptados, necesito construir una base de datos de tu perfil profesional. Proporciona tu currículum existente de una de las siguientes maneras:

1. Sube tu archivo de currículum (PDF, DOCX o TXT)
2. Pega el contenido de tu currículum
3. Proporciona un enlace a tu currículum en línea/perfil de LinkedIn

Extraeré toda la información y la organizaré en una base de datos estructurada que puedo usar para generar currículums personalizados para diferentes solicitudes de empleo.

Extrayendo datos del currículum:

Una vez que el usuario proporcione su currículum, extrae la siguiente información:

1. Información personal:

  • Nombre completo
  • Dirección de correo electrónico
  • Número de teléfono
  • Ubicación (ciudad, estado/país)
  • URL del perfil de LinkedIn
  • URL del perfil de GitHub
  • Sitio web personal
  • Resumen/objetivo profesional

2. Experiencia laboral: Para cada rol, extrae:

  • Puesto/Título del trabajo
  • Nombre de la empresa
  • Ubicación
  • Fecha de inicio (formato: "Mes AAAA" como "Ene 2022")
  • Fecha de finalización (o "Presente")
  • Breve descripción
  • Logros destacados clave (puntos con viñetas)
  • Tecnologías/herramientas utilizadas

3. Proyectos: Para cada proyecto, extrae:

  • Nombre del proyecto
  • Fecha o período de tiempo
  • Descripción
  • Logros destacados clave
  • Tecnologías utilizadas
  • Enlace (si está disponible)

4. Educación: Para cada título, extrae:

  • Nombre del título (ej., "Licenciatura en Ciencias de la Computación")
  • Nombre de la escuela/universidad
  • Ubicación
  • Fecha de graduación
  • GPA (si se menciona)
  • Honores (si los hay)
  • Cursos relevantes

5. Habilidades: Extrae y categoriza las habilidades:

  • Lenguajes de programación
  • Frameworks y bibliotecas
  • Herramientas y tecnologías
  • Prácticas y metodologías
  • Habilidades blandas

6. Secciones adicionales:

  • Certificaciones (nombre, entidad emisora, fecha)
  • Premios y honores
  • Publicaciones
  • Trabajo voluntario
  • Idiomas hablados

Guardando los datos extraídos:

Después de la extracción, guarda en la base de datos usando Python:

import sys
import json
sys.path.append('[SKILL_DIR]/scripts')
from resume_db import initialize_from_data

resume_data = {
    "personal_info": {
        "name": "Nombre Completo",
        "email": "[email protected]",
        "phone": "+1 (555) 123-4567",
        "location": "Ciudad, Estado",
        "linkedin": "linkedin.com/in/usuario",
        "github": "github.com/usuario",
        "website": "sitio.com",
        "summary": "Resumen profesional..."
    },
    "experiences": [
        {
            "position": "Ingeniero de Software Senior",
            "company": "Nombre de la Empresa",
            "location": "Ciudad, Estado",
            "start_date": "Ene 2022",
            "end_date": "Presente",
            "description": "Breve descripción",
            "highlights": [
                "Logro 1 con resultados cuantificables",
                "Logro 2 con métricas de impacto",
                "Logro 3 con tecnologías utilizadas"
            ],
            "technologies": ["Python", "AWS", "Docker"]
        }
    ],
    "projects": [
        {
            "name": "Nombre del Proyecto",
            "date": "2023",
            "description": "Descripción del proyecto",
            "highlights": [
                "Logro o característica clave",
                "Impacto o resultado"
            ],
            "technologies": ["React", "Node.js", "PostgreSQL"],
            "link": "github.com/usuario/proyecto"
        }
    ],
    "education": [
        {
            "degree": "Licenciatura en Ciencias de la Computación",
            "school": "Nombre de la Universidad",
            "location": "Ciudad, Estado",
            "graduation_date": "Mayo 2019",
            "gpa": "3.8/4.0",
            "honors": "Magna Cum Laude",
            "relevant_coursework": ["Estructuras de Datos", "Algoritmos", "Aprendizaje Automático"]
        }
    ],
    "skills": {
        "Languages": ["Python", "JavaScript", "Java"],
        "Frameworks": ["React", "Django", "Spring"],
        "Tools": ["Docker", "AWS", "Git"],
        "Practices": ["Agile", "CI/CD", "TDD"]
    },
    "certifications": [
        {
            "name": "AWS Certified Solutions Architect",
            "issuer": "Amazon Web Services",
            "date": "2023"
        }
    ],
    "awards": [],
    "publications": [],
    "volunteer": [],
    "languages": ["Inglés (Nativo)", "Español (Fluido)"],
    "interests": []
}

initialize_from_data(resume_data)

Reemplaza [SKILL_DIR] con la ruta real del directorio de la habilidad.

Confirmación:

¡Perfecto! He extraído y guardado tu perfil profesional:

• Información personal: ✓
• Experiencia laboral: X puestos
• Proyectos: X proyectos
• Educación: X títulos
• Habilidades: X categorías
• Certificaciones: X certificaciones

Tu base de datos de currículum ya está lista. Puedo generar currículums personalizados para cualquier trabajo al que estés postulando. Solo dime el título del trabajo o la descripción, y crearé un currículum en PDF de una página adaptado a tus experiencias y habilidades más relevantes.

Paso 3: Generar currículum adaptado para solicitud de empleo

Cuando un usuario solicite un currículum para un rol específico:

Paso 3.1: Entender el rol objetivo

Pregunta al usuario sobre el rol:

Para crear el currículum perfecto para esta posición, necesito entender mejor el rol.

1. ¿Cuál es el título del trabajo?
2. ¿Puedes compartir la descripción del trabajo o los requisitos clave?
3. ¿Cuáles son las habilidades o tecnologías imprescindibles mencionadas?

Paso 3.2: Extraer palabras clave y requisitos

A partir de la descripción del trabajo, identifica:

  • Habilidades técnicas requeridas
  • Tecnologías preferidas
  • Responsabilidades clave
  • Palabras clave importantes para ATS
  • Términos específicos de la industria
  • Indicadores de nivel de experiencia

Paso 3.3: Generar currículum adaptado

Usa el generador de PDF para crear un currículum personalizado:

import sys
sys.path.append('[SKILL_DIR]/scripts')
from pdf_generator import generate_resume

# Palabras clave de la descripción del trabajo
job_keywords = [
    "python", "aws", "kubernetes", "microservicios",
    "agile", "api rest", "postgresql", "docker"
]

job_title = "Ingeniero Backend Senior"

# Ruta de salida
output_path = f"~/Downloads/{job_title.replace(' ', '_')}_Resume.pdf"

# Generar currículum
generate_resume(
    output_path=output_path,
    job_title=job_title,
    job_keywords=job_keywords
)

El generador:

  • Filtra experiencias relevantes para las palabras clave
  • Selecciona proyectos que coinciden con el rol
  • Resalta las habilidades aplicables
  • Lo mantiene en una página
  • Usa un estilo profesional
  • Optimiza para el análisis ATS

Paso 3.4: Revisar e iterar

Después de generar:

  1. Informa al usuario dónde se guardó el PDF
  2. Ofrece hacer ajustes
  3. Sugiere aspectos destacados adicionales si el espacio lo permite
  4. Recomienda personalizaciones para requisitos específicos

Paso 4: Actualizar la base de datos del currículum

Cuando los usuarios quieran agregar o actualizar información:

Agregar nueva experiencia:

from resume_db import add_experience

new_exp = {
    "position": "Ingeniero de Software Líder",
    "company": "Nueva Empresa",
    "location": "Remoto",
    "start_date": "Mar 2024",
    "end_date": "Presente",
    "description": "Liderando el equipo de infraestructura backend",
    "highlights": [
        "Escaló servicios para manejar 50M+ solicitudes diarias",
        "Redujo los costos de infraestructura en un 30% mediante optimización",
        "Construyó un pipeline CI/CD mejorando la velocidad de implementación en 10x"
    ],
    "technologies": ["Go", "Kubernetes", "PostgreSQL", "AWS"]
}

add_experience(new_exp)

Agregar nuevo proyecto:

from resume_db import add_project

new_project = {
    "name": "Panel de Análisis en Tiempo Real",
    "date": "2024",
    "description": "Construyó una plataforma de análisis en tiempo real procesando 1M+ eventos/minuto",
    "highlights": [
        "Implementado usando arquitectura de streaming con Kafka y Redis",
        "Creó visualizaciones interactivas con React y D3.js",
        "Logró latencia de consulta inferior a un segundo en agregaciones complejas"
    ],
    "technologies": ["React", "Kafka", "Redis", "Python", "TimescaleDB"],
    "link": "github.com/usuario/panel-analisis"
}

add_project(new_project)

Actualizar habilidades:

from resume_db import add_skill, update_skills

# Agregar habilidad individual
add_skill("Languages", "Rust")
add_skill("Tools", "Terraform")

# O actualizar todo el diccionario de habilidades
skills = {
    "Languages": ["Python", "Go", "JavaScript", "Rust", "SQL"],
    "Frameworks": ["Django", "FastAPI", "React", "Next.js"],
    "Cloud & DevOps": ["AWS", "Kubernetes", "Docker", "Terraform", "CI/CD"],
    "Databases": ["PostgreSQL", "MongoDB", "Redis", "Elasticsearch"],
    "Practices": ["Microservicios", "TDD", "Agile", "Diseño de Sistemas"]
}

update_skills(skills)

Agregar certificación:

from resume_db import add_certification

cert = {
    "name": "Google Cloud Professional Architect",
    "issuer": "Google Cloud",
    "date": "2024",
    "credential_id": "ABC123",
    "link": "credentials.google.com/..."
}

add_certification(cert)

Paso 5: Ver y gestionar los datos del currículum

Ver resumen:

python3 scripts/resume_db.py summary

Ver secciones específicas:

# Información personal
python3 scripts/resume_db.py get_personal_info

# Todas las experiencias
python3 scripts/resume_db.py get_experiences

# Todos los proyectos
python3 scripts/resume_db.py get_projects

# Educación
python3 scripts/resume_db.py get_education

# Habilidades
python3 scripts/resume_db.py get_skills

Buscar en todos los datos:

python3 scripts/resume_db.py search "aprendizaje automático"

Exportar todos los datos:

python3 scripts/resume_db.py export > resume_backup.json

Paso 6: Consejos de optimización del currículum

Al generar currículums, proporciona estos consejos de optimización:

Optimización de contenido:

  • Usa verbos de acción (Lideró, Construyó, Arquitecturó, Mejoró, Redujo)
  • Incluye métricas cuantificables (X% de mejora, Y usuarios, Z ingresos)
  • Adapta los aspectos destacados para que coincidan con los requisitos del trabajo
  • Mantén los puntos concisos (máximo 1-2 líneas)
  • Enfócate en el impacto, no solo en las responsabilidades

Optimización ATS:

  • Usa encabezados de sección estándar (Experiencia, Educación, Habilidades)
  • Incluye palabras clave de la descripción del trabajo de forma natural
  • Evita tablas, columnas, encabezados o pies de página
  • Usa fuentes estándar (lo que el generador de PDF hace)
  • Escribe los acrónimos una vez: "Interfaz de Programación de Aplicaciones (API)"

Estrategia de una página:

  • Prioriza la experiencia reciente y relevante (últimos 5-7 años)
  • Incluye 3-4 viñetas por rol
  • Limita a un máximo de 2-3 proyectos
  • Condensa experiencia más antigua o menos relevante
  • Elimina tecnologías obsoletas a menos que se requieran específicamente

Mejores prácticas

  1. Mantén los datos actualizados

    • Actualiza las experiencias a medida que se completen los proyectos
    • Agrega nuevas habilidades a medida que las aprendes
    • Mantén logros cuantificables
    • Registra las certificaciones inmediatamente
  2. Escribe viñetas efectivas

    • Comienza con verbos de acción
    • Incluye métricas y resultados
    • Muestra progresión e impacto
    • Usa el método STAR (Situación, Tarea, Acción, Resultado)
  3. Organiza las habilidades estratégicamente

    • Agrupa por categoría para mayor claridad
    • Pon las habilidades más relevantes primero
    • Elimina tecnologías obsoletas
    • Sé honesto sobre los niveles de competencia
  4. Adapta cada currículum

    • Coincide las palabras clave con la descripción del trabajo
    • Enfatiza la experiencia relevante
    • Reordena las viñetas por relevancia
    • Ajusta la sección de habilidades técnicas
  5. Mantén un tono profesional

    • Usa tercera persona implícita (sin "Yo")
    • Mantén el lenguaje conciso y claro
    • Evita jerga a menos que sea estándar de la industria
    • Revisa para detectar errores

Ejemplos de interacciones

Ejemplo 1: Configuración inicial

Usuario: "Ayúdame a crear un currículum para solicitudes de empleo"

Claude: [Verifica base de datos - encuentra que no está inicializada]

Para ayudarte a crear currículums adaptados, necesito construir una base de datos de tu perfil profesional. Proporciona tu currículum existente de una de las siguientes maneras:

1. Sube tu archivo de currículum (PDF, DOCX o TXT)
2. Pega el contenido de tu currículum
3. Proporciona un enlace a tu currículum en línea/perfil de LinkedIn

[Usuario proporciona su currículum]

Claude: [Extrae datos e inicializa la base de datos]

¡Perfecto! He extraído y guardado tu perfil profesional:
• Información personal: ✓
• Experiencia laboral: 3 puestos
• Proyectos: 2 proyectos
• Educación: 1 título
• Habilidades: 4 categorías
• Certificaciones: 2 certificaciones

¡Tu base de datos de currículum está lista! Cuéntame sobre un trabajo al que te estés postulando y generaré un currículum personalizado en PDF de una página.

Ejemplo 2: Generar currículum para un rol específico

Usuario: "Necesito un currículum para un puesto de Ingeniero Backend Senior en una startup fintech"

Claude: [Base de datos inicializada]

¡Genial! Para crear el currículum perfecto para este rol de Ingeniero Backend Senior, ¿puedes compartir la descripción del trabajo o contarme sobre los requisitos clave?

Usuario: [Comparte la descripción del trabajo mencionando Python, AWS, microservicios, PostgreSQL, etc.]

Claude: [Extrae palabras clave: python, aws, microservicios, postgresql, fintech, api]

[Genera PDF usando experiencias y proyectos relevantes]

He creado tu currículum adaptado: ~/Downloads/Ingeniero_Backend_Senior_Resume.pdf

El currículum resalta:
✓ Tus 5 años de experiencia backend con Python y...

Individual skills in this repo

This repo contains 17 individual skills — each has its own dedicated page.

ailabs-393/brand-analyzer

This skill should be used when the user requests brand analysis, brand guidelines creation, brand audits, or establishing brand identity and consistency standards. It provides comprehensive frameworks for analyzing brand elements and creating actionable brand guidelines based on requirements.

ailabs-393/business-analytics-reporter

This skill should be used when analyzing business sales and revenue data from CSV files to identify weak areas, generate statistical insights, and provide strategic improvement recommendations. Use when the user requests a business performance report, asks to analyze sales data, wants to identify areas of weakness, or needs recommendations on business improvement strategies.

ailabs-393/business-document-generator

This skill should be used when the user requests to create professional business documents (proposals, business plans, or budgets) from templates. It provides PDF templates and a Python script for generating filled documents from user data.

ailabs-393/codebase-documenter

This skill should be used when writing documentation for codebases, including README files, architecture documentation, code comments, and API documentation. Use this skill when users request help documenting their code, creating getting-started guides, explaining project structure, or making codebases more accessible to new developers. The skill provides templates, best practices, and structured approaches for creating clear, beginner-friendly documentation.

ailabs-393/csv-data-visualizer

This skill should be used when working with CSV files to create interactive data visualizations, generate statistical plots, analyze data distributions, create dashboards, or perform automatic data profiling. It provides comprehensive tools for exploratory data analysis using Plotly for interactive visualizations.

ailabs-393/data-analyst

This skill should be used when analyzing CSV datasets, handling missing values through intelligent imputation, and creating interactive dashboards to visualize data trends. Use this skill for tasks involving data quality assessment, automated missing value detection and filling, statistical analysis, and generating Plotly Dash dashboards for exploratory data analysis.

ailabs-393/finance-manager

Comprehensive personal finance management system for analyzing transaction data, generating insights, creating visualizations, and providing actionable financial recommendations. Use when users need to analyze spending patterns, track budgets, visualize financial data, extract transactions from PDFs, calculate savings rates, identify spending trends, generate financial reports, or receive personalized budget recommendations. Triggers include requests like "analyze my finances", "track my spending", "create a financial report", "extract transactions from PDF", "visualize my budget", "where is my money going", "financial insights", "spending breakdown", or any finance-related analysis tasks.

ailabs-393/nutritional-specialist

This skill should be used whenever users ask food-related questions, meal suggestions, nutrition advice, recipe recommendations, or dietary planning. On first use, the skill collects comprehensive user preferences (allergies, dietary restrictions, goals, likes/dislikes) and stores them in a persistent database. All subsequent food-related responses are personalized based on these stored preferences.

ailabs-393/personal-assistant

This skill should be used whenever users request personal assistance tasks such as schedule management, task tracking, reminder setting, habit monitoring, productivity advice, time management, or any query requiring personalized responses based on user preferences and context. On first use, collects comprehensive user information including schedule, working habits, preferences, goals, and routines. Maintains an intelligent database that automatically organizes and prioritizes information, keeping relevant data and discarding outdated context.

ailabs-393/pitch-deck

Generate professional PowerPoint pitch decks for startups and businesses. Use this skill when users request help creating investor pitch decks, sales presentations, or business pitch presentations. The skill follows standard 10-slide pitch deck structure and includes best practices for content and design.

ailabs-393/research-paper-writer

Creates formal academic research papers following IEEE/ACM formatting standards with proper structure, citations, and scholarly writing style. Use when the user asks to write a research paper, academic paper, or conference paper on any topic.

ailabs-393/script-writer

This skill should be used whenever users need YouTube video scripts written. On first use, collects comprehensive preferences including script type, tone, target audience, style, video length, hook style, use of humor, personality, and storytelling approach. Generates complete, production-ready YouTube scripts tailored to user's specifications for any topic. Maintains database of preferences and past scripts for consistent style.

ailabs-393/seo-optimizer

This skill should be used when analyzing HTML/CSS websites for SEO optimization, fixing SEO issues, generating SEO reports, or implementing SEO best practices. Use when the user requests SEO audits, optimization, meta tag improvements, schema markup implementation, sitemap generation, or general search engine optimization tasks.

ailabs-393/social-media-generator

This skill should be used when the user requests social media content creation for Twitter, Instagram, LinkedIn, or Facebook. It generates platform-optimized posts and saves them in an organized folder structure with meaningful filenames based on event details.

ailabs-393/startup-validator

Comprehensive startup idea validation and market analysis tool. Use when users need to evaluate a startup idea, assess market fit, analyze competition, validate problem-solution fit, or determine market positioning. Triggers include requests to "validate my startup idea", "analyze market opportunity", "check if there's demand for", "research competition for", "evaluate business idea", or "see if my idea is viable". Provides data-driven analysis using web search, market frameworks, competitive research, and positioning recommendations.

ailabs-393/storyboard-manager

Assist writers with story planning, character development, plot structuring, chapter writing, timeline tracking, and consistency checking. Use this skill when working with creative writing projects organized in folders containing characters, chapters, story planning documents, and summaries. Trigger this skill for tasks like "Help me develop this character," "Write the next chapter," "Check consistency across my story," or "Track the timeline of events."

ailabs-393/travel-planner

This skill should be used whenever users need help planning trips, creating travel itineraries, managing travel budgets, or seeking destination advice. On first use, collects comprehensive travel preferences including budget level, travel style, interests, and dietary restrictions. Generates detailed travel plans with day-by-day itineraries, budget breakdowns, packing checklists, cultural do's and don'ts, and region-specific schedules. Maintains database of preferences and past trips for personalized recommendations.

Skills relacionados