SuperAPI AI Directory

openhr

Office & productivity

View repository

Updated 10-15 08:00

About this skill

OpenHR — Boss Zhipin automated recruitment agent

All 6 major modules passed acceptance ✅ Project path:~/clawd/projects/openhr/


⚠️ Security warning (must read)

  1. Boss Zhipin has strict anti-scraping mechanisms, so all operation intervals must be ≥ 5 seconds
  2. Daily greeting limit is 100 times(Boss official product limit, cannot be bypassed)
  3. Must pause when a CAPTCHA appears, and continue only after manual handling is completed
  4. Account ban risk notice: frequent operations and abnormal behavior may trigger risk control and lead to account bans
  5. Must use a headed browser(has an interface, will pop up windows), cannot use headless
  6. First-time use requires manual QR code login
  7. It is recommended to first use --dry-run for testing, and run it officially after confirming there are no issues

Routing table

Trigger words Submodule Execution script Description
Login Boss / boss login boss-login scripts/boss_login.py QR code login + Cookie persistence
Auto greet / openhr greet / boss greet / greet boss-greet scripts/boss_greet.py Traverse and screen + personalized greetings
Start chat engine / openhr chat chat-engine scripts/chat_engine.py Monitor replies + LLM intelligent follow-up
Resume parsing / openhr resume resume-parser scripts/resume_parser.py Extract resume information
Upload to Feishu / openhr feishu resume-parser scripts/feishu_upload.py Write to Feishu multi-dimensional table
View candidates / openhr candidates boss-greet scripts/boss_greet.py --list List screened candidates
Recruitment monitoring / openhr monitor chat-engine scripts/chat_engine.py --monitor Continuously monitor chat messages
View recruitment progress / openhr status — Directly read status Summarize greet_count.json + chat_logs
Start recruitment boss-greet scripts/boss_greet.py Full recruitment process entry point

Module overview

Module Script Purpose
Login scripts/boss_login.py QR code login + Cookie persistence
Risk control scripts/anti_detect.py Random intervals + CAPTCHA detection + account ban warning
Greeting scripts/boss_greet.py Automatic screening + personalized greetings
Chat scripts/chat_engine.py Monitor replies + LLM intelligent follow-up
Resume scripts/resume_parser.py Resume information extraction
Feishu scripts/feishu_upload.py Feishu multi-dimensional table writing
Knowledge base scripts/knowledge_base.py Scripts + job requirement management

Quick start

Step 1: Log in to Boss Zhipin

cd ~/clawd/projects/openhr
python scripts/boss_login.py
  • The first run will pop up a browser QR code
  • Use the Boss Zhipin APP to scan the QR code and confirm login
  • Cookies are automatically persisted to data/cookies/boss_cookies.json
  • Subsequent runs do not require repeated login (if the Cookie expires, you need to scan the QR code again)

Step 2: Dry-run test (strongly recommended)

cd ~/clawd/projects/openhr
python scripts/boss_greet.py --dry-run
  • Only screen candidates,do not send any messages
  • Preview the greeting scripts, and run formally after confirming there are no issues
  • View data/logs/dry_run.json to learn about the simulation results

Step 3: Formal Greeting

cd ~/clawd/projects/openhr
python scripts/boss_greet.py
  • Default daily limit of 100 times (automatically complies with Boss restrictions)
  • All operation intervals are randomized between 5-15 seconds (built-in risk control protection)
  • Run logs are output in real time, and can be interrupted at any time with Ctrl+C

Step 4: Start the Chat Engine

cd ~/clawd/projects/openhr
python scripts/chat_engine.py
  • Monitor new messages, and LLM generates intelligent replies
  • Supports multiple chat modes (proactive follow-up, passive response, onboarding follow-up, etc.)
  • Chat records are stored in data/chat_logs/

View recruitment progress

# 直接读取状态文件
cat ~/clawd/projects/openhr/data/greet_count.json

# 或运行 status 命令
cd ~/clawd/projects/openhr
python -c "
import json, os
gc = json.load(open('data/greet_count.json'))
print(f'打招呼总数: {gc.get(\"total\",0)}')
print(f'今日打招呼: {gc.get(\"today\",0)}')
print(f'昨日打招呼: {gc.get(\"yesterday\",0)}')
logs = sorted([f for f in os.listdir('data/chat_logs') if f.endswith('.json')])
print(f'聊天记录数: {len(logs)}')
"

Resume parsing + Feishu sync

# 解析简历(支持 PDF、DOCX、图片)
cd ~/clawd/projects/openhr
python scripts/resume_parser.py <简历文件路径>

# 上传解析结果到飞书多维表格
python scripts/feishu_upload.py <简历文件路径>

Feishu configuration:config/feishu.json(app_id and table_id need to be filled in)


Configuration Files

File Description
config/anti_detect.json Risk control parameters (intervals, CAPTCHA detection rules)
config/feishu.json Feishu multidimensional table configuration (app_id, table_id, fields)
config/templates.json Greeting script templates (8 scenarios)
config/llm.json LLM model configuration (provider, model, api_key)
data/knowledge/ Job requirements, script library, chat modes, feedback templates

Detailed documentation for submodules


Quick Command Reference

cd ~/clawd/projects/openhr

# 登录
python scripts/boss_login.py

# 打招呼(测试)
python scripts/boss_greet.py --dry-run

# 打招呼(正式)
python scripts/boss_greet.py

# 列出候选人
python scripts/boss_greet.py --list

# 聊天引擎
python scripts/chat_engine.py

# 聊天监控
python scripts/chat_engine.py --monitor

# 简历解析
python scripts/resume_parser.py path/to/resume.pdf

# 飞书上传统一简历
python scripts/feishu_upload.py path/to/resume.pdf