SuperAPI AI 工具集

telegram-post

营销与增长

查看项目

更新于 10-15 21:53

技能介绍

用途:从 Markdown 草稿文件创建、预览并发送格式化 Telegram 帖子。适用于用户要求起草 Telegram 频道帖子、在发送前预览草稿、将草稿发到保存消息或频道,以及处理 Channels/*/drafts/ 下待发送的草稿文件。脚本位置固定为 ~/.Codex/skills/telegram/scripts/telegram_fetch.py,资料明确指出 scripts/post.py 不存在,不要使用。

主要能力: 1)发送到保存消息(预览):使用 send 命令并加 --markdown 保留格式,示例:python3 ~/.Codex/skills/telegram/scripts/telegram_fetch.py send --chat "@glebkalinin" --text "DRAFT_BODY_HERE" --markdown。可带图片或文件:加 --file "/path/to/image.png" 与 --text 作为说明文字。 2)发布到频道:使用 publish 命令,支持 --dry-run 预览、--schedule 定时(如 "2026-04-16T09:00"),--draft 可接受 slug、文件名或完整路径。publish 会自动从草稿文件夹路径或 frontmatter 的 channel 字段确定频道,将 Markdown 转为 Telegram HTML,缺失时补上频道页脚(从已发布帖子读取),以 parse_mode='html' 发送,更新 frontmatter 的 published_date 与 telegram_message_id,将文件从 drafts/ 移到 published/,并更新频道索引文件。

格式转换:send 命令需加 --markdown 才会转换,支持 粗体、斜体、文字、## 标题、列表项转箭头格式;不加则按纯文本发送。publish 命令自动处理转换,无需 --markdown。不要通过 send 发送原始 HTML,否则会显示为字面 <b>text</b>;也不要手工构造 HTML。

草稿准备流程:读取 Channels/{channel}/drafts/ 中的草稿;去除 YAML frontmatter;去除 ![[image.png]] wikilink 嵌入(图片单独用 --file 处理);解析媒体路径(Attachments/、Channels/{channel}/attachments/、Channels/{channel}/videos/、vault 根目录);检查文本长度;有图且正文不超过 1024 字符时作为带说明的单条消息发送,超过则图片配短说明(仅标题)加后续文本;无媒体则按 4096 字符上限拆分文本。发送草稿内容始终使用 --markdown。

发布后流程:当用户要求“move to published”等操作时,将文件从 drafts/ 移到 published/,并把 frontmatter 的 type: draft 改为 type: published,添加 published_date: '[[YYYYMMDD]]'(当天日期)。

限制与注意:Telegram 图片说明文字上限为 1024 字符,超长需拆分为图片加短说明和后续文本消息。支持的频道为 Channels/ 下任意包含 {name}/{name}.md 索引文件且 frontmatter 含 telegram_channel 的文件夹(如 klodkot、mental-health-tech、opytnym-putem、tool-building-ape 等)。依赖 telegram 技能凭据(~/.telegram_dl/),需要 Python 3.10+、telethon、pyyaml。费用、价格等信息资料未提供。