HaxJobs
Your personal job-search agent. Runs in the terminal. Remembers your career. Helps you find and evaluate jobs.
Hax is a conversational agent that knows your skills, experience, and constraints. You talk to Hax about jobs, and Hax evaluates them against your profile, records your decisions, and keeps track of everything.
Install
pip install haxjobs
# or
uv tool install haxjobs
First run
# 1. Configure your provider (API key, model)
haxjobs setup
# 2. Create your career profile
# You'll need a career fixture JSON. Start from the example:
# https://github.com/haxsysgit/Haxjobs/blob/main/tests/fixtures/job_review/career.json
haxjobs migrate --fixture your-career.json
# 3. Start talking to Hax
haxjobs
What HaxJobs can do
- Terminal chat — talk to Hax about jobs, get assessments, record decisions
- Career graph — your skills, experience, evidence, constraints, all in one place
- Job assessments — Hax evaluates jobs against your profile and tells you why
- Job decisions — save your Apply/Maybe/Skip/Reject verdicts
- Session resume — pick up conversations where you left off
Requirements
- Python 3.12 or 3.13
- An OpenAI-compatible API key (DeepSeek, OpenAI, Anthropic via proxy, or custom endpoint)
Development
git clone https://github.com/haxsysgit/Haxjobs.git
cd Haxjobs
uv sync --dev
# Dev mode: keeps dev data separate from your real ~/.haxjobs
source scripts/dev.sh
# Fake mode (no network, no API key)
haxjobs chat --new --fake --person-id test-person --track-id test-track
# Run tests
uv run -- python3 -m pytest -q tests/
License
MIT — see LICENSE
Release files for haxjobs 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| haxjobs-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Release files / haxjobs-0.1.0-py3-none-any.whl
| Download URL | haxjobs-0.1.0-py3-none-any.whl |
|---|---|
| Size | 71.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8054b494e5117123c3af3115c02cdfe0b73ae65c6e7238cd1d28a9caf74794e7
|
|
BLAKE2b-256 checksum How to use checksums |
d0f2f8376fcebee8339037a1f7f709932e3d31203cd45491aaf18a80ab383174
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|