← Back to Skills Marketplace
jiuwu2495

HR简历分析评分报告

by jiuwu2495 · GitHub ↗ · v1.0.2 · MIT-0
cross-platform ⚠ suspicious
21
Downloads
0
Stars
0
Active Installs
3
Versions
Install in OpenClaw
/install hr-resume-scorer
Description
简历批量筛选打分工具。支持PDF/Word/TXT格式简历解析,基于JD进行匹配度分析,多维度评分,生成Excel/JSON/Markdown报告。当用户需要筛选简历、批量评估候选人、简历打分、匹配度分析、生成筛选报告时触发此技能。适用于HR、猎头、招聘团队。
README (SKILL.md)

\r \r

简历批量筛选打分技能\r

\r

概述\r

\r 本技能提供完整的简历筛选解决方案:解析简历文件、基于JD匹配度分析、多维度自动评分、批量处理、生成结构化报告。\r \r 核心能力:\r

  • 支持 PDF、Word、TXT、Markdown 格式简历解析\r
  • 基于职位描述(JD)的智能匹配度分析\r
  • 5维度评分体系:学历、经验、技能匹配、行业匹配、稳定性\r
  • 批量处理 + Excel/JSON/Markdown 报告输出\r \r

使用场景\r

\r | 场景 | 触发词示例 |\r |------|-----------|\r | 直接发送简历 | 用户直接发送简历文件(PDF/Word/TXT) |\r | 批量筛选 | "帮我筛选这批简历"、"简历打分"、"简历筛选" |\r | JD匹配 | "看这些简历和JD匹配度"、"按岗位要求筛选" |\r | 生成报告 | "生成简历评分报告"、"输出Excel筛选结果" |\r | 单份评估 | "评估这份简历"、"给这个候选人打分" |\r \r

工作流程\r

\r

模式一:用户直接发送简历(推荐)\r

\r 当用户直接发送简历文件时,按以下流程处理:\r \r

用户发送简历文件\r
  ↓\r
┌─────────────────────────────────────┐\r
│ 1. 自动检测文件                      │\r
│    - 识别文件格式(PDF/Word/TXT)    │\r
│    - 获取文件路径                    │\r
└─────────────────────────────────────┘\r
  ↓\r
┌─────────────────────────────────────┐\r
│ 2. 询问JD(如未提供)                │\r
│    - "请提供岗位描述(JD),           │\r
│       或输入'跳过'进行基础评分"      │\r
└─────────────────────────────────────┘\r
  ↓\r
┌─────────────────────────────────────┐\r
│ 3. 解析并评分                        │\r
│    - 解析简历内容                    │\r
│    - 提取关键信息                    │\r
│    - 多维度评分                      │\r
└─────────────────────────────────────┘\r
  ↓\r
┌─────────────────────────────────────┐\r
│ 4. 即时反馈                          │\r
│    - 展示候选人信息摘要              │\r
│    - 显示评分结果                    │\r
│    - 给出录用建议                    │\r
└─────────────────────────────────────┘\r
```\r
\r
**处理步骤**:\r
\r
1. **检测文件**:用户发送文件后,自动识别为简历文件\r
2. **询问JD**:如对话中未提供JD,询问用户是否提供岗位描述\r
3. **解析简历**:使用 `ResumeParser.parse_file()` 解析文件\r
4. **评分分析**:使用 `ResumeScorer.score_resume()` 进行评分\r
5. **展示结果**:以Markdown格式展示候选人信息和评分结果\r
\r
**输出格式**:\r
\r
```markdown\r
## 📋 简历解析结果\r
\r
**候选人**: 张三\r
**文件名**: 张三_前端开发.pdf\r
\r
### 基本信息\r
- 📱 电话: 13800138000\r
- 📧 邮箱: [email protected]\r
- 🎓 学历: 本科\r
- 💼 经验: 5年\r
\r
### 技能列表\r
React, Vue, TypeScript, Node.js, Webpack\r
\r
### 评分结果\r
\r
| 维度 | 分数 | 说明 |\r
|------|------|------|\r
| 学历背景 | 70 | 本科 |\r
| 工作经验 | 85 | 5年经验 |\r
| 技能匹配 | 90 | 高度匹配 |\r
| 稳定性 | 80 | 较为稳定 |\r
\r
**总分**: 82.5\r
**匹配等级**: A-高度匹配\r
**建议**: 推荐 - 建议安排面试\r
```\r
\r
### 模式二:指定文件路径/目录\r
\r
当用户指定文件路径或目录时,按以下流程处理:\r
\r
```\r
用户提供路径\r
  ↓\r
