Slack Bulk Channel Archiver
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
Slack Bulk Channel Archiver lets you archive or unarchive multiple channels in a single operation. Instead of opening each channel's settings, clicking archive or unarchive, and confirming — repeating this for every single channel — this tool provides a unified checklist of all channels visible in your Slack workspace. You can filter channels by name or status (Active/Archived) to quickly find the ones you want to manage. Select any number of channels using checkboxes, choose your action (Archive or Unarchive) from the dropdown, and click Apply. The tool then automatically processes each selected channel — opening the menu, selecting the archive or unarchive option, and confirming if a dialog appears. This turns what could be dozens of manual operations into a single batch action, making Slack workspace cleanup and channel management significantly faster and more efficient.
WHERE IT RUNS
This script runs exclusively on the Slack web application in your browser. It activates on the channel list view in the sidebar, the archived channels view, or the admin channel management interface. It requires the BotGentz extension to inject and execute the script. The tool does not work on the Slack mobile app, the desktop client, or any third-party Slack clients — only the web-based Slack interface accessed through a Chromium-based or Firefox browser. It specifically targets pages under *.slack.com, including the Slack workspace channel views and admin pages.
HOW TO USE
After installing the script via BotGentz, open your Slack workspace in the web browser. The tool automatically detects the channel list and displays a floating panel on the right side. The panel shows all channels visible in your current view, with checkboxes next to each channel entry. Each channel displays its name, type (Public/Private), and current status (Active or Archived). Use the search box to filter by channel name, or use the status filter dropdown to show only active channels, only archived channels, or all channels. Check the boxes for every channel you want to archive or unarchive. Below the channel list, select your action from the dropdown — Archive or Unarchive. Click "Apply Action" and confirm. The tool will process each selected channel one by one — opening the menu, selecting the action, and confirming if a confirmation dialog appears. A status message appears when the operation completes, showing how many channels were successfully processed. Channels that are already in the target state are skipped with a notification.
THE ACTUAL MECHANISM — WHY IT WORKS
Slack's web interface is built with React and uses a component-based rendering system for its channel management. The channel list is rendered as list items in the sidebar or admin views, each containing channel metadata and action buttons. This tool scans the DOM for channel items using multiple selector patterns that Slack consistently uses across versions. For each channel, it extracts the name, type, and status from the visible text content and data attributes. Each channel is assigned a unique identifier from data attributes or checkbox values. When archiving or unarchiving, the tool locates the menu button on each channel item and triggers a click event. It then waits for the menu to appear, finds the archive or unarchive option, and clicks it. If Slack shows a confirmation dialog, the tool detects it and clicks the confirm button. This approach works without making direct API calls, which would require authentication credentials and knowledge of Slack's internal API structure. By using the existing UI, the tool works within Slack's own permission and validation system, and continues to function even if the underlying API changes.
THE PANEL
The floating panel is fully draggable — click and drag the header to reposition it anywhere on the page. The panel's position is saved per site in localStorage, so it reappears exactly where you left it when you return to the workspace. Double-click the header to snap the panel to the nearest edge (left or right). A collapse button minimizes the panel to a small tab showing a Slack emoji badge, keeping it out of the way while still accessible. The channel list inside the panel is scrollable and resizes vertically based on the number of channels. Pressing Escape while the panel is focused closes it completely; reopening is done via a small button injected near the page toolbar. All panel interactions are non-blocking — Slack's main UI remains fully responsive while the panel is open, and the panel updates automatically when you navigate between views or channels.
PLEASE NOTE
This script requires the BotGentz extension (free) to run user scripts on Slack. Slack frequently updates its web interface and modal structures; if the tool stops working, check for an updated version within BotGentz's script repository. This tool does not store, transmit, or log any channel data, workspace information, or action history — all operations occur locally in your browser with no external network requests except those made by Slack itself. Archive or unarchive actions are applied through Slack's own UI event system, so all changes respect your workspace permissions and role settings. The tool does not bypass Slack's security or permission system; it simply automates the clicks you would otherwise perform manually. For workspaces with a large number of channels, the tool may take several minutes to complete the operation, as each channel is processed sequentially with delays to avoid overwhelming the UI. A progress indicator shows which channel is currently being processed. Always double-check your selections and action before applying changes, as archiving channels affects workspace navigation and member access. The tool only affects channels visible on the current page or sidebar; to manage all channels, scroll to load more channels or use Slack's archived channels view. Channels that are already archived or active are automatically skipped.