mcpField
J
jobnet-search

jobnet-search

github.com/ai-job-search-dev生产力67.2k193 次安装1 天前更新
代码仓库

关于 jobnet-search

jobnet-search 是用于搜索丹麦官方 Jobnet.dk 门户实时职位的技能。求职者可筛选职位、查询丹麦职业类别,并通过公共 API 获取完整招聘信息。

主要功能

  1. 01按关键词和雇主搜索职位
  2. 02按地区、半径、工时和期限筛选
  3. 03获取完整招聘信息
  4. 04查询职业类别和自动补全词
  5. 05输出 JSON、表格或纯文本

适用场景

  1. 01查找邮编附近的兼职职位
  2. 02定位丹麦某地区的长期职位
  3. 03查看截止日期和申请链接
  4. 04搜索前确认职业关键词

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/ai-job-search-dev/ai-job-search --skill jobnet-search

安装后在 Claude Code 中输入/jobnet-search确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

cli/
package.json
README.md
tsconfig.json
cli/src/
cli.ts
helpers.ts
cli/src/commands/
detail.ts
occupations.ts
search.ts
suggestions.ts
cli/tests/
cli-contract.test.ts
cli-flag-validation.test.ts
detail-fallback.test.ts
detail-formatting.test.ts
detail-url-normalization.test.ts
helpers.ts
missing-option-values.test.ts
occupation-filter-cli.test.ts
occupation-table-cli.test.ts
reject-network.ts
request-timeout.test.ts
retry-backoff.test.ts
search-normalization.test.ts
user-agent.test.ts

详细介绍

Jobnet-Search 技能

通过 Jobnet.dk 公共 API 获取丹麦实时招聘信息。无需身份验证。 Jobnet 由 STAR(Styrelsen for Arbejdsmarked og Rekruttering)运营,是丹麦的 官方政府招聘门户网站,涵盖公共部门职位以及许多私营部门的招聘信息。任何时候都有约 21,000 多个活跃职位。

何时使用此技能

当用户想要以下操作时,调用此技能:

  • 按关键词、职位名称或雇主搜索丹麦的招聘信息
  • 按地区、工作时间(全职/兼职)或雇佣期限(长期/临时)筛选职位
  • 查找指定邮政编码一定半径范围内的职位
  • 获取特定招聘广告的完整详情,包括描述、联系人和申请 URL
  • 查找职业类型和 ESCO 类别,以便更精确地筛选职位
  • 浏览丹麦职位名称或关键词的自动补全建议
  • 查找公共部门、医疗保健、IT、教育或其他丹麦行业的职位

命令

搜索招聘广告
bun run .agents/skills/jobnet-search/cli/src/cli.ts search [flags]

关键标志:

  • --search-string <text> — 关键词搜索,例如 sygeplejerske、ingeniør、pædagog
  • --region <region> — HovedstadenOgBornholm、Midtjylland、Syddanmark、OevrigeSjaelland、Nordjylland
  • --postal-code <code> — 用于半径搜索的邮政编码,例如 2100
  • --radius <km> — 距离邮政编码的半径,单位为 km(默认值:50)
  • --work-hours <type> — FullTime 或 PartTime
  • --duration <type> — Permanent 或 Temporary
  • --job-type <type> — Ordinaert、Efterloenner、Foertidspension
  • --occupation-area <id> — 职业领域标识符,例如 10000
  • --occupation-group <id> — 职业组标识符,例如 10060
  • --occupation <uuid> — 一个 ESCO 职业:由 occupations 输出的 conceptUriDa,或其末尾的 UUID
  • --order <type> — PublicationDate(默认值)、BestMatch、ApplicationDate
  • --page / --per-page / --limit
  • --format json|table|plain
完整招聘广告详情
bun run .agents/skills/jobnet-search/cli/src/cli.ts detail <jobAdId> [--format json|plain]

jobAdId 是 search 结果中的 UUID(jobAdId 字段,也会作为 id 输出,这是所有 search CLI 共用的门户约定名称)。返回完整的职位 描述、联系人、申请截止日期、雇主详情和直接申请 URL。

搜索职业类型
bun run .agents/skills/jobnet-search/cli/src/cli.ts occupations --search-string <text> [--per-page <n>]

使用此命令查找 ESCO 职业标识符,然后将其通过 --occupation 传递给 search。 数字形式的 --occupation-area / --occupation-group 代码属于不同的 分类体系:传入职业 UUID 不会匹配到任何招聘广告。

