setup-bot — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited setup-bot (Agent Skill) and scored it 96/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 1 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 1 flagged
A bulleted imperative like {match} tells the agent to never reveal, disclose, or mention something to the user. Used adversarially it can instruct the agent to hide its tool calls or lie about what it did — stripping the transparency a user relies on to trust the agent.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Diagnose and fix Telegram bot connectivity issues. This skill assumes the bot already exists in BotFather -- focus is on getting it working with better-telegram-mcp.
config(action="status") to check current bot token and connection stateTELEGRAM_BOT_TOKEN env var and restart the MCP server (token is NOT runtime-configurable)chat(action="list") to see known chatsmessage(action="send", chat_id="<id>", text="Connection test")Send fails
|
+-- HTTP 403 "Forbidden: bot was blocked by the user"
| -> User blocked the bot. They must unblock it in Telegram.
|
+-- HTTP 403 "Forbidden: bot is not a member of the channel/group"
| -> Bot not added to the group/channel.
| -> For groups: add bot as member via group settings.
| -> For channels: add bot as admin (channels require admin for posting).
|
+-- HTTP 400 "Bad Request: chat not found"
| -> Wrong chat_id format.
| -> Groups use negative IDs (e.g., -1001234567890).
| -> Channels use negative IDs or @channel_username.
| -> Users use positive numeric IDs.
|
+-- HTTP 400 "Bad Request: can't parse entities"
| -> MarkdownV2 formatting error. See channel-post skill for escaping rules.
|
+-- HTTP 401 "Unauthorized"
| -> Bot token is invalid or revoked.
| -> Verify token with @BotFather (/mybots -> select bot -> API Token).
| -> If token was regenerated, update TELEGRAM_BOT_TOKEN and restart.
|
+-- HTTP 429 "Too Many Requests"
| -> Rate limited. Wait the retry_after seconds indicated in the response.
| -> Telegram limits: ~30 messages/second globally, 1 msg/second per chat.
|
+-- Connection timeout / DNS resolution failed
| -> Network issue. Check internet connectivity.
| -> If behind proxy/firewall, Telegram API (api.telegram.org) may be blocked.
|
+-- "Not Found" on getMe
-> Token format is wrong. Must be "123456:ABC-DEF..." format.~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.