August 17th, 2024

Slackdump

The rusq/slackdump GitHub repository offers scripts for extracting and managing Slack messages, featuring contributions from various authors, including regex matching and incremental backup tools, encouraging user contributions.

Read original articleLink Icon
Slackdump

The GitHub repository rusq/slackdump provides a collection of scripts and tools aimed at extracting and managing messages from Slack. It features contributions from various authors, each offering different functionalities. Notable tools include a shell script by @fitzyjoe that finds messages matching a regex and prints their dates and text, and two scripts by @rusq that print user IDs along with messages, one in shell and the other in Python. Additionally, @levigroker has contributed a script for incremental workspace backups, which allows users to dump messages and attachments from selected direct messages and channels, only fetching new content in subsequent runs. The repository encourages contributions, guiding users to fork the project, add their tools to the contrib directory, update the catalogue.yaml file, and submit a pull request. This repository serves as a valuable resource for individuals seeking to programmatically manage or analyze Slack messages.

- The repository contains various scripts for extracting and managing Slack messages.

- Contributions come from multiple authors, each providing unique tools.

- Key tools include regex matching scripts and incremental backup functionality.

- Users can contribute by forking the project and submitting pull requests.

- The repository is beneficial for programmatic management of Slack messages.

Related

Sloth search for Ruby Weekly – a 100 minute hack turned 20h open sauce project

Sloth search for Ruby Weekly – a 100 minute hack turned 20h open sauce project

Sloth Finder, a Ruby and Rails tool, curates niche articles on API and automation. It emphasizes simplicity, slow loading times, and plans to upgrade its tech stack for efficiency. Open source on GitHub.

Show HN: a Rust lib to trigger actions based on your screen activity (with LLMs)

Show HN: a Rust lib to trigger actions based on your screen activity (with LLMs)

The GitHub project "Screen Pipe" uses Large Language Models to convert screen content into actions. Implemented in Rust + WASM, inspired by `adept.ai`, `rewind.ai`, and `Apple Shortcut`. Open source under MIT license.

Slack to destroy >90d history of free communities

Slack to destroy >90d history of free communities

Slack will delete content older than a year from free workspaces, keeping access to the past 90 days. Users anticipate similar actions from platforms like GitHub and Discord, signaling a shift in user interaction and data retention implications.

Devzat – Chat over SSH, with some nice quality-of-life features

Devzat – Chat over SSH, with some nice quality-of-life features

The "Devzat" GitHub project offers a unique SSH server redirecting users to a chat interface instead of a shell prompt. It supports various features like rooms, Markdown, syntax highlighting, direct messages, games, and emoji replacements. Additionally, it provides integration with Slack, Discord, and Twitter, along with a plugin API for customization.

Bash-Oneliners: A collection of terminal tricks for Linux

Bash-Oneliners: A collection of terminal tricks for Linux

The GitHub repository compiles Bash one-liners and commands for bioinformatics and cloud computing, covering terminal tricks, variable manipulation, text processing, networking commands, and system maintenance for improved command-line proficiency.

Link Icon 12 comments
By @xnx - 6 months
Slack will delete chats and files from free workspaces at end of August. Slackdump is even better than Slack's built-in export feature because it works without admin access and downloads attachments (e.g. images) in addition to messages. Exports can be browsed offline or loaded into Discord or Mattermost.

After trying some other tools/scripts to export/archive Slack, I was amazed how well Slackdump worked.

By @tayloramurphy - 6 months
We've used https://www.linen.dev/ to preserve history for our community. It's nice because it makes the contents searchable and let's us not worry about slack deleting data.
By @pibefision - 6 months
Any idea of something like this but for Discord?
By @serhack_ - 6 months
I would remind all the people to recompile the build themself, before downloading a random binary and allowing it to access the Slack workspace. But, very interesting project!
By @robertlagrant - 6 months
> On Windows and macOS you may be presented with "Unknown developer" window, this is fine

This is fine, or you have installed something bad and are about to give it your Slack credentials, and it's definitely not fine.

By @wslh - 6 months
It is always good to highlight that Slack does not enable to download private messages (except in more expensive data compliance plans).

If you want to to this on an organization you need to impersonate every account from your domain(s).

By @codetrotter - 6 months
Well. I can’t use this at work. But what I really need is not even to export the messages themselves.

I just want to save a list of all my channels, and the categories I’ve put them in.

Anyone know a way to do that, using either just Slack itself, or some specific tool that is only about managing followed channels and the categories you’ve grouped them into?

By @vasco - 6 months
So if you can do this, could you "reverse" it when you're done dumping messages and use API to repost them all to slack again? This way you could cycle channels every expirationperiod and have infinite slack retention on a free plan. Only downside is each cycle gets larger as it has (N+1)*90 days worth of data.
By @bartekpacia - 6 months
Will it work when a server is free and the messages older than a few months are “hidden”?

We have a free Slack server with 3k members, and buying some better license that’d let us export old messages is like $25k

By @Metacelsus - 6 months
What a coincidence, I was just looking for a tool to do this.
By @lambdaba - 6 months
I always wonder why people write such projects with Go, I understand the performance benefits but I don't see it in this use case, and it's such a verbose language.
By @deknos - 6 months
did anyone do a quick check, that this does not create data leakage? :D