the default mode of degenerate communication.
Project description
clacks
the default mode of degenerate communication.
Installation
Choose your preferred method:
With uv (no installation required):
uvx --from slack-clacks clacks
With uv (permanent installation):
uv tool install slack-clacks
With pip/pipx/poetry:
pip install slack-clacks
# or: pipx install slack-clacks
Examples below use clacks directly. If using uvx, prefix commands with uvx --from slack-clacks.
Updating
With uvx: Updates happen automatically (always runs latest version).
With uv tool:
uv tool upgrade slack-clacks
With pip:
pip install --upgrade slack-clacks
Authentication
Authenticate via OAuth:
clacks auth login -c <context-name>
Modes
clacks supports three authentication modes:
clacks mode (default)
Full workspace access via OAuth.
clacks auth login --mode clacks
Permissions: channels, groups, DMs, MPIMs, files, search
clacks-lite mode
Secure, DM-focused access via OAuth. Use for security-conscious environments where channel access isn't needed.
clacks auth login --mode clacks-lite
Permissions: DMs, MPIMs, reactions only
cookie mode
Browser session authentication. Use for quick testing or when OAuth is impractical.
clacks auth login --mode cookie
Extract xoxc token and d cookie from browser. No OAuth app needed. See docs/cookie-auth.md for extraction instructions.
Warning: Cookie mode is known to cause logout issues on Slack Enterprise workspaces and may trigger security warnings about your account.
Scopes
Operations requiring unavailable scopes will fail with a clear error message and re-authentication instructions.
Certificate
OAuth requires HTTPS. clacks includes a bundled self-signed certificate, so no setup is required.
To generate your own certificate:
clacks auth cert generate
Account Management
View current authentication status:
clacks auth status
Revoke authentication:
clacks auth logout
Configuration
Multiple authentication contexts supported. Initialize configuration:
clacks config init
List available contexts:
clacks config contexts
Switch between contexts:
clacks config switch -C <context-name>
View current configuration:
clacks config info
Messaging
Send
Send to channel:
clacks send -c "#general" -m "message text"
clacks send -c "C123456" -m "message text"
Send direct message:
clacks send -u "@username" -m "message text"
clacks send -u "U123456" -m "message text"
Reply to thread:
clacks send -c "#general" -m "reply text" -t "1234567890.123456"
Read
Read messages from channel:
clacks read -c "#general"
clacks read -c "#general" -l 50
Read direct messages:
clacks read -u "@username"
Read thread:
clacks read -c "#general" -t "1234567890.123456"
Read specific message:
clacks read -c "#general" -m "1234567890.123456"
Recent
View recent messages across all conversations:
clacks recent
clacks recent -l 50
Rolodex
Manage aliases for users and channels. Aliases resolve to platform-specific IDs (e.g., Slack user IDs).
Sync from Slack API:
clacks rolodex sync
Add alias manually:
clacks rolodex add <alias> -t <target-id> -T <target-type>
clacks rolodex add kartik -t U03QPJ2KMJ6 -T user
clacks rolodex add dev-channel -t C08740LGAE6 -T channel
List aliases:
clacks rolodex list
clacks rolodex list -T user
clacks rolodex list -p slack
Remove alias:
clacks rolodex remove <alias> -T <target-type>
Show valid target types for a platform:
clacks rolodex platforminfo -p slack
clacks rolodex platforminfo -p github
Agent Skills
clacks supports the Agent Skills open standard for AI coding assistants.
Print SKILL.md to stdout:
clacks skill
Install for Claude Code (global):
clacks skill --mode claude
Install for OpenAI Codex (global):
clacks skill --mode codex
Install for Cursor/Windsurf/Aider (global):
clacks skill --mode universal
Install for VS Code Copilot (project):
clacks skill --mode github
All modes support -global and -project suffixes (e.g., claude-project, codex-global).
Output
All commands output JSON to stdout. Redirect to file:
clacks auth status -o output.json
Requirements
- Python >= 3.13
- Slack workspace admin approval for OAuth app installation
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file slack_clacks-0.7.0.tar.gz.
File metadata
- Download URL: slack_clacks-0.7.0.tar.gz
- Upload date:
- Size: 63.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d2f5161d3c042bacfc73bd8abdb342a8df3a189752afeac84817e4c85d3fe88f
|
|
| MD5 |
108ce7cf828ecb4a17261490f953aab6
|
|
| BLAKE2b-256 |
c7af691b08d3690ec4d5429fb9d364d798a7284a994cf7154e9836bc1a8d2ea8
|
File details
Details for the file slack_clacks-0.7.0-py3-none-any.whl.
File metadata
- Download URL: slack_clacks-0.7.0-py3-none-any.whl
- Upload date:
- Size: 43.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4563a8105eaf7111641ae38210c13cb0c3977ce5b0872c7b203f481969583d95
|
|
| MD5 |
b05d5c352a8373e2ccc05f5b2eb53db5
|
|
| BLAKE2b-256 |
3f5c05a51bee5162a61f229e82a8632525ad915ff17f5f08f4f104b138ce6bca
|