Skip to main content

Job search automation with LLM API pipeline mode and Claude Code agent mode.

Project description

Job Hunter

Job Hunter is an installable Python package for running a personal job-search workspace. It has one CLI and two modes:

  • agent: Python handles deterministic work; Claude/Codex skills handle screening, scoring, tailoring, and writing.
  • llm-api: Python runs the autonomous LLM-backed pipeline for unattended jobs.

The default mode is agent.

Install

pip install job-hunter-kit
# or
uv tool install job-hunter-kit

Create a Workspace

job-hunter init my-job-hunter-workspace
cd my-job-hunter-workspace
cp .env.example .env
job-hunter config check
job-hunter doctor

Edit config/job_hunter.yml with deterministic machine choices: titles, regions, exclusions, profile paths, mode, scoring thresholds, LLM search gate, and provider/model choices. Put personal positioning and writing preferences in profile/career_context.md. Secrets use fixed environment variable names in .env or GitHub Actions.

Daily Use

job-hunter hunt --region primary
job-hunter brief
job-hunter dashboard --no-interactive

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

/job-hunter brief
/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, and README updates in one pipeline.

Public CLI

  • job-hunter init <workspace> creates a workspace.
  • job-hunter config check validates config/job_hunter.yml.
  • job-hunter doctor checks setup health.
  • job-hunter hunt discovers and enriches jobs.
  • job-hunter brief writes the daily briefing.
  • job-hunter tailor processes provided job URLs or JD text.
  • job-hunter dashboard, job-hunter applications, and job-hunter analytics inspect application state.
  • job-hunter update-skills refreshes bundled .claude/skills/ only.
  • job-hunter version and job-hunter update-info show version and upgrade guidance.

Support commands such as agent-context, import-job, compile-pdf, update-readme, mark-processed, discard-job, cleanup-transient, and finalize-run exist for skills and automation.

Data Contract

Deterministic user choices live in config/job_hunter.yml; human career and writing guidance lives in profile/career_context.md. Persistent URL dedup lives in outputs/state/discovered_urls.yml. Product updates must not overwrite config/, profile/, outputs/, or .env.

See DATA_CONTRACT.md for the full contract.

Development

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

MIT licensed. See CONTRIBUTING.md.

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.1.tar.gz (271.6 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.1-py3-none-any.whl (281.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: job_hunter_kit-0.1.tar.gz
  • Upload date:
  • Size: 271.6 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.1.tar.gz
Algorithm Hash digest
SHA256 693d3cfd0c1601151eefc4e4309e88e3b9d7d4a44f5f4bedeeae30ee29408c24
MD5 c32e09ad7713650692c3765b76f18e7e
BLAKE2b-256 051c3d171c27e5410e4e7301f0e0193a6106b4cb2ec0516f8bb6cd327c0f7d4a

See more details on using hashes here.

Provenance

The following attestation bundles were made for job_hunter_kit-0.1.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.1-py3-none-any.whl.

File metadata

  • Download URL: job_hunter_kit-0.1-py3-none-any.whl
  • Upload date:
  • Size: 281.3 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d1b9aa2837b261da725ab935433b641aeb8e0d44482b98e91c5a4e83a1111b6e
MD5 6bdb992c0f2d1c13843891262a9cec65
BLAKE2b-256 b5447cc973c390dfd80c5492c74a8e42aa6616da822db925cb63e9b21acd50ec

See more details on using hashes here.

Provenance

The following attestation bundles were made for job_hunter_kit-0.1-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