Skip to main content

Job search automation with LLM API pipeline mode and AI agent mode.

Project description

Job Hunter

Job hunting is repetitive work. Job Hunter automates the parts that don't need you: scraping listings across major job boards, scoring each one against your profile, tailoring your resume per application, and drafting cover letters. You handle the conversations.

Works interactively inside Claude Code or Codex (VS Code extensions), or runs fully autonomous via LLM API for unattended pipelines and GitHub Actions.

What It Does

  • Discovers jobs across supported job boards, aggregators, and company career pages — filtered by your titles, regions, and exclusions
  • Scores each listing against your career context so you know what to prioritize
  • Tailors your resume per job and generates a cover letter, ready for PDF export
  • Tracks applications with a dashboard and analytics so nothing slips through

Install

Requires Python 3.12 or 3.13. See the complete beginner-friendly SETUP.md for installation, PATH troubleshooting, API-key links, and agent permissions.

uv tool install job-hunter-kit

Standard install supports both agent and llm-api modes.

Quick Start

job-hunter init my-workspace
cd my-workspace
job-hunter doctor

Open the workspace in VS Code with Claude Code or Codex, then run /setup onboard, /setup context, /setup stories, and /setup resume. job-hunter doctor validates config and reports exact fixes.

Modes

Mode What runs When to use
agent Python prepares context; Claude Code or Codex (VS Code) skills handle scoring, tailoring, and writing Interactive daily review
llm-api Full autonomous pipeline; LLM APIs called inside Python Unattended runs and GitHub Actions

Set mode: in config/job_hunter.yml. Default is agent.

Daily Workflow

job-hunter hunt --region primary
job-hunter dash                      # web dashboard
job-hunter dashboard --no-interactive  # terminal

In agent mode, open the workspace in VS Code with Claude Code or Codex and use:

/job-hunter batch
/job-hunter one <url>
/job-hunter finalize

In llm-api mode, job-hunter hunt runs scrape → score → tailor → cover letter → PDF → tracker in one pipeline.

Optional Company Hunt

For company career pages that need a real browser, add targets to config/career_pages.yml, then run the Company Career Hunt workflow from GitHub Actions. Results are committed to outputs/browser_hunt/jobs.json.

CLI Reference

  • job-hunter init <workspace> — create a workspace
  • job-hunter doctor — check setup health
  • job-hunter hunt — discover and enrich jobs
  • job-hunter tailor — tailor resume for one or more job postings
  • job-hunter dash — open web dashboard in a native window (Applications, Insights, Analytics)
  • job-hunter dashboard, applications — terminal dashboard and application list
  • job-hunter update — update workspace assets, skills, and workflows after a package upgrade
  • job-hunter update --skills-only or --workflows-only — targeted refresh
  • job-hunter version — version and upgrade guidance

Bundled skills use hidden job-hunter internal ... commands. They are not part of normal user workflow.

Data Contract

Your data stays yours. Product updates must not overwrite config/, profile/, outputs/, or .env. Deterministic choices live in config/job_hunter.yml; career and writing guidance lives in profile/career_context.md; all job and application state lives in outputs/state/jobs.db.

See DATA_CONTRACT.md for the full contract.

Safety Boundaries

Job Hunter never submits applications, posts on LinkedIn, or contacts anyone automatically. It writes files under outputs/ for you to review. /job-hunter finalize and job-hunter update only touch system-owned paths — see the data contract above.

Development

uv sync --extra dev
uv run pytest tests/ -q --tb=short
uv run ruff format --check job_hunter tests scripts
uv run ruff check job_hunter tests scripts
uv run ty check job_hunter tests
uv build

MIT licensed. See CONTRIBUTING.md.

Documentation

Lineage

Job Hunter is the evolution of a single experiment: job-hunter-core and job-hunter-template worked as one system to prove the pipeline, the workspace model, and the agent skill layer — everything this package ships today.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

job_hunter_kit-0.23.tar.gz (419.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

job_hunter_kit-0.23-py3-none-any.whl (389.9 kB view details)

Uploaded Python 3

File details

Details for the file job_hunter_kit-0.23.tar.gz.

File metadata

  • Download URL: job_hunter_kit-0.23.tar.gz
  • Upload date:
  • Size: 419.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for job_hunter_kit-0.23.tar.gz
Algorithm Hash digest
SHA256 e0aedaf1b45ef43a9aff246c05f09f1684d6730c70ba76b951982aef740a9333
MD5 1ba7ac89ed8ef032c12cf137c894b616
BLAKE2b-256 fbc0dc26a1aa2beb44c08714c8ad22f411234454afdb8842b1ff779ffc7d0428

See more details on using hashes here.

Provenance

The following attestation bundles were made for job_hunter_kit-0.23.tar.gz:

Publisher: release.yml on abdulrbasit/job-hunter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file job_hunter_kit-0.23-py3-none-any.whl.

File metadata

  • Download URL: job_hunter_kit-0.23-py3-none-any.whl
  • Upload date:
  • Size: 389.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for job_hunter_kit-0.23-py3-none-any.whl
Algorithm Hash digest
SHA256 99389808bde0ba4c0f9b9bb887c5d5205f70df0378c0befebd8331884e0c2e32
MD5 5eac83d692db7d574b4f1b5fbd38b32a
BLAKE2b-256 4cc39aef045c8179db30e87ac5a8195ad1eeca643a4c9b39262ac477a5fd08ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for job_hunter_kit-0.23-py3-none-any.whl:

Publisher: release.yml on abdulrbasit/job-hunter

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page