Skip to main content Skills Marktplatz Entdecken und erkunden Sie KI-Skills, die von der Community erstellt wurden.
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Prompt kopierenPrompt-Details anzeigen Ein direkter Befehl überspringt den Prüf-Prompt. Prüfen Sie die Quelle, bevor Sie ihn ausführen.
npx skills add https://github.com/different-ai/openwork-hub --skill telegramDer Befehl bleibt in einer Zeile. Scrollen Sie horizontal, um ihn vor dem Kopieren vollständig zu prüfen.
Sie bevorzugen eine lokale Kopie? Laden Sie die Dateien herunter, die SkillsMP derzeit vorliegen.
ZIP herunterladen Herunterladen... Mehr aus diesem Repository telegram-chats.example.json 401 B Verwandte Berufe SOC
Basierend auf der SOC-Berufsklassifikation
name telegram description Send notifications and messages via Telegram bot API
Environment Setup
IMPORTANT : Before using any Telegram commands, source the local .env file:
source .skill.config
Credentials are stored in .skill.config (gitignored):
TELEGRAM_BOT_TOKEN=...
TELEGRAM_CHAT_ID=... # Default chat (legacy, still works)
Multi-Chat Configuration
Chat aliases are stored in telegram-chats.json (gitignored):
{
"chats" : {
"default" : { "id" : "123456789" , "name" : "Personal" , "description" : "Default notifications" } ,
"alerts" : { "id" : "-100987654321" ,
"name"
:
"Alerts"
,
"description"
:
"Critical alerts"
}
,
"house"
:
{
"id"
:
"-4972420459"
,
"name"
:
"House Common"
,
"description"
:
"House group"
}
}
}
Get chat ID by alias jq -r '.chats.house.id' skills/telegram/telegram-chats.json
List all configured chats jq -r '.chats | to_entries[] | "\(.key): \(.value.name) (\(.value.id))"' skills/telegram/telegram-chats.json
Quick Usage
Send to default chat source .skill.config && curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$TELEGRAM_CHAT_ID " \
-d "text=Hello from OpenCode!"
Send to named chat (using jq) source .skill.config && CHAT_ID=$(jq -r '.chats.house.id' skills/telegram/telegram-chats.json) && \
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$CHAT_ID " \
-d "text=Hello House!"
Send to multiple chats source .skill.config && for chat in default house; do
CHAT_ID=$(jq -r ".chats.$chat .id" skills/telegram/telegram-chats.json)
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$CHAT_ID " \
-d "text=Broadcast message!" &
done
wait
Send with Markdown formatting source .skill.config && curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$TELEGRAM_CHAT_ID " \
-d "parse_mode=Markdown" \
-d "text=*Bold* and _italic_ and \`code\`"
Send with HTML formatting source .skill.config && curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$TELEGRAM_CHAT_ID " \
-d "parse_mode=HTML" \
-d "text=<b>Bold</b> and <i>italic</i> and <code>code</code>"
Send with links source .skill.config && curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$TELEGRAM_CHAT_ID " \
-d "parse_mode=Markdown" \
-d "text=Check out [this deal](https://facebook.com/marketplace/item/123)"
Send multi-line message source .skill.config && curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$TELEGRAM_CHAT_ID " \
-d "parse_mode=Markdown" \
--data-urlencode "text=*New Deals Found*
1. \$50 - Vintage Poster [View](link1)
2. \$30 - Movie Poster [View](link2)"
Verify Setup
Check bot is working source .skill.config && curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /getMe" | jq
Check credentials are set source .skill.config && echo "Token: ${TELEGRAM_BOT_TOKEN:0:10} ... Chat: $TELEGRAM_CHAT_ID "
List all chats from config jq '.chats' skills/telegram/telegram-chats.json
Common Gotchas
Markdown escaping : Use \ before _, *, `, [ if they're literal
URL encoding : Use --data-urlencode for messages with special chars
Chat ID : Must be a number (personal) or starts with - (group/channel)
Bot must be added to group : For group chats, add bot as member first
Group chat IDs are negative : They typically start with -100 for supergroups
First-Time Setup (If Not Configured)
1. Create a bot
Open Telegram and message @BotFather
Send /newbot
Choose a name (e.g., "My OpenCode Bot")
Choose a username (must end in bot, e.g., "myopencode_bot")
Copy the token BotFather gives you
2. Get your chat ID
Message your new bot (just say "hi")
Run:
curl -s "https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates" | jq '.result[0].message.chat.id'
3. Get group chat IDs
Add the bot to each group
Send a message in the group
Run:
curl -s "https://api.telegram.org/bot<YOUR_TOKEN>/getUpdates" | jq '.result[] | select(.message.chat.type != "private") | {title: .message.chat.title, id: .message.chat.id}'
4. Store bot token in .skill.config TELEGRAM_BOT_TOKEN=your_token_here
TELEGRAM_CHAT_ID=your_default_chat_id_here
5. Initialize multi-chat config cp skills/telegram/telegram-chats.example.json skills/telegram/telegram-chats.json
Then edit telegram-chats.json to add your chats:
{
"chats" : {
"default" : {
"id" : "YOUR_PERSONAL_CHAT_ID" ,
"name" : "Personal" ,
"description" : "My personal notifications"
} ,
"alerts" : {
"id" : "GROUP_CHAT_ID" ,
"name" : "Alerts Group" ,
"description" : "System alerts"
}
}
}
6. Test it
source .skill.config && curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$TELEGRAM_CHAT_ID " \
-d "text=OpenCode connected!"
source .skill.config && CHAT_ID=$(jq -r '.chats.house.id' skills/telegram/telegram-chats.json) && \
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$CHAT_ID " \
-d "text=House chat connected!"
Adding New Chats
Via getUpdates (recommended)
Add bot to the new group or message it privately
Send a message in that chat
Run:
source .skill.config && curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /getUpdates" | jq '.result[-1].message.chat'
Add the chat to telegram-chats.json
Discover all recent chats source .skill.config && curl -s "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /getUpdates" | \
jq '[.result[].message.chat] | unique_by(.id) | .[] | {id, title: (.title // .first_name), type}'
Helper: Send Function For complex scripts, define a helper:
telegram_send () {
local chat_alias="${1:-default} "
local message="$2 "
local parse_mode="${3:-Markdown} "
source .skill.config
local chat_id=$(jq -r ".chats.$chat_alias .id" skills/telegram/telegram-chats.json)
curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN /sendMessage" \
-d "chat_id=$chat_id " \
-d "parse_mode=$parse_mode " \
--data-urlencode "text=$message "
}
telegram_send "house" "Hello from the house chat!"
telegram_send "bargains" "*New deal found!*" "Markdown"