Skip to content

Latest commit

 

History

428 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TelePost

语言 / Language: 中文 · English

Telegram 频道投稿、审核与自动化发布平台。

Release License Python Docs

用户可以通过 Telegram 聊天或 Mini App 投稿,管理员可以集中审核和管理内容; 外部程序也可以通过 HTTP API 自动投递。所有入口共用同一套投稿、审核、搜索、发布和状态管理流程。 TelePost 可以独立运行,不要求 PixivFlow、Fly.io、Mini App 或多 Bot。

适合什么场景

场景 流程 适合
社区频道 成员 → Bot / Mini App → 直接发布或审核 → 频道 社区投稿、作品征集、UGC 频道
自动内容频道 PixivFlow 等工具 → HTTP API → 审核 → 频道 自动收集内容并保留人工把关
自定义自动化 RSS / 爬虫 / CI / 自有脚本 → HTTP API → 频道 把 Telegram 作为现有工作流的发布端
用户 ──┬── Telegram Chat ──┐
       └── Mini App ───────┤
                           ▼
                        TelePost ──→ Telegram Channel
                           ▲
外部自动化 ── HTTP API ────┘

Chat、Mini App 和 API 不是三套系统:它们最终进入同一个 TelePost 业务流程。Mini App 是可选的增强界面, 审核也是可配置策略;原生 Chat 投稿默认直接发布,设置 CHAT_REVIEW_REQUIRED=true 后才进入审核队列。

30 秒开始

  1. @BotFather 创建 Bot,并把它加入目标频道、授予发帖权限。
  2. 最新 Release 下载当前平台的单文件程序。
  3. 首次运行并按向导填写 Bot Token、频道 ID,以及推荐设置的 Owner ID。
  4. 向 Bot 发送 /start,再用 /submit 完成第一次投稿。

Linux 示例:

chmod +x telepost-linux-x64
./telepost-linux-x64

也可以使用 Docker 或源码运行;各平台下载、安装和升级方式见安装与部署

核心能力

  • 投稿与发布:图片、视频、音频和文件;支持预览、编辑、标签、匿名和剧透。
  • 灵活审核:Chat 与 API 可分别选择直接发布或进入私有审核群,不强制所有投稿走同一种流程。
  • Mini App:普通用户投稿并查看自己的投稿,审核员处理队列和详情。
  • HTTP API:Bearer Token、幂等键、文件上传和 Telegram file_id,适合脚本与自动化服务。
  • 频道管理:搜索频道历史、标签、个人投稿和本地热榜,并提供常用管理命令。
  • 多 Bot:一个 supervisor 运行多个相互隔离的 Bot,各自使用独立配置与数据目录。
  • 运行方式:支持 Polling、Webhook 和自动选择,部署不绑定特定云平台。

Telegram Mini App

普通用户:Telegram → Mini App → 投稿 / 我的投稿
审核员:  Telegram → Mini App → 审核队列 / 审核详情

Mini App 复用 Bot 的身份、投稿和审核流程,不是第二套后端;关闭 Mini App 不影响聊天投稿和 HTTP API。 当前 Mini App 投稿界面按审核流程工作;API_REVIEW_REQUIRED 内置默认即为 true。 启用方式、同域托管与安全要求见 Mini App 文档

HTTP API 与自动化

外部程序可以把 TelePost 当作 Telegram 的投稿、审核与发布后端。先由 Owner 在 Bot 中执行 /gen_token <名称> 生成 Token,然后提交内容:

curl -X POST 'https://example.com/api/v1/submissions' \
  -H 'Authorization: Bearer tp_xxxx' \
  -F 'files=@image.jpg' \
  -F 'tags=illustration,featured' \
  -F 'title=Example' \
  -F 'idempotency_key=my-source:123'

多 Bot 路径、审核策略、响应语义和完整字段见 HTTP API 文档

与其他工具配合

TelePost 可以完全独立运行,也可以接收任何能调用 HTTP API 的上游:

PixivFlow ─────┐
RSS / 爬虫 ────┼──→ TelePost → 审核 / 发布 → Telegram
自有脚本 / CI ┘

PixivFlow 是一个独立的 Pixiv 下载、筛选与自动收集工具; 它可以把结果交给 TelePost,也可以本地下载或投递到其他接收端。TelePost 不依赖 PixivFlow。

可选的 MCP sidecar 允许 AI Agent 读取待审核内容并给出建议;最终发布仍由人类明确确认。

运行与部署

TelePost 可以运行在本地、VPS、Docker、Fly.io 或其他能够运行 Python / 容器的环境:

环境 建议入口
本地或无公网 HTTPS RUN_MODE=POLLING
VPS / 容器平台 Polling,或在公网 HTTPS 后使用 Webhook
Fly.io 固定版本镜像、持久卷和 Webhook

单 Bot 是最简单的起点;Mini App、多 Bot、Webhook 和 PixivFlow 组合都按需启用。通用步骤见 安装与部署,Fly.io 专项配置见 Fly.io 部署

面向长期运行

  • 投稿和发布使用幂等语义,重试不会静默产生重复内容。
  • 审核状态、会话和运行时策略持久化,重启后可以恢复。
  • /live/ready/health 提供分层健康检查。
  • 图片处理有资源预算,高风险原图会安全降级为预览或文档。

文档

你想做什么 文档
下载并开始使用 下载 · 安装与部署
配置 Bot、审核或多 Bot 配置参考
查看 Telegram 命令 命令参考
接入自动化 HTTP API
启用 Mini App Mini App
配置 Webhook 或 Fly.io Webhook 与 Polling · Fly.io 部署
备份、升级或排查故障 运维手册 · 故障排查
参与开发 贡献指南 · 完整文档目录

相关项目

  • PixivFlow:Pixiv 下载、筛选、定时执行与 HTTP 交付工具。
  • pixivflow-telepost-deploy:组合 PixivFlow 与 TelePost 的部署和运维套件,提供 Docker、VPS 与云平台配置示例。

贡献与许可

问题请提交到 GitHub Issues,代码贡献见 CONTRIBUTING.md。TelePost 使用 MIT License

Editorial Revision(审核编辑后发布)

审核员可以通过“编辑后发布”修改标题/简介/标签/链接/剧透与媒体顺序/移除附件后发布; 投稿者原始稿件不可变更(immutable),发布保存独立 snapshot,并可在配置开启后收到发布通知(含修改摘要)。 详见 docs/CONFIGURATION.md 与 AGENTS.md(§editorial / §notify-submitter)。

Releases

Packages

Contributors

Languages