← Marketplace
カテゴリ
HR
インストール
0
Repository
casperliu7/wechat-editor-agentGitHub Stars
...
Published
2026年4月15日
Updated
2026年4月15日
BOSS直聘简历分析技能
从企业邮箱中自动读取BOSS直聘转发的简历邮件,下载PDF附件,提取文本,对照岗位需求进行候选人筛选,输出精简的招聘建议报告。
依赖
- imap-smtp-email 技能:用于连接邮箱、搜索邮件、下载附件
- 技能路径:
/agent/.agents/skills/imap-smtp-email/ - 配置文件:
/agent/.agents/skills/imap-smtp-email/.env - IMAP命令:
node scripts/imap.js <command>
- 技能路径:
- pdftotext:用于从PDF中提取文本(系统已预装)
- 岗位需求文档:
/agent/hiring/job_requirements.md
工作流程
Step 1:获取新简历邮件
在邮箱中搜索BOSS直聘简历邮件。
⚠️ 重要:2026-04-08起,BOSS直聘已改为单封单份简历直推到INBOX
- 新格式:每个候选人一封邮件,主题格式「候选人名 | X年,应聘 岗位名 | 深圳XX-XXK【BOSS直聘】」,1个PDF附件
- 旧格式(已废弃):HR批量转发到Sent Messages,一封邮件含多个PDF
bash
cd /agent/.agents/skills/imap-smtp-email
# 优先检查 INBOX(新简历直推到这里)
node scripts/imap.js check --limit 20 --mailbox INBOX
# 也检查 Sent Messages 和专用文件夹(旧格式兼容)
node scripts/imap.js check --limit 10 --mailbox "Sent Messages"
node scripts/imap.js check --limit 10 --mailbox "其他文件夹/BOSS直聘简历"
筛选方法:主题包含「BOSS直聘」或「应聘」,且attachments数组非空(含.pdf附件)。
重要:记录已处理过的邮件UID到 /agent/hiring/processed_uids.json,避免重复分析。
Step 2:下载简历PDF
bash
node scripts/imap.js download <uid> --mailbox "<mailbox>" --dir /agent/hiring/resumes/
Step 3:提取简历文本
bash
pdftotext "/agent/hiring/resumes/<filename>.pdf" - 2>/dev/null
注意:BOSS直聘的PDF简历通常包含大量水印噪声(1-4个字符的随机字符串行)。提取后需过滤:
- 移除仅包含1-4个字母数字字符的行
- 移除看起来像水印的长hash字符串行
- 保留有实际内容的行
Step 4:读取岗位需求
读取 /agent/hiring/job_requirements.md 获取当前在招岗位的:
- 必备技能清单
- 加分项
- 评分权重
- 红旗/黄旗/绿旗标准
Step 5:逐份分析并生成报告
对每份简历进行评估,关注以下维度:
- 学历:学校层次、专业相关度
- 工作经验:年限、行业匹配度、技术栈匹配度
- 核心技能:与岗位必备技能的重叠度
- 项目亮点:有无与AI Agent/MCP/OT等核心方向相关的实战项目
- 风险因素:跳槽频率、行业跨度、期望薪资是否超出范围
Step 6:输出报告
报告格式分两部分,要求简洁有力,不要写成论文:
第一部分:推荐人选(最合适的候选人)
对于每一位推荐面试的候选人,输出:
## ⭐ [候选人姓名] — 投递岗位:xxx
**为什么推荐:**
- 闪光点1(一句话说清楚)
- 闪光点2
- 闪光点3
**面试关注点:**
需要验证的地方,用1-2句话说明
**建议提问(3题):**
1. [具体的深度面试问题,不要泛泛而谈]
2. [紧扣候选人简历中的项目/经历来提问]
3. [考察与岗位核心要求的匹配度]
第二部分:其他候选人速览
## 📋 其他候选人(共X人)
| 姓名 | 投递岗位 | 结论 | 一句话原因 |
|------|---------|------|-----------|
| xxx | xxx | ❌不匹配 | 无AI经验,纯传统前端 |
| xxx | xxx | 🔶待定 | 有潜力但经验不足,可留意 |
保持简洁。不匹配的人一句话说清原因即可,不要展开。
文件路径约定
| 文件 | 路径 |
|---|---|
| 岗位需求 | /agent/hiring/job_requirements.md |
| 简历PDF | /agent/hiring/resumes/ |
| 已处理UID | /agent/hiring/processed_uids.json |
| 分析报告 | /agent/hiring/reports/YYYY-MM-DD.md |
Step 7:推送到企业微信群
分析报告完成后,通过企业微信群机器人 Webhook 推送到指定群聊。
配置
- Webhook配置文件:
/agent/hiring/.wecom_webhook - 推送脚本:
/agent/hiring/wecom_bot.sh
推送内容
- Markdown摘要:推荐/待定/不匹配人数 + Top候选人亮点(企微markdown限4096字节)
- 完整报告文件:上传当日分析报告MD文件
- 推荐候选人简历原件:上传推荐面试候选人的PDF简历
API说明
bash
# 发送Markdown消息
curl "$WEBHOOK_URL" -H 'Content-Type: application/json' -d '{"msgtype":"markdown","markdown":{"content":"..."}}'
# 上传文件获取media_id
curl -X POST "$UPLOAD_URL" -F "media=@file.pdf;filename=file.pdf"
# 发送文件消息
curl "$WEBHOOK_URL" -H 'Content-Type: application/json' -d '{"msgtype":"file","file":{"media_id":"..."}}'
限制
- 消息频率:20条/分钟(每次发送间隔至少2秒)
- markdown内容最大4096字节
- 文件大小5B~20MB
- media_id有效期3天
- 企微webhook markdown不支持表格(非v2),用引用/列表代替
执行
bash
bash /agent/hiring/wecom_bot.sh /agent/hiring/reports/YYYY-MM-DD.md /agent/hiring/resumes/
注意事项
- BOSS直聘简历PDF有水印,提取文本时需要过滤噪声
- IMAP中文SUBJECT搜索不可靠,优先用attachment数量和发件人来筛选
- 有些简历是纯图片PDF(如王旭的简历),pdftotext无法提取,需标记为"无法解析"
- 一封邮件可能包含多份简历(如25份打包在一封邮件中)
- 记得更新
processed_uids.json避免重复处理 - 报告生成后自动推送企微群(Step 7),推荐候选人简历附件一并发送