auto-message

Send Telegram bot notifications from terminal commands and automation scripts.

bash
$ curl -fsSL https://raw.githubusercontent.com/onurkerem/auto-message/main/install.sh | sh

Core Capabilities

manage_accounts

Named Profiles

Configure multiple Telegram bots with names like mybot, work, or prod. Set one as default, or pick per command with -c.

terminal

CI/CD Ready

Skip the config file entirely — set AUTO_MESSAGE_TOKEN and AUTO_MESSAGE_CHAT_ID as environment variables in any pipeline.

security

Secure by Default

Bot tokens are never logged and masked in all output. Config files are written with restricted permissions. HTTPS only.

Usage

Add a bot profile, then send messages from any terminal or script. The tool resolves credentials in order: explicit flag, default profile, environment variables.

check_circle

One-command install and update via curl | sh

check_circle

Cross-platform binaries for macOS, Linux, and Windows

check_circle

Config stored at ~/.config/auto-message/config.json

check_circle

Resolution order: --config flag > default profile > env vars

Terminal
# Add a bot profile
$ auto-message config add mybot --token "123456:ABC-DEF" --chat-id "999888777" --default
# Send using default profile
$ auto-message send "Build passed"
# Send using specific profile
$ auto-message send -c prod "Deployed to production"
# List all profiles (tokens masked)
$ auto-message config list

How It Works

Your terminal command goes through auto-message to the Telegram Bot API and arrives as a notification in your chat.

Your Terminal

terminal auto-message send "Deploy complete"
settings Resolves token & chat ID

Telegram Chat

cloud HTTPS POST to Bot API
chat Notification delivered

Simple Configuration

Profiles are stored at ~/.config/auto-message/config.json

{
  "profiles": [
    {
      "name": "mybot",
      "token": "123456:ABC-DEF",
      "chat_id": "999888777",
      "default": true
    },
    {
      "name": "work",
      "token": "456789:XYZ",
      "chat_id": "111222333"
    }
  ]
}