はじめに
最近、GitHubのissuesでスパムが登録されるようになったので、タイトル、本文で指定キーワードに該当したらissueを削除するworkflowを作成したので紹介します。
注意事項
- 本記事は2025/03/16時点の情報です。
- 本記事に記載された内容やコードによって生じたいかなる損害についても責任を負いません。使用する際は自己責任でお願いします。
- 使用する場合は、事前にローカルで
spam_issue_deleter.pyを実行して動作確認することを推奨します。
使用方法
スクリプト/ワークフローファイルではGitHub APIのアクセストークンが必要になります。詳細はスクリプトを参照してください。
スクリプト(spam_issue_deleter.py)
コマンド例:python scripts/spam_issue_deleter.py
ワークフロー(delete-spam-issues.yml)
- スクリプトとワークフローファイルコミット後に
Actions > Delete Spam Issues > Run workflow > mainで手動実行できます。 - 定期実行(cron)もサポートしています。必要に応じて変更してください。
実行例


まとめ
- GitHubのissuesでスパムが登録されるようになったので、タイトル、本文で指定キーワードに該当したらissueを削除するスクリプトとワークフローを紹介しました。
- issueはブラウザであれば手動削除も可能ですが、iOSのスマホアプリでは対応していません。正直、この状況は良くないので、ブラウザ同等に削除できるように機能要望を出したいと考えています。
- また、スパムは報告することも可能ですが、運営はすぐレスポンスしてくれるとは限りません。見るよりもまず削除することが大事だと思いますので、リスクは排除し安全は自分で守ることにしましょう。
以上。