NadekoBot 7.4

What changed in NadekoBot 7.4: 3 releases, 29 Sept 2026 to 1 Oct 2026. In total 6 changed, 42 fixed.

Changed

Fixed

  • Quote commands work more reliably.
  • .todo list / .todo ls and .todo archive list / .todo archive ls now show lists with long entries.
  • .trivia / .t now takes answers only from the channel of the game.
    • .tl shows the players sorted by points
    • shows an error when the win requirement is below the minimum
  • .alias / .cmdmap now picks the longest matching trigger when triggers overlap.
    • new aliases match in any letter case
  • .acrophobia / .acro now names every winner when votes are tied.
    • bots can no longer submit or vote
    • voting lasts 30 seconds by default, as documented
  • .convert now converts length, weight, temperature and other fixed units when currency rates are not available.
    • shows an error when the number is too large
  • .timezone accepts a timezone id in any letter case or a city name.
  • .timezones shows every page of the list.
  • .linkonlychannel / .linkonly and .imageonlychannel / .imageonly turn off when the bot can not delete messages or stop users.
    • the bot no longer stops deleting messages after one delete error
    • the commands check for Manage Channels, Manage Messages and Manage Permissions
  • .xkcd now picks a random comic from all comics.
    • shows an error for text other than latest
    • shows the full date of the comic
  • .muterole / .setmuterole, .streamoffline / .sto, .streamonlinedelete / .stondel and .verboseerror / .ve now save on new servers.

Changed

  • AI agent requests now reuse the prompt cache of the model provider.
  • {botName} in SOUL.md / OPERATOR.md is now the global name of the bot.

Fixed

  • .remind no longer loses reminders.
    • DM reminders, timely reminders and .remind here in DMs work
    • adding many reminders at once no longer shows an error
  • The bot no longer deletes repeaters after a temporary Discord or network error.
  • The bot no longer deletes live channels while it reconnects to Discord.
    • .livechadd / .lcha refuses a channel name that is empty or longer than 100 characters
  • Scheduled commands no longer disappear or stop running.
    • .scheduleadd / .scha keeps schedules longer than 49 days and warns when the time is under 1 minute
  • An old timed ban no longer unbans a user who was banned again permanently.
  • .remindlist / .remindl, .schedulelist / .schl, .lineuplist / .llist and patron end dates now show the correct time on hosts outside UTC.
  • .autoassignrole / .aar now gives roles to new members when many members join at once.
    • shows an error when the server already has 3 roles
    • ignores deleted roles when it counts the roles
  • .streamrole now gives and removes the role when a stream replaces a game.
    • removes the role from all members when you disable it
  • .streamrolewhitelist / .srwl and .streamroleblacklist / .srbl now work.
  • .lineupnext / .lnext no longer calls the same member twice.
  • .lineup / .ljoin shows "already in the lineup" instead of an error when used twice at once.
  • .invitedelete / .invrm now deletes the invite with the number which .invitelist / .invlist shows.
    • accepts a channel and shows an error for a wrong number
  • .invitelist / .invlist now opens the requested page.
  • The AI agent now sees every new message in the channel.
For self-hosters (1)
  • The AI agent logs prompt and cached token counts for each session at debug level.

Changed

  • .clubinfo no longer shows a level next to each member.
  • .plant now shows a random password when currency drops use passwords.
    • you can no longer choose the password
    • the amount now shows with separators
  • A new currency drop with a password now takes all earlier drops in the channel.

Fixed

  • .ga reroll now works only on giveaways of the current server.
  • .curtrs now shows your transactions. The bot deleted them too early.
  • Clubs now gain xp when their members talk or stay in voice.
    • each member tick gives the club a fixed 3 xp
    • server xp rates and .xpadd do not change club xp
  • .clublb / .clubinfo now show the real club xp, level and rank.
  • Message links in commands now work only for channels of the current server.
  • .dpo now shows an error for an expression. Overrides apply only to commands.
  • .afk now shows the AFK message safely and less often.
    • the AFK message is plain text of up to 200 characters and never pings
    • the bot replies once per channel every 5 minutes
    • .afk no longer clears itself right after you set it
  • .connect4 / .con4 turn timeouts no longer crash the bot.
  • .gamevoicechannel / .gvc now moves users to the voice channel of their game.
  • .vcrole without a role now removes the voice channel role.
  • .typestart now starts a new contest in the current channel.
    • the countdown before the contest now shows
    • each player now gets a correct and unique place
  • .tictactoe / .ttt accepts moves only in the channel of the game.
  • .notify / .nfy and .agentskilllist / .aisl buttons now work after the first click.
  • .hangman gives the reward only to the winner.
    • guess messages now show in the server language
  • .joinrace / .jr no longer takes the bet again from a player who already joined.
    • the bot now tells you when you already joined or the race already started
  • .bank deposit / .bank withdraw no longer lose currency on a database error.
    • the Banker quest counts only your own balance checks
  • Server shop commands now use the item numbers which .shop shows.
For self-hosters (2)
  • The xp batch no longer copies the unused username and avatar of each user.
  • .countup and .tictactoe games now release their message handler when they end.