can4hou6joeng4/boss-agent-cli

🤖 Local-assist BOSS Zhipin CLI for AI agents — search, welfare filtering, shortlist, JSON-envelope output; low-risk & compliant by default.

boss‑agent‑cli – 面向终端优先的求职与招聘助手

它是什么

  • 一个基于 Python 的命令行界面,让人类用户或 AI 代理能够与中国求职平台 BOSS 直聘(zhipin)交互。它将整个招聘工作流程——职位发现、福利筛选、本地候选清单、AI 增强的简历工作、以及招聘方操作——整合到一个单一的、以 JSON 输出驱动的 CLI 中。

为什么重要

  • 该工具将平台抽象在一个模式驱动的 JSON 信封({ok, data, pagination, error, hints})之后,使下游自动化(MCP 主机、Shell 脚本、Python SDK)无需直接抓取 HTML 即可轻松使用这些功能。
  • 它增加了一个**“福利过滤器”**,支持 AND 逻辑匹配福利(例如,双休、五险一金),并能按本地相关性分数对结果排序——这是原生网站没有的功能。
  • 所有繁重工作(搜索、详情检索、聊天、简历润色)都可以通过 本地 LLM(Ollama/vLLM 或任何 OpenAI 兼容端点)驱动,将数据保留在用户的机器上。

主要功能

领域 命令(示例) 亮点
职位发现 boss search "Golang" --city 广州 --welfare "双休,五险一金" 关键词搜索 + 8 维筛选,缓存结果,HR 活跃度筛选(--active 3d)。
福利过滤 --welfare "双休,五险一金" --sort score 自动分页,实时匹配,基于分数的排名。
本地候选池 boss shortlist add <sec_id> <job_id> --tags 后端,远程
boss stats
基于 SQLite 的候选清单,支持标签、备注、漏斗统计。
AI 增强的求职者工具 boss ai analyze-jd
boss ai polish
boss ai local configure
JD 分析、简历润色、面试模拟;可与外部 LLM 配合使用。
招聘方工作流 boss hr candidates "Python" --city 101010100
boss hr greet
boss hr download-resume
搜索候选人、发送问候、管理申请、聊天、下载简历——全部通过同一 CLI。
代理集成 boss schema(输出 OpenAI/Anthropic 工具定义)
boss-mcp(MCP 主机)
JSON 模式是唯一的事实来源;可通过 MCP、子进程或 Python SDK 调用。
可恢复爬虫 boss crawl configure …
boss crawl run …
无头 Chrome(CDP)驱动的爬取,带检查点、预算限制和隐私安全导出。

典型的人类工作流

# 安装(推荐使用 uv)
uv tool install boss-agent-cli
patchright install chromium   # 需要 Chrome 登录

# 启动交互式向导
boss

# 使用福利过滤器搜索
boss search "Golang" --city 广州 --welfare "双休,五险一金"

# 将有希望的职位添加到本地池
boss shortlist add <security_id> <job_id> --tags 后端,远程

# 运行 AI 辅助的简历润色
boss ai polish --model ollama:mistral

# 查看离线统计
boss stats

代理/程序化使用

  • MCP 主机 – 通过 JSON 配置公开 77 个已实现工具:
    {"mcpServers": {"boss-agent": {"command": "uvx", "args": ["--from", "boss-agent-cli[mcp]", "boss-mcp"]}}}
    
  • 子进程 – 调用 boss schema 获取工具定义,然后调用命令并解析 JSON 信封。
  • Python SDK – 导入 BossClient:
    from boss_agent_cli import AuthManager, BossClient
    client = BossClient(AuthManager(...))
    result = client.search_jobs("Golang", city="广州")
    

架构概览

CLI (Click) ──> AuthManager (Fernet 加密登录) ──> Platform registry (zhipin, zhipin‑recruiter)
          │                     │
          │                     └─> BossClient (httpx + 限速,可选 CDP 桥接)
          │
          └─> CacheStore (SQLite WAL) ──> AIService (OpenAI 兼容 / Ollama / vLLM)
                │
                └─> output.py → JSON 信封 (stdout)

所有状态都存放在 ~/.boss-agent/(加密凭据、搜索缓存、候选清单、AI 配置)。不提供模型权重;按需获取。

安装与分发

  • 发布在 PyPI 上(boss-agent-cli)。
  • 也可通过 Docker 分发(docker compose run --rm boss-mcp)。
  • 支持爬虫的可选扩展(uv sync --extra crawl)。

许可证

  • MIT 许可证(见 LICENSE)。

适用人群

  • 喜欢终端界面并希望获得 AI 辅助简历工作的求职者。
  • 在 BOSS 直聘上需要可脚本化方式来管理候选人的招聘者。
  • 需要稳定、基于 JSON 的访问平台接口的自动化工程师/AI 代理(例如,构建个人求职机器人或集成到更大的 RAG 流水线)。

注意事项

  • 登录和爬取需要 Chrome/Chromium 安装(由 patchright 处理)。
  • 平台特定:目前仅支持 BOSS 直聘;不支持其他中国招聘网站。
  • 用户必须遵守平台条款、速率限制和隐私法规;该工具提供结构化错误代码(NOT_SUPPORTED、AUTH_REQUIRED 等)和内置超时/重试控制,以帮助保持合规。

完整的命令参考、快速入门指南和故障排除步骤,请参阅仓库的 docs/ 文件夹。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目