
transcribe
by grandamenium
SKILL.md
name: transcribe description: Transcribe specific video URL(s). Use when you have one or more TikTok video URLs to process. user_invocable: true
Transcribe Specific Videos
This command processes specific TikTok videos by URL - no need to scrape an entire profile.
Workflow
Step 1: Get Video URLs
Ask the user:
Paste the TikTok video URL(s) you want to transcribe.
You can paste one URL or multiple URLs (one per line):
https://www.tiktok.com/@username/video/123456789 https://www.tiktok.com/@username/video/987654321
Parse the URLs from the user's message. Extract any URLs that match TikTok video patterns:
https://www.tiktok.com/@username/video/IDhttps://tiktok.com/@username/video/IDhttps://vm.tiktok.com/SHORTCODE
Step 2: Verify Environment
Check that the project is set up:
cd /path/to/project
source .venv/bin/activate 2>/dev/null || echo "venv not found"
If venv doesn't exist, tell user to run /start first.
Step 3: Process Each Video
For each URL provided, run:
source .venv/bin/activate && python -c "
from short_form_scraper.scraper.tiktok import TikTokScraper
from short_form_scraper.downloader.video import VideoDownloader
from short_form_scraper.transcriber.whisper import WhisperTranscriber
from pathlib import Path
# Initialize
scraper = TikTokScraper('https://www.tiktok.com/@placeholder') # Just for metadata fetching
downloader = VideoDownloader()
transcriber = WhisperTranscriber()
# Create directories
Path('transcripts').mkdir(exist_ok=True)
Path('state').mkdir(exist_ok=True)
# Video URL
video_url = 'VIDEO_URL_HERE'
print(f'Processing: {video_url}')
# Get metadata
metadata = scraper.get_single_video_metadata(video_url)
print(f'Title: {metadata.title}')
print(f'Duration: {metadata.duration}s')
# Download
audio_path = downloader.download(metadata.url, Path(f'state/audio_{metadata.id}'))
print(f'Downloaded audio: {audio_path}')
# Transcribe
transcript = transcriber.transcribe(audio_path)
print(f'Transcribed: {len(transcript)} characters')
# Save
transcript_file = Path('transcripts') / f'{metadata.id}.txt'
content = f'''Video ID: {metadata.id}
Title: {metadata.title}
URL: {metadata.url}
Duration: {metadata.duration}s
--- TRANSCRIPT ---
{transcript}
'''
transcript_file.write_text(content)
print(f'Saved: {transcript_file}')
# Cleanup audio
audio_path.unlink()
print('Done!')
"
Run this for each URL the user provided.
Step 4: Summarize Transcripts (Claude Code)
After transcripts are generated, YOU (Claude Code) will:
-
Read each new transcript file from
transcripts/ -
Analyze and extract:
- Topic: 2-4 word kebab-case topic name
- Summary: One-sentence summary
- Key Tips: 3-5 actionable bullet points
- Details: Additional context
-
Create summary files in
summaries/{topic}/{slugified-title}.md:IMPORTANT: Filename from Video Title
- Extract the video title from the yt-dlp metadata (stored in transcript header as "Title: ...")
- Convert to kebab-case slug: lowercase, spaces to dashes, remove special chars
- Example: "How to Use Context Windows" →
how-to-use-context-windows.md - Example: "Claude Code Tips & Tricks!" →
claude-code-tips-tricks.md
--- video_id: {id} title: {title} url: {url} topic: {topic} --- # {Title} ## Summary {one-sentence summary} ## Key Tips - {tip 1} - {tip 2} - {tip 3} ## Details {additional context} ## Full Transcript {original transcript} -
Update INDEX.md with the new summaries
Step 5: Show Results
Display:
- Video title and URL
- Transcript location
- Summary location
- Key tips extracted
Example
User: /transcribe
Claude: What TikTok video URLs would you like to transcribe?
User:
https://www.tiktok.com/@agentic.james/video/7597629199486029070
https://www.tiktok.com/@agentic.james/video/7597614123362323767
Claude: [Processes each video, creates transcripts and summaries]
Handling Multiple URLs
When multiple URLs are provided:
- Process them sequentially
- Report progress: "[1/3] Processing..."
- Continue even if one fails
- At the end, report success/failure for each
Score
Total Score
Based on repository quality metrics
SKILL.mdファイルが含まれている
ライセンスが設定されている
100文字以上の説明がある
GitHub Stars 100以上
3ヶ月以内に更新がある
10回以上フォークされている
オープンIssueが50未満
プログラミング言語が設定されている
1つ以上のタグが設定されている
Reviews
Reviews coming soon