← Back to tools

slacrawl

Mirror Slack workspace data into local SQLite databases

Description

slacrawl mirrors Slack workspace data — metadata, message history, and thread replies — into local SQLite databases with full-text search. Supports API-based syncing, desktop-local recovery from Slack artifacts, and hybrid workflows. Enables independent search and offline inspection without relying on Slack's UI or retention policies.

Install

homebrewbrew tap vincentkoc/homebrew-tap && brew install slacrawl

AI Summary

Mirrors Slack workspace data into SQLite with full-text search, enabling offline search, querying, and archival independent of Slack's retention policies.

Capabilities

  • + Sync Slack channels, users, and messages to SQLite
  • + Full-text search via SQLite FTS5
  • + Incremental API syncing
  • + Thread reply backfill
  • + Socket Mode live tailing
  • + Desktop-local metadata ingestion
  • + Raw SQL access for analysis
  • + Multi-workspace support

Use When

  • You need to search Slack history beyond retention limits
  • You want offline access to Slack messages
  • You need to run SQL queries against Slack data
  • You want to back up Slack workspace data locally

Avoid When

  • x You only need real-time Slack notifications
  • x You don't have a Slack API token

Usage Patterns

Initialize and sync

slacrawl init && slacrawl sync

Set up the database and pull Slack data

Search messages

slacrawl search "quarterly report"

Full-text search across all synced messages

Run SQL query

slacrawl sql "SELECT * FROM messages WHERE channel_name='general' ORDER BY ts DESC LIMIT 10"

Query the SQLite database directly

Input / Output

stdout: Search results, message data, SQL query output

Typical Pipelines

slacrawl search query | jq .
slacrawl sql 'SELECT ...' | csvtool
View AGENTS.md for slacrawl