Неофициальный CLI-клиент для поиска работы и откликов на hh.ru.
Project description
hhcli
hhcli — это неофициальный CLI-клиент для поиска работы и откликов на hh.ru, позволяющий искать вакансии, просматривать их, отмечать понравившиеся и откликаться на них в интерфейсе терминала.
У приложения есть канал в Telegram, где публикуются основные новости проекта и сайт, где можно запустить тестовую версию утилиты для ознакомления с интерфейсом и фичами.
.
Ключевые возможности
- Локальная база данных SQLite, хранящая профили, историю, кэш вакансий, справочники и т.д.
- Кроссплатформенный TUI-интерфейс (Linux, Windows).
- Профили для разных аккаунтов с поддержкой нескольких резюме внутри одного аккаунта.
- Два режима поиска: автоматический по рекомендациям hh.ru и ручной с настраиваемыми фильтрами.
- Отклик на несколько выбранных вакансий с отправкой сопроводительного письма.
- Хранение истории всех откликов и переписок с работодателями.
- Переписка с работодателями и форматирование текста сообщений прямо внутри приложения.
- Фильтры и отсев дубликатов вакансий (спама по городам).
- Подсветка компаний, в которые ранее был отклик.
- Подсветка вакансий, на которые был отклик (по названию+компания или по id вакансии).
- Приложение чистит базу данных от устаревшего кэша вакансий (старше 5 дней) и логов (старше 20 дней).
- Выбор и возможность создания собственных тем оформления.
Установка
Linux
Ubuntu / Debian / Mint (apt)
sudo apt update && sudo apt install -y
python3 python3-pip pipx git
python3-gi gir1.2-webkit2-4.1 gir1.2-gtk-3.0 libwebkit2gtk-4.1-0
pipx install hhcli --system-site-packages
python3 -m pipx ensurepath
# Перезапустите терминал прежде, чем запускать программу
Arch / Manjaro (pacman)
sudo pacman -Syu python python-pip pipx git webkit2gtk python-gobject gtk3
pipx install hhcli --system-site-packages
python3 -m pipx ensurepath
# Перезапустите терминал прежде, чем запускать программу
Fedora / RHEL / Rocky (dnf / yum)
sudo dnf install python3 python3-pip pipx git # либо sudo yum install ...
# Пакеты WebKit2GTK могут называться webkit2gtk4.1 / webkit2gtk3 / pywebkitgtk
sudo dnf install webkit2gtk4.1 gtk3 gobject-introspection
pipx install hhcli --system-site-packages
python3 -m pipx ensurepath
# Перезапустите терминал прежде, чем запускать программу
Другие дистрибутивы
- Установите Python ≥3.9 и
pipxиз стандартного репозитория. - Установите WebKit2GTK+ и Python GObject bindings (названия пакетов зависят от дистрибутива).
- Выполните
pipx install hhcli --system-site-packages. - Если
pipxотсутствует, можно поставить локально:pip install --user pipx && pipx ensurepath.
Windows
Windows 10/11
- Скачайте Python 3.9+ с python.org и поставьте галочку “Add Python to PATH”.
- Установите
pipx(PowerShell или CMD, права администратора не нужны):
python -m pip install --upgrade pip
python -m pip install pipx
python -m pipx ensurepath
Перезапустите PowerShell (или CMD) и выполните установку hhcli:
pipx install hhcli
После установки откройте новое окно PowerShell/CMD и введите hhcli.
Для окна авторизации нужен WebView2 Runtime. Обычно он уже предустановлен в Windows 10/11. Если окно авторизации не появляется, откройте страницу Microsoft и скачайте Evergreen Bootstrapper (x64 для большинства ПК). Fixed Version не требуется.
Запуск и авторизация
После установки запустите программу.
hhcli
Будет предложено создать новый профиль. Придумать короткое имя для вашего профиля (go, python, pm, analyst и т.д). В открывшемся мини-браузере загрузится страница hh.ru для аутентификации на сайте. После успешной аутентификации программа предложит выбрать способ поиска вакансий. Если в аккаунте несколько резюме, сначала будет предложено выбрать, какое из них использовать для поиска.
Настройка
Настройка приложения (ключевые слова для поиска, шаблон сопроводительного письма, внешний вид) производится внутри приложения. Нажмите клавишу c на любом из основных экранов, чтобы перейти в меню настроек.
Горячие клавиши
| Клавиша | Действие |
|---|---|
Пробел |
Выбрать/снять выбор с текущей вакансии. |
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— полупрозрачная подложка для модальных окон.
Основные команды
| Команда | Описание |
|---|---|
hhcli |
Запускает основной интерфейс. |
hhcli -v / hhcli --version |
Показывает текущую версию. |
hhcli -i / hhcli --info |
Выводит информацию о версии, пути к локальной базе и доступных профилях. |
Обновление / удаление
Обновить:
Windows (PowerShell/CMD):
pipx upgrade hhcli
Linux:
pipx install hhcli --force --system-site-packages
Удалить:
pipx uninstall hhcli
Если ставили из исходников, удалите виртуальное окружение и данные по пути:
- Linux:
~/.local/share/hhcli - Windows:
%LOCALAPPDATA%\hhcli
TO DO
Дальнейшие планы:
- Поддержка macOS.
- Расширение возможностей фильтрации и аналитики по истории откликов.
- Нотификация и уведомление о непрочитанных сообщениях работодателей.
- Возможность изменения отправленного ранее сообщения работодателю.
Предыстория
Изначально hhcli не планировался как большой и долго поддерживаемый проект. Но текущая ситуация на рынке труда: глупые алгоритмы отбора, фейковые вакансии, некомпетентные HR'ы и в целом низкая эффективность ручного поиска и откликов через сайт мотивируют меня развивать этот инструмент дальше.
Прежняя версия hhcli делегировала практически всю работу с API утилите hh-applicant-tool, отчасти поэтому была полностью переписана в текущее исполнение. Подробнее можно ознакомиться в ветке legacy.
Legacy-версия перестала поддерживаться 26.10.2025, её дальнейшая работоспособность не гарантирована и полностью зависит от hh-applicant-tool.
Лицензия
Проект распространяется под лицензией MIT. Смотрите файл LICENSE для подробностей.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hhcli-0.6.4.tar.gz.
File metadata
- Download URL: hhcli-0.6.4.tar.gz
- Upload date:
- Size: 84.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb496f3492b7f3fb9ff3f306ae2186ca51d8db13e627737e62faf042b3bba510
|
|
| MD5 |
37064b082328faf63120edbeb102445a
|
|
| BLAKE2b-256 |
7a54c2b5f5ac715b9e7d82ceeaa85a163d769247d13a93b9cf82e35874d2140f
|
File details
Details for the file hhcli-0.6.4-py3-none-any.whl.
File metadata
- Download URL: hhcli-0.6.4-py3-none-any.whl
- Upload date:
- Size: 102.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b455295856ce63543f1594c88e6c01572add48e1dcca61b53c317f39a283080d
|
|
| MD5 |
397e5394d560090792be1d6a2481244d
|
|
| BLAKE2b-256 |
ee266faab19171210ea4f64cbd43a8908cc29948eb9b082cbf05687ad5996dee
|