Cursor rules for setting up email-to-Telegram forwarding via Cloudflare Email Routing and Workers using the mail2tg CLI.
.cursorrules or .cursor/rules/cloudflare-email-telegram.mdc You are an expert at setting up email-to-Telegram forwarding using Cloudflare Email Routing and Workers. When the user asks to set up email forwarding to Telegram, route domain email to Telegram, or mentions "mail2tg", "email to telegram", follow this workflow. ## Tool Use the `mail2tg` CLI published on npm: https://www.npmjs.com/package/mail2tg Source: https://github.com/shatzibitten/mail2tg ## Prerequisites 1. Domain DNS managed by Cloudflare (nameservers pointing to Cloudflare, status "Active"). 2. Cloudflare API token with scopes: Zone Read, DNS Edit, Worker Scripts Edit, Email Routing Rules Edit. Create at dash.cloudflare.com/profile/api-tokens → "Create Custom Token". 3. Telegram bot created via @BotFather, token copied. User has sent /start to the bot. 4. Node.js >= 20. ## Plan-first workflow ```bash export CLOUDFLARE_API_TOKEN="<token>" export TELEGRAM_BOT_TOKEN="<bot-token>" # Replace <reviewed-version> only after reviewing the npm package and source. MAIL2TG_DOMAIN=example.com \ MAIL2TG_MAILBOX=info@example.com \ npx -y mail2tg@<reviewed-version> init --json npx -y mail2tg@<reviewed-version> plan --json # Stop here, show the plan to the user, and wait for explicit approval. npx -y mail2tg@<reviewed-version> apply --json npx -y mail2tg@<reviewed-version> doctor --json ``` ## Interactive workflow ```bash npx -y mail2tg@<reviewed-version> init export CLOUDFLARE_API_TOKEN="<token>" export TELEGRAM_BOT_TOKEN="<bot-token>" npx -y mail2tg@<reviewed-version> plan # Stop here, show the plan to the user, and wait for explicit approval. npx -y mail2tg@<reviewed-version> apply npx -y mail2tg@<reviewed-version> doctor ``` ## What it does - Deploys a Cloudflare Worker that parses incoming emails (MIME) and forwards headers, body, and attachments (up to 50 MB) to a Telegram chat via Bot API. - Creates MX and SPF DNS records so Cloudflare receives mail for the domain. - Creates an Email Routing rule directing the configured address to the Worker. - Sets Worker secrets (TELEGRAM_BOT_TOKEN, TELEGRAM_CHAT_ID). After apply, nothing runs locally. Everything is serverless on Cloudflare's edge. Free tier covers 100K emails/day. ## Exit codes - 0: success - 2: missing config or env vars - 3: Cloudflare/Telegram API error - 4: doctor checks failed - 5: worker deployment failed ## Common issues - "Telegram chat_id not found" → user must send /start to the bot, then re-run. - "Cloudflare zone not found" → domain not on Cloudflare or token lacks Zone Read scope. - "Worker deployment failed" → check internet; run `npx wrangler whoami` to debug.
You are an expert at setting up email-to-Telegram forwarding using Cloudflare Email Routing and Workers.
When the user asks to set up email forwarding to Telegram, route domain email to Telegram, or mentions “mail2tg”, “email to telegram”, follow this workflow.
Use the mail2tg CLI published on npm: https://www.npmjs.com/package/mail2tg
Source: https://github.com/shatzibitten/mail2tg
export CLOUDFLARE_API_TOKEN="<token>"
export TELEGRAM_BOT_TOKEN="<bot-token>"
# Replace <reviewed-version> only after reviewing the npm package and source.
MAIL2TG_DOMAIN=example.com \
MAIL2TG_MAILBOX=info@example.com \
npx -y mail2tg@<reviewed-version> init --json
npx -y mail2tg@<reviewed-version> plan --json
# Stop here, show the plan to the user, and wait for explicit approval.
npx -y mail2tg@<reviewed-version> apply --json
npx -y mail2tg@<reviewed-version> doctor --json
npx -y mail2tg@<reviewed-version> init
export CLOUDFLARE_API_TOKEN="<token>"
export TELEGRAM_BOT_TOKEN="<bot-token>"
npx -y mail2tg@<reviewed-version> plan
# Stop here, show the plan to the user, and wait for explicit approval.
npx -y mail2tg@<reviewed-version> apply
npx -y mail2tg@<reviewed-version> doctor
After apply, nothing runs locally. Everything is serverless on Cloudflare’s edge. Free tier covers 100K emails/day.
npx wrangler whoami to debug.Quantitative factor research skills for Cursor. Evaluate factors, run backtests, mine new alpha through natural language.
Prevent AI over-engineering by keeping changes scoped, simple, and directly tied to the user's request
Anti-sycophancy directives for code review and generation. Blocks hallucinated APIs, false confidence, authority-driven validation, and softening of real risk.
Cursor rules for Aspnet Abp.
Guidelines and best practices for building applications with [Beefree SDK](https://docs.beefree.io/beefree-sdk), including installation, authentication, configuration, customization, and template management
Cursor rules for embedding Beefree SDK's no-code content editors (for emails, pages, and popups) into a web application.