Skip to main content

Automated job application pipeline powered by Claude AI

Project description

Opaux — Automated Job Application CLI

Opaux is a modular Python CLI tool that automates the end-to-end job application process: discovering jobs, scoring them with AI, tailoring your CV, generating cover letters, and submitting applications.

Features

  • Discovery — Scrapes LinkedIn, Indeed, Glassdoor and more via python-jobspy
  • AI Scoring — Uses Claude to score each job against your profile (1–10)
  • CV Tailoring — Generates tailored .docx CVs in American, German, or Europass format
  • Cover Letters — AI-generated, personalized cover letters
  • Auto Apply — Playwright-powered form filler for online applications
  • Tracker — Rich terminal dashboard with analytics

Installation

pip install -e .
playwright install chromium

Configuration

  1. Copy and edit config/profile.yaml with your personal details
  2. Copy and edit config/settings.yaml — add your Claude API key and search parameters

Usage

# Discover new jobs
opaux discover

# Score unscored jobs (AI-powered)
opaux score --limit 50 --min-score 6.0

# Tailor your CV for a specific job
opaux tailor JOB_ID --format american
opaux tailor JOB_ID --format german --lang de
opaux tailor JOB_ID --format europass --lang fr

# Generate a cover letter
opaux cover JOB_ID

# Apply to a job (dry run first!)
opaux apply JOB_ID --dry-run
opaux apply JOB_ID

# Track applications
opaux track
opaux track --status applied
opaux track --export applications.csv

# Run the full pipeline
opaux pipeline --limit 10 --min-score 7.0

Project Structure

opaux/
├── main.py                    # Click CLI entry point
├── requirements.txt
├── setup.py
├── config/
│   ├── profile.yaml           # Your personal profile
│   └── settings.yaml          # API keys, search params
├── templates/
│   ├── cv_american.yaml
│   ├── cv_german.yaml
│   └── cv_europass.yaml
├── src/
│   ├── database.py
│   ├── discovery.py
│   ├── scoring.py
│   ├── tailoring.py
│   ├── cv_formats.py
│   ├── translator.py
│   ├── docx_builder.py
│   ├── cover_letter.py
│   ├── applicator.py
│   └── tracker.py
├── data/                      # SQLite DB (auto-created)
├── output/                    # Generated CVs and cover letters
└── tests/

Supported CV Formats

Format Features
American Clean single-column, no personal data, ATS-optimized
German Photo placeholder, DOB/nationality, signature block
Europass CEFR language grid, DIGCOMP digital competence grid, EQF labels

Supported Languages for Translation

de fr es pt nl it pl sv da no fi cs hu ro bg el tr ar zh ja ko #\x00 \x00O\x00p\x00a\x00u\x00x\x00 \x00 \x00

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

opaux-0.1.0.tar.gz (54.8 kB view details)

Uploaded Source

Built Distribution

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

opaux-0.1.0-py3-none-any.whl (52.7 kB view details)

Uploaded Python 3

File details

Details for the file opaux-0.1.0.tar.gz.

File metadata

  • Download URL: opaux-0.1.0.tar.gz
  • Upload date:
  • Size: 54.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for opaux-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9928372053d89640651331754ddfba493d12c8c4e14ab77ad33be0b1f517ce0e
MD5 da09ec5e6b996d7da8df7472e76aecb8
BLAKE2b-256 cf2f02314dbe2603d9a1b16812895f2ab8eae5aab2c8791978eb61272d4edefe

See more details on using hashes here.

Provenance

The following attestation bundles were made for opaux-0.1.0.tar.gz:

Publisher: release.yml on faykgordon-sudo/Opaux

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

File details

Details for the file opaux-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: opaux-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 52.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for opaux-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bba51fda0dfe36ddc4295df9e2fe0a28997744110aecd7dc6611c9bf717a0a79
MD5 7c6ad549a92a971661e21684b046915b
BLAKE2b-256 47ae2ffb3e7e71bbe13470234e6d7635c17fe3f0f7f6d1f2222036c90a415ea1

See more details on using hashes here.

Provenance

The following attestation bundles were made for opaux-0.1.0-py3-none-any.whl:

Publisher: release.yml on faykgordon-sudo/Opaux

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