В репозитории chris124567/cfsolve опубликована Rust-библиотека и CLI для автоматического прохождения Cloudflare Turnstile без запуска headless-браузера. Для widget инструмент возвращает Turnstile token, а для challenge page — cookie cf_clearance. Решение основывается не на управлении полноценным браузером, а на воспроизведении сетевого поведения выбранного browser profile.
Профиль описывает конкретный клиент и ссылается на записанные ответы для браузерных проверок Cloudflare. В комплект входит профиль Safari 26 на iOS, а формат поддерживает Safari и Chrome/Chromium. Подготовка нового профиля требует ручной работы или AI-помощи; capture-proxy помогает записывать расшифрованные payload при прохождении challenge в настоящем браузере. Таким образом, библиотека не устраняет необходимость обновлять данные при изменении проверок.
Для виджета обычно нужны URL и sitekey, иногда дополнительно action и cData. HTML можно передать самостоятельно, если страница уже загружена, например после входа в аккаунт. При наличии нескольких виджетов sitekey выбирает нужный. Challenge page обрабатывается прямым fetch или заранее полученным HTML. Универсальный метод solve объединяет оба сценария.
CLI сохраняет запросы и ответы в отдельный каталог для отладки. Библиотека позволяет один раз загрузить Browser и использовать его совместно: параллельные операции получают собственные connections и cookies. Поддерживаются HTTP, HTTPS, SOCKS5 и SOCKS5H proxy. Автор предупреждает, что cf_clearance нужно применять с тем же IP и user agent, что у профиля, иначе Cloudflare отклонит cookie.
Для сборки требуются закреплённая версия Rust, CMake, C/C++ compiler, libclang и Git, поскольку проект патчит и собирает BoringSSL. При подключении как path dependency нужно перенести patch-секцию в верхний Cargo.toml; default-features=false отключает внутренние инструменты и оставляет solver.
API различает сетевые сбои, отказ Cloudflare, блокировку сайтом, неожиданный или отсутствующий challenge, ошибки конфигурации и неподдерживаемые варианты. Часть ошибок допускает повтор, другие указывают на новую сборку challenge или отсутствие виджета.
Основной код распространяется по MIT, а patched-зависимости в vendor сохраняют собственные лицензии. Инструмент предназначен для обхода антибот-проверки, поэтому его применимость зависит от правил конкретного сайта и может меняться после обновлений Cloudflare.