Pular para o conteúdo
Notas de versão

Novidades.

O que mudou para você, versão por versão. Alpha, beta e pré-lançamentos vêm identificados. As notas completas estão no GitHub.

  1. Beta v0.2.14-beta

    Plain Usernames in Loyalty Commands, Safer Replies and a Hardened Platform

    • !points set, add, remove and give, and !duel, now accept a plain username as well as an @mention. An unknown Twitch user gets a clear "not found" reply.
    • !setpoints <user> <points> is a new moderator alias for !points set.
    • !duel accepts half and all stakes, capped at the maximum stake. A stake above your balance now names your balance, and a challenge the target cannot cover is refused before any points are held.
    • Broadcasters can turn on a sub bonus for watch time on the Loyalty page, with a multiplier per sub tier. If the sub lookup fails, that page of chatters is paid the base rate.
    • !points shows the new balance right after bits, subs, gift subs and channel point rewards pay out, instead of an older cached value.
    • Public profile and leaderboard pages refresh within about a minute after point changes.
    • The raffle win line no longer shows the winner and entrant counts and reads naturally for one or several winners.
    • Text typed by viewers is now always shown literally in built-in replies such as !quote, !followage, game stats and !time, and can no longer trigger a channel's custom fetch definitions.
    • Commands and modules authenticate to Valkey again, which fixes the restart loop they had in the previous release.
    • The Discord bot is paused for now and the Discord pages are hidden from the dashboard while per-action moderation checks are built.
    • The admin console now requires a staff sign-in on every page and data request.
    • Services are rebuilt on Go 1.27.3 with refreshed certificate authority bundles, and the web consoles run Bun 1.4.4.
    • Services now connect only to the messaging servers they are configured for, and the consoles reload their TLS certificate when it renews, without dropping requests.
    • NATS leaf failback health checks use HTTPS, so services return to their local leaf after an outage.
  2. Beta v0.2.13-beta

    Plain Usernames in Loyalty Commands, Safer Replies and a Hardened Platform

    • !points set, add, remove and give, and !duel, now accept a plain username as well as an @mention. An unknown Twitch user gets a clear "not found" reply.
    • !setpoints <user> <points> is a new moderator alias for !points set.
    • The raffle win line no longer shows the winner and entrant counts and reads naturally for one or several winners.
    • Text typed by viewers is now always shown literally in built-in replies such as !quote, !followage, game stats and !time, and can no longer trigger a channel's custom fetch definitions.
    • Commands and modules authenticate to Valkey again, which fixes the restart loop they had in the previous release.
    • The Discord bot is paused for now and the Discord pages are hidden from the dashboard while per-action moderation checks are built.
    • The admin console now requires a staff sign-in on every page and data request.
    • Services are rebuilt on Go 1.27.3 with refreshed certificate authority bundles, and the web consoles run Bun 1.4.4.
    • Services now connect only to the messaging servers they are configured for, and the consoles reload their TLS certificate when it renews, without dropping requests.
    • NATS leaf failback health checks use HTTPS, so services return to their local leaf after an outage.
  3. Beta v0.2.12-beta

    Plain Usernames in Loyalty Commands, Safer Replies and a Hardened Platform

    • !points set, add, remove and give, and !duel, now accept a plain username as well as an @mention. An unknown Twitch user gets a clear "not found" reply.
    • !setpoints <user> <points> is a new moderator alias for !points set.
    • The raffle win line no longer shows the winner and entrant counts and reads naturally for one or several winners.
    • Text typed by viewers is now always shown literally in built-in replies such as !quote, !followage, game stats and !time, and can no longer trigger a channel's custom fetch definitions.
    • Commands and modules authenticate to Valkey again, which fixes the restart loop they had in the previous release.
    • The Discord bot is paused for now and the Discord pages are hidden from the dashboard while per-action moderation checks are built.
    • The admin console now requires a staff sign-in on every page and data request.
    • Services are rebuilt on Go 1.27.3 with refreshed certificate authority bundles, and the web consoles run Bun 1.4.4.
    • Services now connect only to the messaging servers they are configured for, and the consoles reload their TLS certificate when it renews, without dropping requests.
  4. Beta v0.2.11-beta

    Raffles That Pay Out, a Rebuilt Discord Bot and a Searchable Leaderboard

    • Raffles now pay their points prize straight into the winners' balances and announce timed draws with your own wording. !raffle opens a single-winner raffle for 1000 points, !mraffle splits the pot across several winners, and the StreamElements raffle commands work as you know them.
    • Every raffle chat line can be switched off on its own, and !claim is now optional. Raffles run even with Loyalty off; only the points prize needs it.
    • A raffle opened with a duration outside 5 seconds to 2 hours now announces the time it will actually run, instead of saying 0 minutes or 1440 minutes.
    • The Discord bot was rebuilt: each feature has its own settings page in the dashboard, you can preview the server template and apply it when you choose, and setup no longer fails with Missing Permissions on fresh servers.
    • The public leaderboard is searchable and paged, matches the stats page look, and links straight to your chat.
    • You can reset every viewer's points from the Loyalty page, and the public leaderboard updates right after.
    • Gifted subs now earn points scaled by sub tier.
    • Duel and gamble now follow the number settings saved in the dashboard.
    • When a trial channel signs up, it switches over right away and keeps the loyalty points its viewers earned during the trial.
    • The dashboard loads faster: editors load on demand, each module ships only its own text, and fonts appear on first paint.
    • Quotes answer faster, and a slow command can no longer hold up the rest of chat.
    • The dashboard, stats, commands and leaderboard pages show a proper error page when something fails or a request hits the rate limit, and viewer identifiers and addresses stay out of our monitoring.
  5. Beta v0.2.10-beta

    Command Toggles From Chat, Alert Repairs and a Faster Stats Page

    • !cmd disable <name> and !cmd enable <name> turn a custom command off and on without losing its response or settings, and !cmd perm <name> <level> sets who can use it.
    • !cmd edit now changes only the response. It no longer resets aliases, cooldowns and access, or turns the command back on.
    • !cmd has its own Command Editor module under Moderation, where you can rehearse each subcommand in a chat preview and choose who can use it, from subscribers up.
    • Commands that are turned off in StreamElements, Fossabot, Moobot or Streamlabs Desktop now import turned off instead of being skipped.
    • Some recently added channels were missing their Twitch event subscriptions, so follows, subs, raids and other events never reached the bot. They are repaired, Enable and Restart in the dashboard work again, and the bot now finds and restores missing subscriptions on its own.
    • The live rate on the public stats page now samples every second and averages over 5 seconds instead of 10, so it trails real activity much less.
    • The dashboard no longer slowly runs out of memory and restarts after a cache failover.
    • The docked side panel stays pinned and scrolls on its own again.
    • Cached lookups now take about a quarter of the memory, and the cache does less work per command.
  6. Beta v0.2.9-beta

    New Feature Pages, Guides in Six Languages and a Raffle Fix

    • New pages on itsbagelbot.com for Fortnite, Hypixel Bedwars, MCSR Ranked, Clash Royale and CODM stats, giveaways, loyalty points, the death counter, timers, the viewer queue and the Discord bot show the real commands with example chat replies.
    • Song requests, Valorant, Govee and import pages are rebuilt around the commands you type and what your chat sees.
    • Comparisons with Nightbot, StreamElements, Fossabot, Moobot, Streamlabs Chatbot and WizeBot link every claim to their own documentation, in six languages.
    • All 11 setup guides are now available in German, Spanish, Brazilian Portuguese and Russian alongside English and French, with a large translation correction pass.
    • ai.itsbagelbot.com, the reference for AI assistants, now covers every module, getting started, commands, imports, Discord setup and error messages so ChatGPT, Claude or Gemini can answer your questions about the bot accurately.
    • A plain !raffle open now runs the intended 10-minute raffle instead of ending after one minute, and duel help now clarifies that only the challenged viewer can decline.
    • Database connections now require TLS 1.3 and verify the server identity.
  7. Beta v0.2.8-beta

    Discord Rooms, Setup Guides and Cleaner Account Deletion

    • Discord join-to-create voice rooms land in the category you pick, with log channels and room options in the dashboard.
    • Setup guides for Spotify, Govee and Discord, plus a Govee setup wizard in the dashboard.
    • Stuck on a setup? Ask your own AI: the dashboard copies a ready prompt, and ai.itsbagelbot.com gives assistants step-by-step instructions for Spotify and Govee.
    • Deleting your account now also clears your Discord server settings, commands and backups.
    • Inactive channels are paused automatically, and the bot recovers by itself after an unban.
    • Raffles and queues can share !join, and !leaderboard now comes from loyalty.
    • Clearer errors for Spotify and Twitch sign-ins, and Spotify and Govee failures are explained in chat.
    • Steadier during database and network hiccups, and the mobile menu no longer breaks words.
  8. Beta v0.2.7-beta

    More Languages, Command Permissions and Smarter Timers

    • The site and dashboard now speak Spanish, Brazilian Portuguese, German and Russian, with a language switcher that remembers your choice.
    • Built-in commands can have custom permissions, and per-viewer cooldowns carry over from StreamElements imports.
    • Timers gain a sliding chat window and a live-only toggle.
    • Song requests verify the title, artist and link, keep the queue correct after skips, and read Spotify less often.
    • Chat reactions follow the channel's language, and loyalty counters keep their windows through outages.
    • Timers stay armed when Twitch sends a late offline event, and Valorant commands find the right account again.
    • The dashboard loads faster from the edge, stats counters hold steady while rates tick, and the site works better on phones.
  9. Beta v0.2.6-beta

    Better Commands, Reliable Loyalty and a Clearer Dashboard

    • New module:variable syntax for commands, with automatic migration of existing reply templates.
    • Added the watchtime chat command and corrected offline watchtime handling.
    • Improved point transfers and grants, preserved large balance precision, and added a streamer earnings toggle.
    • Improved bot authorization and preserved the Twitch permissions needed for watchtime.
    • Added Spotify setup guidance, confirmation dialogs, and clearer song request errors.
    • Improved dashboard navigation, dropdowns, toggle stability, and recovery of command drafts and module saves.
    • Reduced first-message processing latency and improved ingress discovery and shard recovery during deployments.
  10. Beta v0.2.5-beta

    More reliable loyalty tracking, refreshed stats, and improved stability

    • Loyalty counters recover from database deadlocks, and trial activity carries over reliably when a channel activates the bot.
    • Watchtime progress is saved in Valkey and can resume after a service restart. Stronger lifecycle checks prevent outdated work from awarding points after channel or module changes.
    • Failed data messages retry with increasing delays, then move to recoverable storage when retries run out, reducing the risk of losing counter updates during database outages.
    • The public stats page has a refreshed layout with larger counters, clearer rankings, and Bolota beneath a starry sky.
    • Dashboard inspectors stay below the top bar when you reach the end of a page, keeping their controls accessible.
    • Trial output is blocked before it reaches Twitch, and shared coordination handles concurrent updates more reliably.
    • The admin console adds shard health graphs and clearer message lane activity. Memory handling also leaves more headroom during busy periods.
  11. Beta v0.2.4-beta

    Live stats that stay exact, a searchable time zone picker, and a hardened message bus

    • The stats page now reads live totals and leaderboards from a fast cache fed by every service, so counters update in real time and stay exact, including negative adjustments. Every page measures rates the same way, and hidden or idle tabs pause instead of polling.
    • The Local Time module has a searchable time zone picker: type a city, region or UTC offset and pick from the matches instead of scrolling a long list. Your choice saves as the channel's home zone.
    • The dashboard rail has a new support menu with a direct link to report a bug or suggest an idea, so feedback reaches us from any page without hunting for a contact form.
    • Trial channels now run on their own load-aware connections spread across the fleet. Their replies use templates, their loyalty counts like a full channel's, and busy trial chats are handled off the main socket loop so they never slow anyone else down.
    • Twitch ingestion no longer stalls when its app token arrives late at startup, and internal lookups now stay on the same node, removing a source of fleet-wide slowdowns.
    • Every service now signs in to the message bus with its own scoped, signed credentials instead of shared passwords, on NATS 2.15. Access rules are checked per service and update live without restarting anything.
    • Hiding your public commands page from Settings now saves reliably. Behind the scenes, our internal tools got live views and a steadier release process, so fixes reach you faster.
  12. Beta v0.2.3-beta

    A full-page welcome tour, !time for any place, and one simpler variable system

    • New streamers get a full-page welcome tour. After choosing a language, pick how much Bagel should do (new streamer, existing setup, quiet, or import) and the matching features switch on when you finish. The import step uses the same preview and checks as the importer in Settings.
    • Variables use one grammar and one palette in every editor. New tokens: {random.viewer}, {followers}, {subs} and word ranges like {2:4}. Counter bumps are now a command option; {counter:name} only reads, and existing commands were migrated so nothing stops counting.
    • Timers can wait for chat activity, stop after a set number of posts per stream, or end on a date. Timer messages now expand channel variables such as emotes and follower counts.
    • !time answers for any place: a city, a time zone, a UTC offset, or a state, province or country with one main zone, such as !time texas or !time japan.
    • Streamers can hide their public commands page from Settings, and !commands then replies with a short line instead of a dead link. The bot personality module, with !bagels and !bagelboard, can now be switched off per channel.
    • Discord servers show their real icons, and the gateway no longer drops fresh sessions after 60 seconds. Sub renewals post the welcome once, song request replies show the name instead of a literal @{user}, and a duplicate channel-points title now says so.
    • French now covers bot replies, emails, guides and all 47 documentation pages. The variables reference is grouped by category with a live Try it field, and the site uses far less memory in Safari and on iOS.
  13. Beta v0.2.2-beta

    Premium giveaways, a searchable variables reference, and grant-aware admin status

    • Admins can run Premium giveaways. Preview who is eligible, freeze that pool, and draw a cryptographically random set of winners from registered accounts that finished onboarding. VIP, current staff, test, inactive and banned accounts cannot enter. Winning again in a later giveaway is a separate prize.
    • Free winners receive their prize months automatically, with a confirmation email that embeds the logo. A winner who already pays through Tebex stays pending until billing protection is verified, so the prize never claims to have paused a charge it has not paused. The dashboard shows the actual fulfillment state.
    • Command template variables have a public searchable reference. Filter by family, copy a token, and keep a shareable query, in English and French, from the same catalog the command builder uses.
    • CODM profile lookups stay validation-only and honour the provider's rate limits and cooldown, so a lookup cannot mutate an Activision account or stampede the API.
    • Login, import, the dashboard and the admin console share the same tags, buttons and compact language switch. Status labels are hairline tags, so paid, free and VIP read as labels rather than pills.
    • A covering committed giveaway grant writes premium onto the stored user status so admin overview, listing, stats and Get agree. A free winner with an active prize reads as paid. Tebex identity is not replaced, VIP is never demoted, and already-committed winners are promoted on the next sweep.
    • Dashboard and admin keep New Relic APM under bun. Console images strip Node/V8 native addons that bun would otherwise load and abort on, so the JS agent stays up.
  14. Beta v0.2.1-beta

    CODM profiles, reliable loyalty awards, and a faster shared dashboard

    • CODM Global profiles arrive in chat with !codm, !codmprofile and !codmrank. Look up a UID or exact nickname for level, Multiplayer rank, rating, country and short ID, or link your own account in the dashboard. Replies preserve the name you supplied instead of exposing streamer-mode nicknames. Avatar, KD, match history and Battle Royale stats are not included.
    • Loyalty awards and watchtime are hardened against duplicate flushes, restarts and lifecycle changes. Reserved counters stay protected, and loyalty settings and commands handle account and channel state more consistently.
    • Outgoing chat coordination moves to durable NATS state so Valkey outages no longer lose rate leases, pause state or batch checkpoints. Unknown coordination state fails closed; other Valkey-backed features still require their store.
    • Message publishing preserves flush barriers and recovers safely, while stuck lane fetches surface explicit failures. The admin hub feed now uses mutual TLS.
    • The dashboard, admin console, docs and site share more UI primitives, status dots, notifications, pickers and browser helpers. Public navigation and typography are consistent, and reply editors, guides and the command builder use the same chat rehearsal and token examples.
    • Dashboard saves surface validation feedback instead of silently failing. Navigation no longer loads the whole module catalog, first render avoids blocking work, and the homepage encryption scene loads on demand.
    • Public command lists keep stable source-based keys, rehearsal examples use uptime without requiring a counter, and emote-pyramid validation correctly handles the game state. Deployment pins and console digests have been kept in sync throughout this release.
  15. Beta v0.2.0-beta

    A real template language for commands, one design system everywhere, and a rebuilt admin console

    • Custom commands get a real template language. Tokens for the viewer, positional arguments, followage, account age, loyalty points, uptime, stream title, game, viewer and chatter counts, quotes, counters, local time, now playing, emotes and per-command usage, plus countdowns, math and URL escaping, every one with a fallback and a conditional when you need it.
    • One design system across the whole product. The site, the dashboard and the admin console now draw their buttons, cards, fields, toggles, badges, navigation, footer and motion from a single shared library on one font set and one token set, so every surface looks and moves the same.
    • The admin console is rebuilt. Overview, users, staff and the operations pages sit on the shared deck and inspector, fully translated, and the admin role ladder is enforced on the server instead of hidden in the interface.
    • Bring your commands with you. Config import now runs through a source registry, and Fossabot and Wizebot custom commands join Nightbot as one-click imports.
    • Stat lookups can be kept to your own account. Streamers can restrict game and rank lookups to the account they linked, so the chat command answers about the channel rather than about anyone typed after it.
    • The Discord companion holds its connection. The gateway resumes sessions across reconnects, notices a missed heartbeat acknowledgement, records why a socket closed, carries its connect budget over a restart, and a first install no longer trips over an unwritten config.
    • Quieter under load. Profile stats collapse into a single query, the database pool jitters its lifetimes and keeps a warm floor, the connection gate is wider and reports its wait time, and reserved loyalty counters, ghost sessions, dead grants and chat bans are each handled for what they actually are.
  16. Beta v0.1.6-beta

    Interactive guides, a search-ready site, and Minecraft accounts that stay linked

    • Guides become interactive tools. The whole library is rewritten on the content model: a calmer hub, a real button on every row, and a builder that opens pre-filled straight from the guide you are reading, in both languages with parity enforced.
    • The site speaks search now. Long-tail landing pages, head-to-head comparisons, a song-requests page, an IndexNow key, and a changelog URL for every release, this one included.
    • Minecraft accounts link by uuid and stay linked. Link once and the ranked boards keep recognizing the account, instead of matching names from scratch every time.
    • Valorant data is as fresh as the source allows. Rank and match lookups align their cache with the provider's own five-minute window, so answers stay current without hammering the API.
    • Polish across the board. Every button sits on one Mark system, corners share a single concentric radius scale, Spotify copy is bring-your-own-app everywhere, and the game trademark notices moved into the terms.
    • The Discord companion is hardened. Ticket panels and desk actions are gated to their guild, ticket deadlines and closes are paired and locked, config writes take a real optimistic lock, and the gateway remembers its connect window across restarts.
  17. Beta v0.1.5-beta

    The Discord companion, a real status page, and beta perks for premium

    • BagelBot comes to Discord. One bot replaces the whole community stack: a full server template with real roles, grants and tiers, ticket, voice and rank panels with buttons, link protection, and go-live posts that follow your stream.
    • Your Discord server, run from the dashboard. Discord gets its own section, the bot takes your identity on premium servers, and it shows how many streams it is watching right in its presence.
    • A status page that says something. Six verticals instead of a wall of services, each one judged by the service that actually terminates it, so a degraded piece reads as degraded rather than down.
    • Beta features are a premium perk. Early access is listed on pricing, and modules still in beta, AutoMod and the Discord companion among them, stay with premium channels until they ship.
    • Song requests, the MCSR board and the dashboard, tightened. Spotify handles rate limits and the deprecated top-tracks route, the ranked board counts draws so the maths adds up, and dashboard data ownership got a security pass.
  18. Beta v0.1.4-beta

    New dashboard, chat-side producers, Nightbot imports

    • A redesigned dashboard. Overview opens on live stream panels, commands rank themselves into a deck, and settings and modules each get their own rail.
    • Run the stream from chat. Lead mods set the title, category, tags, ads and markers with commands, without ever leaving chat.
    • Import from Nightbot. Point the rebuilt import wizard at your Nightbot setup and bring your commands over in one pass.
    • The song queue drives the real player. Requests control Spotify directly, positions stay in sync with what is actually playing, and !srlist shows the queue.
    • Easier to find, faster to load. Real sitemaps and per-host robots.txt, lighter pages, and a stats counter that stays inside its tile.
  19. Beta v0.1.3-beta

    Your Spotify, your modules, fewer clicks

    • Bring your own Spotify app. Connect your channel to an app you own. Secrets stay sealed on our side.
    • Live now-playing. !current, !song, and !np read what is playing now, not what is stuck in the queue.
    • Modules directory. Search and browse by category. Gamble and duel sit under Loyalty where they belong.
    • Add to Twitch starts OAuth right away. One click from the site into Twitch consent, then straight into the dashboard. No extra login screen in between. Already signed in? You land in the console with no new consent prompt.
  20. Beta v0.1.2-beta

    Leaderboards, song requests, and a clearer command editor

    • Loyalty leaderboard. Per-channel rankings, finer mod permissions, and viewer-to-viewer point transfers.
    • Import wizard v1. Bring an existing setup over in one pass: commands, timers, counters and quotes from StreamElements, Moobot and Streamlabs Chatbot. Files are parsed in your browser and every item is reviewed before anything is written. (Nightbot joined the wizard in v0.1.4-beta.)
    • Song Requests console. Its own page, plus standalone !song and !skip.
    • AutoMod link safety. Dynamic link checks, plus an opt-in clips-only filter.
    • JSON data sources in the command editor. Build a URL fetch, sample the response as a clickable tree, pick the field you want, and insert it into the reply. No separate fetches page, no pasting raw JSON by hand.
    • Faster console boot and a rebuilt login flow.
    • Performance: console boot, caching.
  21. Beta v0.1.1-beta

    Games in chat and AutoMod beta

    • Valorant. Rank, matches, leaderboard, account, and shop commands.
    • Spotify song requests. !sr with a live queue and secure token custody.
    • Clash Royale. Full provider integration for chat commands.
    • AutoMod (beta). Learned false-positive protection, juror corrections, and reputation-based cohorts.
    • Security fixes.
  22. Beta v0.1.0-beta

    Beta launch

    • Dashboard notifications. Alerts land where you already work.
    • Production hardening. Fleet and networking updates so the public beta stays up through certificate and infra changes.
    • Performance: external APIs (game stats).