dsh-ai-jobs:在 DeepSeek Harness 裏做 AI 崗位雷達

前言

找 AI 相關崗位時,常見情況是幾十家公司各自用 Greenhouse、Ashby、Lever 等不同 ATS,職位數據公開但分散,每週手工翻 careers 頁很難橫向對比:哪家在招 research engineer、JD 裏 PhD 佔比多少、最近 7 天新開了哪些與你技能棧匹配的崗。DeepSeek Harness(DSH)把能力拆成插件;社區目錄 SkillHub 上的 dsh-ai-jobs(維護者 justinzyc271828-sys)面向同一類問題:在本地維護一份可檢索、可打分的職位索引,並按你的條件產出摘要與日報。

下面介紹它做什麼、如何安裝,以及典型工具調用方式。事實以 GitHub 倉庫 README 爲準。

這是什麼

dsh-ai-jobs 是 DSH 的「聯網工具」類插件(npm 包名 dsh-ai-jobs,當前版本 0.1.1,MIT 許可證)。它不依賴 API Key、不要求登錄第三方賬號,只請求各公司 careers 頁背後公開的 ATS 板端點(Greenhouse / Ashby / Lever 等),在本地歸一化職位、規則分類、抽取任職要求,再按你的技能與地點偏好打分,並支持 Markdown 日報與可選的定時提醒。

插件無獨立後端、不上報遙測;數據落在本地目錄(默認 $DSH_HOME/ai-jobs,否則 ~/.dsh/ai-jobs)。

核心能力

README 用一張流程表概括能力,可覈對爲以下要點:

  1. Collect:內置 71 個已校驗招聘板(Greenhouse 33、Ashby 37、Lever 1),另可通過 watchlist 增加 Workable / SmartRecruiters 等來源。
  2. Normalize:跨 ATS 統一字段(標題、地點、遠程標記、部門、日期、URL、JD 正文等)。
  3. Classify:按規則劃分 AI 相關度 core / adjacent / other,以及角色族、資歷層級(可審計、非黑盒模型)。
  4. Mine:從 JD 抽取年限、學歷、工作方式、薪酬區間、簽證、以及 38 項技能詞表等。
  5. Rank:0–100 分,綜合相關度、新鮮度、資歷、你配置的 skillsOfInterest 與 preferredLocations 等。
  6. Store:本地 JSON 索引、JD 快照與變更歷史、日報游標。
  7. Push:Markdown 摘要;可經 harness 的 schedule 服務或配置項開啓每日提醒。

內置 seed 覆蓋 Anthropic、OpenAI、xAI、Mistral、Cohere、Cursor、Scale、LangChain 等多家 AI 實驗室與 AI 密集公司;Greenhouse 類 JD 需二次請求,插件僅對新發或變更職位拉取詳情。

安裝與啓用

安裝命令須使用 README 原文,按來源擇一:

# from the marketplace / npm (once published)
dsh plugin --profile web add dsh-ai-jobs

# from a local checkout, for development
dsh plugin --profile desktop add ./dsh-ai-jobs

# from a packed tarball
npm pack && dsh plugin --profile desktop add ./dsh-ai-jobs-0.1.0.tgz

bundle 通過 cordis.patch.yml 掛載一行插件(ai-jobs)。安裝後需重啓應用,或在 Plugins 頁面重新開關插件。運行環境要求 Node >= 22.0.0(見 package.json 的 engines)。

注意:插件以當前 DSH 進程權限運行,會向公網 ATS 端點發起請求;安裝前請自行審閱源碼與 MIT 許可證,並遵守 README 中的禮貌抓取建議(默認 concurrency: 4、單次 refresh、僅對新職位拉 JD),勿批量再分發數據;投遞前以公司官網 careers 頁爲準。

典型用法

首次可先刷新索引,再搜索、看聚合要求或生成摘要:

ai_jobs_refresh                     # index every watched board (first run: ~10s for 3 big boards)
ai_jobs_search { "tier": "core", "postedWithinDays": 7, "minScore": 70 }
ai_jobs_requirements { "tier": "core", "limit": 200 }
ai_jobs_digest
ai_jobs_watchlist { "action": "add", "company": "Mistral", "ats": "ashby", "token": "mistral.ai" }

常用工具一覽(返回值含義見 README「Tools」表):

工具 用途
ai_jobs_refresh 重新索引全部或選定招聘板,回報各板 ok/error 與增刪改數量
ai_jobs_search 按 query、company、tier、seniority、remote、location、minScore、postedWithinDays 等篩選並排序
ai_jobs_get 單條職位全文元數據、得分、抽取要求、JD 片段與存儲路徑
ai_jobs_digest 自上次 digest 游標以來的 Markdown 變更摘要
ai_jobs_requirements 跨公司技能頻率、年限中位數、學歷與工作方式分佈、薪酬區間等
ai_jobs_watchlist list / add / remove 招聘板
ai_jobs_status 索引健康度、最後刷新與 digest 時間、存儲路徑
ai_jobs_schedule 創建/列出/刪除每日 digest 提醒(需 schedule 服務)

日報有兩種方式:調用 ai_jobs_schedule 指定時間與 timeZone(例如 Asia/Shanghai),或在配置裏設 dailyDigest.enabled: true,首次 session 執行 ai_jobs_refresh 或 ai_jobs_digest 時由插件自行註冊提醒。默認 digest 只包含游標之後的新職位,避免日複述;ai_jobs_digest { "days": 7 } 可忽略游標按天數回看。

配置要點

示例配置(字段含義以 README 表格爲準):

{
  "lang": "zh",
  "timeZone": "Asia/Shanghai",
  "concurrency": 4,
  "skillsOfInterest": ["LLM", "inference", "agents", "RAG"],
  "preferredLocations": ["San Francisco", "Remote"],
  "remoteOk": true,
  "digestPerCompany": 4,
  "digestLimit": 30,
  "digestMinScore": 0,
  "dailyDigest": { "enabled": true, "time": "09:00:00" },
  "companies": [
    { "company": "Cohere", "ats": "ashby", "token": "cohere", "tags": ["frontier-lab"] }
  ]
}

打分公式在 README 中公開(tier 權重、新鮮度衰減、資歷偏移、技能重疊與地點/遠程加分等);非工程職能(法務、銷售、市場等)即使標題含 AI 也會先歸爲 other,帶 AI 詞彙的管理崗多歸爲 adjacent。

適用場景

適合已在用 DSH、希望把「多 ATS、多公司 AI 招聘板」收成一條本地流水線的人:定時 refresh、按棧搜索、對比 lab 要求缺口、用 digest 做晨間瀏覽。不適合需要登錄獵聘/LinkedIn 等封閉源的場景——插件明確不抓取需登錄站點。

SkillHub 上的社區目錄與 DeepSeek / 幻方無官方從屬關係;DSH 生態理念是「一切皆插件」,本插件是其中一條聯網索引鏈路。

鏈接

  • 目錄頁:https://www.skillhub.cn/plugins/justinzyc271828-sys/dsh-ai-jobs
  • 源碼與完整文檔:https://github.com/justinzyc271828-sys/dsh-ai-jobs
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