Communitygithub.com

finansial-video-script

Menulis, memvalidasi, dan merancang naskah video keuangan pribadi berbahasa Indonesia untuk channel faceless (narasi suara + gambar/halaman).

finansial-video-script란 무엇인가요?

Skill ini dirancang untuk membantu AI agent (seperti Claude Code) menghasilkan naskah video keuangan pribadi bergaya faceless dalam tiga format: A (cerita bertokoh), B (panduan langkah bernomor), dan S (short-form untuk YouTube Shorts/TikTok 30–60 detik). Alur kerjanya mencakup pembuatan beat sheet, penulisan scene per beat, lint otomatis untuk struktur, angka, klaim tanpa sumber, disclaimer, dan kemiripan dengan referensi; pemetaan halaman visual otomatis (map-pages); serta ekspor ke naskah Markdown, prompts gambar AI, dan subtitle SRT. Skill ini juga mendukung generation aset gambar full-screen menggunakan Pollinations Flux dan render video MP4 sinematik dengan TTS Bahasa Indonesia. Cocok untuk pengguna yang meminta script video YouTube, Shorts, atau TikTok tentang menabung, uang harian, atau kebiasaan finansial, serta membutuhkan storyboard, beat sheet, dan pengecekan naskah otomatis.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Ferliand/finance-video-skill/tree/HEAD/skills/finance-video-script

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

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

문서

Finance Video Script

Agen (kamu) yang menulis naskah. Skrip scripts/vengine_cli.py menyiapkan kerangka beat, menerima scene per beat, dan menjalankan lint terhadap panduan gaya.

Cakupan

  • Termasuk: brief (termasuk pilihan style visual) → beat sheet → naskah per beat (scenes.json) → lint → pemetaan halaman visual (map-pages) → ekspor (naskah.md, prompts.json, naskah.srt) → generate aset gambar AI full-screen (generate-images) → render video MP4 sinematik lengkap dengan TTS Bahasa Indonesia (render).
  • Belum termasuk: upload otomatis ke platform.

Persiapan

  • Python 3.10+ dengan pip install pydantic pyyaml pillow edge-tts imageio-ffmpeg, atau jalankan lewat uv run (dependensi otomatis).
  • <skill-dir> = folder tempat SKILL.md ini berada. Semua perintah: python <skill-dir>/scripts/vengine_cli.py <perintah> ... (di Windows boleh py menggantikan python).
  • Jalankan dari folder kerja pengguna, bukan dari dalam folder skill. Proyek disimpan di ./video-projects/<slug>/ (ubah dengan --home DIR atau variabel VENGINE_HOME).

Alur kerja

  1. Kumpulkan brief. Tanyakan yang belum jelas: topik, format (A = cerita, B = panduan langkah, S = short-form 30–60 detik), durasi, style visual (preset: claymation, flat-vector, 3d-pixar, anime-ghibli, cinematic-realistic, watercolor, comic-book, dark-moody, atau deskripsi custom bebas), audiens, angka_kunci, dan khusus format A tokoh (protagonis, pembanding, figuran). Tanyakan juga ajakan komentar/subscribe dan instrumen keuangan yang boleh disebut. Jangan mengarang angka kunci; angka berasal dari pengguna atau dari hitungan yang kamu tulis rumusnya.
  2. Baca references/panduan-naskah.md sebelum menulis apa pun. Itu sumber kebenaran gaya, teknik, dan aturan angka/klaim.
  3. Buat proyek. init <slug> --topic "..." --format A|B|S --minutes N --style <style>, isi brief.yaml bersama pengguna, lalu build <slug> (membuat story bible dan beat sheet).
  4. Tulis per beat (ulangi sampai semua beat selesai):
    1. beat <slug> menampilkan tugas untuk beat berikutnya: brief, tokoh, tiga scene sebelumnya, poin isi, target kata/scene, dan syarat tag.
    2. Tulis JSON scene ke video-projects/<slug>/draft/<beat>.json. Isi image_prompt berbahasa Inggris untuk setiap scene (karena seluruh scene dirender full-screen).
    3. add <slug> --beat <id> --file video-projects/<slug>/draft/<id>.json.
    4. Jika ada error, beat tidak disimpan. Perbaiki JSON sesuai pesan lalu add lagi. Jika beat perlu ditulis ulang setelah tersimpan, tambahkan --replace. Jangan memakai --force kecuali pengguna meminta.
  5. Periksa. status <slug> untuk progres, lint <slug> untuk pemeriksaan penuh. Error harus nol sebelum naskah ditunjukkan sebagai final; warn dibaca dan diputuskan bersama pengguna.
  6. Petakan Halaman Visual. Jalankan map-pages <slug> untuk memetakan page_type dan props secara otomatis mengikuti katalog references/design-video.md.
  7. Ekspor. export <slug> menghasilkan:
    • video-projects/<slug>/out/naskah.md (naskah kanonik per babak)
    • video-projects/<slug>/out/prompts.json (prompt ilustrasi full-screen siap generate untuk seluruh scene lengkap dengan karakter & style)
    • video-projects/<slug>/out/naskah.srt (subtitle ber-timestamp)
  8. Generate Aset Gambar AI Full-Screen. Jalankan generate-images <slug> (bisa tambah --style <style>, --scene <nomor> untuk mengulang satu scene, atau --force untuk menimpa semua) untuk mengunduh gambar AI full-screen (Pollinations Flux) ke video-projects/<slug>/out/images/scene_XXX.png.
  9. Render Video MP4 (opsional/jika diminta). Jalankan render <slug> (bisa tambah --voice id-ID-ArdiNeural atau id-ID-GadisNeural, serta --fps 12 untuk gaya stop-motion claymation) untuk menggabungkan gambar latar full-screen (dengan gerak stop-motion / Ken Burns, vignette, overlay glassmorphism angka/punchline, dan subtitle karaoke), audio voiceover Bahasa Indonesia, menjadi video-projects/<slug>/out/video.mp4.

