From research-app-toolkit
Analyzes CV/resume files (PDF/DOCX) via text extraction (Read tool, PyPDF2, textutil), categorizes education, skills, projects, experience; evaluates research fit; stores structured profile in .local.md.
How this skill is triggered — by the user, by Claude, or both
Slash command
/research-app-toolkit:cv-analyzeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
To locate the CV file, check in this order:
To locate the CV file, check in this order:
${CLAUDE_PLUGIN_ROOT}/.local.md and check cv_file_path in frontmatter*CV*, *cv*, *resume*, *Resume* (use Glob)After locating the CV file, extract content using the appropriate method based on file type:
For PDF files, use a three-level fallback:
python3 -c "import PyPDF2; reader = PyPDF2.PdfReader(open('FILE_PATH','rb')); print('\n'.join([p.extract_text() or '' for p in reader.pages]))"
If PyPDF2 is not installed, skip to next fallback.textutil -convert txt -stdout "FILE_PATH"
For DOCX files:
textutil -convert txt -stdout "FILE_PATH"After extracting the CV content: 2. Extract and categorize:
Write the structured profile to ${CLAUDE_PLUGIN_ROOT}/.local.md:
cv_profile_analyzed: true in frontmattercv_file_path in frontmatter if not already set## CV Profile markdown section with all extracted informationAfter writing, present a summary to the user highlighting:
npx claudepluginhub xujingchen1996/research-app-toolkitPolishes CVs for research applications by analyzing and improving structure, wording, emphasis, formatting, and tailoring content to specific positions or schools.
Builds ATS-optimized resumes for developers and product managers from PDFs/DOCX, LinkedIn PDFs, GitHub profiles, or guided interview.
Optimizes CV and resume content for ATS parser safety and recruiter readability. Handles formatting, keyword strategy, bullet rewrites, section ordering, and job-tailoring.