plugins/tutorial-narration-writer/skills/tutorial-narration-writer/SKILL.md
# Tutorial Narration Writer Writes narration scripts for tutorials in Aviz's style - casual, friendly, like sharing with friends. ## When to Use - When you need to write a script/text for a video tutorial - When you have video analysis (from Gemini or manual) and need to turn it into narration - Before sending to speech-generator skill ## Aviz's Style Guide ### Core Principles 1. **Open with "חברים"** - Always start with a warm, direct address 2. **Casual but not sloppy** - Like telling a
npx skillsauth add aviz85/claude-skills-library plugins/tutorial-narration-writer/skills/tutorial-narration-writerInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Writes narration scripts for tutorials in Aviz's style - casual, friendly, like sharing with friends.
Openers:
Connectors:
Enthusiasm:
Pointing:
Explanations:
- 00:03: Creating 5 tasks sequentially
- 00:07: Kanban board updates in real-time
- 00:13: Injecting task from another project
- 00:25: Comment on task triggers action
חברים, תראו קטע סופר מגניב שעובד עם קלוד קוד. אז שבוע שעבר הכניסו ניהול משימות גלובלי. זה אומר שחוץ ממה שאתם רואים כאן, שיש לוח קנבן יפה כזה, בעצם יש תיקייה בתיקיית המשתמש ששם כל המשימות של כל הפרויקטים נמצאות.
מה שאומר חברים, שאני יכול לפתוח פרויקט אחר לגמרי ולבקש להזריק משימות לפרויקט אחר. תחשבו על זה כמו מנהל שמניח משימות נוספות לעובד אחר תוך כדי עבודה, שזה די מדהים.
הנה הניסוי הזה מראה איך זה קורה. כאן יצרתי חמש משימות בפרויקט אחד ואז הלכתי לפרויקט אחר וביקשתי ממנו להתחבר עם הפרויקט הראשון ולהוסיף לו עוד משימה, וזה עובד.
בונוס! שלחתי הערה לפרויקט מתוך הלוח קנבן ואכן הוא ביצע לפי ההערה. וזה עובד.
1. Warm opening (חברים + hook)
└── "חברים, תראו קטע סופר מגניב..."
2. Context (what and when)
└── "אז שבוע שעבר הכניסו..."
3. Technical explanation with analogy
└── "זה אומר ש... תחשבו על זה כמו..."
4. Demo with pointing
└── "הנה... כאן... כמו שרואים..."
5. Proof / ending
└── "וזה עובד" / "בונוס!"
| Video Duration | Narration Length | Characters | |---------------|------------------|------------| | 30-45 seconds | 40-50s narration | ~600-750 | | 60-90 seconds | 70-90s narration | ~1000-1300 | | 2-3 minutes | 2-2.5min narration | ~1800-2200 |
Rule of thumb: ~15 characters per second (including spaces)
Narration text ready to send to speech-generator:
# After getting the text, send to speech-generator:
cd ~/.claude/skills/speech-generator/scripts
npx ts-node generate_speech.ts \
-t "generated text here" \
-o /path/to/narration.mp3
┌─────────────────────────────────┐
│ video-analyzer (Gemini) │
│ → identifies moments + timecodes│
└──────────────┬──────────────────┘
▼
┌─────────────────────────────────┐
│ tutorial-narration-writer │ ◄── YOU ARE HERE
│ → writes text in Aviz's style │
└──────────────┬──────────────────┘
▼
┌─────────────────────────────────┐
│ speech-generator │
│ → generates narration audio │
└─────────────────────────────────┘
tools
Start real-time microphone transcription using ElevenLabs Scribe v2 Realtime. Use when user wants to start live transcription, dictation, or real-time speech capture. Triggers on: 'תתחיל תמלול', 'תמלל בזמן אמת', 'start transcribing', 'live transcribe', 'הקלט מה שאני אומר'. After starting, tell user they can say 'אוקי זה מספיק בוא נעצור את התמלול' to stop, or use /live-transcribe-stop.
tools
Stop a running real-time transcription. Use when user wants to stop/end live transcription. Triggers on: 'עצור תמלול', 'תעצור את התמלול', 'stop transcribing', 'end transcription', 'תפסיק להקליט'.
testing
Read the latest real-time transcription. Use when user asks to see, read, or show a transcription that was captured via live-transcribe. Triggers on: 'תקריא תמלול', 'מה תמללתי', 'התמלול האחרון', 'show transcription', 'what did I say', 'read the transcript', 'מה נכתב בתמלול', 'תראה לי את התמלול'. Also use when user references transcription content without being explicit — e.g. 'summarize what I said', 'translate the transcription'.
development
Fetch X (Twitter) bookmarks via the official X API v2. Downloads recent bookmarks with text, images, and videos into a local folder. Use whenever user asks to grab/download/export their X bookmarks, save bookmarked tweets, or pull recent saved posts from X/Twitter. Uses OAuth 2.0 user-context auth (one-time browser consent, then refresh-token forever).