这个项目能做什么

# Job Agent 一个自主求职申请代理,自动化整个求职生命周期——从职位发现到申请跟踪。 ## 功能简介 Job Agent 连接主流求职平台(LinkedIn、Indeed、Glassdoor、ZipRecruiter、Dice、Wellfound),发现职位信息,使用 AI 根据可配置的候选人资料进行评分,为每次申请定制简历,并自动提交高置信度的匹配。中等置信度的职位会进入 Web 仪表盘中的手动审核队列。 ## 主要特性 **多平台职位发现** 支持 LinkedIn、Indeed、Glassdoor、ZipRecruiter、Dice 和 Wellfound,并为每个平台提供速率限制和会话管理。 **AI 驱动匹配** 使用可配置的 AI 提供商(Google Gemini(免费)、Groq(免费)、Ollama(本地)、OpenRouter 和 Anthropic Claude)对每个职位按 0.0–1.0 评分。 **简历与求职信定制** 为每次申请自动生成 ATS 优化的简历(PDF)和可定制的求职信。支持专业、随意和正式三种语气。 **外部 ATS 处理** 当招聘网站重定向到公司招聘页面时,代理会检测并填写 Greenhouse、Lever、Workday、Ashby 以及通用申请门户的表单。同时处理筛选问题和邮件申请流程。 **分级自主性** - 评分 ≥ 0.80:自动申请 - 评分 0.70–0.79:进入手动审核队列 - 评分 < 0.70:跳过 阈值可通过仪表盘或 YAML 配置文件设置。 **Web 仪表盘** Flask + HTMX + Bootstrap 5 界面,地址为 http://127.0.0.1:5000,包含概览、职位、审核队列、申请、外联、分析和设置页面。所有配置均可通过 UI 完成——无需编辑文件。 **交互式机器人** Telegram 机器人(长轮询,无需公网 URL)和 Discord 机器人(斜杠命令),用于批准/拒绝职位、查看队列状态以及从手机查看统计信息。 **反检测浏览器** 使用 Camoufox 隐身浏览器,具有类人打字、鼠标移动、随机延迟和会话轮换,以降低检测风险。 **通知与外联** 电子邮件(SMTP)、Slack/Discord webhook、Telegram 提醒。AI 生成的冷邮件和 LinkedIn 招聘人员连接请求。 **调度** APScheduler,可配置活动时间窗口(默认上午 8 点至晚上 11 点)。可运行一次、按计划运行或干跑模式。 ## 快速开始 git clone https://github.com/billmal071/job-agent.git cd job-agent uv sync uv run playwright install chromium uv run job-agent init-db uv run job-agent dashboard 访问 http://127.0.0.1:5000/settings 配置 AI 提供商、平台凭据、阈值和通知。 ## 个人资料生成 在仪表盘中上传您现有的简历(PDF/DOCX),AI 会提取技能、经验水平和目标职位,自动生成可搜索的个人资料。 ## 多个人资料 支持为不同的求职搜索(例如全栈 vs. 运维)设置单独的资料,每个资料都有自己的关键词、地点、薪资期望和简历模板。 ## Docker 支持 docker compose up dashboard # 或 docker compose run --rm agent ## 安全性 - 平台凭据使用 Fernet 加密(密钥位于 ~/.job-agent/fernet.key) - API 密钥位于 .env(已 gitignore) - 数据库位于 ~/.job-agent/agent.db(SQLite,仓库外) - 浏览器状态单独持久化 ## 许可证 MIT