Skip to main content

Неофициальный CLI-клиент для поиска работы и откликов на hh.ru.

Project description

hh-cli

PyPI version License: MIT Follow on Telegram

Неофициальный CLI-клиент для поиска работы и откликов на hh.ru.

hh-cli — это авторизованное приложение, позволяющее искать вакансии, просматривать их, отмечать понравившиеся и откликаться на них в интерфейсе терминала. У приложения есть канал в Telegram, где публикуются основные новости проекта.

Примечание: hhcli — это авторизованное (легальное) приложение, одобренное hh.ru, однако, оно разрабатывается независимым разработчиком и не является официальным!

gif-of-hhcli.

Ключевые возможности

  • Локальная база данных SQLite, хранящая профили, историю, кэш вакансий, справочники и т.д.
  • Кроссплатформенный TUI-интерфейс (Linux, Windows).
  • Профили для разных аккаунтов с поддержкой нескольких резюме внутри одного аккаунта.
  • Два режима поиска: автоматический по рекомендациям hh.ru и ручной с настраиваемыми фильтрами.
  • Отклик на несколько выбранных вакансий с отправкой сопроводительного письма.
  • Хранение истории всех откликов и переписок с работодателями.
  • Переписка с работодателями и форматирование текста сообщений прямо внутри приложения.
  • Фильтры и отсев дубликатов вакансий (спама по городам).
  • Подсветка компаний, в которые ранее был отклик.
  • Подсветка вакансий, на которые был отклик (по названию+компания или по id вакансии).
  • Приложение чистит базу данных от устаревшего кэша вакансий (старше 5 дней) и логов (старше 20 дней).
  • Выбор и возможность создания собственных тем оформления.

Установка

Linux

Ubuntu / Debian / Mint (apt)

sudo apt update && sudo apt install python3 python3-pip pipx git -y
pipx install hhcli

Arch / Manjaro (pacman)

sudo pacman -Syu python python-pip pipx git
pipx install hhcli

Fedora / RHEL / Rocky (dnf / yum)

sudo dnf install python3 python3-pip pipx git  # либо sudo yum install ...
pipx install hhcli

Другие дистрибутивы

  • Установите Python ≥3.9 и pipx из стандартного репозитория.
  • Выполните pipx install hhcli.
  • Если pipx отсутствует, можно поставить локально: pip install --user pipx && pipx ensurepath.

Windows

Установка Python и pipx

  1. Скачайте Python 3.9+ с python.org и поставьте галочку “Add Python to PATH”.
  2. Установите pipx (PowerShell или CMD, права администратора не нужны):
python -m pip install --upgrade pip
python -m pip install pipx
python -m pipx ensurepath

Установка hhcli

Перезапустите PowerShell (или CMD) и выполните:

pipx install hhcli

После установки откройте новое окно PowerShell/Command Prompt, чтобы PATH подхватил C:\Users\<имя>\.local\bin. Если команда hhcli всё ещё не находится, убедитесь, что этот путь внесён в переменные среды (Параметры → Система → Дополнительные параметры → Переменные среды) и перезапустите терминал.

Обновление / удаление

  • Обновить: pipx install hhcli --force
  • Удалить: pipx uninstall hhcli

Удаление

Используйте pipx uninstall hhcli (Windows и Linux) или, если ставили из исходников, удалите виртуальное окружение/пакет. Данные профиля лежат в:

  • Linux: ~/.local/share/hhcli
  • Windows: %LOCALAPPDATA%\hhcli

Первый запуск и настройка

1. Авторизация

После установки запустите процесс аутентификации. Вам нужно будет придумать короткое имя для вашего профиля (go, python, pm, analyst и т.д).

hhcli --auth analyst

В системном браузере загрузится страница hh.ru для аутентификации на сайте. После успешного входа нужно запустить приложение.

2. Запуск

Выполните команду:

hhcli

При первом запуске с несколькими резюме приложение предложит выбрать, какое из них использовать для поиска.

3. Настройка

Вся настройка (ключевые слова для поиска, шаблон сопроводительного письма, внешний вид) производится внутри приложения. Нажмите клавишу c на любом из основных экранов, чтобы перейти в меню настроек.

Использование

Основное взаимодействие с приложением происходит через TUI-интерфейс.

Основные команды (CLI)

