JobFit Autopilot
调用时机
| 用户意图 | action | 必要输入 |
| --- | --- | --- |
| “这是我的简历,不知道投什么” | onboard_candidate | 本地 Candidate Profile |
| “找今天值得投的岗位” | discover_jobs | base_url、可选 subject_id;离线 Demo 用 snapshot_file |
| “我适合投什么方向” | career_direction_recommendation | Profile + jobs 或 snapshot_file |
| “分析这个岗位 / A 还是 B / 怎么改” | analyze_job | JD + Profile |
| “为这个岗位准备投递” | prepare_application | JD + Profile |
| “比较这两版简历” | compare_resume_versions | JD、Profile、before_version、after_version |
| “按策略开始自动投递” | dry_run_apply | 已支持的飞书 JD + Profile;可选 browser_probe |
| “开始投递这个岗位” | prepare_application → manual_login_bootstrap | JD + 本地 Profile;仅启动普通专用 Chrome 供人工登录 |
| “继续” | resume_application | manifest;Skill 从保存的 application session 恢复 |
| “字段核对正确” | confirm_live_field_review | 已输出的字段 expected/actual 审计;只进入最终 Gate,不提交 |
| “登录页异常/验证白屏” | application_session_diagnostics | session_id;仅返回脱敏 console/network/iframe 诊断 |
| “检查提交前是否可投” | pre_submit_check | manifest、当前本地 context |
| “发现北森岗位” | discover_beisen_jobs | 北森公开招聘站 source |
| “处理投递队列” | run_apply_queue | 已发现岗位列表 + Profile |
| “记录我已经投递” | record_application | analysis_id |
| “记录面试/拒绝反馈” | record_feedback | analysis_id、阶段与反馈 |
| “总结最近秋招情况” | career_summary | 无 |
唯一运行接口是 scripts\run.ps1;它调用 localhost server,结果为 UTF-8 JSON。首次调用会创建 Python 3.11 venv 并下载 OpenVINO INT4 模型;下载中断可用 scripts\run.ps1 --continue 恢复。
安全与能力边界
- Candidate Fit、Resume Fit、岗位优先级和 A/B 建议始终由确定性引擎计算;本地模型不得改分。
- 简历定制只重排或解释 Profile 已验证事实,不增加技能、项目、实习、数字或能力等级。
config/autopilot_policy.yaml默认dry_run: true、auto_submit: false。即便配置允许自动提交,验证码、扫码、敏感字段、声明字段和未知必填字段也必须暂停交给用户。- 飞书适配器直接读取旧 ResumeBridge 的 A/B V2 Profile 和 ATSX 分区规则。ATS 的简历解析预填是
UNTRUSTED_PREFILL,上传后只等待解析稳定、不点击“解析并覆盖”,再以 canonical Profile 覆盖并比较 expected/actual。实习、工作、获奖等 canonical 为空的 section 绝不创建;若页面出现非 canonical 内容,Gate 返回BLOCKED_UNEXPECTED_CONTENT。只有字段审计 PASS 且用户明确说“字段核对正确”,最终 Gate 才可进入待提交状态。manual_login_bootstrap以系统安装的正式 Chrome + 同一独立 persistent user-data-dir 启动普通浏览器,不添加 CDP/remote-debugging 参数;用户自行完成短信、扫码或验证码并关闭窗口。之后 WorkBuddy 的“继续”才由 Runtime 以仅绑定127.0.0.1的 CDP 模式启动同一 Profile、检查登录态并读取page.url。启动参数不包含--no-sandbox、stealth、伪造 UA 或安全绕过;不读取旧 Chrome Profile,不复制 Cookie/Token,不使用桌面截图/OCR 判断页面,也不绕过登录或验证码。 - WorkBuddy 仅是 Agent Host:它调用本地 Runtime、展示
NEED_USER_LOGIN/NEED_USER_VERIFICATION等状态并转述用户的“继续”。所有 ATS DOM 操作都只存在于对应 Adapter。 - 北森 V0.1 只处理公开发现、详情解析、打开和表单结构检查;它不会填表、上传或提交。
- 真实档案、SQLite Memory、专用浏览器档案和
applications/<job_id>/产物全在本机且被 Git 忽略。 - 不接管 Boss、猎聘、北森、Moka、ATS 以外网页或自动提交范围外的操作。
score_breakdown 明确列出 matched、partial、no_evidence、missing。no_evidence 不等于不会,只是不将未证实能力计入分数。
微信扫一扫