| name | findjobs |
| description | Use when working with findjobs, a local-first AI job-application assistant that uses the user's own LLM API and logged-in browser session to search jobs, score resume/JD fit, draft greetings, apply or start recruiter conversations, auto-reply to routine recruiter messages, and track applications locally. Use for explaining, packaging, operating, documenting, marketing, or extending this repository. |
findjobs skill
名称
“findjobs|AI 求职跟进助手”skill
简介
findjobs 是一个本地运行的 AI 自动求职助手:用你的招聘账号和你自己的 LLM API,帮你完成岗位搜索、规则过滤、简历与 JD 匹配打分、个性化打招呼、投递/沟通、招聘方常规回复和本地追踪。
它覆盖 Boss直聘、猎聘、前程无忧、智联招聘、拉勾,以及海外公司官网/ATS 表单。核心不是“无脑海投”,而是先筛选、再匹配、再预览,确认后再执行;遇到约面、谈薪、要电话、验证码、平台限制或不确定问题时,交还给真人处理。
如果把这个 skill 用在小红书/内容上传场景,输入材料限制为:
- 支持上传单个
.md 文件
- 支持上传一个包含
.md / .txt 文件的文件夹
- 单文件最大 10MB
- 总大小不超过 30MB
- 不支持图片、音频、视频、PDF、压缩包或其它格式
介绍
findjobs
AI 自动投简历助手。
一条命令,跑遍 Boss直聘 / 猎聘 / 前程无忧 / 智联招聘 / 拉勾,外加海外公司官网。它在本地运行,用你自己的模型、你自己的账号、你自己的浏览器登录态,把“找岗位、看 JD、判断匹配、写开场白、投递、跟进聊天”串成一条可预览、可追踪、可接管的流程。
它不是那种“批量乱投”的工具
找工作最累的地方,往往不是点下投递按钮。
真正消耗人的,是每天打开多个平台、筛掉外包和中介、判断 JD 到底合不合适、给不同岗位写不一样的开场白、投完以后还要盯着招聘方消息。尤其在 Boss直聘上,很多时候“投递”本身就是一次聊天开场;聊得慢、回得硬、已读不回,机会就很容易断掉。
findjobs = 本地 AI 求职工作台。
它先把明显不合适的岗位过滤掉,再用 LLM 对“你的简历 ↔ 岗位 JD”打分,分数够才生成个性化打招呼;投递之后,还能处理招聘方的常规问答。拿不准、需要真人判断、涉及面试和薪资时,它不会硬编,而是转人工。
它到底帮你做什么
| 环节 | findjobs 做什么 | 关键边界 |
|---|
| 搜索岗位 | 按关键词和平台抓取你账号可见的岗位 | 不绕过登录,不走平台私有 API |
| 规则过滤 | 城市、薪资、黑名单、外包/中介先过滤 | 先便宜规则,再花 token |
| AI 匹配 | 简历和 JD 语义打分,给出理由和顾虑 | 低于阈值直接跳过 |
| 打招呼 | 为每个岗位生成不同的开场白 | 只使用简历事实,不编造 |
| 投递/沟通 | Boss/猎聘走沟通,51job/智联/拉勾走投递 | 默认 dry-run,确认后才 live |
| 自动回复 | 读取未读会话,回复常规问题 | 约面、谈薪、要电话、不确定就转人工 |
| 本地追踪 | SQLite 记录岗位、状态、配额、历史 | 数据留本机,便于去重和复盘 |
支持的平台
| 平台 | 代号 | 机制 | 自动沟通 |
|---|
| Boss直聘 | boss | 打招呼即投递 | 支持 |
| 猎聘 | liepin | 投递 / 沟通 | 支持 |
| 前程无忧 51job | job51 | 申请职位 | 不支持 |
| 智联招聘 | zhilian | 申请职位 | 不支持 |
| 拉勾 | lagou | 投递简历 | 不支持 |
| 海外/公司官网 | generic | ATS 表单自动填写 | 不支持 |
海外官网模式不是统一搜索源,而是把目标职位 URL 写进配置里。findjobs 会识别常见 ATS,例如 Greenhouse、Lever、Ashby、Workday,填写基础字段、上传简历,并用 LLM 处理自由文本问题;不确定字段留给你手动补。
典型使用流程
pip install -e .
playwright install chromium
findjobs init
findjobs doctor
findjobs login
findjobs apply
findjobs apply --no-dry-run
findjobs chat
findjobs status
日常使用时,最稳的路径是:
findjobs init 生成 config.yaml 和 resume.yaml
- 如实填写简历、技能、项目、常见问答
- 配置自己的 LLM provider 和 API key
findjobs doctor 做环境自检
findjobs login 扫码登录平台
- 先跑
findjobs apply,默认 dry-run 预览匹配分、理由和打招呼
- 确认没问题后,再用
findjobs apply --no-dry-run
- 用
findjobs chat 处理招聘方常规回复
- 用
findjobs status / findjobs list 看进展
AI 自动聊天怎么接管
自动聊天只处理“可以基于简历事实回答”的问题。
它会读取最近会话、恢复岗位上下文、把简历和常见问答交给你的模型,让模型判断:这条消息应该自动回复,还是转人工。
会自动转人工的情况包括:
- 约面试时间
- 谈薪资和 offer
- 要手机号、微信或其它敏感信息
- 对方问到简历里没有的事实
- 模型不确定
- 已经自动回复多轮
- 发送失败
它的目标不是替你“演一个更完美的人”,而是把你真实简历里的信息表达得更快、更稳。
数据和隐私
findjobs 默认本地运行:
- 简历留在本机
- Cookie / 登录态留在本机浏览器 profile
- 投递历史和聊天状态写入本地 SQLite
- LLM 调用走你自己配置的服务商
- webhook 只有在你主动配置时才会外发
需要保守表达的一点是:数据不是绝对不出本机。只要你配置了外部 LLM provider,发给模型的简历片段、岗位信息或会话上下文就会进入你选择的服务商。findjobs 的边界是:它不自建中转服务器,也不替你偷传数据。
风险边界
招聘平台通常限制自动化访问。findjobs 驱动的是你本人登录的浏览器,会尽量保持拟人化节奏、每日配额和 dry-run 预览,但这不等于“无风险”。
使用时应该遵守这些原则:
- 不把配额调成机械海投
- 不绕过验证码
- 不全天候 7×24 跑
- 不采集和倒卖岗位或简历数据
- 不让模型编造经历、学历、薪资或承诺
- 平台触发限制、验证墙或异常时停止
一句话:把它当成“更勤快的你自己”,不是刷量脚本。
适合谁
适合:
- 正在密集求职,需要同时看多个招聘平台的人
- 想减少机械投递、提升匹配质量的人
- 需要 Boss/猎聘这类聊天型投递辅助的人
- 懂一点命令行,愿意配置自己的 LLM API 的人
- 重视本地数据和可追踪历史的人
不适合:
- 想完全无人值守海投的人
- 想绕过平台限制或验证码的人
- 不愿意检查 dry-run 内容的人
- 期待工具保证面试或 offer 的人
一句话
findjobs 帮你把求职里的重复劳动交给本地 AI:先筛岗位,再判断匹配,再写开场白,再跟进常规聊天;关键决定永远留给你。