# Analyze Resume

> Use when user wants to analyze a resume/CV file (PDF or text) for software engineering, test development, or frontend development candidates. Triggers: "分析简历", "看下这份简历", "帮我面试", "analyze resume", "简历分析", "候选人评估".

- Skill: `gmh5225/analyze-resume` (Agent Skill)
- Install (CLI): `npx skillmds@latest add gmh5225/analyze-resume`
- Raw SKILL.md: https://api.skillmd.com/api/skills/gmh5225/analyze-resume/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Web & Frontend
- Author: gmh5225 (https://skillmd.com/u/gmh5225)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/gmh5225/analyze-resume

---


# Analyze Resume — 简历综合分析

输入简历文件（PDF 或文本），自动提取候选人信息，输出结构化面试分析报告。

## When to Use

当用户请求以下操作时触发：
- "分析这份简历" / "帮我看下这份简历"
- "analyze resume" / "review this CV"
- "这个候选人怎么样" / "帮我出面试题"
- "简历分析" / "候选人评估"

适用岗位：软件工程师、测试开发工程师、前端开发工程师

## Phase 0: 读取简历

1. 用户提供文件路径（PDF 或文本文件）
2. 使用 Read 工具读取文件内容
3. 若为 PDF，直接用 Read 工具读取（支持 PDF 解析）
4. 确认读取成功后进入分析阶段

## Phase 1: 项目经历小结

对候选人每个项目/工作经历，提取以下维度：

| 维度 | 说明 |
|------|------|
| **做了什么** | 候选人个人贡献，聚焦"我"而非"团队" |
| **角色** | 核心开发 / 负责人 / 参与者 / 支持角色 |
| **难度** | ⭐~⭐⭐⭐⭐⭐，基于技术复杂度、规模、创新性评估 |
| **亮点** | 最值得关注的技术亮点或成果 |
| **不足** | 描述模糊、个人贡献不清晰、缺少量化数据等 |

**输出格式：**
```
### [项目名称] @ [公司/学校] ([时间])
- 做了什么：...
- 角色：...
- 难度：⭐⭐⭐
- 亮点：...
- 不足：...
```

## Phase 2: 综合评估（不限技术/时间/表达与协作线索）

从技术能力、时间安排合理性、表达与协作线索三个维度综合评估，输出以下三点：

### 🔴 非常值得质疑的简历描述（1点）
选出最可疑、最值得追问的描述，可能是：
- 技术描述夸大（"主导"但看起来只是参与）
- 成果数据不合理（性能提升99%但无说明）
- 时间线矛盾或项目经历密度异常
- 技术栈与职责不匹配

格式：`[描述原文] → 质疑点：...`

### ⚠️ 最值得关注的缺点（1点）
候选人最突出的短板，可能是：
- 技术深度不足（只会用不会原理）
- 项目经验单一（行业/技术栈过窄）
- 缺乏系统设计或架构经验
- 表达不清晰，沟通能力存疑

### ✅ 非常值得关注的优点（1点）
候选人最突出的亮点，可能是：
- 技术广度或深度明显高于同级
- 有实际上线项目、开源贡献
- 解决过真实高难度问题
- 学习能力强，技术迭代快

## Phase 3: 技术专长（3点）

不限于某一项目，综合全部经历提炼候选人的核心技术专长：

```
1. [专长领域]：[具体说明，引用简历依据]
2. [专长领域]：[具体说明，引用简历依据]
3. [专长领域]：[具体说明，引用简历依据]
```

选取标准：
- 多个项目中反复出现的技术
- 描述最具体、最有深度的技术方向
- 与目标岗位最相关的核心能力

## Phase 4: 考察题目生成

根据 Phase 3 的 3 个专长，选取**最具区分度的 2 个方向**，各生成一组递进深入的考察题：

### 考察方向格式

```
## 考察方向一：[专长方向]

**Q1（基础）**：[问题]
参考答案：[简要答案，100字内]

**Q2（进阶）**：[问题]
参考答案：[简要答案，150字内，可含代码片段]

**Q3（深入）**：[问题]
参考答案：[简要答案，200字内，考察原理/边界/取舍]
```

**递进逻辑：**
- Q1：概念理解，确认候选人掌握基础
- Q2：实际应用，考察解决真实问题的能力
- Q3：原理/边界/最佳实践，区分优秀与普通候选人

## Phase 5: LeetCode 算法题推荐

根据候选人的项目经历和技术专长，找出与其背景**有一定关联**的算法题（而非泛泛的热题），低/中/高难度各一题：

**关联原则：**
- 候选人做过分布式系统 → 推荐涉及并发、一致性相关的题型
- 候选人做过搜索/推荐 → 推荐图、排序、堆相关题型
- 候选人做过数据处理/ETL → 推荐字符串、滑动窗口、哈希相关题型
- 候选人做过 Android/移动端 → 推荐设计模式、树、状态机相关题型

**输出格式：**
```
### 🟢 简单：[题目编号]. [题目名称]
- 题目链接：https://leetcode.cn/problems/[slug]/
- 关联理由：[为何与候选人经历相关]
- 考察点：[核心算法/数据结构]
- 解题思路：[关键步骤，2-3句]
  ```
  [伪代码，5-10行，体现核心逻辑]
  ```
- 时间复杂度：O(?) / 空间复杂度：O(?)

### 🟡 中等：[题目编号]. [题目名称]
- 题目链接：https://leetcode.cn/problems/[slug]/
- 关联理由：[为何与候选人经历相关]
- 考察点：[核心算法/数据结构]
- 解题思路：[关键步骤，2-3句]
  ```
  [伪代码，5-10行，体现核心逻辑]
  ```
- 时间复杂度：O(?) / 空间复杂度：O(?)

### 🔴 困难：[题目编号]. [题目名称]
- 题目链接：https://leetcode.cn/problems/[slug]/
- 关联理由：[为何与候选人经历相关]
- 考察点：[核心算法/数据结构]
- 解题思路：[关键步骤，2-3句]
  ```
  [伪代码，5-10行，体现核心逻辑]
  ```
- 时间复杂度：O(?) / 空间复杂度：O(?)
```

**注意**：只推荐你确定存在于 LeetCode 上的真实题目，题号和 slug 必须准确，不要捏造。

## 输出结构

```markdown
# 简历分析报告：[候选人姓名]
> 岗位方向：[软件工程师 / 测试开发 / 前端开发]
> 分析时间：[日期]

---

## 一、项目经历小结
[Phase 1 输出]

---

## 二、综合评估
[Phase 2 输出]

---

## 三、技术专长
[Phase 3 输出]

---

## 四、面试考察题目
[Phase 4 输出]

---

## 五、LeetCode 算法题推荐
[Phase 5 输出]
```

## 注意事项

- **保持客观**：基于简历内容分析，不做无依据推断
- **低置信度线索要标注**：涉及表达、协作、沟通的判断，只能基于简历呈现方式做弱结论，不能当作事实定性
- **质疑有据**：Phase 2 的质疑点必须引用简历原文
- **问题可操作**：考察题目要具体，不出泛泛而谈的大问题
- **参考答案精准**：参考答案应有明确判断标准，便于面试官评分

