После смерти матери автор унаследовал коробку старых фотонегативов и купил негативный сканер Plustek 8200i, но обнаружил, что его чипсет изменился и стал не поддерживаться в Linux. Ранее он использовал Claude Code, чтобы создать инструменты конфигурации для Linux для некоторых своих устройств, и задумался, поможет ли тот написать рабочий драйвер SANE.
Четыре месяца он не мог сдвинуться с места, пока не увидел пост Тома Криддера, известного как Glorious Eggroll, в котором описывалось, как он использовал инструменты ИИ для исправления драйвера мыши. ИИ-агент управлял экземпляром Windows и собирал данные, необходимые для исправления. Автор попросил Claude настроить виртуальную машину с Windows, чтобы сделать то же самое для своего сканера. Благодаря сочетанию возможности выполнять сканирование в Windows, захвату данных USB и улучшениям Claude Code, первое успешное сканирование в Linux было получено за несколько часов. Через несколько дней у него появился почти идеальный драйвер с поддержкой инфракрасного сканирования, однако выяснилось, что поддержку сканеров в SANE тем временем уже добавили.
Вдохновлённый, он повторно использовал этот инструмент для работы с MIPI-камерой своего ноутбука. К концу дня Claude подготовил патчи как для драйвера ядра, так и для libcamera. Он также попросил Claude сделать инструмент универсальным и задокументированным, чтобы другие могли опробовать этот подход на своём оборудовании.
Метод под названием hw-harness записывает эталонную сессию, запуская фирменный драйвер Windows в виртуальной машине KVM с проброшенным устройством. Трафик перехватывается на хосте Linux с помощью usbmon, который работает ниже уровня проброса. Затем та же операция повторяется в Linux с драйвером пользователя, и два журнала сравниваются. Решение о том, что создавать, и проверку на реальном оборудовании по-прежнему выполняет человек, но ИИ берёт на себя большую часть рутинной работы по анализу незадокументированного трафика шины.
Источник: Hacker News · Сводку подготовил HeadlinesBriefing