Resume Tailor
Generate a polished, job-specific HTML resume. Two-phase workflow: collect profile → match JD.
Phase 1: Profile Collection
On first run (no base profile exists), collect user info in this structured order. Ask one section at a time, confirm before moving to next. Save completed profile to resume-profile.md in workspace.
Before collecting, confirm preferences:
- 1. Accent color — Ask user to pick a theme color (default:
#6b4c9a purple). Accept hex, color name, or "default". This applies to all generated resumes unless overridden per-JD. - Language — Chinese (中文) or English resume? Default based on user's communication language.
- Target region/culture — e.g., mainland China (include birth date, photo slot), overseas (exclude).
1.1 Personal Information (个人信息)
- - Name, phone, email, birth date, location, gender
- LinkedIn / portfolio URL (optional)
1.2 Education (教育背景)
- - School, degree, major, graduation date
- Core courses / GPA / honors (optional, include if relevant to target)
1.3 Work Experience (工作经历)
For each role, collect:
- - Company name, location
- Role / title
- Project name and type (if applicable)
- Date range (start - end)
- 3-6 bullet points of responsibilities and achievements
- Prompt user to quantify where possible (numbers, percentages, metrics)
- Ask: "Any tools, tech, or methods worth mentioning?"
1.4 Side Projects / Personal Projects (个人项目)
For each project:
- - Project name, type (game, web app, tool, etc.)
- Status (launched / in progress / prototype)
- Your role and contribution
- Key features and metrics (DAU, retention, revenue, etc.)
- Tech stack used
- If built with AI tools, note which and how
1.5 Skills (技能)
Group into categories:
- - Domain skills: e.g., game design, numerical balance, UX research
- Technical tools: e.g., Excel/VBA, Python, Claude Code, Cursor
- Languages: Chinese, English, etc. with proficiency level
1.6 Certificates & Awards (证书 & 荣誉)
- - Professional certifications
- Academic awards / competitions
1.7 Save Profile
After collecting all sections, save as resume-profile.md:
CODEBLOCK0
On subsequent runs, read resume-profile.md first. Ask only: "Profile loaded. Anything to update?" If changes needed, edit specific sections.
Phase 2: JD Match & Resume Generation
2.1 Collect Job Description
Always ask the user to provide the JD. Accept via:
- - Pasted text (most common)
- File path (txt/md/pdf/html)
- URL (web_fetch)
After reading the JD, confirm with user:
CODEBLOCK1
Only proceed after user confirms the JD parsing is correct.
2.2 Match Analysis (show to user before generating)
CODEBLOCK2
Wait for user confirmation or adjustments before generating.
2.3 Generate HTML Resume
Produce a single self-contained HTML file with all CSS inline. Reference references/html-template-guide.md for detailed template specs.
Content rules:
- - 3 core advantages in top highlight grid — each mapped to a top JD priority
- Work experience ordered by relevance to JD (most relevant first)
- Expand descriptions for matching roles; condense irrelevant ones
- Mirror JD keywords naturally (don't keyword-stuff)
- Every bullet point quantified where possible
- Skills section prioritizes JD-required skills
- 1-2 pages max for A4
Style defaults (overridable per user preference):
- - Accent:
#6b4c9a (purple) — ask user on first run, store in profile - Font:
"Microsoft YaHei", "PingFang SC", sans-serif (Chinese) or "Inter", sans-serif (English) - Name: 26px, section titles: 13px, body: 9-11px
- Print CSS: INLINECODE8
- A4: 210mm width, INLINECODE9
2.4 Auto Export PDF
After saving the HTML file, automatically export to PDF using headless browser.
Edge (preferred, Windows built-in):
CODEBLOCK3
Chrome fallback:
CODEBLOCK4
Rules:
- - Output PDF named
[Name]-[JobTitle].pdf in same resumes/ directory - Use
--no-margins since the HTML template handles its own padding - Wait for the process to complete before proceeding
- If headless export fails, tell user to manually open HTML in browser and Ctrl+P
2.5 Deliver Result
Save both files to resumes/:
- - INLINECODE14
- INLINECODE15
Tell user:
✅ Resume generated! PDF saved to INLINECODE16
Verify before sending:
- - [ ] Contact info correct
- [ ] Dates accurate
- [ ] No typos in company/project names
- [ ] Achievements not overstated
- [ ] PDF formatting looks correct (open and scroll through)
File Structure
CODEBLOCK5
See references/html-template-guide.md for the complete HTML template structure with all sections, CSS classes, and print optimization details.
简历定制工具
生成一份精美、针对特定职位的HTML简历。两阶段工作流程:收集个人资料 → 匹配职位描述。
第一阶段:个人资料收集
首次运行(无现有个人资料)时,按以下结构化顺序收集用户信息。每次询问一个部分,确认后再进入下一部分。将完成的个人资料保存到工作区中的 resume-profile.md 文件。
开始收集前,确认偏好设置:
- 1. 强调色 — 请用户选择主题颜色(默认:#6b4c9a 紫色)。接受十六进制颜色码、颜色名称或默认。此颜色适用于所有生成的简历,除非针对特定职位描述进行覆盖。
- 语言 — 中文还是英文简历?默认根据用户的交流语言确定。
- 目标地区/文化 — 例如,中国大陆(包含出生日期、照片位置),海外(不包含)。
1.1 个人信息
- - 姓名、电话、邮箱、出生日期、所在地、性别
- LinkedIn / 个人作品集网址(可选)
1.2 教育背景
- - 学校、学位、专业、毕业日期
- 核心课程 / GPA / 荣誉(可选,如与目标相关则包含)
1.3 工作经历
针对每个职位,收集:
- - 公司名称、所在地
- 职位/头衔
- 项目名称和类型(如适用)
- 时间范围(开始 - 结束)
- 3-6条职责和成就要点
- 提示用户尽可能量化(数字、百分比、指标)
- 询问:是否有值得提及的工具、技术或方法?
1.4 个人项目
针对每个项目:
- - 项目名称、类型(游戏、网页应用、工具等)
- 状态(已上线 / 进行中 / 原型)
- 你的角色和贡献
- 关键功能和指标(日活跃用户、留存率、收入等)
- 使用的技术栈
- 如使用AI工具构建,注明使用了哪些以及如何使用
1.5 技能
按类别分组:
- - 领域技能:例如,游戏设计、数值平衡、用户体验研究
- 技术工具:例如,Excel/VBA、Python、Claude Code、Cursor
- 语言:中文、英语等,注明熟练程度
1.6 证书与荣誉
1.7 保存个人资料
收集完所有部分后,保存为 resume-profile.md:
markdown
个人简历资料:[姓名]
最后更新:YYYY-MM-DD
个人信息
[结构化数据]
教育背景
[结构化数据]
工作经历
[每个职位的结构化数据及要点]
项目
[每个项目的结构化数据]
技能
[分类列表]
证书
[列表]
后续运行时,首先读取 resume-profile.md。仅询问:个人资料已加载。需要更新吗?如需更改,编辑特定部分。
第二阶段:职位描述匹配与简历生成
2.1 收集职位描述
始终要求用户提供职位描述。 接受方式:
- - 粘贴文本(最常见)
- 文件路径(txt/md/pdf/html)
- 网址(网页抓取)
读取职位描述后,与用户确认:
📋 职位描述确认:
- - 岗位:[职位名称]
- 公司:[公司名称]
- 核心要求:[3-5项关键要求]
- 加分项:[优先资格]
以上提取是否正确?有补充或修正吗?
仅在用户确认职位描述解析正确后继续。
2.2 匹配分析(在生成前向用户展示)
🎯 目标:[公司名称]的[职位名称]
📊 匹配度:[高/中/低]
✅ 强匹配项:
- - [匹配项1:个人资料优势 → 职位描述要求]
- [匹配项2]
- [匹配项3]
⚠️ 差距(诚实说明):
- - [差距1:职位描述要求X,个人资料中Y有限]
- [差距2]
📝 定制策略:
- - 强调:[需要突出和扩展的内容]
- 重新定位:[如何定位现有经验]
- 弱化:[需要缩短或合并的内容]
🎨 强调色:[使用默认/用户选择/根据职位描述风格建议]
等待用户确认或调整后再生成。
2.3 生成HTML简历
生成一个独立的HTML文件,所有CSS内联。参考 references/html-template-guide.md 获取详细模板规范。
内容规则:
- - 顶部高亮网格中展示3个核心优势——每个对应一个职位描述的最高优先级
- 工作经历按与职位描述的相关性排序(最相关优先)
- 扩展匹配职位的描述;压缩不相关的内容
- 自然地融入职位描述关键词(不要堆砌关键词)
- 每个要点尽可能量化
- 技能部分优先展示职位描述要求的技能
- A4纸1-2页为最佳
样式默认值(可根据用户偏好覆盖):
- - 强调色:#6b4c9a(紫色)——首次运行时询问用户,存储在个人资料中
- 字体:Microsoft YaHei, PingFang SC, sans-serif(中文)或 Inter, sans-serif(英文)
- 姓名:26px,章节标题:13px,正文:9-11px
- 打印CSS:@media print { print-color-adjust: exact; }
- A4纸:210mm宽度,@page { margin: 0; }
2.4 自动导出PDF
保存HTML文件后,使用无头浏览器自动导出为PDF。
Edge(首选,Windows内置):
powershell
& C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe --headless --print-to-pdf=$outputPath --no-margins --disable-gpu $htmlPath
Chrome备用:
powershell
& C:\Program Files\Google\Chrome\Application\chrome.exe --headless --print-to-pdf=$outputPath --no-margins --disable-gpu $htmlPath
规则:
- - 输出PDF命名为 [姓名]-[职位名称].pdf,保存在同一 resumes/ 目录下
- 使用 --no-margins,因为HTML模板已处理自身的内边距
- 等待进程完成后再继续
- 如果无头导出失败,告知用户在浏览器中手动打开HTML并按Ctrl+P
2.5 交付结果
将两个文件保存到 resumes/:
- - [姓名]-[职位名称].html
- [姓名]-[职位名称].pdf
告知用户:
✅ 简历已生成!PDF已保存到 resumes/[姓名]-[职位名称].pdf
发送前请验证:
- - [ ] 联系信息正确
- [ ] 日期准确
- [ ] 公司/项目名称无拼写错误
- [ ] 成就未夸大
- [ ] PDF格式正确(打开并滚动查看)
文件结构
workspace/
├── resume-profile.md # 基础个人资料(首次运行时创建)
├── resumes/
│ ├── [姓名]-[职位名称].html
│ ├── [姓名]-[职位名称].pdf
│ └── ...
└── skills/
└── resume-tailor/
├── SKILL.md
└── references/
└── html-template-guide.md
参见 references/html-template-guide.md 获取完整的HTML模板结构,包含所有章节、CSS类和打印优化详情。