它做什么
它替你做四件事。
说一次你想要什么。之后按你定的时间,剩下的交给它。
- 一处发现
所有来源,汇成一条。
挑你在乎的招聘网站和公司招聘页,全部汇进一个列表。同一个岗位发在五个网站,只出现一次;中介和已下线的岗位会标出来;JD 里藏着想左右 AI 的文字,在你的 AI 读到之前就被清掉。
- LinkedIn、Indeed、Google Jobs;德国市场另有 StepStone、XING、Arbeitsagentur
- Greenhouse、Lever、Ashby、Personio、SmartRecruiters 上的公司招聘页
- Gmail 里你自己的职位提醒邮件
- 按你定制 核心
你的规则说了算。
定好薪资底线、城市、合同类型、不想去的公司。再用大白话(什么语言都行)写下你最看重什么、什么算加分、什么绝不接受。碰上“绝不接受”的岗位,直接沉到最底下。
- 薪资底线、城市、合同类型、拉黑公司
- 用自己的话写打分标准
- 自定义信号类别和保存的视图
- AI 帮你读
每个岗位它都读,你不用。
每份 JD 都有 0–100 的匹配分,写明为什么合适、差在哪。埋在正文里的薪资被找出来、附上原文、换算成年薪。长 JD 能拆成工作内容、技术栈和硬性要求,看你的技能命中几条,还能翻成你的语言。
- 匹配分,附理由和差距
- 找出薪资、附原文、换算年薪
- 岗位拆解、技能对照、翻译
- 推到手机
好的,直接送到你手上。
每轮处理完,过线的岗位推到 Telegram,带着分数、薪资和标签。直接点 👍 感兴趣、🚫 忽略 或 📄 定制简历,申请看板跟着更新。申请没动静了,它会提醒你。
- 带按钮的推送、静默时段
- 申请看板和跟进提醒
- 来源出问题时告警
自托管 开源,AGPL-3.0 数据留在你自己的机器上 用你已有的 AI 订阅或 API key 不用注册 没有遥测
功能
每个功能,半分钟看懂。
真实产品跑在虚构演示数据上的短片。鼠标悬停预览,点开有声音和字幕。
-
早上的雷达
每一轮都落在今日页:来了多少、过了多少、哪些值得看,按你的标准排好。
-
薪资,翻出来
JD 里写了的薪资被找出来、附上原文,换算成能比较的年薪;奖金和融资额不算。
-
按你的规则打分
每个岗位按你的画像打 0–100 分,写明理由和差距;加一条“绝不接受”,那类岗位直接沉底。
-
一个岗位,不是五个
同一个岗位在三个网站出现只算一条,链接都留着;中介、已关闭、被过滤的岗位都标出来,不藏起来。
-
给 AI 一份干净的 JD
有的 JD 藏着写给 AI 看的指令。AI 读之前先清掉,再标出来给你看。
-
岗位拆解和技能对照
一份长 JD 拆成工作内容、技术栈、年限、语言,每项附原文;在你自己的机器上和你的技能对照:会什么、缺什么。
-
组合筛选和保存视图
分数、薪资、来源、城市、远程、状态随便组合,存起来就成了今日页上的一个标签。
-
键盘流
j / k 上下,s 感兴趣,x 忽略,f 收藏,⌘K 跳到任何地方,几秒处理完一屏。
-
推到手机上的 Telegram
每轮处理完,好岗位推到 Telegram。点 👍、🚫 或 📄,看板跟着更新。
-
跟进申请
在看板上拖动卡片,每一步都记进时间线;收藏的岗位就算下线了也留着。
-
很多来源,一个雷达
招聘网站、公司招聘页、Google Jobs、提醒邮件汇成一条;一个来源坏了,其他照常。
-
用你已有的 AI
AI 的活用你已经付费的 claude 或 codex 订阅来跑,也可以用 API key,设好月预算。
工作原理
跑在你的机器上,用你自己的 AI。
- 01
采集
按你定的时间,runner 从你开启的来源抓新岗位,每条都原样存下。
- 02
清理
读出薪资、办公方式、语言和合同类型,重复的合并,再按你的硬条件过滤。
- 03
打分
你电脑上的 ai-worker 把岗位交给你的 AI:用你自己登录的 claude 或 codex,或者 API key。
- 04
推送
过线的岗位推到你的 Telegram;所有岗位都在 127.0.0.1:3000 的看板上。
招聘来源
招聘网站、公司招聘页、提醒邮件
只访问你开启的页面和接口
你的机器
docker compose
web看板,127.0.0.1:3000runner定时、采集、处理、备份jobspy抓取辅助服务dbPostgres:你的全部数据
在宿主机上
ai-worker打分、翻译、推送
容器里没有任何 AI 凭据。
岗位文字 + 打分用到的画像部分
你的 AI
用你登录的 claude / codex,或 API key
推送和按钮回调,不用开端口
Telegram
你自己的 bot
127.0.0.1:3000
你
浏览器或手机
还没接 AI?它照样采集、去重、过滤、展示岗位,只有打分、翻译和拆解要等 AI。
安装
三步跑起来。
需要 Docker 和 Compose v2Node 22 和 pnpm 11gitmacOS 或 Linux(已测试)
-
启动
clone 仓库,切到最新发布版,一条命令起来看板、runner、抓取服务和数据库。Linux 上先跑多出来的两行。
git clone https://github.com/Joevonlong/job-radar.git cd job-radar git checkout v2.0.1 # 最新发布版;main 是开发分支 # 只在 Linux 上、第一次 docker compose up 之前做(容器要以你的用户运行): [ -f .env ] || cp .env.example .env sed -i.bak -e "s/^PUID=.*/PUID=$(id -u)/" -e "s/^PGID=.*/PGID=$(id -g)/" .env && rm .env.bak mkdir -p data/config data/profile data/backups data/exports data/logs .auth docker compose up -d --build # db、web、runner、jobspy;第一次构建要几分钟 -
说出你想要的
打开 127.0.0.1:3000,设置向导问你 8 个小问题:语言、市场、画像、想找什么、来源、AI、Telegram、跑第一轮。没有浏览器?同样的问题在终端里也能答。
# 打开 http://127.0.0.1:3000,设置向导会自己出来 # 没有浏览器?在终端里答同样的 8 个问题: pnpm install && pnpm run setup -
接上你的 AI
打分在你电脑上的一个小 worker 里跑,用你登录的 claude 或 codex,或者写在 .env 里的 API key。在终端里开着就行,也可以用一条脚本把它装成后台服务(macOS 用 launchd,Linux 用 systemd 用户单元)。
pnpm install pnpm ai-worker # 让它一直开着 # 或者装成后台服务(macOS 用 launchd,Linux 用 systemd 用户单元): scripts/ops/install-ai-worker.sh pnpm run doctor # 全面体检,告诉你该修什么
.env 密钥和 token 只写在 .env 里,向导从来不问。
隐私
你的机器,你的数据,你的 AI。
- 不用注册 没有账号可注册。一次安装,一个人用。
- 没有遥测 它不往外报任何东西,也没有什么托管服务可报。
- 你的机器 岗位、画像和申请记录都在你电脑上 Docker 里的 Postgres 数据库中。
- 你的 AI 用你已经付费的 claude 或 codex 订阅(不按 token 计费),或者设了月预算的 API key。
- 你的文件 每项设置都是你自己的、带注释的纯文本 YAML 文件,拉取更新从不覆盖它。
会离开你机器的只有
- 岗位文字,以及打分用到的画像部分(技能、语言、目标职位、地点、薪资底线、排除项) 你选的 AI 服务
- 可选功能会多发一些:每周建议(你标记过的岗位及其状态)、薪资查询(公司、职位、城市、国家、资历;默认关闭)、找来源的网络搜索 你开启的 AI 和搜索服务
- 推送消息 你自己的 Telegram bot(如果你设置了)
- 拉取岗位的请求,以及确认岗位是否还在线的检查 你开启的来源
按服务商逐项说明见隐私页。 隐私页 →
常见问题
大家常问的。
要钱吗?
不要。Job Radar 免费、开源(AGPL-3.0),你自己运行。可能花钱的都在它之外:你的 AI 订阅或 API 用量(API 调用到你设的月预算就停),以及可选的付费来源,比如抓 LinkedIn 用的 Bright Data 或 Apify。
一定要有 AI 订阅吗?
不一定,但有了才好用。没接 AI 时它照样采集、去重、过滤、展示岗位;接上 claude 或 codex(用你已有的登录)或 API key(Anthropic、DeepSeek 或 MiMo)之后,打分、翻译和岗位拆解才开始工作。
我的数据去哪儿了?
就留在你的机器上,在 Docker 里的 Postgres 数据库中。你选的 AI 会收到岗位文字和打分用到的画像部分;每周建议、薪资查询这类可选功能会多发一些;推送消息发给你自己的 Telegram bot。不用注册,没有遥测,没有托管服务。
支持哪些招聘网站?
LinkedIn、Indeed、通过 JSearch 的 Google Jobs、德国的 StepStone、XING 和联邦就业局(Arbeitsagentur;这三个只在德国市场下运行)、Greenhouse / Lever / Ashby / Personio / SmartRecruiters 上的公司招聘页,以及 Gmail 里你自己的职位提醒邮件。开哪些由你决定,少数需要 key。
我不在德国,能用吗?
能。默认配置不预设国家,界面有中文和英文。随附一个德国 / 欧盟市场包(本地招聘网站、德语等级规则、欧元);别的国家复制一个包改一改就行。
它会替我投简历吗?
不会。它负责找、读、打分、跟进;决定和投递是你的事。需要定制简历时,它把岗位交给 resume-kit(一个独立工具)。
抓取招聘网站合规吗?
有些来源读的是公开网页或非官方接口,有的网站条款禁止自动访问。Job Radar 会限速,从不尝试绕过登录墙或验证码,一个来源老是失败就停用它。你开启的每个网站都请先看它的条款,控制请求量,尽量用官方接口和你自己的提醒邮件。
运行它需要什么?
一台能跑 Docker 的 macOS 或 Linux 电脑(都已测试;Windows 的 WSL2 还没测过),再加上 Node 22 和 pnpm 11,用来跑辅助命令和 AI worker。它是给一个人在一台机器上用的;Telegram 不需要开任何端口。