setup
From zero to a connected workspace in about two minutes.
VERSION=$(curl -fsSL https://api.github.com/repos/gammons/slk/releases/latest | grep -oE '"tag_name": *"v[^"]+"' | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+' | sed 's/^v//')
# Apple Silicon
curl -fsSL "https://github.com/gammons/slk/releases/latest/download/slk_${VERSION}_darwin_arm64.tar.gz" | tar xz
# Intel
curl -fsSL "https://github.com/gammons/slk/releases/latest/download/slk_${VERSION}_darwin_x86_64.tar.gz" | tar xz
sudo mv slk /usr/local/bin/
VERSION=$(curl -fsSL https://api.github.com/repos/gammons/slk/releases/latest | grep -oE '"tag_name": *"v[^"]+"' | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+' | sed 's/^v//')
curl -fsSLO "https://github.com/gammons/slk/releases/latest/download/slk_${VERSION}_linux_amd64.deb"
sudo dpkg -i "slk_${VERSION}_linux_amd64.deb"
VERSION=$(curl -fsSL https://api.github.com/repos/gammons/slk/releases/latest | grep -oE '"tag_name": *"v[^"]+"' | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+' | sed 's/^v//')
sudo rpm -i "https://github.com/gammons/slk/releases/latest/download/slk_${VERSION}_linux_amd64.rpm"
VERSION=$(curl -fsSL https://api.github.com/repos/gammons/slk/releases/latest | grep -oE '"tag_name": *"v[^"]+"' | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+' | sed 's/^v//')
curl -fsSLO "https://github.com/gammons/slk/releases/latest/download/slk_${VERSION}_linux_amd64.apk"
sudo apk add --allow-untrusted "slk_${VERSION}_linux_amd64.apk"
VERSION=$(curl -fsSL https://api.github.com/repos/gammons/slk/releases/latest | grep -oE '"tag_name": *"v[^"]+"' | grep -oE 'v[0-9]+\.[0-9]+\.[0-9]+' | sed 's/^v//')
# x86_64 (swap for arm64 on ARM)
curl -fsSL "https://github.com/gammons/slk/releases/latest/download/slk_${VERSION}_linux_x86_64.tar.gz" | tar xz
sudo mv slk /usr/local/bin/
# Download from the latest release page: # https://github.com/gammons/slk/releases/latest # Grab slk_VERSION_windows_x86_64.zip, extract slk.exe, add it to your PATH.
go install github.com/gammons/slk/cmd/slk@latest
curl -fsSLO https://github.com/gammons/slk/releases/latest/download/checksums.txt sha256sum -c checksums.txt --ignore-missing
slk authenticates by re-using your existing Slack browser session — no Slack App, no OAuth setup. You'll need two values from your browser's DevTools.
d cookiehttps://app.slack.com.d. Copy its value.d cookie highlightedxoxc tokenIn the DevTools Console, paste this and hit enter:
Object.entries(JSON.parse(localStorage.localConfig_v2).teams).forEach(([id,t]) => console.log(t.name, t.token))
You'll see one line per workspace. Copy the xoxc-… token for the workspace you want.
slk --add-workspace
You'll be prompted for the d cookie and xoxc token. Paste them in. slk will verify the credentials, fetch your channels, and you're connected.
To add another workspace later, run slk --add-workspace again. To switch between connected workspaces inside slk, press 1–9 or Ctrl+w.
set -g set-clipboard on. screen: switch to tmux. Older kitty: add clipboard_control write-clipboard.slk --add-workspace with fresh values.