Small Wiki Monitoring Team/IRC
The Small Wiki Monitoring Team (SWMT) has an IRC channel at #cvn-swconnect on Libera Chat, with CVNBots reporting possible vandalism to various small wikis.
Bots
CVNBots
These are the CVNBot (formerly known as SWMTBot) instances, monitoring a lot of wikis each. They all understand the CVNBot commands. Issuing a global list-related command to one of these bots will automatically update the other bots (the bots communicate with each other through a hidden channel).
See Bots of Countervandalism Network for more details.
Eternal thanks to Az1568, Melos and rxy for having operated these bots in the past!
ISObot
Does ISO 639 code translation on demand.
Commands
Command | Description | Example |
---|---|---|
ISObot whatis code | Returns the name, in English, of the language that corresponds to the ISO 639 code given (both 2-letter and 3-letter codes are accepted) | ISObot whatis tlh |
Does language code translation and handy links
Commands
Command | Description | Example | Result |
---|---|---|---|
!commands | Gives this list of commands | !commands | (this list) |
!say | Makes AvicBot say something | !say Hello | Hello! |
!lang | Returns the name, in English, of the language that corresponds to the language code given | !lang sco? | sco is Scots! |
!link | Returns a link using the avicbot.org short domain to a given page | !link sco:Main_Page | http://avicbot.org/sco:Main_Page |
!guc | Returns the Global User Contribs for a given user | !guc AvicBot | https://tools.wmflabs.org/guc/?user=AvicBot&blocks=true |
!cauth | Returns the CentralAuth Page for a given user | !cauth AvicBot | http://meta.wikimedia.org/wiki/Special:CentralAuth/AvicBot |
!die | Forces AvicBot to part the channel - Can be used by anyone | !die AvicBot | - |
The LinkWatchers
In #cvn-sw-spamconnect and #wikimedia-external-linksconnect there are 'linkwatcher' bots. Bots in this channel are run by Beetstra. Bots have been developed by Shadow1 and Beetstra. Since Shadow1 has retired, the bots are maintained by Beetstra only.
The data is stored in a database. If you need specific info, ask Versageek or en:User:Beetstra.
The bot exists as a main program, with 10 sub-bots to the 730+ wikimedia channels on irc.wikimedia.org, and 3 reporters on Libera (LiWa3_1, LiWa3_2, and LiWa3_3). The many sub-bots ensure continuous operation (almost operating in real-time), there is too much to read for one reader-bots, and too much to report for one report-bot.
The bots read the diffs from in total 738 wikis on irc.wikimedia.org (see sitematrix, ignoring the specials). The diffs are parsed and external links that are added are reported by the bots. If you want the bot on a specific wiki (I need the IRC channel on irc.wikimedia.org), please contact me on my talkpage). If your wiki has an own channel where the bot could report link additions, or alerts, I can redirect specific messages to specific channels (for examples, see #wikipedia-de-spamconnect and #cvn-wp-esconnect).
Commands
The bots share the database, commanding one will result in being added to the others as well.
Command | Description | Example |
---|---|---|
LiWa3_1 user add Username | Adds a user to the whitelist (user is still reported, but no 'count' is given anymore) | user add Beetstra |
LiWa3_1 user del Username | Removes a user from the whitelist | user del Beetstra |
LiWa3_1 link wl add regex | Adds a link to the whitelist | link wl add \bexample\.com |
LiWa3_1 link wl del regex | Removes a link from the whitelist | link wl del \bexample\.com |
LiWa3_1 link rl add regex | Adds a link to the redlist | link rl add \bexample\.com |
LiWa3_1 link rl del regex | Removes a link from the redlist | link rl del \bexample\.com |
LiWa3_1 link nr add regex | Adds link to noredir list so as to not further expand | link nr add \bexample\.com |
LiWa3_1 link nr del regex | Removes link from noredir list | link nr del \bexample\.com |
LiWa3_1 link nr search regex | Searches for link in noredir list | link nr search \bexample\.com |
!info | statistics | !info |
- Commands can be issued to one of the other LiWa3 bots as well (LiWa3_2, LiWa3_3, ...). Note that the bot answering may not be the one that is being commanded
- Whitelist is for 'good' links. Please note that the link-additions by this user are still logged.
- RedList for links which need attention
- Blacklist for bad links (on #wikipedia-en-spam these are transferred to AntiSpamBot and reverted, except when the user is whitelisted).
LiWa3 output
The bot gives one line per added link in the format:
- [[<wiki>:<pagename>]] <diff link> [[<wiki>:User:<user>]] <added link> (<link data>) <counts> (< for wikidata: English descriptor>)
The link may be followed by link concerns ('<link data>'), and will be followed by a set of 2 or 4 numbers ('<counts>'). On Wikidata, the English descriptor is appended.
The <link data> (which is not always present):
- Whether the link is on a revert list ('BL'), red/monitor list ('RL') or automatic red list ('ARL', where LiWa3 detected that statistics earlier passed some addition threshold) or white list ('WL' - if showing whitelisted links is turned on)
- STATUS ###: Page status (a.o. the well known '404')
- REDIR <link>: The site is a redirect site. Redirect target may get a separate set of BL/RL/ARL/WL tags if the redirect target matches rules.
- Whether the page has tracking data on them:
- WB (Urchin account number issued by Google)
- FS (stopForumSpam, an email spam tracking site; the reported percentage is how forumspam evaluates the domain).
- CB (clickbank)
- AS (AdSense)
- PL (Plimus)
The four numbers in <counts>:
- how many links did this user add.
- how many times was this link added.
- how many times did this user add this link. Turns blue when that is higher than 5, turns red when higher than 25. The number may be followed by "!!" (in red), in that case more than 90% of this link was added by this user, "!" in red (more than 66%) or by "?" (more than 33%).
- to how many wikipedia did this user add this link. Turns blue when higher than 2, turns red when higher than 5. The number may be followed by "!!" (in red), in that case more than 90% of this link was added interwiki by this user, "!" in red (more than 66%) or by "?" (more than 33%).
Sometimes only two numbers are shown:
- how many links did this user add.
- how many times was this link added.
That means that either the number of links the user added is larger than the setting largenumberoflinkadditions
, or that the number of times the domain was added is larger than the setting largenumberoflinks
(see User:LiWa3/Settings). When either reaches that threshold further numerical statistics are generally useless, and are only a strain on the database.
Sometimes the second number is replaced with 'NC', which means that that domain is on the 'do not count list'. That list is used for domains that need to be monitored (including those that are revertlisted) but where the count does not yield any information (e.g. youtube.com, where millions of additions are recorded but where link additions are sometimes reason for concerns, see e.g. en:WP:YOUTUBE).
COIBot
In #cvn-sw-spamconnect, #cvn-swconnect and #wikimedia-external-linksconnect. Bots are developed and run by Beetstra.
COIBot ('Conflict Of Interest Bot') was originally developed to catch overlaps between usernames with either the page they edit, or with an external link they added. It now also does more sophisticated checks to catch conflicts of interest (as defined on the en-wikipedia, which discourages such edits strongly), and monitors the additions of external links as reported by the LinkWatchers (vide supra).
In short, COIBot reports when:
- Username overlaps with the pagename the user just edited;
- Username overlaps with the domain of the external link added;
- IP of user is close to the IP of the computer the webserver for the domain of the external link is hosted on;
- IP/IP-range/Username is blacklisted for a certain pagename;
- IP/IP-range/Username is blacklisted for a certain domain;
- The domain/IP of domain is on COIBot's monitorlist.
Further:
- Users/IPs who get caught accidentally, or for who the conflict of interest has been discussed (and been resolved) can be whitelisted against a page or domain.
- Users/IPs can be whitelisted completely, so none of their edits will be recorded.
Notes:
- COIBot automatically puts links which get caught because of IP/Username overlap on its monitorlist. So every next addition will be recorded. This 'automonitoring' of the link can be disabled for certain links. After this it will still report the link when COIBot calculates overlap, but will not put the domain on the monitorlist afterwards.
- COIBot automatically puts links that have been reported to English Wikipedia Spam Project (in the spamlink template), or been blacklisted on one of the local blacklists, or on the meta-blacklist, on its monitorlist. Hence, if a link gets blacklisted on e.g. the Spanish wikipedia, and someone then decides to start adding it to another wikipedia, COIBot will report the additions of that link.
You can read more on English Wikipedia bot user page.
Commands
Most commands on COIBot are 'cloak-controlled'. If you have a cloak, and that cloak is on COIBot's trusted list, you can perform the commands below that are tagged with an asterisk. Everyone can use the other commands. To be added to the trusted-list of COIBot, ask Dirk Beetstra.
CP | Command | Description | Example |
---|---|---|---|
Help and test commands | |||
help | Shows your rights, and which commands are available (quite old) | help | |
help command | shows some more help specifically to the command you want to perform (quite old) | help wl | |
test string1 string2 | show overlap between the two strings using COIBots overlap calculation | test Beetstra example.com | |
Monitoring commands | |||
* | monitor domain domain reason | Adds the domain to the monitorlist, matched against the domain of an added external link, and edit is reported when matched (preferred command) | monitor domain example.com |
* | ml del regex | Deletes the regex from the monitorlist | ml del \bexample\.com |
ml search regex | Searches if the regex is on the monitorlist | ml search \bexample\.com | |
Blacklist commands — for linkwatcher | |||
* | bl add username string | connects the text string to the username, COIBot reports when overlap string <-> page edited or string <-> domain is detected | bl add Beetstra example |
* | bl del username string | Deletes the connection from the blacklist | bl del Beetstra example |
bl search username string | searches if username is connected to string on the blacklist | bl search beetstra example | |
bl search user username | searches if username is connected to any text on the blacklist (if so, shows which strings) | bl search user beetstra | |
bl search string string | searches if string is connected to any user on the blacklist (if so, shows users) | bl search string example | |
Whitelist commands — for linkwatcher | |||
* | wl add username string | connects the text string to the username, COIBot ignores when string is pagename edited or string is domain added | wl add Beetstra example |
* | wl del username string | Deletes the connection from the whitelist | wl del Beetstra example |
wl search username string | searches if username is connected to string on the whitelist | wl search beetstra example | |
wl search user username | searches if username is connected to any text on the whitelist (if so, shows which strings) | wl search user beetstra | |
wl search string string | searches if string is connected to any user on the whitelist (if so, shows users) | wl search string example | |
* | wl add username * | globally whitelists the user, all edits by user will be ignored | wl add Beetstra * |
* | wl add * domain | disable automonitoring for domain. COIBot will report conflicts of interest regarding the domain, but the link will not automatically be added to its monitorlist | wl add * example.com |
Tool commands — consists of commands to access the database created by the LinkWatchers, and other quick-commands giving information on external links and users. The list of commands gets expanded on a regular basis, entering COIBot help in a channel where COIBot is active may give a more up-to-date list.
| |||
Report generation commands — reported on wiki | |||
quickcreate domain | COIBot creates a XWiki report and it will be saved to User:COIBot/XWiki | quickcreate example.com | |
repoke synonym repoke https://zh.wikipedia.org/w/index.php?title=<title> |
COIBot regenerates reports on the poked page [synonym meta: metapoke•metabl; enwp: wtwpspam•enpoke•enbl•enwl.†] | repoke metapoke repoke https://zh.wikipedia.org/w/index.php?title=MediaWiki_talk:Spam-blacklist | |
report link domain | COIBot creates a report of all additions of domain in its database. Reports are saved to en:Wikipedia:WikiProject Spam/LinkReports and User:COIBot/LinkReports (bottom of list) | report link example.com | |
report ip ip | COIBot creates a report of all additions of domains on ip in its database. Reports are saved to en:Wikipedia:WikiProject Spam/LinkReports and User:COIBot/LinkReports (bottom of list) | report ip 127.0.0.1 | |
report xwiki domain | COIBot creates a report of all additions of domain in its database. Reports are only saved to User:COIBot/LinkReports (bottom of list). This is faster than the 'report link' | report xwiki example.com | |
report local domain | COIBot creates a report for local link additions of domain in its database. Reports are saved to User:COIBot/Local. | report local example.com | |
report user username | COIBot creates a report of all edits performed by user username in its database. Reports are saved to en:Wikipedia:WikiProject Spam/UserReports and User:COIBot/UserReports (bottom of list) | report user Beetstra | |
report page pagename | COIBot creates a report of all edits performed on page pagename in its database. Reports are saved to en:Wikipedia:WikiProject Spam/PageReports and User:COIBot/PageReports (bottom of list) | report user Beetstra | |
Query commands — data returned in IRC | |||
resolve domain | show the IP of the server the domain is hosted on | resolve example.com | |
whoadded domain | Gives the top ten of people who added domain | whoadded example.com | |
whoadded domain id_string | Gives the top ten of people who added the domain with the id_string in the full url | whoadded youtube.com qxdjdhd563 | |
ipadded domain | Gives the top ten of IPs that added domain | ipadded example.com | |
whatadded username | Gives the top ten of domains added by user | whatadded Beetstra | |
whenadded link domain | Gives the timeframe and top ten of dates when domain was added | whenadded link example.com | |
whenadded user username | Gives the timeframe and top ten of dates when user was adding links | whenadded user Beetstra | |
whereadded link domain | Gives the top ten of wikis where domain was added | whereadded link example.com | |
whereadded user username | Gives the top ten of wikis where user was adding links | whereadded user Beetstra | |
domainsadded domain | Gives the top 10 of domains on the server of domain | domainsadded example.com | |
whatserveradded username | Gives the top 10 of servers the user added | whatserveradded Beetstra | |
count link domain | Gives the number of times the domain was added | count link example.com | |
count user username | Gives the number of times user added a link | count user Beetstra | |
research link domain | Gives statistics etc. for domain | research link example.com | |
research user username | Gives statistics etc. for user (not fully implemented yet) | research user Beetstra | |
convert domain | converts the domain/link into a regex | convert example.com | |
top # links |
lists the top 5 (or #) links (that are not whitelisted or on the do-not-count list) recorded by COIBot | top links | |
top # users |
lists the top 5 (or #) users (who are not whitelisted) recorded by COIBot | top links | |
adsense domain | queries AdSense, Web bug, Plimus and Clickbank databases | adsense example.com | |
added adsense adsense_id added clickbank clickbank_id |
queries respective database to find all domains with relevant id | added adsense (string) added clickbank (string) | |
recent domain recent # domain |
lists recent additions for a domain for past 2 (or #) days | recent 2 example.com | |
Push commands | |||
* | do not count domain | stops COIBot from counting the number of links to a domain | do not count example.com |
* | clear domain | removes domain from redlist and poke, and adds domain to whitelist | clear example.com |
* | read blacklist domain | refreshes the blacklist from the specified wiki, useful when fixed and immediate update required | read blacklist ms.wikipedia.org |
* | read whitelist domain | refreshes the whitelist from the specified wiki | read whitelist ms.wikipedia.org |
* | read revertlist en.wikipedia.org | refreshes the revertlist from en.wikipedia (specific for this wiki only) | read revertlist en.wikipedia.org |
- Some commands can be given without directing the command at COIBot (i.e. 'research link example.com' in stead of 'COIBot research link example.com').
- When a link gets added which is on the monitorlist, gets matched with the username/IP that is adding the link, COIBot also creates a linkreport for that link in in English Wikipedia and in its Meta subpage (bottom of list).
† Further synonyms can be added by adapting the relevant parameters (numsynonyms
, fromsynonym#
, and tosynonym#
) in User:COIBot/Settings.
wm-bot
wm-bot is an IRC bot which has several commands. The ones everyone can use in #cvn-sw are listed in @info, and include !luxo and !ca. The bot also supports @link [[zh:b:foo]]
linking.