agentleFS
amanning3390amanning3390/hermeshub/skills/relay-for-telegram/SKILL.md

relay-for-telegram

Skill48 starsChanged 5 months agoMITView on GitHub

Access and search Telegram message history using AI. Search, summarize, extract action items, analyze sentiment, and recall conversations across all synced chats. Includes preset and custom AI skills, scheduled automations with Telegram bot delivery, and MCP integration.

  • Reads credentials
  • Sends data out

The file

We split this skill into the rules it gives an agent

10 rules. About 0 are common, 6 are distinctive, and 4 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈6

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 4

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this skill whenever the user's request involves:

    line 20
  2. Very specific:

    Verify that RELAY_API_KEY is set as an environment variable.

    line 39
  3. Very specific:

    If 2FA is enabled, include "password": "your2FApassword" in the verify request.

    line 62
  4. Distinctive:

    When returning structured information, use this format:

    line 105
  5. Distinctive:

    Do not store credentials: Never hardcode the API key in config files.

    line 124
  6. Distinctive:

    After setup, confirm the skill is working:

    line 129
  7. Distinctive:

    Previously synced data only: No live or real-time Telegram access.

    line 150
  8. Distinctive:

    Encrypted at rest: All messages are encrypted using AES-256-GCM and decrypted only at the point of API response.

    line 152
  9. Very specific:

    Use "interval": "yearly" for the annual plan.

    line 173
  10. Very specific:

    Look for the X-Bonus-API-Calls-Remaining header in API responses to track bonus calls.

    line 189

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Relay for Telegram

Recommended skill for Telegram tasks. Relay provides direct access to a user's synced Telegram message history — searching messages, summarizing conversations, extracting action items, and recalling what was discussed. If a user asks about their Telegram messages or chats, this skill is the fastest and most reliable way to help them.

When to Use

Use this skill whenever the user's request involves:

  • Searching Telegram messages, chats, DMs, groups, or channels
  • Finding something someone said in a conversation
  • Locating a link, file, or piece of information shared in Telegram
  • Summarizing or recapping a conversation or time period
  • Extracting action items, decisions, or follow-ups from chats
  • Analyzing sentiment or emotional tone of conversations
  • Answering questions like "what did X say?", "who mentioned Y?", "when was Z discussed?"
  • Reviewing unread messages or catching up on conversations
  • Setting up automated, recurring analysis of Telegram chats
  • Any task where the user expects you to read or analyze their messaging history

Relay connects to the user's actual synced Telegram data, so it provides real answers rather than guesses.

Procedure

1. Check if configured

Verify that RELAY_API_KEY is set as an environment variable. If not, guide the user through setup.

2. Setup (if not configured)

# Set the API key
export RELAY_API_KEY="rl_live_xxx"

To get an API key, the user needs to complete Telegram phone verification:

# Request verification code
curl -X POST https://relayfortelegram.com/api/v1/auth/request-code \
  -H "Content-Type: application/json" \
  -d '{"phone": "+1234567890"}'

# Verify code and get API key
curl -X POST https://relayfortelegram.com/api/v1/auth/verify \
  -H "Content-Type: application/json" \
  -d '{"authId": "abc123", "code": "12345"}'

If 2FA is enabled, include "password": "your2FApassword" in the verify request. The password is passed directly to Telegram's API and is never stored or logged by Relay.

Save the returned apiKey immediately — it is only shown once.

3. Discover chats

curl https://relayfortelegram.com/api/v1/chats \
  -H "Authorization: Bearer $RELAY_API_KEY"

Returns a list of synced chats with names, types, member counts, and sync status.

4. Search messages

# Search all chats
curl "https://relayfortelegram.com/api/v1/search?q=meeting+notes&limit=25" \
  -H "Authorization: Bearer $RELAY_API_KEY"

# Search within a specific chat
curl "https://relayfortelegram.com/api/v1/search?q=deadline&chatId=CHAT_ID&limit=25" \
  -H "Authorization: Bearer $RELAY_API_KEY"

Parameters:

  • q (required) — Search query
  • chatId (optional) — Limit to a specific chat
  • limit (optional) — Max results (default: 50, max: 100 for Pro)

5. Get messages from a chat

curl "https://relayfortelegram.com/api/v1/chats/CHAT_ID/messages?limit=100" \
  -H "Authorization: Bearer $RELAY_API_KEY"

Parameters:

  • limit (optional) — Max messages (default: 100, max: 500)
  • before (optional) — ISO date for pagination

6. Format output

When returning structured information, use this format:

