Communitygithub.com

Pavan-makwana/My-Agentic-Skills

렌더링된 1080x1920 Instagram Reel 동영상을 Telegram 채팅, 그룹 또는 채널에 자동으로 업로드, 스트리밍 및 관리합니다. 대화형 봇 명령어(/reels, /day1, /day2, /status)와 자동 전송 훅을 포함합니다.

My-Agentic-Skills란 무엇인가요?

이 스킬은 렌더링된 Instagram Reel MP4 동영상(최대 50MB)을 Telegram Bot API를 통해 직접 업로드하고 관리합니다. Node.js 18+ 기본 기능(fetch, FormData, Blob)만을 사용하므로 외부 npm 의존성이 전혀 없습니다. 대화형 봇 명령어를 통해 사용자가 실시간으로 릴을 요청할 수 있으며, 자동 설정 스크립트가 봇 토큰을 확인하고 chat_id를 자동으로 수집하여 원활한 파이프라인 통합을 지원합니다. 주로 스튜디오 품질의 9:16 세로 동영상을 Telegram에서 즉시 공개하고자 하는 콘텐츠 제작자나 자동화 워크플로에 적합합니다.

지원 대상~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/Pavan-makwana/My-Agentic-Skills/tree/HEAD/skills/telegram-reel-publisher

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

Telegram Reel Publisher

스튜디오 품질의 세로 MP4 동영상(최대 50MB)을 표준 Telegram Bot API 엔드포인트를 사용하여 Telegram에 직접 업로드하고 스트리밍합니다. 외부 npm 의존성이 전혀 없습니다.

flowchart LR
    A[렌더링된 Reel MP4] --> B[telegram_bot.js]
    B --> C[Telegram Bot API /sendVideo]
    C --> D[사용자 / 채널 채팅]
    D --> E[대화형 명령어 /reels, /day1, /status]

사용 시기

  • 렌더링된 MP4 동영상(특히 1080x1920 9:16 세로 릴)을 가지고 있으며 Telegram에 즉시 전달하려는 경우.
  • 사용자가 주문형 릴을 요청할 수 있는 대화형 Telegram 봇을 원하는 경우.
  • 동영상 렌더링 완료 후 자동화된 파이프라인 전달을 원하는 경우.

사전 요구 사항

  • Node.js 18+ (기본 fetch, FormData, Blob 사용).
  • @BotFather로부터 받은 Telegram Bot Token.
  • 대상 chat_id (사용자가 /start를 클릭하면 자동으로 획득).

구성: telegram_config.json

{
  "bot_token": "YOUR_BOT_TOKEN_HERE",
  "chat_id": "YOUR_CHAT_ID_HERE",
  "bot_name": "Peak Lyrics",
  "bot_username": "PeakLyricsBot",
  "auto_upload": true
}

설정 및 자동 연결

봇 토큰을 사용하여 설정 스크립트를 실행하세요:

node setup_telegram.js <YOUR_BOT_TOKEN>
  1. getMe로 토큰을 확인합니다.
  2. 봇 링크(https://t.me/<bot_username>)를 출력합니다.
  3. 사용자가 Telegram에서 /start를 누를 때까지 기다립니다.
  4. chat_id를 자동으로 캡처하여 telegram_config.json에 저장합니다.
  5. 대기 중인 릴을 즉시 전달합니다.

직접 API 업로드 워크플로

const fs = require('fs');
const path = require('path');

async function sendReelVideo(videoPath, { day, songTitle }, chatId, botToken) {
  const blob = await fs.openAsBlob(videoPath);
  const form = new FormData();
  form.append('chat_id', chatId);
  form.append('video', blob, path.basename(videoPath));
  form.append('caption', `🎬 <b>Day ${day}</b>: <i>${songTitle}</i>\n✨ 1080x1920 Studio Quality\n⏱ Word-by-word synced`);
  form.append('parse_mode', 'HTML');
  form.append('supports_streaming', 'true');
  form.append('width', '1080');
  form.append('height', '1920');

  const res = await fetch(`https://api.telegram.org/bot${botToken}/sendVideo`, {
    method: 'POST',
    body: form
  });
  return await res.json();
}

대화형 봇 리스너 실행

node telegram_bot.js listen

다음 명령어에 응답합니다:

  • /start 또는 /help - 개요 및 메뉴
  • /day1 - Day 1 Reel 전달
  • /day2 - Day 2 Reel 전달
  • /reels - 전체 시리즈 컬렉션 전달
  • /status - 봇 상태 및 채팅 링크 상태

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

관련 스킬