SuperAPI AI 工具集

boss-agent-cli

boss-agent-cli 是一个面向真人与 AI Agent 的本地辅助 BOSS 直聘招聘平台命令行工具。它把职位发现、福利筛选、本地简历与 AI 分析、投递沟通、招聘者候选人处理以及可恢复采集整合进同一套 CLI。真人可直接运行 boss 进入纯终端向导,Agent 则通过 JSON、schema、MCP 或 Python API 调用同一套 workflow 与状态。其核心差异点是福利筛选:支持按“双休, 五险一金”等条件自动翻页补抓并按 AND 逻辑做真实匹配,还可按本地匹配分排序。命令输出统一为 JSON 信封,stdout 仅输出结构化结果,适合 Shell Agent、MCP 与 Python SDK 编排。工具默认低风险、合规运行,遇到平台风控会停止并保存检查点。需要 Python 3.10 及以上环境,批量采集需额外安装爬虫依赖。

访问官网

工具介绍

boss-agent-cli 是一个面向真人与 AI Agent 的本地辅助 BOSS 直聘招聘平台命令行工具(CLI),把职位发现、福利筛选、本地简历与 AI、投递沟通、招聘者候选人处理和可恢复采集统一到一个 CLI 中。

用途与定位 真人可以直接运行 boss 进入纯终端向导;Agent 使用 JSON、schema、MCP 或 Python API 调用同一套 workflow 与状态。boss schema 始终是能力真源。历史配置 operating_mode=assisted|research 继续兼容,两种模式都可调用全部已实现能力,不再产生模式级 COMPLIANCE_BLOCKED;平台尚未实现的能力仍准确返回 NOT_SUPPORTED,认证失效、账号风险和网络错误保留结构化错误与恢复动作。长流程仍受 timeout、retry、预算、checkpoint 和 stop 控制。

主要能力

  • 职位发现:关键词搜索 + 8 维筛选,按编号回看缓存结果(search show detail)。
  • 福利筛选(核心差异化):--welfare "双休,五险一金" 自动翻页补抓、按 AND 逻辑做真实匹配,并可用 --sort score 按本地匹配分排序(search --welfare)。
  • HR 活跃度筛选:--active 3d 只保留最近活跃的 HR,避免把投递次数浪费在长期不上线的岗位上;online 只看列表、请求量与普通搜索相同,其余档位可能要逐个查职位详情,更慢、风控风险更高,低风险场景建议用 --active online(search --active)。
  • 纯终端向导:直接运行 boss 或 boss wizard,选择角色、平台和目标;同一 workflow 也可用 --input-json、run ID 或 MCP 推进和恢复。
  • 本地候选池与统计:查看详情后本地保存、读取带有效状态的网页职位收藏并仅同步有效项,用标签和备注复盘候选岗位、离线对比、查看漏斗统计(shortlist stats watch preset favorites)。
  • AI 求职增强 + 本地模型:JD 分析、简历润色、定向优化、候选池匹配、模拟面试、沟通指导;本地模型权重外置,支持 Ollama/vLLM 的 OpenAI 兼容接口(ai analyze-jd、ai local configure、ai local smoke)。
  • Schema 驱动 + JSON 信封:stdout 只输出 {ok, data, pagination, error, hints} 信封,boss schema 是能力真源,适合 CLI 编排 / Shell Agent / MCP / Python SDK。
  • 招聘者完整链路:候选人搜索、推荐牛人、首次招呼、附件简历接收与下载、简历、聊天/最近消息、回复和职位管理(hr candidates/recommendations/greet/applications/resume/chat/last-messages/reply/request-resume/accept-resume/download-resume/jobs)。
  • 平台抽象:Platform / RecruiterPlatform 双注册表 + --platform 全局选项;当前注册平台为 zhipin(BOSS 直聘)。

使用方式 所有命令输出结构化 JSON(ok 判断成败,exit 0/1)。完整上手见项目内快速上手文档。boss hr ... 与招聘者侧 agent 自动化当前均只支持 zhipin-recruiter。推荐先读 Agent Quickstart、Capability Matrix、Host Examples。 不想在本机配 Python 工具链,可用仓库自带的容器:BOSS_UID=$(id -u) BOSS_GID=$(id -g) docker compose run --rm boss-mcp。镜像刻意不含浏览器内核——先在宿主机 boss login,再把 ~/.boss-agent 挂进去,详见 Docker 接入。 OpenCode 源码项目可直接使用仓库示例:portable / 全局安装后,在任意 OpenCode 项目里使用 examples/opencode.json,它会启动 boss-mcp --data-dir ./.boss-agent,让 review、pending、日志按项目隔离。 boss schema 暴露 39 个顶层命令 + 13 个一级招聘者子命令,按工作流分组:

  • 认证:login · logout · status · doctor
  • 职位发现:search · detail · show · cities · history
  • 本地整理:watch · preset · shortlist · stats · favorites
  • 可恢复采集:crawl configure/run/start/status/results/resume/stop/shortlist
  • 简历 / AI:resume · me · ai analyze-jd · ai polish · ai optimize · ai fit · ai suggest-keywords · ai resume-optimize · ai cover-letter · ai interview-prep · ai chat-coach · ai local
  • 系统 / workflow:wizard · schema · platforms · export · config · clean
  • 候选者动作:greet · batch-greet · apply · exchange · chat* · pipeline · digest
  • 招聘者:hr applications/candidates/recommendations/greet/resume/chat/chatmsg/last-messages/reply/request-resume/accept-resume/download-resume/jobs 完整命令表、参数与福利筛选原理见命令参考;能力真源是 boss schema(支持 --format openai-tools / anthropic-tools 导出工具定义)。