Format JSON scene

{"scenes": [
  {"narration": "Strategi kesatu, uang harus dipisah di awal.",
   "tags": ["SECTION"], "image_prompt": "clean modern workspace with warm morning sunlight beams", "characters": [], "mood": "warm", "notes": ""},
  {"narration": "Kalau setiap hari kamu menyisihkan dua puluh ribu rupiah, dalam sebulan terkumpul enam ratus ribu rupiah.",
   "tags": ["CALC"], "image_prompt": "neatly stacked glass savings jars with glowing coins on wooden desk",
   "motion_prompt": "Stop-motion claymation, slow subtle push-in camera, soft ambient light flicker", "characters": [], "mood": "neutral",
   "notes": "20.000 x 30 = 600.000"}
]}
  • narration: siap dibacakan, 15–35 kata. Scene PUNCH dan SECTION maksimal 14 kata dan berdiri sendiri.
  • tags: PUNCH, BRIDGE, SECTION, CTA, NUMBER, CALC. Syarat per beat ada di tugas dari beat.
  • image_prompt: bahasa Inggris, tanpa teks atau angka di dalam gambar; direkomendasikan diisi pada setiap scene agar latar full-screen sesuai konteks (jika null, engine otomatis meracik prompt latar kontekstual).
  • end_image_prompt (opsional): bahasa Inggris untuk End Frame jika scene memiliki transisi perubahan objek/pencahayaan (mis. sakelar lampu ditekan dari gelap ke terang; di-generate dengan seed yang sama).
  • motion_prompt (opsional): instruksi gerak per scene (mis. zoom_flicker, bobbing, switch_light untuk animasi stop-motion claymation).
  • characters: id tokoh dari story bible (mis. protagonis), bukan nama.
  • mood: tense, neutral, warm, uplift, melancholy.
  • notes: wajib berisi rumus A x B = C untuk scene CALC/NUMBER; tuliskan juga sumber klaim.

Aturan yang tidak boleh dilanggar

  • Tulis orisinal. Jangan menyalin atau memparafrasekan video atau transkrip referensi; hanya struktur dan teknik yang dipakai.
  • Hitung ulang semua angka. Timeline menuju angka tujuan harus eksplisit dan jujur.
  • Tanpa statistik tanpa sumber ("90% orang..."), tanpa janji hasil. Instrumen keuangan hanya sebagai contoh dan wajib disertai kalimat disclaimer.
  • Konten fiksi (format A) diberi label "cerita ilustrasi".
  • Jangan mengubah beats.json atau scenes.json dengan tangan; gunakan add, supaya validasi dan penomoran ulang scene tetap berjalan.

Pemecahan masalah

  • Modul 'pydantic' belum terpasang → pip install pydantic pyyaml atau pakai uv run.
  • Proyek ... tidak ditemukan → periksa folder kerja; proyek berada di ./video-projects/ pada folder tempat perintah dijalankan, atau di --home.
  • Lint mirip_referensi → letakkan transkrip referensi sebagai .txt di ./references/ (atau --refs DIR); tulis ulang bagian yang dilaporkan dengan kata-katamu sendiri.
  • Lint total_kata → tambah atau kurangi scene di beat yang menyimpang jauh dari target (lihat status), lalu add --replace.

관련 스킬