Jump to content

Wikipedia:Bot policy: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
m →‎Various tasks: RussBot is very much active
Added the approval group into the policy
Line 12: Line 12:
== Current policy on running bots ==
== Current policy on running bots ==


Before running a bot, you must get approval on [[WP:BRFA|Requests for bot approval]]. State there precisely what the bot will do. Get a rough consensus on the talk page that it is a good idea. Wait a week to see if there are any objections, and if there aren't, go ahead and run it for a short period so it can be monitored. After this period, you should ask that the user be marked as a bot at [[m:requests for bot status]].
Before running a bot, you must get approval on [[WP:BRFA|Requests for bot approval]] (more instructions are there). State there precisely what the bot will do. Observe discussion and await authorisation from someone in the [[Wikipedia:Bots/Approvals group|approvals group]]. Approval may take up to one week. After approval you may run the bot for a short period so it can be monitored. After the trial the bot will be evaluated from someone in the approvals group and you may ask that the user be marked as a bot at [[m:requests for bot status]].


Again, please '''DO NOT''' start running your bot without
Again, please '''DO NOT''' start running your bot without
Line 18: Line 18:
# Creating a talk page for the bot describing its functions
# Creating a talk page for the bot describing its functions
# Listing your bot on [[WP:BRFA|BRFA]]
# Listing your bot on [[WP:BRFA|BRFA]]
# Getting the go ahead from someone in the [[Wikipedia:Bots/Approvals group|approvals group]]
# Waiting a week for comments.


When getting approval on [[WP:BRFA|BRFA]], please state the following:
When getting approval on [[WP:BRFA|BRFA]], please state the following:

Revision as of 21:28, 26 March 2006

WP:B redirects here. For Wikipedia Bureaucrats, see Wikipedia:Bureaucrats (WP:BCRAT).

Bots are automatic processes interacting with Wikipedia over the World Wide Web. As Wikipedia policy discourages the use of bots, please read the guidelines below before designing and implementing any bot on Wikipedia.

We almost always prefer to rely on human input for editing, and only carefully designed bots are allowed. While bots are capable of doing a lot of work, they strain the system's ability to keep up, both technically and intellectually. Bots could be used to add to or generate articles, while others could be used to edit or even destroy articles: see types of bots and history of Wikipedia bots. Well-designed bots can provide concrete benefits to the Wikipedia project, but even good bots have some drawbacks.

This is not the page to request a bot.

This page contains information pertinent to running a bot yourself. To request that someone write a bot to do something, please see Wikipedia:Bot requests instead.

Current policy on running bots

Before running a bot, you must get approval on Requests for bot approval (more instructions are there). State there precisely what the bot will do. Observe discussion and await authorisation from someone in the approvals group. Approval may take up to one week. After approval you may run the bot for a short period so it can be monitored. After the trial the bot will be evaluated from someone in the approvals group and you may ask that the user be marked as a bot at m:requests for bot status.

Again, please DO NOT start running your bot without

  1. Creating a talk page for the bot describing its functions
  2. Listing your bot on BRFA
  3. Getting the go ahead from someone in the approvals group

When getting approval on BRFA, please state the following:

  1. Whether the bot is manually assisted (run by a human) or automatic scheduled to run
  2. The period, if any, we should expect it to run
  3. What language or program it is running
  4. The purpose of your bot
    • Why do you need it?
    • Is it important enough for Wikipedia to allow your bot?

Make certain to create a user page for your bot before getting approval on BRFA:

  1. Describe the bot's purpose, language it uses, what program(s) it uses (pywikipedia framework, etc)
  2. Describe whether it is manually assisted or automatically scheduled to run
  3. The period, if any, we should expect it to run
  4. Describe who the maintainer is
  5. Add the bot's user page to Category:Wikipedia bots

