Extends the room-owner move message tool in chat to make it easier to quickly clean up after bots by moving their messages, commands, and replies to them. Adds a couple visualization features to the normal move function as well.

enter image description here

I hope this is useful, I know there's a number of auto-move scripts out there. Screenshots:

enter image description here



  • Quickly select all messages by a specific user (by name or by chat ID, optionally use a regex).
  • Optionally select all messages that start with a certain prefix (or match a regex).
  • Optionally select all messages that are replies to the specified user.
  • Ability to dim the background of unselected messages to make it easier to see selected ones (applies to normal move function as well).
  • Ability to completely hide unselected messages to make it easier to quickly review [automatically] selected messages.
  • Works with Chrome and Firefox.
  • Filter settings are persistent per-room.
  • Quickly select based on the previous filter and open the move dialog with a shortcut in the room info toolbar:

    enter image description here


The clean link and the rest of the UI will not appear in rooms where you are not a room owner.

The defaults are set up for clearing SmokeDetector messages as an example. Typical usage is simple:

  1. Click the clean link (next to the room menu). Messages matching the filter will be automatically selected, and the move message dialog will open.
  2. Confirm the selected messages using the normal UI (click to select/deselect), optionally clicking the hide button if you prefer:
    • If "enhance" is turned on, then:
      • Messages matching the user rule will be highlighted red.
      • Messages matching the reply rule will be highlighted orange.
      • Messages matching the command rule will be highlighted lighter orange.
      • Any other messages you manually select will have the normal selection color.
      • All unselected messages will be dimmed.
    • If "enhance" is not turned on then all selected messages will have the usual selection color and no dimming of unselected messages will be done.
  3. Click relocate, choose a room, complete as usual, tada.

The buttons on the dialog perform the following operations:

  • relocate: The usual.
  • cancel: The usual.
  • enhance: Described above; activates color coded highlighting and message dimming.
  • select: Press this if you modify the filter / selection to reselect messages matching the filter.
  • deselect: This will deselect all messages (even ones you've manually selected).
  • hide/unhide: Clicking this button will cause all unselected messages to be hidden, which can make it easier to quickly review the autoselection without other noise. You may still [de]select messages when hiding mode is active. I tried to make this feature as intuitive as possible, it was a bit tricky, feedback is welcome.

Clicking the version number in the top-right of the dialog will take you to this page.

Issues / TODOs:

  • TODO: Ability to store multiple filters.
  • TODO: Auto select and move on a timer.
  • Bugs / requests / comments: Check out the Github issue page, or leave a comment, or ping me in The Tavern.

Change Log:

  • 1.03
    • Regex support in user name and command prefix. If the filter text starts and ends with a /, then it's treated as a JavaScript-flavored regex.
  • 1.02

    • Option to automatically hide unselected messages when "clean" is pressed. Use the poorly placed checkbox above the "hide" button.
    • Number of selected messages is now displayed on the UI, on the "deselect" button.
    • Highlight color now displayed behind related UI elements when "enhance" enabled.
    • Dialog positioned from right edge of screen so it doesn't go offscreen for narrow windows.
    • Misc. other style fixups.
  • 1.00

    • Initial version.

Check out my other scripts.


You must log in to answer this question.

Browse other questions tagged .