采集与风控 批量采集需要额外安装:uv sync --extra crawl。它使用独立的 <data-dir>/crawl/chrome-profile,不会接管日常 Chrome profile。默认不注入 Hook;如需使用本地脚本,必须同时显式提供 Hook 档位和包含 SHA256SUMS 的目录。crawl run 顺序执行并保存 SQLite 断点和 JSON / CSV / XLSX 增量产物;请求数、详情数、墙钟时间和重试均受固定预算约束,boss crawl stop 可在下一个安全点停止。导出和 crawl results 默认不会暴露 security_id、职位 ID 或招聘者字段;执行 boss clean --privacy 会删除 crawl 状态、预算和导出。细粒度 MCP crawl tools 读取或导入已有 run_id;boss_wizard 可通过共享 workflow 启动、恢复和停止任务。出现平台风险码或安全页时停止并返回恢复命令。

配置与数据 配置位于 ~/.boss-agent/config.json:运行模式(operating_mode=assisted|research)、请求间隔、批量打招呼间隔、日志级别、CDP 地址、导出目录、平台 / 角色。所有状态在 ~/.boss-agent/:加密登录态、搜索缓存、候选池、本地简历、AI 配置与外置模型登记。模型权重不进入 Python 包;除显式发起的 API 调用或本地模型下载外,数据不离开本机。不变量:stdout 仅 JSON 信封、stderr 仅日志、exit 0/1、错误含 code/recoverable/recovery_action、boss schema 为能力真源。双受众提示:hints.next_actions 是给 Agent 执行的后继命令,hints.operator_actions 是给真人操作者的自然语言指引;TTY 下只渲染后者到 stderr,Agent 应把它转述给操作者。

技术栈与迁移 技术选型:Python ≥ 3.10 · Click · httpx · patchright / CDP(登录、导出与声明的浏览器 adapter)· cryptography(Fernet)· sqlite3(WAL)· pytest(1600+ 项)。v3.0.0 迁移:Browser Bridge daemon、Chrome 扩展和 [bridge] 安装 extra 已移除。升级 CLI 不会停止旧 daemon,也不会卸载浏览器扩展,请手动停止旧 daemon,禁用或移除旧扩展,并从安装命令中去掉 [bridge]。浏览器默认降级链为 CDP → headless;若要只复用已有会话,先在本机 CDP 浏览器的官方页面手动登录再运行。该来源不新建页面、不导航、不注入 Cookie,也不启动浏览器。CDP 调试端口仅用于本机可信环境,不要暴露到公网或用来绕过平台风控。

适用场景与限制 适用于求职者职位搜索与福利筛选、本地候选池管理与统计、AI 简历优化与面试准备,以及招聘者候选人处理等场景。限制:招聘者侧仅支持 zhipin-recruiter;批量采集需额外安装依赖;错误信封统一携带 code + recoverable + recovery_action 以便程序化恢复;boss doctor 检查 CDP 可达性并汇总 browser_channel 状态;chat / chatmsg 在默认 auto 来源下使用本地凭据的 httpx,显式选择 --browser-source existing-browser 才会通过 CDP 复用已有目标页且不读取 CLI 保存的 Cookie;现有浏览器候选耗尽返回 BROWSER_SESSION_NOT_FOUND + boss doctor,普通未登录路径仍返回 AUTH_REQUIRED + boss login。所有来源命中平台风控时都停止当前 workflow 并保存 checkpoint;适配器必须有限运行、脱敏、可停止,并只在风险状态解除后显式恢复。使用时请遵守适用法律、平台协议和隐私要求,对批量触达、候选人个人数据和浏览器适配设置明确的输入、数量、超时和停止条件,并妥善保护本地凭据与导出产物。因不当使用产生的后果由使用者自行承担,与项目作者无关。项目采用 MIT 许可。