Writing Your Own

See Documentation.

Built-In Plugins

These plugins are built into Tennu, and do not need to be installed manually or listed as dependencies.

Plugin Description
action Command the Client to interact with the server.
channel [Stub] Query information about channels.
commands Parses commands from privmsgs and emits them as events.
config Configuration including configDefaults and the config method
ctcp A plugin that does not currently exist, but will in the future. Handles the Client-to-Client-Protocol things, including providing a repsonse to the version ctcp request.
help Provides !help and !commands
messages Listens to the IrcSocket, turning each line into a message event.
self Information about the client. Currently just the nickname function that is also accessible on the Client.
server Query information about the server. Currently just the ISUPPORT info.
subscriber Provides the handlers plugin hook.
user [Stub] Query information about users. Currently just who a user is identifed as, if anybody.

Downloadable Plugins

You can install these with plugins with `npm install tennu-%plugin-name%`.

Plugin Deps Description
admin None Provides admin role. Lets other plugins make commands only accessible to admins.
admin-cooldown admin Allows user access to 'admin' commands but rate limited.
agoogle admin, opt admin-cooldown Provides !google, with limits to prevent spamming.
asay admin, opt admin-cooldown !rainbow, !rainbow2, !greentext
aseen dbcore, dblogger Uses dblogger to provide persistent last seen functionality.
bfdata None [Undocumented] Brave Frontier data querying.
control admin Provides commands for admins to control the bot from the server.
correction admin, opt admin-cooldown, dbcore, dblogger [Undocumented] Corrects previous messages.
dbcore None Knex integration plugin for database access.
dblogger dbcore Database logging of important IRC messages (privmsg, join, part, kick, quit, etc.)
dynamic-alias admin Command Aliases controllable while the bot is running.
factoids (Opt) admin Canned responses associated with specific words.
friend-code None [Undocumented] Example plugin for Create A Plugin article.
github None Provides !gh for looking up issues and linking to repos.
jshelp None Commands for assisting users with learning JavaScript.
last-seen None Says the last time a user was seen.
luck None Commands for randomness, including a dice roller.
messaging None [Undocumented] Sort of like MemoServ.
poll admin [Poorly Documented] Per-channel polls.
rust-help None Commands to help with Rust.
title dbcore, dblogger Using dblogger, shows title for last sent URL.