A powerful, extensible chatops bot for Slack, Discord, Mattermost, and IRC with Unix-style pipes and plugin architecture.
Yetibot is an open-source chatops bot built in Clojure that integrates with Slack, Discord, Mattermost, and IRC. It acts as a communal command line, allowing teams to automate workflows, run commands, query APIs, and perform fun interactions directly within chat. It solves the problem of fragmented tooling by centralizing automation and information retrieval in team communication platforms.
DevOps teams, software engineering groups, and communities using chat platforms like Slack or Discord who want to automate tasks, monitor systems, and enhance collaboration through chat-based commands.
Developers choose Yetibot for its powerful Unix-like piping system, extensible plugin architecture, and support for multiple chat adapters. Its ability to handle nested sub-expressions and per-channel configuration makes it uniquely flexible for building team-specific automation.
🤖 Extreme chatops bot for Slack, Discord, Mattermost, IRC 🔧 New contributors welcome 🏗
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Enables chaining commands with pipes for complex workflows, as demonstrated in the README with examples like '!complete does IE support | xargs echo %s? No, it is sucky.'
Supports arbitrarily nested commands using $(expr) syntax, allowing advanced automation and data embedding within chat, highlighted in the meme generation examples.
Allows storing channel-specific settings, such as default JIRA projects, enabling tailored bot behavior for different team contexts, as described in the user guide.
Plugin-based system lets users extend functionality with independent Clojure projects via standard dependencies, facilitating custom command development and integration.
Requires familiarity with Clojure and the JVM ecosystem, which can be a barrier for teams not already invested in these technologies, adding to the learning curve.
Not all chat platforms are supported natively; for example, Campfire is no longer supported, and adding new adapters requires opening issues or development effort.
Non-Docker installations involve managing Clojure dependencies and configuration files manually, which can be more complex compared to bot frameworks with one-click deployments.