输入提示建议
bun run .agents/skills/jobnet-search/cli/src/cli.ts suggestions --query <text> [--limit <n>]

返回丹麦职位名称的自动补全字符串。可用于在构建 search 查询前探索有效的丹麦 职位名称。


如何有效使用

先查找职业。 使用 occupations 或 suggestions 找到合适的丹麦 术语或 ESCO 标识符,然后再运行 search:

bun run .agents/skills/jobnet-search/cli/src/cli.ts suggestions --query "syge"
bun run .agents/skills/jobnet-search/cli/src/cli.ts occupations --search-string "sygeplejerske"
bun run .agents/skills/jobnet-search/cli/src/cli.ts search --occupation http://data.star.dk/esco/occupation/56f5d45c-ce48-43ac-9720-34831a1c8302

自然工作流:search → detail。

  1. 使用 search 获取匹配职位列表及其 jobAdId。
  2. 调用 detail <jobAdId> 获取完整职位描述、联系人和直接申请链接。

比较时使用 --format table,处理数据时使用 --format json,查看单条记录详情时使用 --format plain(会从职位正文中移除 HTML)。

分页:--per-page 控制服务器每页返回的结果数。--limit 限制 CLI 的输出量。使用 --page + --per-page 遍历大型结果集。

地理搜索模式:

  • 使用 --region 按较大的地区筛选(例如整个 Midtjylland)
  • 使用 --postal-code + --radius 搜索指定地点附近的职位
  • 请勿在同一查询中同时使用 --region 和 --postal-code

排序方式取决于搜索意图:

  • PublicationDate — 最新发布的职位排在前面(默认值,适合查询“有什么新职位”)
  • BestMatch — 按相关性评分排序(提供 --search-string 时最合适)
  • ApplicationDate — 截止日期最早的职位排在前面(适合需要紧急申请的情况)

使用示例

哥本哈根地区的职位
bun run .agents/skills/jobnet-search/cli/src/cli.ts search \
  --region HovedstadenOgBornholm \
  --per-page 10 \
  --format table
全国范围的护士职位
bun run .agents/skills/jobnet-search/cli/src/cli.ts search \
  --search-string "sygeplejerske" \
  --work-hours FullTime \
  --duration Permanent \
  --order BestMatch \
  --per-page 10 \
  --format table
奥胡斯附近 30km 范围内的 IT 职位
bun run .agents/skills/jobnet-search/cli/src/cli.ts search \
  --search-string "udvikler" \
  --postal-code 8000 \
  --radius 30 \
  --work-hours FullTime \
  --format table
职位广告的完整详情
bun run .agents/skills/jobnet-search/cli/src/cli.ts detail 9ef43bce-d82b-4ea1-a098-7ff6520f99be --format plain
按申请截止日期排序的职位(紧急的优先)
bun run .agents/skills/jobnet-search/cli/src/cli.ts search \
  --search-string "pædagog" \
  --region OevrigeSjaelland \
  --order ApplicationDate \
  --per-page 10
探索职业术语
bun run .agents/skills/jobnet-search/cli/src/cli.ts suggestions --query "ingeniør" --limit 5
bun run .agents/skills/jobnet-search/cli/src/cli.ts occupations --search-string "lærer" --per-page 5

输出格式

格式适用场景
json默认 — 程序化使用、数据处理,以及在命令之间传递 ID
table快速查看易读的概览和比较结果
plain单条记录详情视图(detail),会从职位描述中移除 HTML

所有错误都会以 { "error": "...", "code": "..." } 的格式写入 stderr,进程退出代码为 1。


备注

  • 所有数据均来自公开的 jobnet.dk/bff REST API — 无需凭据。
  • API 要求提供 x-csrf: 1 标头;CLI 会自动添加此标头。
  • 分页从 1 开始(--page 1 是第一页)。
  • search 结果不包含 HTML 职位描述 — 使用 detail 获取。
  • detail --format plain 会移除 HTML 标签,输出易读文本。
  • jobnet.dk 上的职位广告详情页:https://jobnet.dk/find-job/{jobAdId}(非外部职位广告;外部职位广告使用雇主的 jobAdUrl)。
  • suggestions 针对丹麦语职位名称进行了优化 — 英文词语可能不会返回结果。

评论

支持 Markdown