Install
openclaw skills install resume-editorBuild, edit, and format professional resumes with PDF import, styled HTML/PDF export, and multi-language support. Use this skill whenever a user mentions resumes, CVs, or curriculum vitae — whether they want to create one from scratch, import and edit an existing PDF resume, add or update sections (education, experience, projects, skills), export to a styled HTML or PDF document, generate multi-language versions, or apply professional formatting. Also triggers for requests like "help me update my CV", "format my resume", "translate my resume to Chinese", or "I need a professional-looking resume".
openclaw skills install resume-editorBuild professional resumes with AI-assisted content management, supporting PDF import/export, HTML styling, and multi-language output.
Resume data structure and JSON schema: See references/data-structure.md
Troubleshooting: See references/troubleshooting.md
Customization (themes, languages): See references/customization.md
pip install pymupdfpip install pdfkit && brew install wkhtmltopdf OR pip install playwright && playwright install chromiumSave resume JSON to resume.json in the current working directory unless the user specifies another path. When importing from PDF, save the extracted JSON alongside the source file.
The scripts/extract_from_pdf.py script does basic text extraction, but it produces rough output. For best results, use your AI capabilities to read and understand the PDF content directly, then structure it into the resume JSON schema yourself. The script is available as a fallback:
python3 "$SKILL_DIR/scripts/extract_from_pdf.py" input.pdf output.json
After extraction (by any method), present the structured data to the user for review and ask if they want any modifications.
When adding or editing sections, gather complete information through natural conversation. The key areas to ask about:
For Education: institution, degree, period, location, GPA (if applicable), honors. For Work Experience: company, position, period, location, responsibilities, quantifiable achievements. For Projects: name, role, period, technologies, description, key achievements.
Keep asking follow-up questions if responses are brief or unclear. The goal is a complete, well-structured entry — not a minimal one.
Important separation principle:
This separation makes the resume scannable for HR while providing depth for engineering interviews.
python3 "$SKILL_DIR/scripts/generate_html.py" --theme modern --lang en resume.json output.html
python3 "$SKILL_DIR/scripts/generate_pdf.py" output.html output.pdf
Available themes: modern, classic, minimal, creative
Available languages: en, zh, ja, fr, de, es
| Script | Purpose |
|---|---|
scripts/extract_from_pdf.py | Extract text from PDF resumes (fallback — prefer AI-based parsing) |
scripts/generate_html.py | Generate styled HTML from resume JSON |
scripts/generate_pdf.py | Convert HTML resume to PDF |