Bot Help
Interact with DoTheNeedful via IRC — in channel or via /msg DoTheNeedful. Parameters in [brackets] are required; {braces} are optional.
General Commands
!dtn [username]- Do The Needful,
[username]. !g [search]/!search [search]- Get the top web search result.
!gemini [prompt]- Ask Google Gemini AI a question — response posted to the website.
!dns- What’s the problem?
!pray/!letuspray- The Sysadmin Prayer.
!cloak {username}- Quick instructions on obtaining an IRC hostname cloak.
!stupid/!dumber {username}- I award you zero points.
!stats- Link to the stats page.
!mystats- Your personal stats.
!top10- Top 10 users by words spoken.
!flyfact/!fly- A random fly fact.
!ask/!dontask {username}- Don’t ask to ask — here’s why.
!morepower/!moreram/!moredb {username}- You know you need it.
!xyprob/!xy {username}- Call out the classic XY Problem.
!day/!today/!whatday- What day is it today?
!gitgud {username}- Sometimes people just need to git gud.
!ud [search]- Search Urban Dictionary.
!seen [username]- When was
[username]last seen?
Quotes Commands
!add [quote]- Add a quote to the database.
!quote {search}- Random quote, or search by ID or keyword.
!up/!down [id]- Upvote or downvote a quote.
!top- Quote with the most upvotes.
!bottom- Quote with the most downvotes.
!myquotestats- Your personal quote stats.
!quotestats- Overall quote database stats.
Trivia Commands
!trivia/!t- Start a trivia game with a random topic.
!trivia topics- List available trivia topics.
!scores- High scores across all topics.
!myscores- Your scores across all topics.
Moderation Commands Requires operator flag
Duration format: a number followed by m (minutes), h (hours), d (days), or w (weeks) — e.g. 30m, 4h, 7d, 2w.
Omitting a duration uses the channel default. Re-issuing a quiet or ban on a user who is already actioned will update their expiry rather than stack.
!op {username}- Give ops. Omit username to op yourself.
!deop {username}- Remove ops. Omit username to deop yourself.
!voice {username}/!v {username}- Give voice. Omit username to voice yourself.
!devoice {username}/!dv {username}- Remove voice. Omit username to devoice yourself.
!quiet [username] {duration} {reason}/!q- Mute a user. Default duration: 1h. The user receives a private notice. If the bot hasn’t resolved the user’s hostname yet, it will look it up automatically and ask you to retry in a moment. Example:
!quiet BadUser 30m please calm down !unquiet [username]/!uq- Remove a mute early. Looks up the active quiet by nickname.
!kick [username] {reason}- Kick a user from the channel. Default reason: Kicked at the request of [you].
!ban [username] {duration} {reason}- Ban a user. Default duration: 1w. Automatically resolves hostname if not yet known (retry in a moment if prompted). Example:
!ban SpamBot 90d repeated spam !unban [username]- Remove an active ban early. Looks up the active ban by nickname.
!kickban [username] {duration} {reason}/!kb- Kick and ban in one command. Default duration: 1w.
!redirect [username] {reason}- Ban a user with a redirect to ##fix_your_connection. Permanent. Use for connection or client issues.
Debug Commands PM only — owner / admin flag required
These commands are only accepted via /msg DoTheNeedful and are silently ignored from anyone without an Owner or Admin flag in the database.
!members- Shows a compact channel member summary via NOTICE: total count, who has ops, and who has voice. Full detail (hostname, account, modes for every nick) is written to the bot log at INFO level.
!actions- Lists all active, unexpired moderation actions: type (quiet/ban/redirect), target nickname, hostmask, who applied it, when, expiry time, and reason.