In Fall 2023, Slack introduced an updated client with some unpopular UI changes. The tweaks in this document can be used to revert to the old client or hide the new side bar. These will reset every time you fully close Slack but they are easy to re-apply once you get the hang of it.
To run any of these scripts, you'll need to open the Dev Tools (or Console). You can do this by typing /slackdevtools
in a Slack channel or direct message. These are the same Dev Tools you'd get in Chrome if you hit F12. Along the top are tabs for Elements, Console, Sources, Network, etc. You'll want to paste these scripts into the Console tab at the >
prompt.
If Slack disables this command, then you can open Dev Tools by setting a system-wide environment variable and using a keyboard shortcut to open the console. If /slackdevtools
worked for you then you can skip these next two sections.
- Close the Slack app (
command
+Q
) - Open the terminal and run these two commands separately:
export SLACK_DEVELOPER_MENU=true
open /Applications/Slack.app
- Slack will re-open with but now we have access to its console
- Open Slack’s console by pressing
command + option + I
and clicking on the Console tab at the top- At the bottom of the console window you should see a blue > character. This is the prompt where you'll want to paste the code snippets found below.
Note If you close (
cmd + q
) or reload the app (cmd + r
), you will have to do this again. There are instructions on how to make this permanent at the bottom of the document.
- Close the Slack app if it's open (
ctrl
+Q
or File -> Quit Slack) - Add an environment variable
SLACK_DEVELOPER_MENU
with a value oftrue
to your system- Windows 10 and 11 instructions can be found here, just skip down to the section titled "How to Edit Environment Variables"
- Re-open Slack
- Open Slack's console by pressing
ctrl
+alt
+I
and clicking on the console tab at the top- At the bottom of the console window you should see a blue
>
character. This is the prompt where you'll want to paste the code snippets found below.
- At the bottom of the console window you should see a blue
Courtesy of @jm-janzen
- Close the Slack app (
ctrl
+Q
) - Open the terminal and run the following command:
SLACK_DEVELOPER_MENU=true /usr/bin/slack
- Slack will re-open with but now we have access to its console
- Open Slack’s console by pressing
ctrl + alt + I
and clicking on the Console tab at the top- At the bottom of the console window you should see a blue > character. This is the prompt where you'll want to paste the code snippets found below.
Note: This is my preferred option and most likely the only one I will be maintaining moving forward.
You can completely revert (temporarily) to the old client by pasting this into the console:
localStorage.setItem("localConfig_v2", localStorage.getItem("localConfig_v2").replace(/\"is_unified_user_client_enabled\":true/g, '\"is_unified_user_client_enabled\":false'))
It'll probably return undefined
, but that's fine. Reload Slack with command
+R
or ctrl
+R
and it should revert back until you restart Slack.
You can remove the activity tab and merge it with the workspace switcher using the merge.js snippet from dkoes/slackfix. Check out that repo for a screenshot and more information. There's also a button.js in that repo to to show/hide the activity tab.
If you like the new design and just want to hide the new sidebar paste the following into the console, courtesy of /u/CherryDT on reddit with a few edits by me:
document.querySelector('[data-qa="top-nav-help-button"]').parentNode.parentNode.parentNode.insertAdjacentElement('afterend', document.querySelector('[data-qa="user-button"]').parentNode.parentNode);
document.querySelector('.p-tab_rail').style.display = 'none';
document.querySelector('.p-control_strip').style.display = 'none';
document.querySelector('.p-ia4_client .p-client_workspace--including_tab_rail').style.gridTemplateAreas = 'p-client-workspace p-client-workspace';
document.querySelector('.p-ia4_client .p-client_workspace--including_tab_rail').className="p-theme_background";
This will hide the workspace switcher and you won't be able to see the "Mentions & reactions" link. It moves your profile image to the top right of the screen so you can still set your Slack status, pause notifications, edit preferences, etc. On mouseover, you'll see a tooltip block your profile image but you can click through it. I'm still working on a way to remove the tooltip.
According to @chipbite in the comments, if you have multiple workspaces can still switch using keyboard shortcuts. So, ctrl-1, ctrl-2, etc would still work to switch workspaces.
You can undo this change by restarting Slack if you change your mind or if it causes problems for you in the future.
You can save snippets in your Dev Tools allowing you to quickly re-run them after Slack resets the interface. Open Dev Tools and go to the Sources tab. Just below the tabs, in the left pane, you'll probably see "Page", "Filesystem", and ">>". Click the ">>" button then "Snippets". Click + New snippet
and paste your code into the window that opens on the right.
Any time you need to re-run the script, just come back to this window and run the snippet by pressing Cmd
+ Enter
(Mac) or Ctrl
+ Enter
(Windows).
According to to @navels: If you want SLACK_DEVELOPER_MENU=true
to be set whenever you log in, create a file in ~/Library/LaunchAgents/setenv.SLACK_DEVELOPER_MENU.plist
with these contents. (I have not been able to get this to work on macOS 14 Sonoma.)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>setenv.SLACK_DEVELOPER_MENU</string>
<key>ProgramArguments</key>
<array>
<string>/bin/launchctl</string>
<string>setenv</string>
<string>SLACK_DEVELOPER_MENU</string>
<string>true</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Latest code is here. I use the merge code so that will be updated with fixes to slack changes as I experience them. Pull requests for the button code gratefully accepted.