RABBIT: A CLI tool for identifying
bots based on GitHub events
Natarajan Chidambaram,
Tom Mens,
Alexandre Decan
International Conference on Mining Software Repositories, Data and Tool Showcase Track, 2024
1
Pushing commits
Commenting PR
Merging PR
• Opening issue
• Updating wiki page
• Publishing Release
• Creating tag
• Deleting branch
2
Activity types
.
.
.
Tool Data received Execution time
BotHunter 276 MB 376 minutes
BIMAN
Dey et al.
MSR 2020
BoDeGHa
Golzadeh et al.
JSS 2021
BoDeGiC
Golzadeh et al.
BENEVOL 2020
BotHunter
Abdellatif et al.
MSR 2022
Tool Data received Execution time
BoDeGHa 1289 MB 415 minutes
On 518 contributors
3
4
Inputs
Contributor
names
GitHub
API key
Optional
parameters
Generate account
activity sequences
Query GitHub
Events API
Compute features
Predict account type
RABBIT Output
TERMINAL
N. Chidambaram, A. Decan, and T. Mens. 2023. Distinguishing Bots From Human Developers Based on Their GitHub Activity Types.
In Seminar on Advanced Techniques & Tools for Software Evolution (SATToSE). CEUR
% rabbit --input-file contributors.txt --key <APIkey>
account prediction confidence
johnpbloch-bot bot 0.998
tensorflow-jenkins bot 0.853
AlexandreDecan human 0.700
natarajan-chidambaram human 0.553
codecov bot 0.985
tommens human 0.931
https://github.com/natarajan-chidambaram/RABBIT
Tool F1-score Data received # API queries Execution time
BotHunter 0.92 276 MB > 15,000 376 minutes
RABBIT 0.91 60 MB < 1,500 8 minutes
5
On 518 contributors
.
.
.
.
.
.
.
.
.
RABBIT Runs Faster and Eats Less
https://github.com/natarajan-chidambaram/RABBIT
6

RABBIT: A CLI tool for identifying bots based on their GitHub events.

  • 1.
    RABBIT: A CLItool for identifying bots based on GitHub events Natarajan Chidambaram, Tom Mens, Alexandre Decan International Conference on Mining Software Repositories, Data and Tool Showcase Track, 2024 1
  • 2.
    Pushing commits Commenting PR MergingPR • Opening issue • Updating wiki page • Publishing Release • Creating tag • Deleting branch 2 Activity types . . .
  • 3.
    Tool Data receivedExecution time BotHunter 276 MB 376 minutes BIMAN Dey et al. MSR 2020 BoDeGHa Golzadeh et al. JSS 2021 BoDeGiC Golzadeh et al. BENEVOL 2020 BotHunter Abdellatif et al. MSR 2022 Tool Data received Execution time BoDeGHa 1289 MB 415 minutes On 518 contributors 3
  • 4.
    4 Inputs Contributor names GitHub API key Optional parameters Generate account activitysequences Query GitHub Events API Compute features Predict account type RABBIT Output TERMINAL N. Chidambaram, A. Decan, and T. Mens. 2023. Distinguishing Bots From Human Developers Based on Their GitHub Activity Types. In Seminar on Advanced Techniques & Tools for Software Evolution (SATToSE). CEUR
  • 5.
    % rabbit --input-filecontributors.txt --key <APIkey> account prediction confidence johnpbloch-bot bot 0.998 tensorflow-jenkins bot 0.853 AlexandreDecan human 0.700 natarajan-chidambaram human 0.553 codecov bot 0.985 tommens human 0.931 https://github.com/natarajan-chidambaram/RABBIT Tool F1-score Data received # API queries Execution time BotHunter 0.92 276 MB > 15,000 376 minutes RABBIT 0.91 60 MB < 1,500 8 minutes 5 On 518 contributors . . . . . . . . .
  • 6.
    RABBIT Runs Fasterand Eats Less https://github.com/natarajan-chidambaram/RABBIT 6