Job Tracker

io.github.adamwardecki由 GitHub 账号 adamwardecki 发布v0.4.0更新于 Nov 7, 2026

Local job-search tracker: roles, a status machine with evidence, rules, interviews, daily reports.

概览

AI 生成的概览

本地求职追踪器:筛选并核实合适职位,跟踪状态、面试与回复,起草申请材料并等你批准后再提交。

可以做什么
  • 每日扫描符合硬性筛选条件的职位,在雇主原始招聘页核实,并与已处理过的职位去重
  • 用带证据的状态机、规则、面试记录和看板跟踪职位,并给出流程概览与待办事项
  • 准备申请:核实、撰写、填写表单、回读内容,然后等待你的明确批准才尝试提交一次
  • 起草求职信(可选输出一页 PDF),并根据你自述的经历准备面试
  • 把你的手动调整转化为带原因和示例的规则,并生成简短的每日报告
适用场景
适合希望少而精地投递、需要助手在本地维护求职流程、核实招聘信息、准备定制申请并每日汇报的人,而不是批量海投。
运行要求
以 stdio 本地运行;需要 Claude Code 2.1.295 或更新版本(桌面版或命令行)或 Hermes Agent,以及 Node.js 22.18 或更新版本。数据库位于 JOB_TRACKER_HOME 指定的目录(默认 ~/.job-tracker)。建议配置 Gmail 与 Google Calendar 连接器、浏览器,以及可选的只读 LinkedIn MCP 服务器。
安装前请注意
它会填写并可能提交求职申请,但提交需你在同一会话中输入批准命令并通过校验。它通过浏览器读取招聘页面和表单,并可能使用 Gmail、Calendar 和 LinkedIn 连接器,涉及这些账号的数据。项目处于早期开发阶段,招聘网站改版时数据源适配可能失效。它不会创建账号、输入密码、破解验证码或填写敏感个人信息。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Job Tracker,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

Job Tracker

A Claude Code (and Hermes Agent) plugin that runs a disciplined job search for one person. Every weekday it finds roles that fit your hard filters, verifies each one on the employer's own posting, dedupes against everything you have touched, and prepares tailored applications. It submits only through the employer's official apply flow, and only after you approve. It tracks replies and interviews and writes one short daily report.

The design follows one principle: fewer, better applications.

Website: jobtrackermcp.com

Setup and usage docs: jobtrackermcp.com/docs.html

Status: early, and in active development. Expect rough edges, and expect the source adapters to break when job sites change. Issues and pull requests are welcome.

What it won't do

  • Send email or LinkedIn messages. It writes drafts only, and a hook blocks every send tool.
  • Submit an application without your /job-tracker:approve <role_id> in the same session.
  • Create accounts, enter passwords, solve visible CAPTCHAs, tick consent boxes, or fill personal-data fields (passport, nationality, age, gender, marital status, ID numbers).
  • Auto-apply at volume.

Requirements

  • Claude Code 2.1.295 or newer (the Desktop app or the CLI), or Hermes Agent.
  • Node.js 22.18 or newer. If it is missing, /job-tracker:setup offers to install it on macOS and Windows. The tracker uses the built-in node:sqlite, and Node runs the plugin's TypeScript directly. There are no runtime npm dependencies.
  • Recommended connectors: Gmail and Google Calendar.
  • Recommended browser: Claude in Chrome or the host's built-in browser.
  • Optional: a LinkedIn MCP server (read-only use: job search and inbox).

Full setup and usage instructions: jobtrackermcp.com/docs.html

Install

Claude Code:

/plugin marketplace add adamwardecki/job-tracker-mcp/plugin install job-tracker@job-tracker-mcp/job-tracker:setup

Hermes Agent:

bash
git clone https://github.com/adamwardecki/job-tracker-mcp.gitcd job-tracker-mcpplugin/scripts/hermes-install.sh

Restart Hermes and type /job-tracker:setup. Details: docs/hermes.md.

The tracker is also in the MCP Registry as io.github.adamwardecki/job-tracker, packaged as an MCPB bundle attached to each GitHub release.

Commands

CommandWhat it does
/job-tracker:setupGuided setup; resumable.
/job-tracker:sweep [--limit N]The daily run. Never submits.
/job-tracker:apply [role-id]Interactive apply: verify, write, fill, read back, then wait for your approval.
/job-tracker:approve <role-id>You type this on the filled form to allow one submit attempt.
/job-tracker:triage <source>Reconcile and clean a tracker board with the delete guard.
/job-tracker:prep <company>Interview prep from your stories.
/job-tracker:statusPipeline summary and open items.
/job-tracker:boardKanban board in your browser.
/job-tracker:cover-letter <role-id>Cover letter, optionally as a one-page PDF.
/job-tracker:correctTurn your override into a rule with a reason and example.

Your data

The tracker runs locally. A stdio server on ~/.job-tracker/tracker.db. No network listener, no token. The directory is owner-only (0700), database is 0600. Nothing is sent to the plugin's author.

Privacy policy (source).

Hooks (hard gates)

GateRule
SendEmail/LinkedIn sends blocked in every session.
SubmitNeeds /job-tracker:approve and a passing gate_check.
Board deleteNeeds a fresh JOBHUNT_TRIAGE_GUARD with ok: true.
Personal data and consentPassport, nationality, age, DOB, gender, marital, ID fields denied; consent boxes stay unticked unless you allow them.
StopA sweep session cannot end until every role has an event and the report was rendered.

Development

npm run setup   # dev only: TypeScript, the Node types and Biome, installed into dev/npm test        # tsc, then the Node and Python tests

The code is TypeScript that Node runs directly (type stripping), so there is no build step and nothing to install at runtime.

See CONTRIBUTING.md before opening a pull request.

Design choices

  1. Local only. The tracker is SQLite behind a stdio server in ~/.job-tracker.
  2. The daily run is a local scheduled task.
  3. LinkedIn is read-only and optional. Send and connect tools are blocked by a hook.
  4. Voice. write-note uses an installed humanizer or writing-style skill when present, else its own rules.
  5. Templates ship neutral. Your own values go in through setup.

License

MIT

来源:README.md,提交 72d1307

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

2
  1. v0.4.0最新Nov 7, 2026
  2. v0.3.3Oct 21, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分