针对求职者
从一个工作区运行整个搜索。
个人资料、机会、定制草稿、审批、申请管道、面试准备、公司调研及代理对话保持连接。

一个平台 · 两个用户
候选人和招聘人员不应共享相同的仪表板或代理指令。JobHunter 使用经过身份验证的角色选择允许使用的工作区、导航、协调器、工具和数据。
针对求职者
个人资料、机会、定制草稿、审批、申请管道、面试准备、公司调研及代理对话保持连接。

针对招聘者
开放职位、候选人搜索、评分匹配、可编辑外联、管道阶段、分析及猎头代理均为招聘者决策构建。

求职者代理团队
协调者负责对话。它将专注工作委派给具有更窄指令和工具集的代理,然后将结果带回同一会话。
路由每个请求并保持面向用户的对话连贯。
搜索配置的职位连接器并保存有用线索。
根据候选人简历评分职位并解释优势和不足。
构建真实、市场感知的简历、求职信和筛选答案。
检查董事会政策,准备浏览器工作流程,并暂停等待审批。
将申请、跟进和结果保持在同一流程中。
准备面试练习和反馈。
研究公司、职位和面试模式。
支持报价比较和谈判。
技能、成就、目标职位、地点、薪资偏好、简历内容和市场格式成为专家共享的上下文。
采购代理调用配置的连接器。排名随后比较保存的角色与档案,并使匹配理由可见。
定制代理选择目标市场格式,并根据候选人自身经验创建真实材料。
应用代理检查站点策略和准备好的草稿。提交工具需要正确的权限范围和批准的请求。
跟踪器、教练、公司情报、网络和报价代理继续围绕应用本身工作。
招聘者代理团队
招聘人员的工作始于职位发布和一套明确的约束条件。代理团队仅搜索候选人设置为对招聘人员可见的简历,记录每次匹配的原因,并准备外联内容供人工审核。
将招聘请求转化为职位、招聘、排名和外联工作。
查找符合职位限制的招聘者可见简历。
评分候选人并记录每次匹配的原因和风险。
起草可审查的首条消息但不自动发送。

招聘人员记录职位、地点、工作政策、技能、经验、薪酬和招聘背景。
搜索仅限于标记为对招聘人员可见的简历;筛选器缩小技能、地点、经验和远程偏好。
排名代理存储匹配分数、正面证据和风险,帮助招聘者理解候选人为何被推荐。
已来源、入围、已联系、面试中、已报价、已录用和已拒绝保持招聘工作区中的明确状态。
外联代理生成可编辑的主题和消息。招聘者仍负责关系和发送操作。
架构
认证选择求职者或招聘者界面。ADK-Rust 然后加载匹配的协调器,并将模型调用、工具、会话、记忆、浏览器工作和流式事件保持在同一运行时契约内。
人工控制
应用改变人与雇主的关系。JobHunter 将准备与执行分开:检查董事会政策,创建审批记录,有范围的工具验证该审批,流水线记录最终结果。
同样原则适用于招聘。候选人可见性为选择加入,匹配证据被存储,外联草稿供招聘者检查,而非静默发送。
let coordinator = LlmAgentBuilder::new("job_hunter_coordinator")
.model(pro)
.sub_agent(Arc::new(sourcing_agent))
.sub_agent(Arc::new(ranking_agent))
.sub_agent(Arc::new(tailoring_agent))
.sub_agent(Arc::new(apply_agent))
.sub_agent(Arc::new(tracker_agent))
.sub_agent(Arc::new(coach_agent))
.build()?;if !matches!(record.status, ApprovalStatus::Approved) {
return Ok(json!({
"error": "approval_required",
"approval": record,
}));
}
state.pipeline.upsert(&user_id, &item).await?;已验证内容
仓库、React 路由、Rust 代理构建器、招聘者 API、持久层、审批工具和本地堆栈均已检查。本页截图取自该 React 应用及本地数据。
构建角色感知的代理产品
JobHunter 展示了 ADK-Rust 如何在一个产品中支持两条重要工作流,而不将它们简化为通用聊天机器人。