Skip to main content
profClaw’s Telegram integration creates a bot that responds to messages in private chats, groups, and supergroups. Supports both webhook and long-polling connection modes.

Capabilities

FeatureSupported
Private chatsYes
Group chatsYes
SupergroupsYes
Inline keyboardsYes
File/media messagesYes
CommandsYes (/command)
Webhook modeYes
Long-polling modeYes

Setup

1

Create a bot with BotFather

Open Telegram and message @BotFather:
/newbot
# Follow prompts to set name and username
# BotFather gives you a token: 1234567890:ABCdef...
2

Configure profClaw

TELEGRAM_BOT_TOKEN=1234567890:ABCdef...
3

Set webhook (optional)

For webhook mode, also set:
TELEGRAM_WEBHOOK_URL=https://your-domain.com/webhooks/telegram
TELEGRAM_WEBHOOK_SECRET=your-random-secret
If no webhook URL is set, profClaw uses long-polling automatically.
4

Verify

profclaw doctor --provider telegram

Environment Variables

TELEGRAM_BOT_TOKEN
string
required
Bot token from BotFather. Format: 1234567890:ABCdef...
TELEGRAM_WEBHOOK_URL
string
Public webhook URL. If not set, long-polling is used instead.
TELEGRAM_WEBHOOK_SECRET
string
Secret token for webhook verification. Recommended for webhook mode.

Configuration Example

TELEGRAM_BOT_TOKEN=1234567890:ABCdef...
# No webhook URL = auto long-polling

Bot Commands

Set up commands in BotFather for better UX:
/ask - Ask a question
/run - Run a skill
/status - Check status
/help - Show help

Usage in Groups

Add the bot to a group and it responds when:
  • Directly mentioned: @your_bot_name What is...
  • Bot commands used: /ask What is...
For private groups, ensure the bot has message read permissions.

Notes

  • Long-polling is simpler for development and doesn’t require a public URL.
  • Webhook mode is recommended for production - lower latency and no missed messages.
  • Telegram’s Bot API supports MarkdownV2 formatting for rich responses.
  • Group bots require explicit permission to read all messages (or use commands only).