┌─────────────────────────────────────┐\r
│ 1. 确认输入                         │\r
│    - 简历文件/目录路径               │\r
│    - JD文本/文件(可选)               │\r
│    - 输出格式(默认Excel)             │\r
└─────────────────────────────────────┘\r
  ↓\r
┌─────────────────────────────────────┐\r
│ 2. 批量解析                         │\r
│    - 遍历目录文件                    │\r
│    - 逐个解析简历                    │\r
│    - 收集结构化数据                  │\r
└─────────────────────────────────────┘\r
  ↓\r
┌─────────────────────────────────────┐\r
│ 3. 批量评分                         │\r
│    - 基础维度评分                    │\r
│    - JD匹配度计算(如有JD)            │\r
│    - 按分数排序                      │\r
└─────────────────────────────────────┘\r
  ↓\r
┌─────────────────────────────────────┐\r
│ 4. 生成报告                         │\r
│    - 输出Excel/JSON/Markdown         │\r
│    - 展示筛选摘要                    │\r
└─────────────────────────────────────┘\r
```\r
\r
### 步骤详解\r
\r
#### Step 1: 确认输入\r
\r
向用户确认:\r
1. **简历位置**:文件路径、目录路径,或用户直接发送文件\r
2. **JD信息**:职位描述文本或文件路径(可选)\r
3. **输出格式**:Excel(默认)、JSON、Markdown\r
4. **输出路径**:默认当前目录下\r
\r
#### Step 2: 解析简历\r
\r
调用脚本 `scripts/resume_scorer.py` 中的 `ResumeParser`:\r
\r
```python\r
from resume_scorer import ResumeParser\r
\r
# 解析单个文件\r
resume = ResumeParser.parse_file("path/to/resume.pdf")\r
\r
# 返回结构化数据\r
print(resume.name)           # 候选人姓名\r
print(resume.phone)          # 电话\r
print(resume.email)          # 邮箱\r
print(resume.education)      # 学历列表\r
print(resume.experience_years)  # 工作年限\r
print(resume.skills)         # 技能列表\r
```\r
\r
#### Step 3: 评分分析\r
\r
使用 `ResumeScorer` 进行多维度评分:\r
\r
```python\r
from resume_scorer import ResumeScorer, JDMatcher\r
\r
# 初始化评分器\r
scorer = ResumeScorer()\r
\r
# 解析JD(如有)\r
jd_requirements = JDMatcher.parse_jd(jd_text)\r
\r
# 评分\r
result = scorer.score_resume(resume, jd_requirements)\r
\r
print(result.total_score)       # 总分(0-100)\r
print(result.match_level)       # 匹配等级(S/A/B/C/D/E)\r
print(result.dimension_scores)  # 各维度分数\r
print(result.strengths)         # 优势\r
print(result.concerns)          # 关注点\r
print(result.recommendation)    # 录用建议\r
```\r
\r
#### Step 4: 批量处理\r
\r
使用 `BatchProcessor` 批量处理:\r
\r
```python\r
from resume_scorer import BatchProcessor, ReportGenerator\r
\r
processor = BatchProcessor()\r
\r
# 处理整个目录\r
results = processor.process_directory("path/to/resumes/", jd_text)\r
\r
# 生成Excel报告\r
ReportGenerator.to_excel(results, "筛选报告.xlsx")\r
\r
# 生成Markdown报告\r
ReportGenerator.to_markdown(results, "筛选报告.md")\r
```\r
\r
## 评分维度\r
\r
| 维度 | 权重 | 说明 |\r
|------|------|------|\r
| 学历背景 | 15% | 博士/硕士/本科/大专 |\r
| 工作经验 | 25% | 年限 + 大厂/行业经验 |\r
| 技能匹配 | 30% | 与JD技能要求的匹配度 |\r
| 行业匹配 | 20% | 同行业/相关行业/跨行业 |\r
| 工作稳定性 | 10% | 平均在职时长 |\r
\r
**匹配等级**:\r
- S (90-100): 极匹配,强烈推荐\r
- A (80-89): 高度匹配,推荐面试\r
- B (70-79): 较为匹配,建议面试\r
- C (60-69): 基本匹配,可考虑\r
- D (50-59): 部分匹配,谨慎考虑\r
- E (\x3C50): 匹配度低,不推荐\r
\r
详细评分标准见 `references/scoring_criteria.md`\r
\r
## 人物画像分析\r
\r
### 分析维度\r
\r
| 维度 | 说明 | 分析方法 |\r
|------|------|----------|\r
| 性格特征 | 领导力、执行力、创新力等 | 关键词分析 |\r
| 工作风格 | 技术驱动/业务导向/管理型/研究型 | 内容分析 |\r
| 职业动机 | 技术成长/薪资/发展/平衡 | 关键词分析 |\r
| 职业倾向 | 管理方向/专家方向/业务方向 | 经验分析 |\r
| 领导潜力 | 高/中等/需评估 | 管理经验分析 |\r
| 团队适配 | 协作型/独立型/灵活型 | 工作方式分析 |\r
\r
### 输出示例\r
\r
```markdown\r
#### 👤 人物画像\r
- **性格特征**: 领导力、执行力、协作力\r
- **工作风格**: 技术驱动型\r
- **职业倾向**: 管理方向\r
- **领导潜力**: 高领导潜力\r
- **团队适配**: 适合协作型团队\r
- **总结**: 候选人表现出领导力、执行力、协作力等特质,属于技术驱动型,职业倾向为管理方向。高领导潜力,适合协作型团队。\r
```\r
\r
## 简历真实性检查\r
\r
### 检查维度\r
\r
| 维度 | 说明 | 风险指标 |\r
|------|------|----------|\r
| 时间一致性 | 工作经历时间是否重叠 | 时间矛盾 |\r
| 描述真实性 | 是否存在夸大或模糊描述 | 夸大描述、模糊描述 |\r
| 经验合理性 | 经验与年限是否匹配 | 经验与年龄不符 |\r
| 跳槽频率 | 是否频繁跳槽 | 频繁跳槽 |\r
| 学历验证 | 学历信息是否可信 | 教育时间异常 |\r
\r
### 风险等级\r
\r
| 等级 | 分数区间 | 建议 |\r
|------|---------|------|\r
| 低风险 | 80-100 | 简历信息较为可信 |\r
| 中等风险 | 60-79 | 建议面试中深入了解 |\r
| 较高风险 | 40-59 | 建议深度背景调查 |\r
| 高风险 | 0-39 | 要求提供第三方证明 |\r
\r
### 红旗标记\r
\r
常见可疑模式:\r
- 夸大描述:"精通所有"、"全栈精通"\r
- 模糊描述:"参与项目"、"协助工作"\r
- 时间矛盾:工作经历时间重叠\r
- 经验不符:工作年限与技能不匹配\r
\r
### 输出示例\r
\r
```markdown\r
#### 🔍 真实性检查\r
- **真实性评分**: 85/100\r
- **风险等级**: 低风险\r
- **验证要点**:\r
  - 要求提供学历证书或学信网验证\r
  - 要求提供离职证明或社保记录\r
  - 通过技术面试验证核心技能\r
