No description
Find a file
2026-04-11 16:37:16 +08:00
.github docs(release): 优化自动发布文案模板并同步更新入口说明 2026-03-03 03:22:56 +08:00
docker feat(update): 支持 Docker 场景一键更新并接入 Release 更新包 2026-03-03 02:33:19 +08:00
docs fix: persist image assets under /data 2026-03-10 13:00:58 +08:00
screenshot docs: 更新README部署说明并加入截图展示 2025-12-19 22:03:14 +08:00
src fix: 修复图片字典上传文件ID失效问题 2026-03-17 04:33:31 +08:00
tools chore(packaging): default SlimHost module packaging 2026-01-09 21:01:44 +08:00
.dockerignore fix(bot): 修复手动同步无法发现新频道的问题 2026-01-02 13:50:32 +08:00
.env.example docs(docker): 精简部署文档并切换为 GHCR 镜像优先 2026-03-03 02:38:29 +08:00
.gitignore docs: mkdocs site + reorganize docs 2026-01-13 23:28:50 +08:00
Directory.Build.props 版本号更新至1.31.9 2026-03-12 13:28:09 +08:00
docker-compose.yml docs(docker): 精简部署文档并切换为 GHCR 镜像优先 2026-03-03 02:38:29 +08:00
Dockerfile feat(update): 支持 Docker 场景一键更新并接入 Release 更新包 2026-03-03 02:33:19 +08:00
Dockerfile.local feat: 完整支持 tdata 压缩包导入并修复会话校验链路 2026-03-02 23:07:52 +08:00
global.json fix: 全局Telegram API配置+DB初始化+Razor修复 2025-12-19 10:21:24 +08:00
mkdocs.yml docs: mkdocs site + reorganize docs 2026-01-13 23:28:50 +08:00
README.md docs: add bilingual README with English default 2026-03-19 11:09:25 +08:00
README.zh-CN.md docs: add bilingual README with English default 2026-03-19 11:09:25 +08:00
requirements-docs.txt ci(docs): 锁定 MkDocs 主版本范围,避免 docs 工作流未来兼容性中断 2026-03-03 03:56:06 +08:00
TelegramPanel.sln chore: 删除 message report 模块 2026-03-10 03:24:44 +08:00

Telegram Panel

English | 中文

A multi-account Telegram management panel built on WTelegramClient, powered by .NET 8 and Blazor Server.

.NET 8.0 Blazor Server Docker Compose Powered by WTelegramClient

📚 Documentation | 🏪 API Account Marketplace | 🖼️ Screenshots | 💬 Telegram Channel | 👥 Community Group

Overview

Telegram Panel is designed for operating and managing multiple Telegram accounts from a single web interface. It focuses on account lifecycle management, batch operations, channel/group administration, automation workflows, and extensibility.

Feature Highlights

  • 📥 Multi-account import and login: import/export Telethon and TData archives, sign in with SMS verification codes, and handle 2FA passwords
  • 👥 Batch operations for account fleets: bulk join / subscribe / leave / start bots, auto-send messages in private groups for account warming, bulk invite members or bots, batch assign administrators, export links, and more
  • 📱 Kick other devices with one click: keep the current panel session while removing other active sessions
  • 🧹 Invalid account detection and cleanup: batch-handle banned, limited, frozen, logged-out, or expired-session accounts
  • 🔐 2FA management: change secondary passwords individually or in bulk, and bind / replace recovery email addresses (including support for Cloud Mail verification flows)
  • 👤 Better account visibility: quickly inspect joined channels and groups from the account list, and display estimated registration time based on the 777000 system notification history
  • 🧩 Modular architecture: install extensions for tasks, APIs, and UI modules (see docs/developer/modules.md)