When naming your bot, please make sure that it does not look exactly like your username, and that a person can immediately determine that it is a bot.

  1. Sysops should block bots, without hesitation, if they are unapproved, doing something the operator didn't say they would do, messing up articles or editing too rapidly.
  2. New bots should run without a bot flag so people can check what it's doing.
  3. Until new bots are accepted as ok they should wait 30-60 seconds between edits. After being accepted and a steward has marked them as a bot, they should delay approximately 10 seconds between edits. It is recommended that bots run with larger delays during peak hours and peak days such as Monday. Ideally, bots should run on off-peak hours and on typically low traffic days such as Friday and Saturday to avoid strain on the database servers. Running during off-peak times may permit faster editing than suggested.
  4. The operator should be at, or logged into, the machine the bot is running on to terminate it if necessary during the debugging phase, or the bot is liable to be blocked without notice.
  5. If you are planning to use a "spider", recursive wget, or similar software to get a local copy of wikipedia, please download the database dumps instead.
  6. Dynamic loading of Wikipedia pages may also be unacceptable. Please see Wikipedia:Mirrors and forks.
  7. Operators should separate their edits from their bot. This means that you should not be logged in as your bot replying to people. Questions or concerns can be addressed at bot's talk page or the operator's talk page, but the one who is responsible for replying is the operator not the bot.

The burden of proof is on the bot-maker to demonstrate the following:

  1. The bot is harmless
  2. The bot is useful
  3. The bot is not a server hog
  4. The bot has been approved

Note that according to Wikipedia:Categorization of people certain types of person categories should not be filled/emptied using a bot. Before adding sensitive categories to articles by bot, the input should be manually checked article by article, rather than uploaded from an existing list in Wikipedia.

In the assistance to prove the bot is harmless and useful, a trial period may be asked to demonstrate the bot. Complaints made about the bot during the trial period requires the bot to be immediately stopped, and the issue should be resolved at Wikipedia talk:Bots. If the trial period passes with no problems, then a bot flag may be requested at m:requests for bot status.

If you plan to make any modifications to your bot, which expand the scope of its original purpose, please leave a note on the talk page regarding the nature of the change. This is to assert that no one has any problems with your bot, and such additions still make the bot harmless, useful, and not a server hog.

Under exceptional circumstances, one or more aspects of this policy may be set aside by a consensus of administrators.

Spell-checking bots

There should be no bots that attempt to fix spelling mistakes in an unattended fashion. It is not technically possible to create such a bot which would not make mistakes. Manually-assisted spell bots are perfectly acceptable, so long as they include international spellchecking and not US-only English spellchecking. Statistic generating spell-checking bots are also perfectly acceptable (bots that generate statistics on common misspellings).

Wikipedia:Maintenance reports which list possible misspellings are welcome. See Wikipedia:Typo for existing efforts and a list of existing interactive spell-checking tools.

Interwiki bots

If using the pywikipedia framework:

  • Please run the latest version
  • Update on a daily basis

Bot operators must be reasonably familiar with the languages that they are linking from and to, in order to confirm that the interwiki linking between the two encyclopedias are done correctly.

Exceptions to this are bot developers, those working very closely with bot developers, or users that have proven themselves as harmless and useful to the community.

Informational links:

Benefits and drawbacks

Note that this section specifically discusses the type of bot that, like Rambot, adds large numbers of similarly-formatted articles based on some external data source.

Benefits bots can offer

  • Provides a good template of pre-formatted data for contributors (see how the Newton, Massachusetts entry has been expanded; the Periodic table was used to start the 100+ articles for the elements)
  • Potentially provides a unique resource not directly available elsewhere on the web (the small-town bot is a good example of a well-designed bot—see Ram-Man's description of the data acquisition process—uck!)
  • Provides full coverage in cases where an a priori undeterminable subset of the data has a high likelihood of being (or becoming) interesting even though a randomly chosen entry has a low probability of being interesting / useful.
  • Can perform chores that might become tedious for a human, such as uploading a large series of images. The Anomebot is the first bot with this capability.

Inherent drawbacks of using bots in current system

  • Adds tens of thousands of entries to Wikipedia that are unlikely to see a human edit any time soon (in fact, we could probably extrapolate the nearly exact rate at which they will get edited by seeing how many have been edited so far).
  • Artificially inflates the perceived activity of Wikipedia.
  • Can be perceived as tilting (and possibly could tilt) the purpose of Wikipedia away from being an encyclopedia and towards being a gazetteer / Sports Trivia Reference / etc.
  • Danger of abuse by "vandal-bots" (though the owner of a vandal bot would be unlikely to follow policy on whether bots were allowed anyway), or just "clueless-bots". A bot running out of control could potentially cause heavy server load or even a denial of service attack.
  • Inability to detect vandalism in previous, recent edits, effectively concealing these edits from users' watchlists. (though this can also happen if a human edits the page and doesn't spot the vandalism)

