agentleFS
yk-kenyk-ken/job-hunter-skill/SKILL.md

job-hunter

Skill8 starsChanged 7 months agoMITView on GitHub

自动从 Boss 直聘发现、筛选、记录合适岗位。使用 /job-hunter 启动定时求职助手。

5 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions5 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 5

    1. wexxwuther/job-hunter★ 4same name
    2. Phuc710/Tool_Review_CV★ 1same name
    3. sankai-ch/skills★ 1same name
    4. vanthienha199/openclaw-skills★ 1same name
    5. ShiqinGuo/jev4jobhunter★ 0same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

The file

Files
SKILL.md

Job Hunter Skill — 主入口

本文件是 job-hunter skill 的主入口。Claude 在用户触发 /job-hunter 时读取此文件,按照以下逻辑执行完整流程。


触发条件

命令操作
/job-hunter等同于 /job-hunter start,启动定时搜索
/job-hunter start启动定时搜索任务
/job-hunter stop停止定时搜索任务,数据保留
/job-hunter status查看当前运行状态
/job-hunter update更新 Job Hunter Skill 到最新版本
/job-hunter exclude查看排除列表
用户说「排除编号X」触发排除流程(自然语言触发)
/job-hunter practice查看练手列表
/job-hunter target查看目标列表
用户说「练手编号X」触发分类流程,分类为练手
用户说「目标编号X」触发分类流程,分类为目标
用户说「标记编号X」触发分类流程,询问分类类型

主入口逻辑

收到 /job-hunter 命令后,按以下顺序执行:

步骤 0:工作目录检查

检查当前工作目录(CWD)下是否存在 data/ 目录:

  • data/ 已存在 → 继续步骤 1(识别为已有用户的工作目录)
  • data/ 不存在 → 使用 AskUserQuestion 询问用户:
当前目录不是 Job Hunter 的工作目录。
数据文件(画像、候选岗位)将保存在当前目录的 data/ 下。

请确认:
1. 在当前目录继续 — 数据将保存在 {CWD}/data/
2. 我想先切换到其他目录

如果用户选择 2,提示用户使用 cd 切换到目标目录后重新运行 /job-hunter,然后结束。 如果用户选择 1,继续步骤 1。

重要:所有 data/ 路径(如 data/job-profile.md、data/meta.json)均相对于当前工作目录(CWD)解析。模板文件通过 ${CLAUDE_SKILL_DIR}/prompts/ 从 skill 安装目录读取。两者分离。

步骤 1:检查是否为新用户

读取 data/job-profile.md 是否存在:

  • 不存在 → 进入「新用户引导流程」(步骤 2)
  • 存在 → 继续步骤 1.5

步骤 1.5:老用户升级检查

当 data/job-profile.md 存在时(老用户),检查 data/ 目录下是否缺少必要文件。

当前必要文件清单:

文件说明
data/job-candidates.csv候选岗位记录
data/job-excluded.csv排除岗位归档
data/job-practice.csv练手岗位归档
data/job-target.csv目标岗位归档
data/job-profile.md用户求职画像
data/meta.json运行元数据

检查逻辑:

  1. 逐项检查上述文件是否存在
  2. 如果全部存在 → 跳到步骤 3
  3. 如果有缺失 → 自动创建缺失文件(使用默认初始内容),并通知用户:
检测到以下文件缺失,已自动补充:

  [已创建] {缺失文件名} — {文件说明}

这可能是因为 skill 更新引入了新文件。你的现有数据未受影响。

各缺失文件的默认初始内容:

  • data/job-candidates.csv:写入表头行(编号,岗位名称,公司名,...,security_id)
  • data/job-excluded.csv:写入表头行(编号,岗位名称,公司名,...,排除原因,排除日期)
  • data/job-practice.csv:写入表头行(编号,岗位名称,公司名,...,备注,分类日期)
  • data/job-target.csv:写入表头行(编号,岗位名称,公司名,...,备注,分类日期)
  • data/meta.json:不自动创建(缺少此文件说明引导流程未完成,应视为异常,提示用户重新运行引导)

此外,检查 data/meta.json 是否缺少以下字段,如果缺少则追加默认值:

  • practice_count: 0
  • target_count: 0
  • next_practice_number: 1
  • next_target_number: 1

检查完成后,继续步骤 3。

步骤 2:新用户引导流程

读取并执行 ${CLAUDE_SKILL_DIR}/prompts/intake.md 中的完整引导流程。

该流程包含:

  1. 环境检测(Node.js、opencli、Browser Bridge、Boss 直聘登录)
  2. 分步问答收集求职画像(4 组问题)
  3. 生成 data/job-profile.md
  4. 初始化 data/job-candidates.csv、data/job-excluded.csv 和 data/meta.json

环境检测未通过时:读取 ${CLAUDE_SKILL_DIR}/prompts/notifications.md 中的「环境检测未通过」模板,填充检测结果后输出。不继续后续流程。

引导完成后:自动进入步骤 3。

步骤 3:读取运行状态

读取 data/meta.json,获取以下字段:

  • cron_job_id:当前定时任务 ID(null 表示未运行)
  • run_count:已运行次数
  • total_candidates:已记录岗位总数
  • last_run_time:上次运行时间
  • search_interval_minutes:搜索间隔
  • next_candidate_number:下一个岗位编号
  • practice_count:已标记为练手的岗位数
  • target_count:已标记为目标的岗位数
  • next_practice_number:下一个练手编号
  • next_target_number:下一个目标编号

步骤 4:根据参数执行操作

根据用户传入的参数(argument)判断操作类型,读取对应的操作文件执行:

参数读取文件
start / 无参数${CLAUDE_SKILL_DIR}/prompts/operations/start.md
stop${CLAUDE_SKILL_DIR}/prompts/operations/stop.md
status${CLAUDE_SKILL_DIR}/prompts/operations/status.md
exclude${CLAUDE_SKILL_DIR}/prompts/operations/view-exclude.md
practice${CLAUDE_SKILL_DIR}/prompts/operations/view-practice.md
target${CLAUDE_SKILL_DIR}/prompts/operations/view-target.md
update${CLAUDE_SKILL_DIR}/prompts/operations/update.md
用户说「排除编号X」${CLAUDE_SKILL_DIR}/prompts/operations/exclude.md
用户说「练手/目标/标记 编号X」${CLAUDE_SKILL_DIR}/prompts/operations/classify.md

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.