```\r
\r
## 在职时长预估\r
\r
### 预估因素\r
\r
| 因素 | 权重 | 说明 |\r
|------|------|------|\r
| 历史平均在职时长 | 35% | 过往工作稳定性 |\r
| 跳槽频率趋势 | 20% | 最近跳槽是否更频繁 |\r
| 职业发展阶段 | 15% | 初级/成长期/稳定期/资深 |\r
| 行业特性 | 10% | 互联网/传统行业/创业 |\r
| 职位匹配度 | 10% | 与JD的匹配程度 |\r
\r
### 风险等级\r
\r
| 等级 | 预估时长 | 留任概率 |\r
|------|---------|---------|\r
| 低风险 | 3年以上 | 高 |\r
| 中等风险 | 1-3年 | 中 |\r
| 高风险 | 1年以下 | 低 |\r
\r
### 输出示例\r
\r
```markdown\r
#### ⏱️ 在职预估\r
- **预估在职时长**: 2-3年\r
- **留任风险**: 低风险\r
```\r
\r
## 命令行用法\r
\r
```bash\r
# 基础用法:筛选目录下所有简历\r
python scripts/resume_scorer.py ./resumes/\r
\r
# 指定JD文件\r
python scripts/resume_scorer.py ./resumes/ --jd ./jd.txt\r
\r
# 直接输入JD文本\r
python scripts/resume_scorer.py ./resumes/ --jd-text "岗位要求:3年以上Python经验..."\r
\r
# 指定输出格式和路径\r
python scripts/resume_scorer.py ./resumes/ --format excel --output 筛选结果.xlsx\r
\r
# JSON格式输出\r
python scripts/resume_scorer.py ./resumes/ --format json --output results.json\r
\r
# Markdown格式输出\r
python scripts/resume_scorer.py ./resumes/ --format markdown --output report.md\r
```\r
\r
## 输出报告示例\r
\r
### Excel报告字段\r
\r
| 字段 | 说明 |\r
|------|------|\r
| 排名 | 按总分排序 |\r
| 文件名 | 原始文件名 |\r
| 候选人 | 提取的姓名 |\r
| 总分 | 加权总分(0-100) |\r
| 匹配等级 | S/A/B/C/D/E |\r
| 学历得分 | 学历维度分数 |\r
| 经验得分 | 经验维度分数 |\r
| 技能匹配 | 技能维度分数 |\r
| 稳定性 | 稳定性维度分数 |\r
| 优势 | 候选人亮点 |\r
| 关注点 | 需注意问题 |\r
| 建议 | 录用建议 |\r
\r
## 依赖安装\r
\r
```bash\r
# PDF解析 (二选一)\r
pip install PyMuPDF\r
# 或\r
pip install pdfplumber\r
\r
# Word解析\r
pip install python-docx\r
\r
# Excel输出\r
pip install pandas openpyxl\r
```\r
\r
## 注意事项\r
\r
1. **文件格式**:确保简历文件格式正确,PDF推荐使用文本型PDF\r
2. **编码问题**:中文简历建议使用UTF-8编码\r
3. **批量数量**:单次建议不超过100份,大批量请分批处理\r
4. **JD质量**:JD越详细,匹配分析越准确\r
5. **人工复核**:自动评分仅供参考,重要岗位建议人工复核\r
\r
## 参考文档\r
\r
- 评分标准详情:`references/scoring_criteria.md`\r
- 简历解析指南:`references/resume_parsing_guide.md`\r
- 人物画像与真实性检查:`references/personality_analysis_guide.md`\r
\r
---\r
\r
## 附录:对话式简历解析指南\r
\r
### 场景A:用户直接发送简历文件\r
\r
当用户在对话中直接发送简历文件时,按以下步骤处理:\r
\r
#### 1. 识别文件\r
\r
用户发送的文件会自动保存到工作目录。检测文件扩展名:\r
- `.pdf` → PDF简历\r
- `.docx` / `.doc` → Word简历\r
- `.txt` / `.md` → 文本简历\r
\r
#### 2. 解析并展示结果\r
\r
```python\r
# 获取用户发送的文件路径(从工作目录)\r
import glob\r
from resume_scorer import ResumeParser, ResumeScorer, JDMatcher\r
\r
# 查找最新的简历文件\r
resume_files = glob.glob("*.pdf") + glob.glob("*.docx") + glob.glob("*.txt")\r
if resume_files:\r
    file_path = resume_files[-1]  # 取最新文件\r
