Skip to main content

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.

Codex quick install (global):

clacks skill --mode codex
# or: uvx --from slack-clacks clacks skill --mode codex

Reinstall/update an existing skill install:

clacks skill --mode codex --force
uvx --from slack-clacks clacks skill --mode codex --force
# for project-local installs, use the matching -project mode
uvx --from slack-clacks clacks skill --mode codex-project --force

If clacks warns that the installed skill is outdated, rerun the matching install command with --force.

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). Install writes a full skill bundle: SKILL.md, agents/openai.yaml, LICENSE.txt, and .clacks-skill-manifest.json.

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

slack_clacks-0.12.1.tar.gz (78.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

slack_clacks-0.12.1-py3-none-any.whl (55.8 kB view details)

Uploaded Python 3

File details

Details for the file slack_clacks-0.12.1.tar.gz.

File metadata

  • Download URL: slack_clacks-0.12.1.tar.gz
  • Upload date:
  • Size: 78.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for slack_clacks-0.12.1.tar.gz
Algorithm Hash digest
SHA256 cfca152a6bf371866d4260d9a233c04143618ec1edf0ce773564c1286ebd82b8
MD5 fd4782feb8ed6ab7abbd1173463af1b8
BLAKE2b-256 b69b9b723ed2bfdf2c2526634ec08d24b7448083caf52a9d3958ad7020477a8d

See more details on using hashes here.

File details

Details for the file slack_clacks-0.12.1-py3-none-any.whl.

File metadata

  • Download URL: slack_clacks-0.12.1-py3-none-any.whl
  • Upload date:
  • Size: 55.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for slack_clacks-0.12.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bcb9be3e4bc0d9d62798ad0b8a11388de00e2ca604bf50d46208d50d8583937f
MD5 3e5056f750d19ff449c9fc368dd97672
BLAKE2b-256 8e20eacb497e081fddf7638b632cfb470e257314d5d6f1f1d5ca1e7c137f47a1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page