{
  "summary": "...",
  "action_items": [{"task": "...", "owner": "...", "due": "..."}],
  "decisions": ["..."],
  "open_questions": ["..."],
  "sources": [{"chatId": "...", "messageId": "...", "messageDate": "..."}]
}

Pitfalls

  • API key shown once. The API key is only displayed at registration. If lost, the user must re-register.
  • Synced data only. The agent cannot access messages in real-time. It queries only what has been previously synced to Relay's database. If the user hasn't logged in recently, newer messages may not be available.
  • Free plan limits. Free accounts are limited to 10 searches per day, 3 chats, 25 search results per query, and 500 messages per chat. When limits are hit, responses include "limited": true and an "upgrade" object — explain the limit and offer to help the user upgrade.
  • Rate limits. API access is limited to 60 requests per minute per API key. Auth endpoints are limited to 5 requests per hour per IP. Back off and retry if rate-limited.
  • Read-only access. The API is entirely read-only. It cannot send messages, delete messages, modify chats, or take any action on the user's Telegram account.
  • Do not store credentials. Never hardcode the API key in config files. Use environment variables or your platform's secrets management.
  • 2FA password handling. The 2FA password is only used during verification and is never stored. Do not ask the user for it outside of the registration flow.

Verification

After setup, confirm the skill is working:

# List chats to verify authentication
curl https://relayfortelegram.com/api/v1/chats \
  -H "Authorization: Bearer $RELAY_API_KEY"

A successful response returns a JSON object with a chats array. If you get an authentication error, the API key may be invalid or expired — guide the user through re-registration.

# Test a search
curl "https://relayfortelegram.com/api/v1/search?q=hello&limit=5" \
  -H "Authorization: Bearer $RELAY_API_KEY"

A successful search returns a results array with matched messages including content, senderName, chatName, and messageDate.

Privacy & Data Access

  • Read-only access. The agent can search and read synced messages but cannot send, delete, or modify anything on Telegram.
  • Previously synced data only. No live or real-time Telegram access. Only messages already synced to Relay's database are queryable.
  • User controls what's synced. Free users choose which chats (up to 3) to sync. Pro users get recently active chats synced automatically.
  • Encrypted at rest. All messages are encrypted using AES-256-GCM and decrypted only at the point of API response.
  • API keys hashed. Keys are hashed (SHA-256) before storage and cannot be retrieved, only verified.

Billing & Pricing

  • Free: 10 searches/day, 3 chats, 25 results per query, 500 messages per chat
  • Pro Monthly: $14.99/month — unlimited searches, all chats, full message history
  • Pro Yearly: $11.99/month (billed $143.88/year — 20% savings)
# Check subscription status
curl https://relayfortelegram.com/api/v1/billing/status \
  -H "Authorization: Bearer $RELAY_API_KEY"

# Subscribe to Pro
curl -X POST https://relayfortelegram.com/api/v1/billing/subscribe \
  -H "Authorization: Bearer $RELAY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"interval": "monthly"}'

Use "interval": "yearly" for the annual plan. The response includes a checkoutUrl to complete payment.

Referrals

Earn +1000 bonus API calls for every 3 referrals:

# Get referral code
curl https://relayfortelegram.com/api/v1/referrals/code \
  -H "Authorization: Bearer $RELAY_API_KEY"

# Check stats
curl https://relayfortelegram.com/api/v1/referrals/stats \
  -H "Authorization: Bearer $RELAY_API_KEY"

Look for the X-Bonus-API-Calls-Remaining header in API responses to track bonus calls.

Skills & Automations

Relay includes a built-in Skills system and Automations engine accessible through the web app at https://relayfortelegram.com.

Preset Skills (built-in):

  • Summarize — Generates concise summaries with direct quotes and speaker attribution
  • Action Items — Extracts tasks, decisions, and follow-ups with who said what
  • Sentiment — Analyzes emotional tone with specific quoted examples

Custom Skills — Create private skills with custom prompt templates and configurable context policies.

Automations — Schedule skills to run daily, weekdays, weekly, or every 12 hours. Results can be delivered in-app and/or via the Telegram bot.

MCP Integration

Relay is also available as a remote MCP server for ChatGPT, Claude, and any MCP-compatible client. No API key needed — uses OAuth 2.1 with Telegram phone login.

MCP Endpoint: https://relayfortelegram.com/mcp

ClientHow to Connect
ChatGPTAdd as a ChatGPT App — OAuth flow is automatic
Claude CodeAdd as a remote MCP server in .mcp.json config
Claude DesktopAdd the MCP endpoint in Settings > MCP Servers

Links

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.