Read Slack messages, threads, channels, download attachments via Python API. Use when you see Slack URLs (https://*.slack.com/archives/*/p*) or need to interact with Slack.
cd ~/.claude/skills
git clone https://github.com/hienlh/claude-skill-slack-api.git claude-skill-slack-api mkdir -p ~/.claude/skills/slack-api
curl -fsSL https://raw.githubusercontent.com/hienlh/claude-skill-slack-api/HEAD/skill.md \
-o ~/.claude/skills/slack-api/SKILL.md Read and interact with Slack using Python (no MCP required).
# Read message/thread from URL
python3 ~/.claude/skills/slack-api/scripts/slack.py --url "SLACK_URL"
# Channel history / Thread replies
python3 ~/.claude/skills/slack-api/scripts/slack.py --history -c CHANNEL_ID -l 10
python3 ~/.claude/skills/slack-api/scripts/slack.py --replies -c CHANNEL_ID --thread-ts TS
# Search / List channels / User info
python3 ~/.claude/skills/slack-api/scripts/slack.py --search "query"
python3 ~/.claude/skills/slack-api/scripts/slack.py --list-channels
python3 ~/.claude/skills/slack-api/scripts/slack.py --user-info USER_ID
# List files from thread (with details)
python3 ~/.claude/skills/slack-api/scripts/slack.py --url "URL" --list-files -v
# Download all files from thread
python3 ~/.claude/skills/slack-api/scripts/slack.py --url "URL" --download-files -o ./downloads
# Output JSON
python3 ~/.claude/skills/slack-api/scripts/slack.py --url "URL" --json
| Flag | Description | Required |
|---|---|---|
--url | Read from Slack URL | URL |
--history | Channel messages | -c |
--replies | Thread replies | -c, --thread-ts |
--search | Search messages | query |
--list-channels | List channels | - |
--user-info | User details | user_id |
--post | Post message | -c, -t |
--list-files | List files with details | --url or messages |
--download-files | Download all files | --url or messages |
-c/--channel, --thread-ts, -l/--limit (20), -o/--output-dir (./slack-downloads), -v/--verbose, --json
Tokens loaded from ~/.claude/skills/slack-api/.env:
SLACK_XOXC_TOKEN=xoxc-...
SLACK_XOXD_TOKEN=xoxd-...
Get tokens: Browser DevTools -> Application -> Cookies (logged into Slack)
p1767879572095059 -> 1767879572.095059 (insert dot 6 chars from end)
Use when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies
Use when you have a written implementation plan to execute in a separate session with review checkpoints
Use when executing implementation plans with independent tasks in the current session
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes
Use when implementing any feature or bugfix, before writing implementation code
Use when creating new skills, editing existing skills, or verifying skills work before deployment