Об этом проекте

job-workbench — это локальный, проверяемый рабочий стол для управления всем процессом поиска работы: от анализа описания вакансии до принятия решения по офферу. Инструмент использует обычные файлы Markdown и CSV на вашем диске и ваш собственный AI CLI. Проект написан на Python и выпущен под лицензией MIT. Проект рассматривает основную трудность поиска работы как разрозненность информации, которая мешает принимать решения: стоит ли подавать заявку в компанию, какая версия резюме была отправлена и сколько заявок находится в работе с приближающимися дедлайнами. Workbench превращает эти материалы в файлы, доступные для запросов и отслеживания. В основе дизайна лежат три принципа. Во-первых, приватность local-first: всё хранится на диске в виде простого текста, совместимого с git-diff и электронными таблицами, без телеметрии и серверов. Реальные персональные данные хранятся в отдельной директории, исключенной из системы контроля версий, поэтому новый клон репозитория начинается пустым. Во-вторых, проверяемый ИИ вместо автоматизации «черного ящика»: ваш собственный AI CLI выполняет семантические оценки (например, чтение описания вакансии и оценка соответствия), в то время как Python-скрипты берут на себя детерминированную работу: проверку соответствия критериям, валидацию баллов, генерацию PDF и ввод-вывод трекера. Автоматические вердикты, включая состояние заявки, разницу при импорте CSV и кластеризацию отказов, сопровождаются явными, проверяемыми человеком причинами, а не просто баллом. В-третьих, защита от фальсификаций: импорт резюме описывается как извлечение, а не генерация; каждое сохраненное значение должно быть прослежено до исходного текста, не извлеченные поля помечаются, а предложения ИИ по переписыванию должны пройти пять локальных проверок на достоверность перед принятием. Функционально инструмент предлагает четыре рабочих процесса командной строки: парсинг и скоринг описаний вакансий, упаковку заявок, управление трекером и воронкой, а также реконструкцию резюме с валидацией. Web UI предоставляет семь страниц, использующих те же файлы данных: дашборд, трекер, воркшоп резюме с импортом в один клик, защищенным ИИ-переписыванием и экспортом в Word, страницу прогресса с банком вопросов для интервью, ретроспективы, библиотеку и настройки. Цикл после подачи заявки поддерживает записи об интервью с экспортом в календарь в один клик, последующее взаимодействие с рекрутерами, сравнение офферов в виде сопоставления фактов без рекомендаций, историю версий резюме, ретроспективы конверсии этапов, кластеризацию отказов и состояние заявки, выраженное в четырех статусах с конкретными причинами. Скоринг следует двухэтапной структуре: сначала «ворота соответствия» (степень, специальность, год выпуска, язык и город), где любой провал означает прекращение скоринга, затем четыре взвешенных измерения, формирующих пятиуровневый вердикт. Изменение правил скоринга происходит путем редактирования Markdown-профилей, а не кода. Архитектура представляет собой четырехслойную однонаправленную зависимость: от навыков до скриптов, затем к данным и контролю версий, с трехслойным разделением между инструментарием, профилями домена и рабочим пространством пользователя. Для начала работы требуется Python 3.8 или новее (только стандартная библиотека), опционально библиотека PDF для валидации и Chrome или Edge для генерации PDF. Скрипт инициализации создает рабочее пространство с шестью модулями, шаблонами профилей и плагином домена; второй скрипт распределяет навыки по поддерживаемым средам выполнения ИИ. Затем пользователи заполняют конфигурационный файл агента, где раздел с жесткими фактами соответствия обязателен, так как фильтр вакансий намеренно отказывается гадать, после чего взаимодействуют с AI CLI на естественном языке. Для пользователей без Python или Node доступно упакованное приложение для Windows со страницы релизов, которое хранит данные в локальной папке данных приложений. Репозиторий включает тесты, служащие гейтом CI, руководство пользователя, проектную документацию, дорожную карту и рекомендации по внесению вклада. Пользовательский интерфейс в настоящее время ориентирован на китайский язык, английский интерфейс заявлен в дорожной карте.