Ancient Rap Battle
Make an AI rap-battle short between two historical rivals, end to end: 16 sourced lines per side written for you, the song made in Suno, the look in Midjourney, video segments generated with...
- What
- Make an AI rap-battle short between two historical rivals, end to end: 16 sourced lines per side written for you, the song made in Suno, the look in Midjourney, video segments generated with...
- Cost
- Free
- Needs
- Before you start: read this whole install prompt, tell me in a few lines what this skill does and what installing it involves, and wait for my go-ahead before you do anything else.
- Install
- Copy the installer prompt below into your Muse — your agent does the rest.
Make an AI rap-battle short between two historical rivals, end to end: 16 sourced lines per side written for you, the song made in Suno, the look in Midjourney, video segments generated with Seedance 2.5 on the Jimeng website with lyric timing written to 0.01 seconds so the lip-sync lands in one pass, then local aligning, assembly, gold subtitles with a source note under every line, covers and release copy. An optional MiniMax H3 API route covers batch generation.
Version:
Install
Copy the install package below, then paste it into Muse📌 Pinned version: commit 2a9219aThe install prompt below already includes the vetting steps: your agent follows the community checklist before installing anything with executable code. Want more?
Before you start: read this whole install prompt, tell me in a few lines what this skill does and what installing it involves, and wait for my go-ahead before you do anything else. Prerequisites: none for the install itself: no account, no API key, no paid service, and nothing else to install first. Using the skill afterwards is another matter, and SKILL.md states it up front: you need your own Suno account (to make the song), your own Midjourney account (for the 9 character and scene reference images), and a Jimeng membership (Seedance 2.5 on the Jimeng website, charged in credits) for the video segments; songs made on Suno's free tier cannot be used commercially, so a paid Suno plan is needed before monetizing an episode. The optional MiniMax H3 API route instead needs a MiniMax API key, supplied only through the environment variable MINIMAX_API_KEY, and is billed per second of video (the script prices 768P at $0.08/s and 2K at $0.13/s, and prints an estimate before submitting anything). Locally, use time also needs Python 3.9 or newer, ffmpeg with the rubberband filter, and the Python packages demucs, faster-whisper, pypinyin, soundfile, scipy, numpy and pillow (about 1-2 GB with PyTorch; the demucs and whisper models download on first use, about 2 GB per the README). Do not install any of that during this install: it is my decision, later, when I actually make an episode. Install "ancient-rap-battle" for me. It is an end-to-end playbook, written in Chinese, that turns two historical rivals (Zhuge Liang vs Sima Yi, Yue Fei vs Qin Hui, and the like) into an AI rap-battle short video of about 90 seconds, 16:9, 2K: it writes 16 lines per side with a sourced historical note under every line, walks me through making the song in Suno and the look in Midjourney, builds per-segment packs for Seedance 2.5 on the Jimeng website with the lyric timing written to 0.01 seconds so the lip-sync lands in one pass, then aligns, assembles, subtitles, packages, covers and drafts the release copy locally. Repository: https://github.com/10291124jcjc-dotcom/ancient-rap-battle (the skill is the whole repository at the pinned commit: SKILL.md at the root, with scripts/, references/, examples/ and assets/) Pinned version: install the code at commit 2a9219ae9dee0b22ed676bdd34448891e361629d exactly. Do not substitute a newer version. If this commit is unreachable, stop and tell me. 1. Clone https://github.com/10291124jcjc-dotcom/ancient-rap-battle into a temporary folder, check out commit 2a9219ae9dee0b22ed676bdd34448891e361629d, and copy the whole repository folder (everything except the .git folder) from that checkout. Then compare every file with the fingerprints recorded for this listing on 2026-10-19: [FINGERPRINTS] - .gitignore: SHA-256 85c818e737a8bf7b4d73465102c3e5e86299f0e5b7e9130c08745208c5ecaa8b - LICENSE: SHA-256 c9ea59d28751414cb9b96d311ceb4a28b67f0b2b455ccec0d185fcee3c172e7b - README.md: SHA-256 ef134ea60a0058a1fa1e1daa79aa477b895b50a8e68aed1d7b9e4fa3c95eb087 - SKILL.md: SHA-256 d32d846875cb641000d8c2b721475d0cf21bfc506e81fc7757ddccd697cea483 - assets/cover-16x9.jpg: SHA-256 d7de767201546b12a23f8b33008d28bfb45e00b42e702525af60ea97b36c3bcf - assets/cover.jpg: SHA-256 62101d31bd9fde10edeaefa8cfef732198165ec184fe5fcf8b4be9fcc40b96b2 - assets/demo-github.mp4: SHA-256 3318276b94c109381747c4b3838676d9a32b87189e3e626179aa05381b483fc9 - assets/frame-1.jpg: SHA-256 aad33c500b75418118b51438395592eaa7263adcea93335ae832d570046fbda6 - assets/frame-2.jpg: SHA-256 0fc0fb72844c89c0b0fc16acd36ea60ac3685978fb19a9aa670f79dfd107ae75 - examples/zhouyu-vs-zhugeliang/episode.json: SHA-256 d8fba4346b26c7cc51323ffce2da46a3aab6bb39c55ae2b0e8615d4c397c5071 - examples/zhugeliang-vs-simayi/episode.json: SHA-256 433bf7f38d3498a020b96fb9ae8a92ecf1e8435517b5d15290d8a9eda2ea40a1 - references/lyrics-guide.md: SHA-256 968c384de71eff26638364805f61ec8bd3cdcdd1e507b7cf9af9923a1b5e5021 - references/midjourney.md: SHA-256 4cd2f23cca7195180cd936c3412d7129e88c0341a105596bdfc5b65bf479e540 - references/pitfalls.md: SHA-256 92d0aa7b48f53bd1df2c6da358bad7db416b3edfa7e73ccd33763f35d17aefad - references/seedance.md: SHA-256 30359c1a739e445653011642f2c53e122ab71ca071f3a8f3594ecdc3aed0c4ad - references/shot-template.md: SHA-256 b35855ad20aba3aa2826f22ab865791a970c3c56e8f345aca7503eaa056f36c8 - references/suno.md: SHA-256 827a3c0db4623bfb3c747bd8efbb9ed3bcbe7302c28f151445ecce93dce8ee35 - scripts/analyze_song.py: SHA-256 f4c86bc189e779b3ae5117dbaacc4e0978e2542cb8e723b29cc599a7ab46508f - scripts/assemble.py: SHA-256 67b5b7177fe53e066a738378f3995cb0cc04387cb5bca67a48e037e7d7243938 - scripts/clean_vocal.py: SHA-256 741a1d03751c70ac3ff71575e5dcc0001329d0e1da46254101ecd8244d39fdf8 - scripts/common.py: SHA-256 d1c47d13e5bd1ed7cf14522b88cdcffc0956381b26a2244c1f6d87aa60969da4 - scripts/cover.py: SHA-256 528a4ce98c312486d87227d8489cbf9ddeaff58a933a5d500b0b5e09e9be076e - scripts/h3run.py: SHA-256 67585082990165ebbff3121f18758e3f8b462ce3d98a5edf0a4c324c50ba1e9c - scripts/lipcheck.py: SHA-256 18dfee8ac3572e8540184297a81f503d351e267b0cf916c166d3dabca994e233 - scripts/make_clips.py: SHA-256 af2390a188845b6ccafc7d308b4ad8f6ffd933f9a8dc058e062e596cc9207a1f - scripts/package.py: SHA-256 aa01c56b58d10107ae335750b12e3b810b6d541d5179d522c9192606ba1616b5 - scripts/qa.py: SHA-256 75b786e51b4f103e176a6232404480bc129dc9973715952f3c0ac770e3d85c8f - scripts/retrim.py: SHA-256 2a0a6c1330d3b5a51b58247e710f574055477812b831bdcfcad7d3bc33f5c62d - scripts/seedance_align.py: SHA-256 dc021bdd7f3ca2731e06d2e2f57650d65d8c1931731aa5cc78b1f7eb751de45c - scripts/seedance_assemble.py: SHA-256 075254f6e9e0837005c4f3c344a48a2f1f7e6547e6e3ae0e051ba9ad53a2faa5 - scripts/seedance_packs.py: SHA-256 7aece884d982f5474291c1e958ea1ada63c9b6593925dfde35ab8f0e290da14f - scripts/setup_check.py: SHA-256 f9ccd1334826c9fef19ad6dc8ff9d0165e73334c86396e27f720e8dcb4664b60 If a file does not match, it changed since the listing was prepared: do not install it yet, tell me what you found and let me decide. 2. Read SKILL.md in full and tell me in plain words: what the skill does when used, which services it connects to, whether it reads or sends any personal information or keys, and anything that seems unusual. Stop on any red flag and tell me before going further. Confirm these points from the files: - The skill is the whole repository: 32 files, 10,450,282 bytes in total, most of it demo assets (assets/demo-github.mp4 alone is 9,381,327 bytes, plus cover and frame JPGs). The working parts are SKILL.md (6,946 bytes), 15 Python scripts in scripts/ (local ffmpeg, demucs and faster-whisper processing, plus the optional MiniMax client h3run.py), 6 guides in references/ (lyrics, Suno, Midjourney, Seedance, shot template, pitfalls), and 2 worked examples in examples/ (one episode.json per route). - Nothing is sent anywhere during installation itself; the only download at install time is the repository from GitHub at the pinned commit. No account, API key or telemetry is involved in installing. - At use time, most of the pipeline runs locally on my machine: the scripts split and clean the vocal (demucs), take word timings (faster-whisper), trim, build the Seedance packs, align each generated segment back onto the music, assemble, burn the gold subtitles and source notes with Pillow-drawn text, grade, and make the 3:4 and 16:9 covers. Each episode lives in its own folder I create (episode.json, song, refs, work, preview, final), outside the skill folder. - Three services are used by me, in my own browser, with my own accounts, and the skill only prepares what I paste or upload there: Suno (I generate side A, then Extend side B, and download the MP3), Midjourney (I generate the 9 reference images from prompts the skill writes), and the Jimeng website (I upload each pack's images and cleaned vocal audio, paste its prompt, generate with Seedance 2.5, download the clip back, and upscale the same take to 2K). So my lyrics, reference images and vocal audio go to those services at that point, by my own hand: that is disclosed here before it happens. - The optional H3 route is the one place a script itself talks to a third party: scripts/h3run.py uploads my reference images and cut vocal audio to MiniMax at https://api.minimax.io (file upload, then video generation), using the key from the MINIMAX_API_KEY environment variable as a Bearer token, polls the task, and downloads the finished clip. The key is read from the environment only and is never written to a file. The script prints a cost estimate first and submits only after agreement (--estimate, --dry-run available). MINIMAX_API_BASE can override the endpoint; flag any non-default value to me. - Two smaller use-time downloads, both into ~/.cache/ancient-rap-battle/: scripts/common.py downloads two SIL Open Font License fonts from the official Google Fonts GitHub repository (github.com/google/fonts) the first time packaging or cover work needs them and no matching local font exists, and the optional scripts/lipcheck.py downloads the MediaPipe face-landmarker model from storage.googleapis.com on first use. The demucs and faster-whisper libraries likewise fetch their models on first use (about 2 GB per the README). - Content rules built into the skill: ancient figures only - no modern political figures, no living real people, and faces must not resemble any real person or actor; it refuses requests in that area and suggests an ancient pair instead, refuses removing other people's watermarks or re-uploading their work, keeps the on-screen "AI-generated, for entertainment only" label, and reminds me every episode to tick the platform AI-content disclosure, to check the historical notes against the sources, and that free-tier Suno songs are not commercial. SKILL.md also says to speak Chinese with me throughout an episode. 3. When I say "yes, install", install it as a skill: copy the whole repository folder (everything except .git) into the agent's skills directory, in a folder named "ancient-rap-battle". That is exactly the upstream route (git clone into ~/.claude/skills/ancient-rap-battle); either route is fine as long as every file matches its fingerprint. 4. Verify with no network calls: frontmatter valid, files in place. 5. Report what was installed, where, and what I still need to do myself (for example: provide my own Suno, Midjourney and Jimeng accounts and, only if I want the H3 route, my own MiniMax API key in the MINIMAX_API_KEY environment variable; install the local Python and ffmpeg tooling myself, only when I am ready to make an episode; and choose the two rivals myself. Using the skill is a separate step that only starts when I ask for it, and every use-time send and download disclosed above happens only then, most of them by my own hand in my own browser). GitHub is optional: if I have a GitHub account or the gh CLI, you may use it; otherwise public access is fine. Never require it unless it's in the prerequisites above. Rules: don't touch anything outside the temp folder and the install target. If anything looks off, stop and ask me.
Saved to your recent installs. Find it anytime on /connect.
Questions
How do I install a build?
Every product page includes a copy-paste install prompt. Paste it into your Muse and it sets the build up for you — no manual configuration.
Where does my money go?
Straight to the seller. Skill Harbor never processes payments: checkout happens on the seller’s own page, usually Stripe.
What does the ✓ next to a creator’s name mean?
It means we confirmed the identity of the person behind the listing. It says nothing about the code itself — always check a build before installing it.