\r
    # 解析简历\r
    resume = ResumeParser.parse_file(file_path)\r
\r
    # 评分(无JD时使用基础评分)\r
    scorer = ResumeScorer()\r
    result = scorer.score_resume(resume)\r
\r
    # 格式化输出\r
    print(f"## 📋 简历解析结果\
")\r
    print(f"**候选人**: {resume.name}")\r
    print(f"**文件名**: {resume.filename}\
")\r
    print(f"### 基本信息")\r
    print(f"- 📱 电话: {resume.phone or '未提供'}")\r
    print(f"- 📧 邮箱: {resume.email or '未提供'}")\r
    print(f"- 🎓 学历: {', '.join(resume.education) if resume.education else '未提供'}")\r
    print(f"- 💼 经验: {resume.experience_years}年\
")\r
    print(f"### 技能列表")\r
    print(f"{', '.join(resume.skills) if resume.skills else '未识别到明确技能'}\
")\r
    print(f"### 评分结果")\r
    print(f"| 维度 | 分数 |")\r
    print(f"|------|------|")\r
    for dim, score in result.dimension_scores.items():\r
        print(f"| {dim} | {score} |")\r
    print(f"\
**总分**: {result.total_score}")\r
    print(f"**匹配等级**: {result.match_level}")\r
    print(f"**建议**: {result.recommendation}")\r