Recent Additions

  • 🧠 AI verification support: long-running activity tasks can detect verification prompts and automatically click buttons or answer with text
  • ⚙️ Expanded AI configuration: OpenAI-compatible endpoints, API key management, default / preset models, and one-click connectivity testing
  • 🔁 Improved AI reliability: configurable retry counts with shared logic for AI decisions, answers, and connectivity tests
  • 📚 Data dictionary support: text dictionaries, image dictionaries, and template variables
  • 🕒 Scheduled task capability: timed channel and group tasks such as creation and publishing
  • 🧠 Task center upgrades: pause, edit, and rerun continuous tasks; separate running tasks from history; support auto-cleanup
  • 💬 Continuous activity improvements: account categories, randomized copywriting, second-level send intervals, and persistent run configuration
  • 🔄 Sync experience optimization: manual “sync now” runs in the background and can be tracked in the task center
  • 👤 Account list enhancement: estimated registration time display and joined channel/group inspection
  • 📺 Channel management upgrade: channel lists now focus on joined channels, with multi-condition filters and linked-account visibility
  • 👥 Group management completion: group creation, categorization, batch operations, and listing support
  • 🔗 Multi-account relationship visibility: channels and groups can bind multiple system accounts, with linkage visible in list and detail views
  • 🚪 Real exit / dissolve actions: channels and groups support single and batch leave / dissolve operations
  • 🧹 Data accuracy fixes: improved channel-group separation and better presentation after relationship sync
  • ♻️ Post-sync cleanup: automatically remove invalid relations and orphaned records after synchronization
  • Data-layer optimization: extra query and relation indexes for better filtering performance with large account / channel / group datasets

Roadmap

  • One-click leave / unsubscribe / subscribe for channels and groups
  • Batch auto check-in
  • One-click clear contacts
  • Batch re-login with SMS verification codes (for refreshing sessions)
  • Phone registration flow for unregistered numbers (name / optional email / email code, etc.)
  • Generic SMS receiving API abstraction: the core app depends only on the abstraction, while providers integrate through adapter modules without changing the main codebase
  • Support phone number replacement
  • Multiple proxies: bind proxies by account category
  • Multiple APIs: bind ApiId / ApiHash by account category
  • Scheduled channel creation and scheduled public publishing
  • Scheduled fan growth: integrate third-party fan-growth APIs through a generic adapter structure and provider modules
  • Scheduled speaking / warming for group chats

Quick Start

Requirements: Docker. On Windows, Docker Desktop + WSL2 is recommended. On Linux, install Docker Engine directly.

1. Prepare the project

git clone https://github.com/moeacgx/Telegram-Panel
cd Telegram-Panel
cp .env.example .env

2. Choose an image tag

By default, the stable image is used and no change is required:

TP_IMAGE=ghcr.io/moeacgx/telegram-panel:latest

If you want the development image, update .env to:

TP_IMAGE=ghcr.io/moeacgx/telegram-panel:dev-latest

3. Start the service

docker compose pull
docker compose up -d

Open: http://localhost:5000

Default admin account (first login)

Username: admin
Password: admin123

After signing in, change it on the password update page.

Common commands

# View logs
docker compose logs -f

# Update to the image tag specified in the current .env
docker compose pull
docker compose up -d

# Restart / stop
docker compose restart
docker compose down

Run locally for development (optional)

Suitable for development or local debugging. Requires the .NET 8 SDK.

dotnet run --project src/TelegramPanel.Web

Open: http://localhost:5000

In-app Docker Update

The panel supports one-click self-update when deployed with Docker (top-left version number → version information dialog):

  1. Click Check for updates to read the latest GitHub Release.
  2. Click Update and restart to automatically download the matching Linux package to /data/app-current.
  3. After restart is triggered, the container will prioritize launching from /data/app-current, so manual docker compose pull is not required.

Notes:

  • This feature currently works only when running inside a Docker container.
  • The updater depends on assets generated by the release.yml workflow. If a Release does not include linux-x64 / linux-arm64 zip assets, one-click update will be unavailable.

Screenshots

More screenshots: screenshot/

Star History

Star History Chart