{% extends "base.html" %} {% from "_hub.html" import hub %} {% block title %}Config — karyab{% endblock %} {% block content %}

Config

{% if flash %} {% if flash_error %}
{{ flash }}
{% else %}
{{ flash }}
{% endif %} {% endif %}

All sections are part of one form — the Save button at the bottom saves everything at once.

{% call hub(hub_sections) %}
{# ------------------------------------------------------------------ #} {# SECTION: Matching #} {# ------------------------------------------------------------------ #}

Matching

Controls the relevance gate and job list display defaults.

UI defaults

Statuses hidden in the job list filter when no explicit filter is chosen.
{% for st in all_statuses %} {% endfor %}

Relevance gate

Title-based pre-filter — checked before LLM scoring. Off-target jobs get fit_score=0 and are hidden from /new. Leave keyword lists blank to derive them from your Profile below.

Re-rank clears all scores and re-runs ranking. Clean off-target marks jobs failing location/role gates as score=0 (instant, no LLM).

{# ------------------------------------------------------------------ #} {# SECTION: Profile #} {# ------------------------------------------------------------------ #}

Profile

Job-matching profile: drives ranking and filtering. Nested subtables (e.g. [profile.requirements]) are preserved on save.

{# ------------------------------------------------------------------ #} {# SECTION: Sources #} {# ------------------------------------------------------------------ #}

Sources

Enable/disable job sources and configure their settings. API secrets (keys, passwords) live in secrets.toml — never entered here.

{# Greenhouse #}
{# Lever #}
{# Ashby #}
{# Teamtailor #}
{# Adzuna #}
{% if adzuna_secret_configured %} API key configured ✓ {% else %} API key not configured {% endif %}

API secrets (app_id, app_key) must be set in secrets.toml — not editable here.

{# Themuse #}
{# Remotive #}
{# Simple toggle sources #}
{# JobTech #}

Keyless Swedish Platsbanken API. No API key required.

{# Email — read-only display (auth via dedicated button) #}

Email accounts

{% if email_accounts %} {% else %}

No email accounts in config.toml. Add [[sources.email]] entries and credentials to secrets.toml. See Help → Email for setup.

{% endif %}
{# ------------------------------------------------------------------ #} {# SECTION: Ranker #} {# ------------------------------------------------------------------ #}

Ranker

Which LLM backend scores jobs. Anthropic/OpenCode API keys stay in secrets.toml — not entered here.

{% if anthropic_configured %} Anthropic API key configured ✓ {% endif %}

Ollama settings (used when backend = ollama)

[ranker.ui] overlay Overrides [ranker] for the web UI's own rank calls only. Leave blank to use the base ranker config.

{# ------------------------------------------------------------------ #} {# Save button #} {# ------------------------------------------------------------------ #}
{% endcall %} {% endblock %}