Skip to content

Configuration Reference

gysosin edited this page Oct 8, 2026 · 1 revision

Configuration reference

Settings page

Setting Default Meaning
Minimum fit score 60 Roles scored below this are not drafted
Drafts per run 8 The most drafts one daily search writes (best first)
Minimum company size 500 Employees; smaller companies are skipped before scoring. 0 turns it off
Keep unknown sizes off Keep companies whose size can't be found
Triage model claude-haiku-4-5-20251001 First pass over every scraped posting
Scoring model claude-sonnet-5-5 Scores postings; also classifies Gmail replies
Drafting model claude-opus-5-5 Writes CVs, cover letters, answers and interview prep
Send notifications / ntfy topic off / generated Schedules and Notifications
Check Gmail / address / app password off Gmail Tracking

Config file

Everything above, plus secrets, is stored in ~/.config/applydesk/config.json (mode 600, outside the repo). Keys:

Key Notes
min_score, max_drafts, min_company_size, keep_unknown_size as above
models.triage, models.score, models.draft model IDs
notify_enabled, ntfy_topic phone alerts
gmail_enabled, gmail_user, gmail_app_password Gmail check
cv_email optional: an email that must appear in each CV's text layer, checked after compiling
auth the dashboard login (salted PBKDF2 hash); set with python -m app set-password

Files you edit

File What
CLAUDE.md your identity, target roles, location, deal-breakers
.claude/skills/job-application-assistant/01-candidate-profile.md the facts every draft may use
app/prompts/claim_bank.txt pre-approved CV bullets
app/store.py → ANSWERS standard form answers on the dashboard
app/boards.py → BOARDS company career boards
app/pipeline.py → LINKEDIN_QUERIES, FREEHIRE_QUERIES, AGGREGATORS search queries and blocklist
app/instahyre.py → QUERIES, YEARS Instahyre search
app/data/banned_names.txt names that must never appear in drafts or be read from email
app/prompts/*.md the prompts for each step

Environment variables

Variable Use
ANTHROPIC_API_KEY use an API key instead of a subscription
CLAUDE_CODE_OAUTH_TOKEN a subscription token from claude setup-token
TZ timezone for schedules
CLAUDE_CONFIG_DIR where the Claude login lives (Docker sets it)

Data files (git-ignored)

Path Contents
job_search_tracker.csv every application; the dashboard's source of truth
job_scraper/seen_jobs.json every job already seen, so it isn't scored twice
app/data/runs.json, app/data/runs/*.log run history (last 300) and logs
app/data/schedules.json schedules
app/data/replies.json job-related emails shown on Today
app/data/gmail_state.json, gmail_seen.json, gmail_backfilled Gmail check progress
app/data/company_sizes.json company size cache (90 days)

Clone this wiki locally