Команда Описание
hhcli Запускает основной TUI-интерфейс.
hhcli --auth <имя_профиля> Выполняет аутентификацию для нового профиля или обновляет токен авторизации для существующего.
hhcli -v / hhcli --version Показывает текущую версию (из PyPI).
hhcli -i / hhcli --info Выводит информацию о версии, пути к локальной базе и доступных профилях.

Горячие клавиши (внутри приложения)

Клавиша Действие
Пробел Выбрать/снять выбор с текущей вакансии.
A Откликнуться на все выбранные вакансии.
H Открыть экран с историей откликов для текущего резюме.
C Открыть экран настроек профиля.
Q / Esc Вернуться на предыдущий экран или выйти из приложения.
/ Переключение между страницами в списке вакансий.

Темы оформления

У приложения есть своя дизайн-система для переключения тем оформления. Чтобы создать новую тему, скопируйте содержимое любого существующего файла .tcss из каталога hhcli/ui/themes в новый файл и настройте палитру. Новая тема будет доступна на экране настроек.

Переменные стилей: базовые токены отвечают за основные цвета темы (остальные значения собираются автоматически в hhcli/ui/themes/design_system.tcss):

  • background1 — основной фон приложения.
  • background2 — фон панелей, карточек, списков.
  • background3 — фон шапок, рамок и выделений.
  • foreground1 — вторичный текст (подписи, подсказки).
  • foreground2 — основной текст.
  • foreground3 — акцентный текст/заголовки.
  • primary — главный акцент (кнопки, ссылки, выделения).
  • secondary — дополнительный акцент и ховеры.
  • red, orange, yellow, green, blue, purple, magenta, cyan — цвета статусов и вспомогательных подсветок.
  • scrim — полупрозрачная подложка для модальных окон.

TO DO

Дальнейшие планы:

  • Переработка первых двух экранов (были унаследованы от старой bash-версии).
  • Интерактивное добавление профилей без ввода команды hhcli --auth <profile>.
  • Улучшение поддержки и тестирование на других ОС (macOS, Windows).
  • Расширение возможностей фильтрации и аналитики по истории откликов.
  • Добавление экрана с дашбордом на основе истории откликов.
  • Добавление переписки с работодателями.
  • Нотификация и уведомление о непрочитанных сообщениях работодателей.
  • Добавление кастомизации сопроводительного письма для некоторых из выбранных вакансий.

Предыстория

Изначально hhcli не планировался как большой и долго поддерживаемый проект. Но текущая ситуация на рынке труда: глупые алгоритмы отбора, фейковые вакансии, некомпетентные HR'ы и в целом низкая эффективность ручного поиска и откликов через сайт мотивируют меня развивать этот инструмент дальше.

Прежняя версия hhcli делегировала практически всю работу с API утилите hh-applicant-tool, отчасти поэтому была полностью переписана в текущее исполнение. Подробнее можно ознакомиться в ветке legacy.

Legacy-версия перестала поддерживаться 26.10.2025, её дальнейшая работоспособность не гарантирована и полностью зависит от hh-applicant-tool.

Лицензия

Проект распространяется под лицензией MIT. Смотрите файл LICENSE для подробностей.

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

hhcli-0.4.0.tar.gz (71.9 kB view details)

Uploaded Source

Built Distribution

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

hhcli-0.4.0-py3-none-any.whl (90.3 kB view details)

Uploaded Python 3

File details

Details for the file hhcli-0.4.0.tar.gz.

File metadata

  • Download URL: hhcli-0.4.0.tar.gz
  • Upload date:
  • Size: 71.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for hhcli-0.4.0.tar.gz
Algorithm Hash digest
SHA256 b28b00a68ae3df8a58d70c883834fa07cb184e59696d973468df6fecbe0d8548
MD5 094742df00a8aa458f1920c7a4d34bc3
BLAKE2b-256 4ecd336940fe12564aebea592ad67dbd5d3970b1228c4ca407f13c93bac6b7f4

See more details on using hashes here.

File details

Details for the file hhcli-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: hhcli-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 90.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for hhcli-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ffa816db1bbdab299a20511fead82ca8a2eb1d663ab33979871c93a5b893adc8
MD5 c51d6e6f5b0ea2da57fd6ed728122617
BLAKE2b-256 8fded7e5deff190ee20d8757c71c9d629174b6a87d6435bd6a33c9e2f480597a

See more details on using hashes here.

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