```\r
\r
#### 3. 询问是否需要JD匹配\r
\r
展示基础评分后,询问用户:\r
```\r
是否提供岗位描述(JD)进行更精准的匹配分析?\r
- 提供JD文本 → 进行JD匹配度分析\r
- 输入"跳过" → 保持基础评分\r
```\r
\r
### 场景B:用户发送多个简历文件\r
\r
当用户一次发送多个简历文件时:\r
\r
1. **收集所有文件**:遍历工作目录中的简历文件\r
2. **批量解析**:逐个解析并评分\r
3. **汇总展示**:按分数排序,展示排名表\r
4. **询问是否导出**:是否需要生成Excel/JSON报告\r
\r
```markdown\r
## 📊 批量简历筛选结果\r
\r
共解析 5 份简历\r
\r
| 排名 | 候选人 | 总分 | 等级 | 建议 |\r
|------|--------|------|------|------|\r
| 1 | 张三 | 85.5 | A | 推荐面试 |\r
| 2 | 李四 | 78.0 | B | 建议面试 |\r
| 3 | 王五 | 72.5 | B | 建议面试 |\r
| 4 | 赵六 | 65.0 | C | 可考虑 |\r
| 5 | 钱七 | 55.0 | D | 谨慎考虑 |\r
\r
是否需要生成详细的Excel报告?\r
```\r
\r
### 场景C:用户粘贴简历文本\r
\r
当用户直接粘贴简历内容时:\r
\r
1. **保存为临时文件**:将文本保存为 `temp_resume.txt`\r
2. **解析并评分**:使用标准流程处理\r
3. **展示结果**:即时反馈评分结果\r
\r
```python\r
# 保存用户粘贴的文本\r
with open("temp_resume.txt", "w", encoding="utf-8") as f:\r
    f.write(user_pasted_text)\r
