BOSS直聘 AI 求职全流程系统 — 搜索、评估、投递、沟通、面试、谈判闭环
Project description
Boss-Career-Ops
BOSS 直聘求职全流程 CLI 工具。覆盖从职位搜索到拿到 offer 的完整闭环。
核心原则:规则引擎评估推荐,人决定行动。系统自动执行高分职位,低分职位需人工确认。
功能概览
- 职位搜索 — 关键词 + 城市 + 福利多维筛选,搜索缓存减少 API 调用
- 5 维评估 — 匹配度、薪资、地点、发展、团队自动评分,全行业同义词表,匹配/不匹配原因输出
- 阈值驱动 — batch-greet 内置阈值逻辑,B 级自动打招呼,D 级自动跳过
- 简历定制 — 根据职位 JD 生成 ATS 友好的 MD/PDF 简历,关键词注入
- 批量打招呼 — 高斯随机延迟 + 随机长停顿,最大 10 个,防封号
- 聊天管理 — 消息历史、摘要、标签、导出
- 求职流水线 — 发现→评估→投递→沟通→面试→offer 全程追踪,所有操作结果自动入库
- 面试准备 — 基于职位信息生成面试要点
- Web 仪表盘 — 求职决策仪表盘,5 维评分可视化、Pipeline 看板、零配置可用
- TUI Dashboard — 终端可视化求职看板
快速开始
安装
# 推荐:uv 全局安装
uv tool install boss-career-ops
# 或 pip
pip install boss-career-ops
# 或从源码安装
uv tool install git+https://github.com/maimaigptlink9/boss-career-ops.git
要求:Python >= 3.12
开发模式
git clone https://github.com/maimaigptlink9/boss-career-ops.git
cd boss-career-ops
uv sync
uv run bco <cmd>
uv run pytest
初始化
# 1. 环境诊断
bco doctor
# 2. 首次使用,初始化配置
bco setup
# 3. 登录 BOSS 直聘(自动检测 Chrome Profile,4 级降级)
bco login
# 4. 确认登录态
bco status
基本使用
# 搜索职位
bco search "Golang" --city 广州 --welfare "双休,五险一金"
# 对搜索结果批量评估
bco evaluate --from-search
# 批量打招呼(内置阈值逻辑)
bco batch-greet "Golang" --city 广州
# 生成定制简历
bco resume <job_id> --format pdf
# 查看求职流水线
bco pipeline
# 启动 Web 仪表盘(零配置可用,规则引擎开箱即用)
bco web
评估引擎
5 维评分体系
| 维度 | 权重 | 评估内容 |
|---|---|---|
| 匹配度 | 30% | 技能、经验、学历与 JD 的匹配程度(全行业同义词表 ~100 组) |
| 薪资 | 25% | 薪资范围与预期的对比,连续评分(非阶梯跳变) |
| 地点 | 15% | 城市偏好、邻近城市支持、远程可能性 |
| 发展 | 15% | 职业成长空间(按岗位类型选关键词:技术/产品/运营/市场/设计/数据/管理) |
| 团队 | 15% | 公司阶段、团队文化(按岗位类型选关键词) |
评分改进
- 评分区分度提升:发展/团队基准分从 3.0 降至 1.5,解决评分集中在 C 级的问题
- 全行业同义词表:覆盖技术/产品/运营/市场/设计/数据/财务/人力/销售/内容/电商/法务/行政/通用共 ~100 组
- 匹配原因输出:每个评估结果包含
match_reasons(优势)和mismatch_reasons(不足) - 信息不足标记:搜索结果缺 description 时标记
confidence: "preliminary",提示查看详情后评分可能变化 - 薪资连续评分:用连续函数替代阶梯跳变,5K 差距不再导致 1.0 分跳变
- 邻近城市支持:广州→深圳 3.5 分(而非 2.0),北京→天津同理
评分等级与自动动作
| 等级 | 分数 | 含义 | 自动动作 |
|---|---|---|---|
| A | 4.5-5.0 | 强烈推荐 | 自动投递 |
| B | 3.5-4.4 | 值得投入 | 自动打招呼 |
| C | 2.5-3.4 | 一般 | 需人工确认 |
| D | 1.5-2.4 | 不太匹配 | 需人工确认 |
| F | 0.0-1.4 | 不推荐 | 跳过 |
命令参考
环境与认证
| 命令 | 说明 |
|---|---|
bco doctor |
环境诊断 |
bco setup |
初始化配置(首次使用) |
bco login |
登录(4 级降级:Bridge Cookie→CDP→QR httpx→patchright),支持 --profile 指定 Chrome 配置文件 |
bco logout |
清除本地登录态 |
bco status |
检查登录态 |
bco bridge status |
查看 Bridge Daemon 状态 |
bco bridge test |
Bridge 连通性诊断(3 步检查) |
bco skill-update |
检查远程版本并获取最新 skill.md 内容 |
职位搜索与评估
| 命令 | 说明 |
|---|---|
bco search <keyword> --city <city> --welfare <welfare> |
搜索职位 + 福利筛选 |
bco recommend |
个性化推荐 |
bco evaluate [target] 或 --from-search |
5 维评估 |
bco detail <security_id> |
查看职位完整详情(双通道降级) |
投递与沟通
| 命令 | 说明 |
|---|---|
bco greet <security_id> <job_id> |
打招呼 |
bco batch-greet <keyword> --city <city> |
批量打招呼(最大 10 个) |
bco apply <security_id> <job_id> |
投递简历 |
bco apply <security_id> <job_id> --resume <job_id> |
投递前先上传简历再投递 |
bco resume <job_id> --format <md|pdf> |
生成定制简历 |
bco resume <job_id> --format pdf --upload |
生成 PDF 并上传到 BOSS 直聘平台 |
聊天管理
| 命令 | 说明 |
|---|---|
bco chat --export <csv|json|html|md> |
聊天管理 + 导出 |
bco chatmsg <security_id> |
聊天消息历史 |
bco chat-summary <security_id> |
聊天摘要 |
bco mark <security_id> --tag <tag> |
联系人标签 |
流水线与导出
| 命令 | 说明 |
|---|---|
bco pipeline |
求职流水线追踪(数据来自搜索/评估/投递等操作的自动入库) |
bco export <keyword> -o <output> --format <csv|json|html|md> |
多格式导出 |
面试与 Dashboard
| 命令 | 说明 |
|---|---|
bco interview <job_id> |
面试准备 |
bco dashboard |
启动 TUI Dashboard |
bco web |
启动 Web 仪表盘(求职决策仪表盘,零配置可用) |
配置
所有配置存储在 ~/.bco/ 目录(可通过 BCO_HOME 环境变量自定义)。
个人档案 — ~/.bco/config/profile.yml
name: ""
title: ""
experience_years: 0
skills: []
expected_salary:
min: 0
max: 0
preferred_cities: []
remote_ok: false
education: ""
career_goals: ""
avoid: ""
简历 — ~/.bco/cv.md
Markdown 格式的完整简历,评估引擎和简历生成器都会读取此文件。越详细,评估越准确。
自动执行阈值 — ~/.bco/config/thresholds.yml
auto_action:
auto_greet_threshold: 4.0 # B+ 及以上自动打招呼
auto_apply_threshold: 4.5 # A 级自动投递
skip_threshold: 2.0 # D 级及以下直接跳过
confirm_required: true # 中间分数段需人工确认
rate_limit:
request_delay_min: 1.5 # 请求最小延迟(秒)
request_delay_max: 3.0 # 请求最大延迟(秒)
batch_greet_max: 10 # 批量打招呼上限
batch_greet_delay_min: 2.0 # 批量打招呼最小延迟
batch_greet_delay_max: 5.0 # 批量打招呼最大延迟
burst_penalty_multiplier: 2.0 # 突发惩罚倍数
retry_max_attempts: 3 # 最大重试次数
retry_base_delay: 5.0 # 重试基础延迟
retry_max_delay: 60.0 # 重试最大延迟
search_page_delay_min: 3.0 # 搜索翻页最小延迟
search_page_delay_max: 6.0 # 搜索翻页最大延迟
search_max_pages: 5 # 搜索最大翻页数
cache:
default_ttl: 3600 # 默认缓存 TTL(秒)
search_ttl: 1800 # 搜索缓存 TTL(秒)
Web 仪表盘
bco web 启动求职决策仪表盘(FastAPI + Alpine.js),定位是评分和 Pipeline 的可视化,不是 BOSS 网页的复刻。
核心页面
| 页面 | 功能 | BOSS 网页可替代 |
|---|---|---|
| 决策看板 | Pipeline 看板 + 5 维评分卡片 + 优劣势分析 + 待办 | ❌ |
| 设置 | 个人档案编辑 + 阈值配置 | ❌ |
技术架构
浏览器 → FastAPI (web/server.py) → PipelineManager / BossAdapter / EvaluationEngine
- 后端:FastAPI,业务逻辑通过
pipeline/manager.py、pipeline/analytics.py调用 - 前端:Alpine.js (CDN) + 原生 JS,暗色主题,无构建工具
- 安全:默认绑定
127.0.0.1,API Key Fernet 加密存储,写操作需认证
安全说明
- Token 使用 Fernet 加密存储(PBKDF2 密钥派生,绑定机器+用户)
- API Key 使用 Fernet 加密存储(Web 设置页保存时加密)
- 请求间隔使用高斯随机延迟 + 5% 概率随机长停顿,模拟人类行为
- 浏览器通道共享节流器,防止降级后请求密度失控
- Cookie 回写机制,捕获服务端 Set-Cookie 更新
- Token 自动刷新(stoken 过期时 CDP 优先刷新)
- 批量操作内置上限(batch-greet 最大 10 个)
- 敏感信息不输出到日志
- CSV 导出防止公式注入,文件导出防止路径遍历
- Web 仪表盘默认绑定
127.0.0.1,写操作需BCO_WEB_API_KEY认证
参考项目
本项目融合了以下两个开源项目的核心能力:
- boss-agent-cli — AI Agent 专用的 BOSS 直聘求职 CLI 工具,提供平台操作能力(搜索、打招呼、投递、聊天等)
- career-ops — AI 驱动的求职评估系统,提供智能评估能力(多维评分、简历定制、面试准备等)
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file boss_career_ops-0.10.0.tar.gz.
File metadata
- Download URL: boss_career_ops-0.10.0.tar.gz
- Upload date:
- Size: 198.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1554aa248de5c38758b010ef3bfb8212db22209b49ccfae904fe30bd3d94938
|
|
| MD5 |
ec729be0d694b56a7bf4cc33e4619288
|
|
| BLAKE2b-256 |
4c44e6ec029fc52072a2fcc60c48dc39845ec89c8f5b0a926f8204de080cf6b1
|
File details
Details for the file boss_career_ops-0.10.0-py3-none-any.whl.
File metadata
- Download URL: boss_career_ops-0.10.0-py3-none-any.whl
- Upload date:
- Size: 129.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
94007cb92f43f397d6dd151421ea93f7ee953966ff95fe34c2cb418254fd7f6c
|
|
| MD5 |
8aae6456027fae5d9339c68bbe677111
|
|
| BLAKE2b-256 |
f599b87903b6d643bb353fab7eb6449401ced7ead56e1a9aee26336c07e9f7ef
|