These pros and cons apply to bot additions in the aggregate—individual bot entries raise issues similar to those of stub entries. In fact, they're often one and the same.

Any graceful solution would provide the automatic functionality of the pros without the negative consequences of the cons.

Bots and recent changes

There have been general complaints about interference with normal contributor operations, esp. Special:Recentchanges.

In response to popular demand, a feature has been added to hide edits by registered bots from display in Recentchanges; see the list below for active bots. To include bot edits in Recentchanges, manually add hidebots=0 to your query string, or click "show bot edits" at the top of Recentchanges.

Good form

Bot operators are encouraged, but not required to:

  • Publish the source code of their bot (unless it's a clone)
  • Program their bot to stop editing if someone leaves a message on its talk page. This can be checked by looking for the "You have new messages..." banner in the HTML for the edit form.

Currently running bots

This is a list of currently running bots. Some of these may be actual users who are running bot scripts under their own account, and are not planning to apply for a bot flag.

Bots with a flag

Bots that are in this list should also appear in List of users with a bot flag.

Various tasks

Name Purpose Owner Date added Status
Bluebot Recategorising, template subst'ing, various tasks. Bluemoose 2005-11-12 Wikipedia:Bot policy/active
CanisRufus disambiguation, CFD tasks. RedWolf Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
CmdrObot Human-assisted. Spelling, punctuation, capitalisation fixes, compacting external URLs, miscellaneous tasks. Cmdrjameson 2006-03-14 Wikipedia:Bot policy/active
CricketBot Human-assisted, corrects common errors in cricket articles. Stephen Turner 2005-12-13 Wikipedia:Bot policy/inactive
CyeZBot Multi-login, adds interwiki links, various tasks. CyeZ Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
DcoetzeeBot Disambiguation, redirect bypassing, category moving. Deco 2005-09-06 Wikipedia:Bot policy/active
D6 disambiguation, categories, various tasks. Docu Wikipedia:Bot policy/unknown Wikipedia:Bot policy/active
Fetofsbot Orphans images. Fetofs 2006-02-21 Wikipedia:Bot policy/active
Gdrbot Bypasses redirects, disambiguation, recategorisation, DYKbot, Nomialbot, Yearbot, various tasks. Gdr 2005-05-18 Wikipedia:Bot policy/active
Guanabot Wikipedia:Bot policy/unknown Guanaco Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
Grammarbot Wikipedia:Bot policy/unknown r3m0t 2005-03-04 Wikipedia:Bot policy/active
Janna Wikipedia:Bot policy/unknown Anthony DiPierro Wikipedia:Bot policy/unknown Wikipedia:Bot policy/discontinued
JdforresterBot Moves pages and fixes the resultant redirects. Jdforrester 2005-04-12 Wikipedia:Bot policy/active
KaiserbBot Disambiguation, re-categorisation, and redirect bypassing. Kaiserb 2005-12-20 Wikipedia:Bot policy/inactive
KevinBot Changes race and ethnicity links in Rambot articles, various tasks. Kevin Rector Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
LinkBot Suggests possible wikilinks. Nickj Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
LupinBot Uploaders images. Lupin 2005-05-07 Wikipedia:Bot policy/inactive
MBot Wikipedia:Bot policy/unknown Mbecker 2005-04-18 Wikipedia:Bot policy/inactive
Nobot Maintains municipality and county articles under WikiProject Norway. Egil Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
NohatBot Various tasks. Nohat Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
OrphanBot Removes unsourced or unknown-license images from articles. Carnildo 2006-01-13 Wikipedia:Bot policy/active
Pearle Open source, various tasks. Beland Wikipedia:Bot policy/unknown Wikipedia:Bot policy/active
Pegasusbot Pywikipedia, substing of templates and various other tasks Pegasus1138 2006-03-23 Wikipedia:Bot policy/active
rambot Adds and maintains county and city articles, human-assisted spelling. Ram-Man Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
Robbot Human-assisted disambiguation, adds interwiki links. Andre Engels Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
Rschen7754bot Various highway-related tasks. Rschen7754 2005-11-06 Wikipedia:Bot policy/active
RussBot Fixes double-redirects, disambiguation, updates disambig maintenance page. RussBlau 2005-11-05 Wikipedia:Bot policy/active
Sethbot Creates redirects to American place names. Seth Illys Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
snobot Uploads images, fixes redirects. snoyes Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
SmackBot Makes simple or complex repetitive text changes. MoS, requests. Rich Farmbrough 2006-02-01 Wikipedia:Bot policy/active
Topjabot Wikipedia:Bot policy/unknown Gerritholl Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
Tsca.bot Bypasses redirects. Tsca Wikipedia:Bot policy/unknown Wikipedia:Bot policy/active
UgenBot Human-assisted disambiguation, fixes interwiki links ugen64 Wikipedia:Bot policy/unknown Wikipedia:Bot policy/inactive
VandalCountBot Updates vandalism statistics. Lightdarkness 2006-01-24 Wikipedia:Bot policy/inactive
VFD Bot Various VFD tasks. AllyUnion 2005-03-05 Wikipedia:Bot policy/discontinued
WatchlistBot Manage project watchlists (see user page for details) Ingrid 2006-03-19 Wikipedia:Bot policy/active
Whobot WP:CFD bot for moving articles Who 2005-10-13 Wikipedia:Bot policy/inactive
Tawkerbot subst'ing / blanking stale ip talk pages (per discussion). Tawker 2006-02-23 Wikipedia:Bot policy/active

Maintenance-related Bots

Bots listed here are used in the assistance of page maintenance.

Name Purpose Owner Date added Status
AFD Bot Taking over VFD Bot's job due to name change. AllyUnion 2005-09-01 Wikipedia:Bot policy/active
NekoDaemon CFD Bot. AllyUnion 2005-04-18 Wikipedia:Bot policy/active
Sandbot A bot that uses the pywikipedia framework so it can clean up the main sandbox and main sandbox talk page every 6 hours; Also cleans all tutorial sandboxes and tutorial sandbox talk pages every Monday. Work for additional sandboxes may be requested with the Bot owner. AllyUnion 2005-03-05 Wikipedia:Bot policy/active
Mairibot Using pywikipedia for SFD renames. Mairi 2005-11-05 Wikipedia:Bot policy/inactive
Pfft Bot Occasionally moves images to commons semi-automatically. Phroziac 2005-12-28 Wikipedia:Bot policy/inactive
TPO-bot Manually run bot to assist with WP:SFD. TheParanoidOne 2005-12-27 Wikipedia:Bot policy/active
Syrcatbot Attended bot using WP:AWB to assist in recategorization / category emptying at WP:CFD. Syrthiss 2006-02-05 Wikipedia:Bot policy/inactive
JoeBot Finds commonly misspelled words and corrects them, user-assisted at all times. Pays special attention not to change regional spellings. JoeSmack 2006-02-27 Wikipedia:Bot policy/active

Disambiguation Bots

Bots listed below are used solely for disambiguation.

Name Purpose Owner Date added Status
ABot Disambiguation. ABCD 2005-08-06 Wikipedia:Bot policy/inactive
Commander Keane bot disambiguation. Commander Keane 2005-10-15 Wikipedia:Bot policy/active
DisambigBot Disambiguation. Rob Church 2005-08-27 Wikipedia:Bot policy/inactive
Margosbot Interwiki links (from Polski Wikipedia. Margospl 2005-05-05 Wikipedia:Bot policy/inactive
WouterBot Disambiguation. WouterVH 2005-05-04 Wikipedia:Bot policy/inactive
Pfft Bot Disambiguation. Phroziac 2005-12-28 Wikipedia:Bot policy/inactive

Interwiki Bots

Bots listed below are used solely for interwiki linking.

Name Notes Owner Date added Status
User:Chobot With Korean Wikipedia. ChongDae 2005-06-20 Wikipedia:Bot policy/active
Jumbuck none. Ævar Arnfjörð Bjarmason 2004-10-14 Wikipedia:Bot policy/inactive
M7bot With Italian Wikipedia. M7it 2005-09-07 Wikipedia:Bot policy/inactive
ZwoBot none. Head 2005-07-14 Wikipedia:Bot policy/active
FlaBot Interwiki-Link-Checker de:Flacus 2005-05-01 Wikipedia:Bot policy/active
RobotE none. Ellywa 2005-10-20 Wikipedia:Bot policy/inactive
RobotJcb Multi-logon bot. Jcbos 2005-10-16 Wikipedia:Bot policy/inactive
MalafayaBot With Georgian Wikipedia. Malafaya 2005-11-04 Wikipedia:Bot policy/inactive
SashatoBot none. Sasa Stefanovic 2006-01-16 Wikipedia:Bot policy/active
RoboDick Multilogon bot. nl:Dutchy-Dick 2006-02-01 Wikipedia:Bot policy/inactive
Ugur Basak Bot Multilogin bot, with Turkish Wikipedia. Ugur Basak 2006-02-08 Wikipedia:Bot policy/active

Bots running without a flag

These bots are run manually, under direct user control, without a bot flag so that they appear in Special:Recentchanges. Bots listed here should only be making edits 30-60 seconds apart until fully approved. Discussion related to these bots should be directed to the talk page at Wikipedia talk:Bots or to the owner of that bot.

Name Purpose Owner Date added Status
79 androids Maintains templates related to WikiProject Baseball players. Android79 2006-01-05 Wikipedia:Bot policy/discontinued
Adrian Buehlmann Bot Human-assisted, exchanges template calls and updates lists of templates in articles (approved). Adrian Buehlmann 2006-01-27 Wikipedia:Bot policy/active
Afkbot Interwikis Korean alpha for knowledge 2006-02-15 Wikipedia:Bot policy/inactive
Andrewbot Runs pywikipedia redirect.py. 24.226.62.205 2005-08-16 Wikipedia:Bot policy/inactive
AngBot Deletes articles created by mass page-creation vandalism. Angela Wikipedia:Bot policy/unknown Wikipedia:Bot policy/discontinued
Atomobot Various tasks. Atomique 2006-03-18 Wikipedia:Bot policy/active
AzaBot Template subst, touching for mergin and/or deleting of templates, search and replace. AzaToth 2005-12-07 Wikipedia:Bot policy/inactive
Catapult Various tasks. Freakofnurture 2006-02-13 Wikipedia:Bot policy/active
Crypticbot Lists orphaned AFD pages and automated archival. Cryptic 2005-10-29 Wikipedia:Bot policy/active
Curpsbot-unicodify Converts some HMTL and URL-encoded entities into Unicode characters. Curps 2005-08-22 Wikipedia:Bot policy/inactive
Diderobot Fixes spelling and syntax, various other tasks. Sam Hocevar 2005-04-21 Wikipedia:Bot policy/inactive
Drito Miscelanea substing and other grunt work Drini 2006-03-10 Wikipedia:Bot policy/active
Eubot Updates statistics on Dutch municipalities. Eugene van der Pijll 2005-04-08 Wikipedia:Bot policy/inactive
Fetofsbot2 Semi-automated disambiguation, double redirect, substing and other general fixes. Fetofs 2006-02-21 Wikipedia:Bot policy/active
G-Bot Semi-automated typo correction, disambiguates links, various other tasks. Gflores 2006-01-12 Wikipedia:Bot policy/active
Gnome (Bot) Stub sorting in support of WP:NOVEL Is waiting for permission for debug. Info on WT:BOT Eagle (talk) (desk) 2006-03-05 Wikipedia:Bot policy/inactive
Guanabot2 RC patrol edits. Guanaco 2005-03-13 Wikipedia:Bot policy/inactive
IsraBot Uploads stubs on Israeli cities. AdamRaizen Wikipedia:Bot policy/unknown Wikipedia:Bot policy/discontinued
Kakashi Bot Responds to bot requests. AllyUnion 2005-02-25 Wikipedia:Bot policy/inactive
Kurando-san Human-assisted archival. AllyUnion 2005-03-30 Wikipedia:Bot policy/active
LDBot Automates WP:NA (testing in user space). lightdarkness 2006-02-24 Wikipedia:Bot policy/active
Maksim-bot Read-only bot (no edits). Maksim-e 2006-12-17
Matt Crypto (bot) Maintains List of cryptography topics, various other tasks. Matt Crypto 2005-02-24 Wikipedia:Bot policy/active
Mgmbot Semi-automates 'Did you know?' updates. MacGyverMagic 2005-06-26 Wikipedia:Bot policy/inactive
NetBot unspecified. Anthere 2005-03-01 Wikipedia:Bot policy/active
NotificationBot Semi-automates talk messages. AllyUnion 2005-09-15 Wikipedia:Bot policy/inactive
Pathosbot Subst'ing, various tasks. Pathoschild 2006-03-13 Wikipedia:Bot policy/active
Pfft Bot Solves disambiguations and moves images to commons. Phroziac 2005-12-28 Wikipedia:Bot policy/active
PhD-Econobot Disambiguates links to Native Americans. Nat Kraus 2005-10-11 Wikipedia:Bot policy/inactive
Roomba Copyright-related media tagging. Gmaxwell 2005-11-06 Wikipedia:Bot policy/active
SecuniBot Updates security statistics on Comparison of operating systems. K. Sperling 2006-07-25 Wikipedia:Bot policy/active
SEWilcoBot Various tasks. SEWilco 2005-06-19 Wikipedia:Bot policy/discontinued
StefanBot Adds fishbase and ITIS references to fish articles. Stefan 2005-12-31 Wikipedia:Bot policy/active
SuggestBot Recommends articles to edit based on articles people have edited previously. ForteTuba 2006-01-03 Wikipedia:Bot policy/active
Tawkerbot2 Vandal fighting, discussed on IRC running w/o flag to allow for review Tawker 2006-03-05 Wikipedia:Bot policy/active
User:Tractor Open-community IRC bot under development for WP:BC Wikipedia:Bot policy/unknown Wikipedia:Bot policy/unknown Wikipedia:Bot policy/active
WOPR Adjusts WP:DEFCON based on RC output. Cool Cat 2005-10-10 Wikipedia:Bot policy/inactive
Wybot unspecified. WonYong 2005-12-21 Wikipedia:Bot policy/inactive
none Checks open proxies (details). fvw 2005-09-30 Wikipedia:Bot policy/discontinued
none Semi-automates 'Did you know?' updates (details). Gdr 2005-05-29 Wikipedia:Bot policy/inactive
none unspecified. Alterego 2005-06-26 Wikipedia:Bot policy/discontinued
none Various tasks (details). IByte 2005-07-16 Wikipedia:Bot policy/active
none Runs pywikipedia editarticle.py. Shawn K. Quinn 2005-07-19 Wikipedia:Bot policy/inactive
none unspecified (m:pywikipedia). Bmicomp 2005-07-20 Wikipedia:Bot policy/inactive
none Semi-automates AFDs. ceejayoz 2005-10-25 Wikipedia:Bot policy/inactive
none None (I'm just testing pywikipedia capabilities in sandbox) Misza13 2006-03-19 Wikipedia:Bot policy/inactive
Ganeshbot Currently just testing pywikipedia capabilities in sandbox. Intend to upload stubs on Indian cities similar to User:Rambot) Ganeshk 2006-03-24 Wikipedia:Bot policy/active

Interwiki bots


Other registered bots

  • User:The Anomebot has been created for automated submissions by User:The Anome. The initial intent is to upload approximately 5000 map diagrams created by User:Wapcaplet. This has now been done, and new uses are now being thought of for the Anomebot...

Software which may be useful for making bots

Wiki integration bots

Below is a list of bots on other systems/solutions that extend system-specific funcionallity with Wiki integrations.

  • Wikibot auto links 'wikitagged' words in Joomla contents with Wikipedia.

See also