\r
# 解析并评分\r
resume = ResumeParser.parse_file("temp_resume.txt")\r
result = scorer.score_resume(resume)\r
```\r
\r
### 最佳实践\r
\r
1. **即时反馈**:用户发送文件后,立即解析并展示结果\r
2. **渐进式分析**:先展示基础评分,再询问是否需要JD匹配\r
3. **清晰展示**:使用表格和格式化输出,便于阅读\r
4. **灵活导出**:根据用户需求生成不同格式的报告\r
5. **错误处理**:解析失败时给出明确提示和解决建议\r
Usage Guidance
Install only if you are comfortable using it for HR screening and can enforce your own privacy controls. Before use, tell users and candidates what data will be processed, avoid unnecessary personality or retention predictions, restrict access to output files, and delete temporary resume files and exported reports when they are no longer needed.
Capability Assessment
Purpose & Capability
The core resume parsing, JD matching, scoring, and report generation are coherent with the stated HR purpose, but the artifact also directs personality, leadership, authenticity, and retention-risk analysis that can materially affect hiring judgments and is only partially disclosed in the top-level description.
Instruction Scope
The workflow includes automatic processing of uploaded or pasted resumes, extraction and display of phone numbers, email addresses, education, work history, rankings, and hiring recommendations, but it does not require a clear privacy notice or confirmation before processing and exporting sensitive candidate data.
Install Mechanism
The package contains a single SKILL.md file, no bundled executable scripts, no declared dependencies in metadata, clean static scan results, and no VirusTotal telemetry.
Credentials
The suggested local packages for PDF, Word, and Excel handling are ordinary for resume parsing, and no network calls, credential use, destructive commands, or persistence services were found.
Persistence & Privilege
The artifact says uploaded resumes are saved in the working directory and instructs saving pasted resume text to temp_resume.txt, but gives no retention, deletion, permissions, or user-consent guidance for sensitive candidate PII.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install hr-resume-scorer
  3. After installation, invoke the skill by name or use /hr-resume-scorer
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.2
- 新增人物画像分析与输出示例,包括性格特征、工作风格、职业倾向、领导潜力等维度 - 新增简历真实性检查功能及风险等级、红旗标记说明,输出示例中包括真实性评分和验证要点 - 新增在职时长预估及留任风险的输出方式和说明 - 文档增加了相关维度、分析方法以及实用输出示例,提升了报告解读与应用场景丰富性 - 增加了相关参考文档说明,便于进一步了解评分、解析和分析细节
v1.0.1
- 新增“用户直接发送简历文件”对话式操作流程,支持即时解析与评分,并自动询问岗位描述(JD)。 - 支持批量和单份简历的智能模式切换,根据用户行为自动识别简历文件,无需手动指定路径。 - 优化展示结果,直接以Markdown格式输出候选人关键信息、技能、评分及建议,更便于对话交互。 - 增加附录,对“用户直接发送简历文件/批量发送简历”的处理方法和输出模板做详细说明。 - 保持命令行批量处理等原功能,未影响现有脚本用法和评分体系。
v1.0.0
hr-resume-scorer 1.0.0 is the initial release—offering a batch resume screening and scoring tool for HR/recruiters: - Supports parsing resumes in PDF, Word, TXT, and Markdown formats. - Analyzes matching degree with job descriptions (JD) and scores on 5 dimensions: education, experience, skill match, industry match, and stability. - Provides bulk processing and generates ranked reports in Excel, JSON, or Markdown. - Offers structured output including candidate strengths, concerns, and hiring recommendations. - Designed for HR, headhunters, and recruiting teams to efficiently evaluate and filter candidates.
Metadata
Slug hr-resume-scorer
Version 1.0.2
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 3
Frequently Asked Questions

What is HR简历分析评分报告?

简历批量筛选打分工具。支持PDF/Word/TXT格式简历解析,基于JD进行匹配度分析,多维度评分,生成Excel/JSON/Markdown报告。当用户需要筛选简历、批量评估候选人、简历打分、匹配度分析、生成筛选报告时触发此技能。适用于HR、猎头、招聘团队。 It is an AI Agent Skill for Claude Code / OpenClaw, with 21 downloads so far.

How do I install HR简历分析评分报告?

Run "/install hr-resume-scorer" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is HR简历分析评分报告 free?

Yes, HR简历分析评分报告 is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does HR简历分析评分报告 support?

HR简历分析评分报告 is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created HR简历分析评分报告?

It is built and maintained by jiuwu2495 (@jiuwu2495); the current version is v1.0.2.

💬 Comments