bot check action - GitHub Action que agrega verificación anti-bots a issues/PR de GitHub
(github.com/dohyeon5626)Al mantener un repositorio de código abierto, a veces los bots crean issues o PR como si fueran spam. Para evitarlo, hice de forma sencilla una GitHub Action que solicita verificación con Cloudflare Turnstile al crear un issue/PR.
Cómo funciona
- Cuando alguien crea un issue o PR
- el bot publica automáticamente un comentario con un enlace de verificación
- si el autor hace clic en el enlace y completa la verificación, el comentario se actualiza con un mensaje de éxito
- si la verificación falla o se agota el tiempo, se actualiza con un mensaje de error y, según la opción configurada, el issue/PR puede cerrarse automáticamente o recibir una etiqueta
Al usarlo, puedes elegir opciones personalizadas según lo que necesites.
- Configuración de eventos de issue/PR
- Cierre automático al fallar la verificación, configuración para agregar etiquetas
- Configuración para omitir la verificación de ciertos usuarios (
allowed-users) - Configuración para omitirla si se tiene un nivel de permisos o superior (
trusted-permission: read / write / admin) - Configuración para exigir verificación solo a colaboradores nuevos (
first-time-only) - La cuenta que publica el comentario puede ser
github-actions[bot]o una cuenta de bot personalizada
Los enlaces al código son los siguientes.
Código de la GitHub Action: https://github.com/dohyeon5626/bot-check-action
Código de la página de verificación: https://github.com/dohyeon5626/bot-check-page
Código del servidor de verificación: https://github.com/dohyeon5626/serverless-functions/…
¡Es la primera vez que publico en GeekNews! Hay muchas personas desarrolladoras muy buenas, así que si me dejan feedback podré aprender mucho.
Además de este proyecto, también pueden dejar issues o PR libremente en cualquiera de mis repos en https://github.com/dohyeon5626; les agradeceré mucho cualquier feedback.
2 comentarios
Es un buen proyecto. Como no tengo proyectos grandes, no sé si llegaré a usarlo.
Parece que en el open source se podría evitar fácilmente que bots publiquen issues/PR.