| name | feishu-resume-template-exporter |
| description | Convert a structured Feishu resume document into a Word document and PDF that follow a supplied resume sample's layout. Use when the user wants Word/PDF output in the same visual format as a resume template, not a plain Feishu export. |
Feishu Resume Template Exporter
Use this skill to turn a student's completed Feishu resume document into a polished .docx and matching PDF based on the provided sample resume.
What This Skill Does
The Feishu document is the editable source of truth. The bundled Word sample is the visual authority. Do not export the Feishu document directly: normalize its content into the JSON shape described in input-schema.md, then run the builder against the template.
Use this skill only for resumes that follow the sample's structure. It does not invent, embellish, or alter factual experience.
Workflow
- Read the student's Feishu document with
lark-cli docs +fetch --as user --doc <URL> --detail full --format json.
- Confirm it contains, at minimum: name/contact, personal summary, experience entries, education, and skills. If a section is intentionally absent, use an empty array instead of inventing content.
- Map the document into the JSON schema. Preserve all facts, dates, and numbers exactly. Treat lines in the form
公司/项目|角色 时间 as one experience header.
- If the user has not supplied a headshot, create or use an explicitly labeled generic simulated avatar for a demo only. Do not present it as the student's real photo.
- Run
scripts/build_resume.py with the JSON, the bundled assets/resume-template.docx, and the avatar. The script emits a .docx.
- Run
scripts/export_pdf_native.py --detect after creating the DOCX, then export the PDF with --backend auto:
- Microsoft Word available: export with Word automatically. Deliver Word + PDF together.
- Microsoft Word unavailable: export with LibreOffice as the compatibility fallback. Deliver Word + PDF together and state that the PDF was generated by LibreOffice.
- Do not automate WPS through UI interaction. The delivered Word file can be opened and exported by the student in their own WPS installation when they want a PDF rendered by their local WPS.
- Render the delivered PDF and inspect page images before delivery. The PDF must be generated from the finished DOCX; do not redraw the resume as a separate PDF layout and do not use Feishu import/export as a Word-preserving conversion path.
- Upload both final files to the requested Feishu folder or attach them to the source document when the user authorizes it.
Invocation
python3 scripts/build_resume.py \
--input /path/to/resume.json \
--template assets/resume-template.docx \
--avatar /path/to/avatar.png \
--output /path/to/姓名-简历.docx
Detect the native export option:
python3 scripts/export_pdf_native.py --detect
Export with the detected native software:
python3 scripts/export_pdf_native.py \
--input /path/to/姓名-简历.docx \
--output /path/to/姓名-简历.pdf \
--backend auto
Force the compatibility backend when needed:
python3 scripts/export_pdf_native.py \
--input /path/to/姓名-简历.docx \
--output /path/to/姓名-简历.pdf \
--backend libreoffice
Output Rules
- Match the sample's compact Chinese resume layout: top identity block, black divider rules, concise section headers, organization/role on the left and date on the right.
- Keep the source template unchanged. Work from a copy or use it only as a style reference.
- Keep all body copy factual and compact. If material runs long, preserve the facts and let the resume continue to page two; do not silently shrink type below readable size.
- A simulated avatar must carry the label “模拟头像(示意)” in the Feishu source and must never replace a real supplied photo.
- The final Word and PDF must contain the same content and originate from the same DOCX.
- Microsoft Word is the first-choice PDF engine and can be automated on macOS and Windows. When Word is unavailable, use LibreOffice and describe the output as a compatibility PDF, not as layout-identical to Word.
- The bundled Source Han Serif font must remain with the Skill. The LibreOffice exporter enables it automatically so Chinese text does not degrade into missing-glyph boxes in a headless environment.
- In the delivery note, tell students with WPS that they can open the delivered DOCX in WPS and use its own export-to-PDF function when they prefer WPS's local rendering. Do not claim that WPS export was performed unless it actually was.
Read input-schema.md before creating or modifying the content JSON.