Send Telegram messages from bash, PowerShell, CI/CD pipelines, cron jobs — quickly and effortlessly.
What is telegram-owl?
telegram-owl is a cross-platform CLI tool written in Go that allows you to send messages, files, and media to Telegram chats, groups, or channels directly from the terminal.
It's perfect for:
✅ DevOps notifications
✅ CI/CD pipeline messages
✅ Monitoring and alerting (cron, systemd, Prometheus)
✅ Just sending a log or file to Telegram from a script
Quick Example
telegram-owl \
--token=123:abc \
--chat=@mychannel \
--message="✅ Deployment completed successfully!"
Send a message from stdin:
echo "🔥 Server is down!" | telegram-owl --stdin --token=... --chat=...
Attach files:
telegram-owl --attach=log.txt --attach=report.pdf --token=... --chat=...
Key Features
- Supports Markdown / HTML formatting (
--format
) - File and media attachments (
--attach
) - Thread/topic support for supergroups (
--thread
) - Silent messages (
--silent
) - Protected content (
--protect
) - Spoiler effect for media (
--spoiler
) - Accepts messages from stdin
- Cross-platform: Linux, Windows, macOS
Installation
🛠 Supported install methods:
download from GitHub Releases:
https://github.com/beeyev/telegram-owl/releases
Getting Started
🔑 Get a bot token via @BotFather
🔍 Get the Chat ID using /getUpdates
or by copying a message link from Telegram
Full guide here:
📖 https://github.com/beeyev/telegram-owl/blob/master/docs/HowToTelegramBot.md
Usage Examples
Send a formatted Markdown message:
telegram-owl --message="*Bold* _Italic_" --format=markdown ...
Where is it useful?
- Deployment scripts
- Jenkins, GitHub Actions, GitLab CI
- Monitoring tools (Prometheus Alertmanager, systemd)
- Cron jobs
- Backups, automation, and server notifications
📬 Final Thoughts
telegram-owl
is a simple way to integrate Telegram into your notification system. No dependencies, cross-platform, and fast.