finds.dev← search

// the find

DonDebonair/slack-machine

★ 770 · Python · MIT · updated Jun 2026

A simple, yet powerful and extendable Slack bot

Slack Machine is a Python framework for building Slack bots using Socket Mode and the Events API, so your bot doesn't need a public endpoint. It's aimed at teams doing ChatOps who want regex-based command routing and plugin organization without writing the Slack client plumbing themselves.

Socket Mode means no ngrok or public URL required, which removes a real deployment headache for internal bots. The decorator-based plugin API is clean — `@respond_to(r'...')` with named capture groups is the right abstraction level. Storage backends (Redis, DynamoDB, SQLite, in-memory) are swappable via config, so you're not locked into anything on day one. Test coverage is solid: dedicated test suites per handler type with real payload fixtures rather than hand-wavy mocks.

770 stars after what appears to be several years of existence suggests limited adoption — you'll be debugging issues yourself rather than finding StackOverflow answers. The 'Coming Soon: shortcuts' note in the README is a bad sign; Slack shortcuts have existed since 2020 and not having them means you'll hit the ceiling quickly on anything beyond basic commands. No built-in rate limiting or queuing for high-volume workspaces — if your bot gets hammered, you're rolling your own throttling. The async foundation is good but the docs don't address how to run CPU-bound or blocking work without stalling the event loop, which will catch people off guard.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →