Use when operating, debugging, deploying, or monitoring a Telegram bot or Telegram-to-agent gateway. Triggers on "telegram bot down", "bot not responding", "debug bot", "check webhook", "polling vs webhook", "restart bot", "deploy bot", "bot logs", "agent gateway", "Telegram Bot API error", "send test message", "бот не отвечает", "проверь бота", "логи бота", "перезапусти бота". Covers health checks, logs, webhook/polling diagnostics, environment validation, safe restart/deploy checklists, Bot API smoke tests, forum topic delivery, privacy mode, gateway routing, and incident notes.
npx skills add https://github.com/serejaris/personal-corp-skills --skill tg-bot-ops
Use this skill when the real question is whether a Telegram bot is receiving
updates, processing them in the intended runtime, and sending visible responses
to the right chat, user, or forum topic.
.env values, connection strings, raw logs, private DMs,payment payloads, session files, or full user records.
<TELEGRAM_BOT_TOKEN>,<TELEGRAM_USER_ID>, <CHAT_ID>, <TOPIC_ID>, <WEBHOOK_URL>.
edit BotFather settings, or deploy until the user has authorized that exact
action.
user it must be rotated before public release.
If the repo or runtime is unclear, identify:
TELEGRAM_BOT_TOKEN;current git state.
polling, MTProto bot session, or MTProto user session.
getMe using a masked token path.getWebhookInfoand inspect runtime logs.
409 Conflict by reading the error text:webhook conflict means webhook/deleteWebhook path; competing getUpdates
means find the polling owner.
E2E when user-visible behavior matters.
10. Incident note — report symptom, evidence, root cause, fix, and residual risk.
When the bot is a gateway from Telegram into an agent runtime, read
references/hermes-gateway.md. The reference is
Hermes-compatible but intentionally generic: bot handle, host, service name,
home directory, chat ids, topic ids, env paths, and logs must be placeholders or
redacted.
getUpdates, webhooks,sendMessage, getMe, callbacks, payments, and join requests.
start(bot_token=...) or a user-session E2E harness for what a Telegram user
sees.
polling, MTProto bot session, or MTProto user session. Do not mix without a
clear deduplication plan.
Safe read-only checks should avoid putting the token-bearing URL in shell
history, process listings, or copied logs. Prefer a tiny local helper:
import json, os, urllib.request
token = os.environ["TELEGRAM_BOT_TOKEN"]
for method in ("getMe", "getWebhookInfo"):
with urllib.request.urlopen(f"https://api.telegram.org/bot{token}/{method}") as response:
data = json.load(response)
print(method, {"ok": data.get("ok"), "result_keys": sorted((data.get("result") or {}).keys())})
Do not paste the token-bearing URL into notes or issues. In reports, write:
getWebhookInfo: webhook_url=<set|empty>, pending_update_count=<n>, last_error=<redacted>
Direct getUpdates diagnostics can consume pending updates. Use it only with a
fresh nonce, short timeout, known update owner, and restore plan.
message_thread_id.message_thread_id. Preserve message_thread_id for non-General topics.
inline messages via the bot, service messages, private chats, and channel
messages where they are a member. Admin bots can receive all group messages.
requires explicit user authorization.
Before restarting or deploying:
getMe, webhook/polling, and one visible smoke test.Answer with:
not checked, local only, runtime checked, verified in Telegram, or blocked..env, logs, user messages, payment payloads, or DB rows.message_thread_id when the bot lives in Telegram forum topics.Troubleshoot and resolve issues with Azure Messaging SDKs for Event Hubs and Service Bus. Covers connection failures, authentication errors, message processing issues, and SDK configuration problems. WHEN: event hub SDK error, service bus SDK issue, messaging connection failure, AMQP error, event processor host issue, message lock lost, message lock expired, lock renewal, lock renewal batch, send timeout, receiver disconnected, SDK troubleshooting, azure messaging SDK, event hub consumer, service bus queue issue, topic subscription error, enable logging event hub, service bus logging, eventhub python, servicebus java, eventhub javascript, servicebus dotnet, event hub checkpoint, event hub not receiving messages, service bus dead letter, batch processing lock, session lock expired, idle timeout, connection inactive, link detach, slow reconnect, session error, duplicate events, offset reset, receive batch.
Sub-skill of microsoft-365-agents-toolkit. Routed expert system with 100+ micro-expert files for migrating Slack bots to Teams, cross-platform bridging, and dual-platform bot development. USE FOR: migrating Slack bot to Teams, adding Teams support to Slack bot, building dual-platform bots, converting Block Kit to Adaptive Cards, identity/OAuth bridging, deploying bots to Azure or AWS, configuring AI model providers. DO NOT USE FOR: general web development, non-bot projects, standalone Teams development without Slack (use parent skill instead).
Troubleshoot and resolve issues with Azure Messaging SDKs for Event Hubs and Service Bus. Covers connection failures, authentication errors, message processing issues, and SDK configuration problems. WHEN: event hub SDK error, service bus SDK issue, messaging connection failure, AMQP error, event processor host issue, message lock lost, message lock expired, lock renewal, lock renewal batch, send timeout, receiver disconnected, SDK troubleshooting, azure messaging SDK, event hub consumer, service bus queue issue, topic subscription error, enable logging event hub, service bus logging, eventhub python, servicebus java, eventhub javascript, servicebus dotnet, event hub checkpoint, event hub not receiving messages, service bus dead letter, batch processing lock, session lock expired, idle timeout, connection inactive, link detach, slow reconnect, session error, duplicate events, offset reset, receive batch.
Build real-time chat applications with thread management, messaging, participants, and read receipts.
Build real-time web applications with Azure Web PubSub SDK for Java. Use when implementing WebSocket-based messaging, live updates, chat applications, or server-to-client push notifications.
Azure Web PubSub Service SDK for Python. Use for real-time messaging, WebSocket connections, and pub/sub patterns.
Azure Resource Manager SDK for Bot Service in .NET. Management plane operations for creating and managing Azure Bot resources, channels (Teams, DirectLine, Slack), and connection settings.
Enterprise messaging with queues, topics, and subscriptions.
Take serejaris/tg-bot-ops from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.