{"id":18228796,"url":"https://github.com/0x77dev/slack-cleanup","last_synced_at":"2025-04-03T12:30:54.101Z","repository":{"id":260989749,"uuid":"882914087","full_name":"0x77dev/slack-cleanup","owner":"0x77dev","description":"A powerful CLI tool for bulk deletion of Slack messages containing specific phrases. Features interactive and non-interactive modes, with built-in rate limiting and pagination to handle large message volumes efficiently.","archived":false,"fork":false,"pushed_at":"2025-03-29T22:39:44.000Z","size":72,"stargazers_count":1,"open_issues_count":11,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-02T19:49:25.129Z","etag":null,"topics":["cli","slack"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/0x77dev.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yaml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"0x77dev"}},"created_at":"2024-11-04T03:11:51.000Z","updated_at":"2024-11-24T20:53:33.000Z","dependencies_parsed_at":"2024-12-18T00:31:26.157Z","dependency_job_id":"c7ad1e42-7497-4da4-a2fc-bc1e9c86e6bb","html_url":"https://github.com/0x77dev/slack-cleanup","commit_stats":{"total_commits":10,"total_committers":2,"mean_commits":5.0,"dds":"0.30000000000000004","last_synced_commit":"f20b68572b16d7b4a054f371ce72a2fd8759b7b6"},"previous_names":["0x77dev/slack-cleanup"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0x77dev%2Fslack-cleanup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0x77dev%2Fslack-cleanup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0x77dev%2Fslack-cleanup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/0x77dev%2Fslack-cleanup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/0x77dev","download_url":"https://codeload.github.com/0x77dev/slack-cleanup/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247002169,"owners_count":20867415,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","slack"],"created_at":"2024-11-04T08:03:31.482Z","updated_at":"2025-04-03T12:30:54.089Z","avatar_url":"https://github.com/0x77dev.png","language":"Python","funding_links":["https://github.com/sponsors/0x77dev"],"categories":[],"sub_categories":[],"readme":"# Slack Cleanup\n\n![License](https://img.shields.io/github/license/0x77dev/slack-cleanup) [![FOSSA License Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2F0x77dev%2Fslack-cleanup.svg?type=shield\u0026issueType=license)](https://app.fossa.com/projects/git%2Bgithub.com%2F0x77dev%2Fslack-cleanup?ref=badge_shield\u0026issueType=license) [![FOSSA Security Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2F0x77dev%2Fslack-cleanup.svg?type=shield\u0026issueType=security)](https://app.fossa.com/projects/git%2Bgithub.com%2F0x77dev%2Fslack-cleanup?ref=badge_shield\u0026issueType=security) ![GitHub Release](https://img.shields.io/github/v/release/0x77dev/slack-cleanup)\n\nA powerful CLI tool for bulk deletion of Slack messages containing specific phrases. Features interactive and non-interactive modes, with built-in rate limiting and pagination to handle large message volumes efficiently.\n\n[![asciicast](https://asciinema.org/a/5zAZcsXYMBZihiF406T7WvC3R.svg)](https://asciinema.org/a/5zAZcsXYMBZihiF406T7WvC3R)\n\n## Motivation\n\nManaging Slack integrations can sometimes lead to unexpected message bloat in your channels. When an integration isn't working as intended, it may flood your channels with unwanted messages. While Slack's native interface doesn't provide bulk message deletion capabilities, this tool fills that gap by offering an efficient way to clean up unwanted messages.\n\n## Prerequisites\n\n- Docker installed on your system\n- Slack Bot Token with appropriate permissions (Generate using the provided [App Manifest](./app_manifest.json))\n\n## Quick Start\n\n### Setting Up Your Slack Token\n\n1. Visit the [Slack API Dashboard](https://api.slack.com/apps) and create a new app\n2. Import the [App Manifest](./app_manifest.json) to configure necessary permissions\n3. Install the app to your workspace and copy the User OAuth Token\n\n### Running the Cleanup Tool\n\n```bash\ndocker run -it --rm -e SLACK_CLEANUP_SLACK_TOKEN=\u003cyour-slack-bot-token\u003e ghcr.io/0x77dev/slack-cleanup:latest --help\n\nUsage: slack-cleanup [OPTIONS]\n\n  Clean up Slack messages containing specific phrases.\n\nOptions:\n  -c, --channel TEXT              Channel ID or name\n  -p, --phrase TEXT               Search phrase\n  -h, --hours INTEGER             Hours to look back\n  -n, --non-interactive           Run in non-interactive mode\n  -t, --token TEXT                Slack Bot User OAuth Token\n  --install-completion [bash|zsh|fish|powershell|pwsh]\n                                  Install completion for the specified shell.\n  --show-completion [bash|zsh|fish|powershell|pwsh]\n                                  Show completion for the specified shell, to\n                                  copy it or customize the installation.\n  --help                          Show this message and exit.\n```\n\nUse interactive mode to select channels and phrases for deletion.\n\n## Options\n\n- `--channel, -c`: Channel ID or name\n- `--phrase, -p`: Search phrase\n- `--hours, -h`: Hours to look back\n- `--non-interactive, -n`: Run in non-interactive mode\n- `--token, -t` or `SLACK_CLEANUP_SLACK_TOKEN`: Slack Bot User OAuth Token\n- `--install-completion`: Install completion for the current shell\n- `--show-completion`: Show completion for the current shell\n- `--help`: Show help message and exit\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0x77dev%2Fslack-cleanup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F0x77dev%2Fslack-cleanup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F0x77dev%2Fslack-cleanup/lists"}