Not in the top 1,000 by GitHub stars
EGSECDA/vocaloid-style-mv-pipeline
Production pipeline and Claude Code skill for Vocaloid-style hand-drawn (手書き) lyric music videos: deterministic Canvas2D/WebGL2 animation engine, JIZURA lyric motion, AI illustration, Blender toon 3D, headless rendering to 16:9 and 9:16.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/vocaloid-style-mv/SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 13b380dab077
No earlier version was observed for comparison.
Heat
7.1- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- vocaloid-style-mv
skills/vocaloid-style-mv
How it works
vocaloid-style-mv
When your agent uses it
Make an original animated music video (MV / PV) for a song from its audio file plus lyrics, in the Vocaloid / J-pop lyric-video tradition: 手書き/tegaki (V家手书, 手描きMV, ボカロPV), 文字PV and kinetic typography (リリックモーション, リリックビデオ, 歌詞動画, 歌词视频, 动态歌词), anime-illustration MVs with an original character — for any mood, from dark ballads to bright upbeat summer pop. Renders to MP4 with a deterministic Canvas2D/WebGL2 engine in a headless browser: JIZURA lyric motion, AI-generated art, optional Blender toon 3D, beat-locked editing, 9:16 vertical/Shorts version. Use it whenever the user wants a music video, MV, PV, lyric video or beat-synced animation for a song, e.g. "make an MV for my song", "turn this track into a lyric video", "给这首歌做个MV/PV", "做个V家手书", "この曲のMVを作って", "ボカロPV作って", "縦型ショートも" — even if they only give a .wav/.mp3 and say "make a cool video for it". Not for editing existing footage or clip compilations.
What it loads into context
Frontmatter
313 tokensAlways available to the agent
SKILL.md
3,142 tokensWhen the skill is activated
Reference documents
57,563 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What you have
- Requirements
- The workflow (phases, deliverables, checkpoints)
- Principles that make it look like a showreel (why they matter)
- Working style
- References (read when the phase needs it)
Scripts executed separately
scripts/check_env.pyscripts/new_project.pytemplate/blender/helpers_selftest.pytemplate/blender/probe_scene.pytemplate/blender/shots/_shared.pytemplate/blender/shots/shotA_street.pytemplate/blender/shots/shotB_crossing.pytemplate/demo/make_demo_song.pytemplate/engine/core/assets.jstemplate/engine/core/draw.jstemplate/engine/core/gl.jstemplate/engine/core/main.jstemplate/engine/core/trans.jstemplate/engine/core/util.jstemplate/engine/fonts/fonts.jstemplate/engine/scenes/dark.jstemplate/engine/scenes/glass.jstemplate/engine/scenes/intro.jstemplate/engine/scenes/memory.jstemplate/engine/scenes/meta.jstemplate/engine/scenes/night.jstemplate/engine/scenes/scenes.jstemplate/engine/scenes/typo.jstemplate/engine/timeline.jstemplate/engine/vertical.jstemplate/jizura/app/jizura_adapter.jstemplate/package.jsontemplate/setup.ps1template/setup.shtemplate/tools/alpha_matte.pytemplate/tools/analyze_audio.pytemplate/tools/blender_common.pytemplate/tools/blender_run.pytemplate/tools/build_jizura_bundle.mjstemplate/tools/fetch_fonts.pytemplate/tools/gigafile_upload.mjstemplate/tools/imagegen.pytemplate/tools/jizura_parts.mjstemplate/tools/jizura_probe.mjstemplate/tools/jizura_serve.mjstemplate/tools/jz_cuts_at.mjstemplate/tools/kit_env.mjstemplate/tools/kit_env.pytemplate/tools/preview_style_fx.mjstemplate/tools/render_final.mjstemplate/tools/render_final.ps1template/tools/render_frames.mjstemplate/tools/review_sheets.pytemplate/tools/stills.mjstemplate/tools/style_palette_sheet.pytemplate/tools/transcribe_align_mms.pytemplate/tools/transcribe_kana.pytemplate/tools/transcribe_lines.pytemplate/tools/transcribe_onset_probe.pytemplate/tools/transcribe_prep.pytemplate/tools/transcribe_reconcile.pytemplate/tools/transcribe_score.pytemplate/tools/transcribe_separate.pytemplate/tools/transcribe_translation.pytemplate/tools/transcribe_vocal_activity.pytemplate/tools/transcribe_whisper.pytemplate/tools/verify_style_snippets.mjs
Files
SKILL.mdcore12,262 bytesSKILL.mdcore12,262 bytesreferences/01-workflow.mddoc11,332 bytesreferences/02-creative-direction.mddoc16,620 bytesreferences/03-audio-and-lyrics.mddoc24,955 bytesreferences/04-asset-generation.mddoc20,210 bytesreferences/05-engine.mddoc33,131 bytesreferences/06-jizura.mddoc13,636 bytesreferences/07-blender-3d.mddoc18,550 bytesreferences/08-render-and-delivery.mddoc15,572 bytesreferences/09-qa-and-lessons.mddoc7,997 bytesreferences/effect-cookbook.mddoc21,089 bytesscripts/check_env.pyruns23,404 bytesscripts/new_project.pyruns13,286 bytestemplate/.gitignoreasset1,595 bytestemplate/PROJECT_README.mddoc12,593 bytestemplate/analysis/.gitkeepasset0 bytestemplate/assets/bg/.gitkeepasset0 bytestemplate/assets/char/.gitkeepasset0 bytestemplate/assets/style/luts/P1_oumagatoki.pngasset219 bytestemplate/assets/style/luts/P1_oumagatoki_duo.pngasset184 bytestemplate/assets/style/luts/P2_zansho.pngasset237 bytestemplate/assets/style/luts/P2_zansho_duo.pngasset176 bytestemplate/assets/style/luts/P3_fumikiri.pngasset118 bytestemplate/assets/style/luts/P3_fumikiri_duo.pngasset190 bytestemplate/assets/style/luts/P4_hotarubi.pngasset230 bytestemplate/assets/style/luts/P4_hotarubi_duo.pngasset174 bytestemplate/assets/style/luts/P5_taishoku.pngasset182 bytestemplate/assets/style/luts/P5_taishoku_duo.pngasset174 bytestemplate/assets/style/palettes.jsonasset5,715 bytestemplate/audio/.gitkeepasset0 bytestemplate/blender/helpers_selftest.pyruns4,144 bytestemplate/blender/probe_scene.pyruns21,019 bytestemplate/blender/shots/_shared.pyruns32,021 bytestemplate/blender/shots/shotA_street.pyruns39,524 bytestemplate/blender/shots/shotB_crossing.pyruns33,520 bytestemplate/demo/README.mddoc2,228 bytestemplate/demo/lyrics_demo.lrcasset471 bytestemplate/demo/make_demo_song.pyruns18,932 bytestemplate/demo/sections_demo.jsonasset1,030 bytestemplate/engine/core/assets.jsruns2,816 bytestemplate/engine/core/draw.jsruns17,049 bytestemplate/engine/core/gl.jsruns13,512 bytestemplate/engine/core/main.jsruns11,378 bytestemplate/engine/core/trans.jsruns6,701 bytestemplate/engine/core/util.jsruns6,248 bytestemplate/engine/fonts/OFL_delagothicone.txtdoc4,392 bytestemplate/engine/fonts/OFL_dotgothic16.txtdoc4,399 bytestemplate/engine/fonts/OFL_kaiseitokumin.txtdoc4,383 bytestemplate/engine/fonts/OFL_kleeone.txtdoc4,386 bytestemplate/engine/fonts/OFL_mplusrounded1c.txtdoc4,350 bytestemplate/engine/fonts/OFL_notosansjp.txtdoc4,388 bytestemplate/engine/fonts/OFL_notosanssc.txtdoc4,388 bytestemplate/engine/fonts/OFL_notoserifjp.txtdoc4,350 bytestemplate/engine/fonts/OFL_notoserifsc.txtdoc4,350 bytestemplate/engine/fonts/OFL_rampartone.txtdoc4,391 bytestemplate/engine/fonts/OFL_reggaeone.txtdoc4,390 bytestemplate/engine/fonts/OFL_shipporiminchob1.txtdoc4,399 bytestemplate/engine/fonts/OFL_yujisyuku.txtdoc4,386 bytestemplate/engine/fonts/OFL_zenkakugothicnew.txtdoc4,401 bytestemplate/engine/fonts/OFL_zenoldmincho.txtdoc4,399 bytestemplate/engine/fonts/fonts.cssasset5,761 bytestemplate/engine/fonts/fonts.jsruns2,204 bytestemplate/engine/fonts/manifest.jsonasset5,818 bytestemplate/engine/index.htmlasset1,726 bytestemplate/engine/scenes/dark.jsruns62,194 bytestemplate/engine/scenes/glass.jsruns67,471 bytestemplate/engine/scenes/intro.jsruns76,157 bytestemplate/engine/scenes/memory.jsruns74,424 bytestemplate/engine/scenes/meta.jsruns55,290 bytestemplate/engine/scenes/night.jsruns61,836 bytestemplate/engine/scenes/scenes.jsruns6,666 bytestemplate/engine/scenes/typo.jsruns65,319 bytestemplate/engine/timeline.jsruns28,972 bytestemplate/engine/vertical.htmlasset1,775 bytestemplate/engine/vertical.jsruns8,167 bytestemplate/jizura/app/engine.htmlasset1,749 bytestemplate/jizura/app/host_direct.htmlasset3,832 bytestemplate/jizura/app/host_iframe.htmlasset2,111 bytestemplate/jizura/app/jizura_adapter.jsruns6,586 bytestemplate/package.jsonruns1,962 bytestemplate/requirements.txtdoc2,304 bytestemplate/setup.ps1runs12,917 bytestemplate/setup.shruns11,647 bytestemplate/tools/alpha_matte.pyruns25,099 bytestemplate/tools/analyze_audio.pyruns90,765 bytestemplate/tools/blender_common.pyruns60,793 bytestemplate/tools/blender_run.pyruns2,549 bytestemplate/tools/build_jizura_bundle.mjsruns4,191 bytestemplate/tools/fetch_fonts.pyruns5,683 bytestemplate/tools/gigafile_upload.mjsruns5,291 bytestemplate/tools/imagegen.pyruns12,081 bytestemplate/tools/jizura_parts.mjsruns1,899 bytestemplate/tools/jizura_probe.mjsruns3,926 bytestemplate/tools/jizura_serve.mjsruns3,936 bytestemplate/tools/jz_cuts_at.mjsruns3,018 bytestemplate/tools/kit_env.mjsruns5,999 bytestemplate/tools/kit_env.pyruns11,171 bytestemplate/tools/preview_style_fx.mjsruns10,316 bytestemplate/tools/render_final.mjsruns7,478 bytestemplate/tools/render_final.ps1runs375 bytestemplate/tools/render_frames.mjsruns30,915 bytestemplate/tools/review_sheets.pyruns4,023 bytestemplate/tools/stills.mjsruns4,964 bytestemplate/tools/style_palette_sheet.pyruns14,868 bytestemplate/tools/transcribe_align_mms.pyruns6,017 bytestemplate/tools/transcribe_kana.pyruns5,594 bytestemplate/tools/transcribe_lines.pyruns14,986 bytestemplate/tools/transcribe_onset_probe.pyruns4,577 bytestemplate/tools/transcribe_prep.pyruns3,135 bytestemplate/tools/transcribe_reconcile.pyruns16,308 bytestemplate/tools/transcribe_score.pyruns4,240 bytestemplate/tools/transcribe_separate.pyruns4,572 bytestemplate/tools/transcribe_translation.pyruns6,805 bytestemplate/tools/transcribe_vocal_activity.pyruns2,357 bytestemplate/tools/transcribe_whisper.pyruns6,350 bytestemplate/tools/verify_style_snippets.mjsruns8,978 bytes
Read SKILL.md
# Vocaloid-style MV pipeline (手書き / 文字PV)
This skill turns **a song + its lyrics** into a finished, showreel-quality lyric MV (16:9 master, 9:16 vertical version, share encodes). It packages a pipeline that was used to make 「残光」 (Music / Lyrics / Movie:**NikusonP**) — a 3:46 MV with an original V家-style singer, a cracked-sky / afterglow concept, JIZURA typography, two Blender 3D sequences and ~70 beat-locked shots, rendered in ~4 minutes on an RTX 3080.
**The goal is a film of similar craft, not a copy.** Every song gets its own concept, character, palette, motifs and storyboard derived from *its* lyrics and structure. The scene library and the 残光 case study are a toolbox and a worked example; reusing their look wholesale defeats the point. `references/02-creative-direction.md` explains how to find a new concept and gives a variation matrix.
## What you have
- `template/` — a complete project: the engine (`engine/`), scene library (`engine/scenes/*.js`), JIZURA adapter (`jizura/`), all tools (`tools/`), Blender shot scripts (`blender/`), palettes/LUTs, a procedural **demo** (`demo/`, synthetic song) and a default commented timeline.
- `scripts/new_project.py` — scaffold a project from the template (`--song`, `--lyrics`, `--title`, `--title-sub`, `--artist`, `--credit`, `--setup`). `scripts/check_env.py` — what's installed.
- `references/` — the method. Read the ones you need, when you need them (table at the end).
- The 残光 case study (storyboard, timeline, prompts, contact sheets) is **not** inside this skill folder. In a repo checkout it is `examples/zanko/` (two levels above this file). With only the installed skill, read it online: https://github.com/EGSECDA/vocaloid-style-mv-pipeline/tree/main/examples/zanko (raw: `https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipeline/main/examples/zanko/<FILE>`). Every `examples/zanko/...` path in `references/` means this folder.
## RequirementsView the complete source on GitHubSkills included
- vocaloid-style-mv
Repository facts
- License
- MIT
- Created
- Oct 4, 2026
- Last pushed
- Nov 4, 2026
- Forks
- 17
- Open issues
- 0
- Project activity
- Active
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 4, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 1 note
skills/vocaloid-style-mv/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- 1 dangerous shell commandin 1 file: vocaloid-style-mv/template/tools/analyze_audio.py:427
- 188 network referencesin 49 files: vocaloid-style-mv/template/setup.ps1:63 vocaloid-style-mv/template/setup.sh:67 vocaloid-style-mv/scripts/check_env.py:98 and 46 more
- No instruction overrides
- 62 executable scriptsin 62 files: vocaloid-style-mv/scripts/check_env.py:1 vocaloid-style-mv/scripts/new_project.py:1 vocaloid-style-mv/template/blender/helpers_selftest.py:1 and 59 more
- 29 references to secretsin 7 files: vocaloid-style-mv/scripts/check_env.py:141 vocaloid-style-mv/template/tools/kit_env.py:44 vocaloid-style-mv/scripts/new_project.py:90 and 4 more
- No requests to vote in Hot
Show all 283 signals by file
skills/vocaloid-style-mv/SKILL.md
- Network accessline 24
- `scripts/new_project.py` — scaffold a project from the template (`--song`, `--lyrics`, `--title`, `--title-sub`, `--artist`, `--credit`, `--setup`). `scripts/check_env.py` — what's installed. - `references/` — the method. Read the ones yo - Network accessline 26
- The 残光 case study (storyboard, timeline, prompts, contact sheets) is **not** inside this skill folder. In a repo checkout it is `examples/zanko/` (two levels above this file). With only the installed skill, read it online: https://github. - Network accessline 38
1. **Scaffold** — `python <skill>/scripts/new_project.py <dir> --song <song.wav> --lyrics <lyrics> --title <title> --title-sub <Latin subtitle> --artist <artist> --credit "Music / Lyrics / Movie:<artist>" --setup`. The four strings set `Z.T - Network accessline 39
- **Plain-text lyrics** (no timestamps — the usual case) need forced alignment for the timings: add `--setup-args "-Lyrics"` (macOS / Linux: `--setup-args "--lyrics"`), then install the alignment deps once inside the project: `python -m pip
skills/vocaloid-style-mv/references/02-creative-direction.md
- Network accessline 112
Thesis: light that remains after its source is gone. Logline: after the sun has gone, a girl holds the last light; the sky cracks, she falls into the night, keeps a small flame alive, gathers her shattered heart, and walks a road made of he
skills/vocaloid-style-mv/references/03-audio-and-lyrics.md
- Network accessline 157
Install notes: CUDA Whisper needs `pip install nvidia-cublas-cu12` (ctranslate2 ships cuDNN but not cuBLAS; the script adds the pip `nvidia/*/bin` folders to the DLL path on Windows). The Python packages of steps 2–9 (faster-whisper, onnxru
skills/vocaloid-style-mv/references/04-asset-generation.md
- Network accessline 87
1. **Character bible** `docs/CHARACTER.md` (cover: name & concept · silhouette · hair (colour + inner colour) · eyes · signature item · outfit layers · motion prop (which side!) · palette roles as hex · do-nots (existing-character likenesse
skills/vocaloid-style-mv/references/05-engine.md
- Network accessline 131
Shot ids refer to 残光's `examples/zanko/timeline.js`. The case study is in the kit repo only, not in the installed skill folder — online: https://github.com/EGSECDA/vocaloid-style-mv-pipeline/tree/main/examples/zanko (raw file: https://raw.g - Network accessline 174
| `fall` | falling toward a square of dawn; light streaks; time-freeze on audio stops | `char`, `freeze [[t0,t1]]` (default: stops in the shot), `pulse`, `vp [x,y]`, `speed`, `h` | s12 | | `flame` | cupped hands with a breathing flame (`bre - Network accessline 176
| `ink` | sumi tendrils curl around her in a pale fog void, lurching per beat | `char`, `seed 7`, `h`, `x 960`, `y 992` | s46 |
skills/vocaloid-style-mv/references/06-jizura.md
- Network accessline 7
[JIZURA 字面](https://github.com/852wa/JIZURA) (MIT, Copyright (c) 2026 hakoniwa) is a browser app that auto-builds 文字PV lyric-motion videos: give it lyrics (+ LRC times) and a song, and it plans cuts from ~860 parts in 10 groups (layout, ent
skills/vocaloid-style-mv/references/09-qa-and-lessons.md
- Network accessline 64
| Engine | WebGL in headless falls back to SwiftShader | Edge/Chrome channel + `--use-angle=d3d11 --enable-gpu --ignore-gpu-blocklist`; check `renderer` in `window.ready` | | Render | progress can't be seen when output is piped | sample seg - Network accessline 66
| Upload | an ad link matched a loose URL regex → script stopped while the last file was at 47 % | strict pattern `https://NN.gigafile.nu/MMDD-<hash>`; verify each link's page (name + size) before sending |
skills/vocaloid-style-mv/references/effect-cookbook.md
- Network accessline 5
Condensed from the 残光 style bible ([examples/zanko/STYLE_RESEARCH.md](https://github.com/EGSECDA/vocaloid-style-mv-pipeline/blob/main/examples/zanko/STYLE_RESEARCH.md) in the kit repo — not inside the installed skill; 94 recipes with GLSL/J
skills/vocaloid-style-mv/scripts/check_env.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 98
good = rc == 0 and m and int(m.group(1)) >= MIN_NODE R.add("REQUIRED", "node", good, ver or "not found", "" if good else f"install Node.js {MIN_NODE}+ (https://nodejs.org)") - Network accessline 99
R.add("REQUIRED", "node", good, ver or "not found", "" if good else f"install Node.js {MIN_NODE}+ (https://nodejs.org)") npm = shutil.which("npm") - Network accessline 100
"" if good else f"install Node.js {MIN_NODE}+ (https://nodejs.org)") - Network accessline 108
good = v[:2] >= MIN_PY R.add("REQUIRED", "python", good, f"{platform.python_version()} ({sys.executable})", "" if good else "install Python 3.10+ (https://www.python.org)") - Network accessline 109
R.add("REQUIRED", "python", good, f"{platform.python_version()} ({sys.executable})", "" if good else "install Python 3.10+ (https://www.python.org)") core = [("librosa", "librosa"), ("numpy", "numpy"), ("scipy", "scipy"), ("s - Network accessline 110
"" if good else "install Python 3.10+ (https://www.python.org)") - Access to secretsline 141
[Credential-related source omitted] - Access to secretsline 152
[Credential-related source omitted] - Access to secretsline 153
[Credential-related source omitted] - Network accessline 155
rc, out = run([exe, "-hide_banner", "-version"]) if exe else (-1, "") R.add("REQUIRED", "ffmpeg", rc == 0, first_line(out)[:70] if rc == 0 else "not found", "" if rc == 0 else "install ffmpeg and put it on PATH (or set FFMPEG) - Network accessline 156
R.add("REQUIRED", "ffmpeg", rc == 0, first_line(out)[:70] if rc == 0 else "not found", "" if rc == 0 else "install ffmpeg and put it on PATH (or set FFMPEG): https://ffmpeg.org") pexe = shutil.which(fp) - Network accessline 157
"" if rc == 0 else "install ffmpeg and put it on PATH (or set FFMPEG): https://ffmpeg.org") - Network accessline 182
[Credential-related source omitted] - Access to secretsline 182
[Credential-related source omitted] - Network accessline 184
"" if rc == 0 else "setup clones JIZURA with git (https://git-scm.com)") - Access to secretsline 196
[Credential-related source omitted] - Access to secretsline 215
[Credential-related source omitted] - Access to secretsline 216
[Credential-related source omitted] - Access to secretsline 225
[Credential-related source omitted] - Access to secretsline 241
[Credential-related source omitted] - Access to secretsline 255
[Credential-related source omitted] - Access to secretsline 274
[Credential-related source omitted] - Access to secretsline 302
[Credential-related source omitted]
skills/vocaloid-style-mv/scripts/new_project.py
skills/vocaloid-style-mv/template/PROJECT_README.md
- Network accessline 19
Setup installs Playwright (`npm install`), the Python packages (`requirements.txt`), downloads the fonts into `engine/fonts/` (~260 MB, Google Fonts, OFL), clones [JIZURA 字面](https://github.com/852wa/JIZURA) into - Network accessline 20
`engine/fonts/` (~260 MB, Google Fonts, OFL), clones [JIZURA 字面](https://github.com/852wa/JIZURA) into - Network accessline 55
trails, a vortex, kanji slams, fireflies forming 蛍, a dawn and a violet end card mean the machine renders correctly (reference: `docs/images/demo_sheet.jpg` in the kit repo, https://github.com/EGSECDA/vocaloid-style-mv-pipeline/blob/main/do - Network accessline 56
(reference: `docs/images/demo_sheet.jpg` in the kit repo, https://github.com/EGSECDA/vocaloid-style-mv-pipeline/blob/main/docs/images/demo_sheet.jpg; it is a 1 s review sheet, so compare it with `render/review/sheet_00.jpg`). See `demo/READ - Network accessline 57
https://github.com/EGSECDA/vocaloid-style-mv-pipeline/blob/main/docs/images/demo_sheet.jpg; it is a 1 s review sheet, - Network accessline 150
- Engine, scenes, tools, demo song and demo lyrics: vocaloid-style-mv-pipeline by **NikusonP**, MIT licence. The demo lyrics (`demo/lyrics_demo.lrc`) and the synthesized demo song are original and free to use. - [JIZURA 字面](https://github - Network accessline 151
(`demo/lyrics_demo.lrc`) and the synthesized demo song are original and free to use. - [JIZURA 字面](https://github.com/852wa/JIZURA) (c) 2026 hakoniwa (github.com/852wa), MIT — fetched by setup, not vendored; keep `jizura/app/JIZURA_LICENS - Network accessline 152
- [JIZURA 字面](https://github.com/852wa/JIZURA) (c) 2026 hakoniwa (github.com/852wa), MIT — fetched by setup,
skills/vocaloid-style-mv/template/blender/helpers_selftest.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/blender/probe_scene.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/blender/shots/_shared.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/blender/shots/shotA_street.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/blender/shots/shotB_crossing.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/demo/make_demo_song.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/engine/core/assets.js
skills/vocaloid-style-mv/template/engine/core/draw.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/core/gl.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/core/main.js
- Executable scriptline 1
Executable file - Network accessline 30
const loadJSON = async p => { const r = await fetch(Z.ROOT + p); if (!r.ok) throw new Error(p + ' ' + r.status); return JSON.parse((await r.text()).replace(/^<U+FEFF>/, '')); }; - Possible obfuscationline 30
const loadJSON = async p => { const r = await fetch(Z.ROOT + p); if (!r.ok) throw new Error(p + ' ' + r.status); return JSON.parse((await r.text()).replace(/^<U+FEFF>/, '')); };
skills/vocaloid-style-mv/template/engine/core/trans.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/core/util.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/fonts/OFL_delagothicone.txt
- Network accessline 1
Copyright 2020 The Dela Gothic Project Authors (https://github.com/syakuzen/DelaGothic) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://openfontlicense.org - Network accessline 5
https://openfontlicense.org
skills/vocaloid-style-mv/template/engine/fonts/OFL_dotgothic16.txt
- Network accessline 1
Copyright 2020 The DotGothic16 Project Authors (https://github.com/fontworks-fonts/DotGothic16) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL - Network accessline 5
http://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_kaiseitokumin.txt
- Network accessline 1
Copyright 2020 The Kaisei Project Authors (https://github.com/Font-Kai/Kaisei) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL - Network accessline 5
https://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_kleeone.txt
- Network accessline 1
Copyright 2020 The Klee Project Authors (https://github.com/fontworks-fonts/Klee) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL - Network accessline 5
https://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_mplusrounded1c.txt
skills/vocaloid-style-mv/template/engine/fonts/OFL_notosansjp.txt
- Network accessline 1
Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source' - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL - Network accessline 5
https://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_notosanssc.txt
- Network accessline 1
Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source' - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL - Network accessline 5
https://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_notoserifjp.txt
skills/vocaloid-style-mv/template/engine/fonts/OFL_notoserifsc.txt
skills/vocaloid-style-mv/template/engine/fonts/OFL_rampartone.txt
- Network accessline 1
Copyright 2020 The Rampart Project Authors (https://github.com/fontworks-fonts/Rampart) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL - Network accessline 5
http://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_reggaeone.txt
- Network accessline 1
Copyright 2020 The Reggae Project Authors (https://github.com/fontworks-fonts/Reggae) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: https://scripts.sil.org/OFL - Network accessline 5
https://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_shipporiminchob1.txt
- Network accessline 1
Copyright 2021 The Shippori Mincho Project Authors (https://github.com/fontdasu/ShipporiMincho) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL - Network accessline 5
http://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_yujisyuku.txt
- Network accessline 1
Copyright 2021 The Yuji Project Authors (https://github.com/Kinutafontfactory/Yuji) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL - Network accessline 5
http://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_zenkakugothicnew.txt
- Network accessline 1
Copyright 2022 The Zen Kaku Gothic Project Authors (https://github.com/googlefonts/zen-kakugothic) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL - Network accessline 5
http://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/OFL_zenoldmincho.txt
- Network accessline 1
Copyright 2021 The Zen Old Mincho Project Authors (https://github.com/googlefonts/zen-oldmincho) - Network accessline 3
This Font Software is licensed under the SIL Open Font License, Version 1.1. This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL - Network accessline 5
http://scripts.sil.org/OFL
skills/vocaloid-style-mv/template/engine/fonts/fonts.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/scenes/dark.js
- Executable scriptline 1
Executable file - Network accessline 4
* fall {char, freeze:[[t0,t1]], pulse:[t], vp:[x,y], speed, h} shot 12 falling toward a tiny square of dawn; time-freeze on the stop * flame {mode:'breathe'|'grow'|'dark', img, face, stops:[[t0,t1]], flameAt, zoomAt, zoomTo - Network accessline 5
* flame {mode:'breathe'|'grow'|'dark', img, face, stops:[[t0,t1]], flameAt, zoomAt, zoomTo, igniteAt} shots 15 / 31 / 50 * ink {char, seed, h, x, y} shot 46 sumi tendrils curl around her - Network accessline 6
* ink {char, seed, h, x, y} shot 46 sumi tendrils curl around her in a pale fog void - Network accessline 760
// 46 · ink — 「絶望の形を抱きしめたまま」 // A pale fog void. Sumi tendrils grow from the edges and the ground (12 fps, lurching forward on every beat), reach // for her and curl into fern-like croziers just short of her; two pass behind her, so the - Network accessline 761
// A pale fog void. Sumi tendrils grow from the edges and the ground (12 fps, lurching forward on every beat), reach // for her and curl into fern-like croziers just short of her; two pass behind her, so they read as wrapping around // - Network accessline 762
// for her and curl into fern-like croziers just short of her; two pass behind her, so they read as wrapping around - Network accessline 774
// [control points, curl dir, crozier radius, turns, base width, delay, dur] - Network accessline 779
// reachers (curl short of her)
skills/vocaloid-style-mv/template/engine/scenes/glass.js
skills/vocaloid-style-mv/template/engine/scenes/intro.js
- Executable scriptline 1
Executable file - Network accessline 253
const cyc = Math.floor((t + ph) / life), age = t + ph - cyc * life, k = age / life; const r = j => Z.rnd(i, cyc, seed + j); const vx = (r(2) - 0.5) * (o.vx ?? 50), vy = -(o.rise ?? 1) * (26 + 70 * r(3)), curl = 6 + 20 * r(4), w - Network accessline 254
const r = j => Z.rnd(i, cyc, seed + j); const vx = (r(2) - 0.5) * (o.vx ?? 50), vy = -(o.rise ?? 1) * (26 + 70 * r(3)), curl = 6 + 20 * r(4), w = 2 + 3 * r(5), sx = (r(6) - 0.5) * (o.spread ?? 20); const pos = a => [o.x + sx + v - Network accessline 255
const vx = (r(2) - 0.5) * (o.vx ?? 50), vy = -(o.rise ?? 1) * (26 + 70 * r(3)), curl = 6 + 20 * r(4), w = 2 + 3 * r(5), sx = (r(6) - 0.5) * (o.spread ?? 20); - Network accessline 256
const pos = a => [o.x + sx + vx * a + Math.sin(a * w + r(7) * 6) * curl * a, o.y + vy * a - 9 * a * a];
skills/vocaloid-style-mv/template/engine/scenes/memory.js
- Executable scriptline 1
Executable file - Network accessline 593
const rot = Z.rnds(f.k, 11) * 5 * a + f.k; const al = Math.pow(1 - k, 1.2); const curl = 0.35 + 0.55 * Math.abs(Math.sin(a * 3.2 + f.k)); // flakes curl and flip as they rise - Network accessline 594
const al = Math.pow(1 - k, 1.2); const curl = 0.35 + 0.55 * Math.abs(Math.sin(a * 3.2 + f.k)); // flakes curl and flip as they rise ctx.save(); ctx.translate(x, y); ctx.rotate(rot); ctx.scale(sc, sc * curl); - Network accessline 595
const curl = 0.35 + 0.55 * Math.abs(Math.sin(a * 3.2 + f.k)); // flakes curl and flip as they rise - Network accessline 850
if (hw > 0.05) { const nc = 4, gap = 0.055, cw = (2 * hw) / nc; - Network accessline 851
const nc = 4, gap = 0.055, cw = (2 * hw) / nc; - Network accessline 1112
const hw = 1.15, rowL = 1.0, nc = 4, gap = 0.055, cw = (2 * hw) / nc;
skills/vocaloid-style-mv/template/engine/scenes/meta.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/scenes/night.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/scenes/scenes.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/scenes/typo.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/engine/timeline.js
- Executable scriptline 1
Executable file - Network accessline 171
let lrc = ''; try { const r = await fetch(Z.ROOT + 'analysis/lyrics_mv.lrc'); if (r.ok) lrc = await r.text(); } catch (e) { /* no lyrics yet */ } - Network accessline 172
try { const r = await fetch(Z.ROOT + 'analysis/lyrics_mv.lrc'); if (r.ok) lrc = await r.text(); } catch (e) { /* no lyrics yet */ } - Possible obfuscationline 174
lrc = lrc.replace(/^<U+FEFF>/, '').replace(/^\[ti:.*\]\s*$/m, ''); // no [ti:]: JIZURA would add its own title card
skills/vocaloid-style-mv/template/engine/vertical.js
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/jizura/app/engine.html
- Network accessline 7
Used (a) headless by tools/jizura_probe.mjs and (b) as a same-origin iframe by host_iframe.html. API: window.JZ (see jizura_adapter.js), plus window.renderAt(t, mode) -> canvas for iframe hosts. --> <link rel="preconnect" href="https:/ - Network accessline 8
API: window.JZ (see jizura_adapter.js), plus window.renderAt(t, mode) -> canvas for iframe hosts. --> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> - Network accessline 9
<link rel="preconnect" href="https://fonts.googleapis.com"> - Network accessline 10
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
skills/vocaloid-style-mv/template/jizura/app/jizura_adapter.js
skills/vocaloid-style-mv/template/package.json
- Executable scriptline 1
Executable file - Network accessline 17
"fonts": "python tools/fetch_fonts.py", "browser:install": "playwright install chromium", "jizura:clone": "node -e \"const g=a=>{const r=require('node:child_process').spawnSync('git',a,{stdio:'inherit'});if(r.status!==0)process.exit - Network accessline 18
"browser:install": "playwright install chromium", "jizura:clone": "node -e \"const g=a=>{const r=require('node:child_process').spawnSync('git',a,{stdio:'inherit'});if(r.status!==0)process.exit(r.status===null?1:r.status)};const d=proces - Network accessline 19
"jizura:clone": "node -e \"const g=a=>{const r=require('node:child_process').spawnSync('git',a,{stdio:'inherit'});if(r.status!==0)process.exit(r.status===null?1:r.status)};const d=process.env.JIZURA_DIR||'vendor/JIZURA',ref=process.env.JIZU
skills/vocaloid-style-mv/template/requirements.txt
- Network accessline 23
# Forced alignment (tools/transcribe_align_mms.py) also needs CPU torch + torchaudio 2.8. Keep them out of the main # site-packages (large); the tool finds this folder automatically (or set TORCH_DEPS_DIR): # python -m pip install --targe - Network accessline 24
# site-packages (large); the tool finds this folder automatically (or set TORCH_DEPS_DIR): # python -m pip install --target vendor/pydeps_torch torch==2.8.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cpu # GPU Whisper - Network accessline 25
# python -m pip install --target vendor/pydeps_torch torch==2.8.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cpu
skills/vocaloid-style-mv/template/setup.ps1
- Executable scriptline 1
Executable file - Network accessline 63
Write-Step "vocaloid-style-mv setup in $Root" foreach ($tool in 'node', 'npm') { if (-not (Get-Command $tool -ErrorAction SilentlyContinue)) { throw "$tool not found: install Node.js 20+ (https://nodejs.org) and re-run" } - Network accessline 64
foreach ($tool in 'node', 'npm') { if (-not (Get-Command $tool -ErrorAction SilentlyContinue)) { throw "$tool not found: install Node.js 20+ (https://nodejs.org) and re-run" } } - Network accessline 65
if (-not (Get-Command $tool -ErrorAction SilentlyContinue)) { throw "$tool not found: install Node.js 20+ (https://nodejs.org) and re-run" } - Network accessline 69
Write-Ok "node $nodeVer" $Py = Find-Python if (-not $Py) { throw 'Python 3.10+ not found: install it from https://www.python.org (tick "Add to PATH") or set $env:PYTHON' } - Network accessline 70
$Py = Find-Python if (-not $Py) { throw 'Python 3.10+ not found: install it from https://www.python.org (tick "Add to PATH") or set $env:PYTHON' } $PyExe = $Py[0]; $PyPre = @(); if ($Py.Count -gt 1) { $PyPre = $Py[1..($Py.Count - 1)] } - Network accessline 71
if (-not $Py) { throw 'Python 3.10+ not found: install it from https://www.python.org (tick "Add to PATH") or set $env:PYTHON' } - Network accessline 154
} } else { if (-not (Get-Command git -ErrorAction SilentlyContinue)) { throw 'git not found: install Git (https://git-scm.com) or clone JIZURA yourself and set $env:JIZURA_DIR' } - Network accessline 155
} else { if (-not (Get-Command git -ErrorAction SilentlyContinue)) { throw 'git not found: install Git (https://git-scm.com) or clone JIZURA yourself and set $env:JIZURA_DIR' } New-Item -ItemType Directory -Force -Path (Split-Path - - Network accessline 156
if (-not (Get-Command git -ErrorAction SilentlyContinue)) { throw 'git not found: install Git (https://git-scm.com) or clone JIZURA yourself and set $env:JIZURA_DIR' } - Network accessline 158
Write-Host " fetching https://github.com/852wa/JIZURA @ $jzRef$(if ($jzRef -eq $JzPin) { ' (tested commit)' })" - Network accessline 160
Invoke-Native 'git init' 'git' @('init', '-q', $jz) Invoke-Native 'git config' 'git' @('-C', $jz, 'config', 'remote.origin.url', 'https://github.com/852wa/JIZURA') Invoke-Native 'git config' 'git' @('-C', $jz, 'config', 'remote.orig - Network accessline 161
Invoke-Native 'git config' 'git' @('-C', $jz, 'config', 'remote.origin.url', 'https://github.com/852wa/JIZURA') Invoke-Native 'git config' 'git' @('-C', $jz, 'config', 'remote.origin.fetch', '+refs/heads/*:refs/remotes/origin/*') tr - Network accessline 178
} else { foreach ($tool in 'ffmpeg', 'ffprobe') { if (Get-Command $tool -ErrorAction SilentlyContinue) { Write-Ok "$tool found" } else { Write-Note "$tool not on PATH (REQUIRED for rendering): https://ffmpeg.org" } - Network accessline 179
foreach ($tool in 'ffmpeg', 'ffprobe') { if (Get-Command $tool -ErrorAction SilentlyContinue) { Write-Ok "$tool found" } else { Write-Note "$tool not on PATH (REQUIRED for rendering): https://ffmpeg.org" } } - Network accessline 180
if (Get-Command $tool -ErrorAction SilentlyContinue) { Write-Ok "$tool found" } else { Write-Note "$tool not on PATH (REQUIRED for rendering): https://ffmpeg.org" }
skills/vocaloid-style-mv/template/setup.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 67
step "vocaloid-style-mv setup in $ROOT" have node || die "node not found: install Node.js 20+ (https://nodejs.org)" - Network accessline 68
have node || die "node not found: install Node.js 20+ (https://nodejs.org)" - Network accessline 69
have npm || die "npm not found: install Node.js 20+ (https://nodejs.org)" - Network accessline 170
fi else have git || die "git not found: install Git, or clone https://github.com/852wa/JIZURA yourself and set JIZURA_DIR" - Network accessline 171
else have git || die "git not found: install Git, or clone https://github.com/852wa/JIZURA yourself and set JIZURA_DIR" mkdir -p "$(dirname "$JZ")" - Network accessline 172
have git || die "git not found: install Git, or clone https://github.com/852wa/JIZURA yourself and set JIZURA_DIR" - Network accessline 173
mkdir -p "$(dirname "$JZ")" JZ_TESTED=""; [ "$JZ_REF" = "$JZ_PIN" ] && JZ_TESTED=" (tested commit)" echo " fetching https://github.com/852wa/JIZURA @ $JZ_REF$JZ_TESTED" - Network accessline 175
echo " fetching https://github.com/852wa/JIZURA @ $JZ_REF$JZ_TESTED" - Network accessline 177
run git init -q "$JZ" run git -C "$JZ" config remote.origin.url https://github.com/852wa/JIZURA run git -C "$JZ" config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*' - Network accessline 178
run git -C "$JZ" config remote.origin.url https://github.com/852wa/JIZURA run git -C "$JZ" config remote.origin.fetch '+refs/heads/*:refs/remotes/origin/*' printf '%s > git -C %s fetch --depth 1 origin %s%s\n' "$C_DIM" "$JZ" "$JZ_REF" - Network accessline 198
"${PY[@]}" "${CARGS[@]}" || note "check_env reported a missing REQUIRED item (see above)" else for t in ffmpeg ffprobe; do if have "$t"; then ok "$t found"; else note "$t not on PATH (REQUIRED for rendering): https://ffmpeg.org"; fi; - Network accessline 199
else for t in ffmpeg ffprobe; do if have "$t"; then ok "$t found"; else note "$t not on PATH (REQUIRED for rendering): https://ffmpeg.org"; fi; done fi - Network accessline 200
for t in ffmpeg ffprobe; do if have "$t"; then ok "$t found"; else note "$t not on PATH (REQUIRED for rendering): https://ffmpeg.org"; fi; done
skills/vocaloid-style-mv/template/tools/alpha_matte.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/tools/analyze_audio.py
skills/vocaloid-style-mv/template/tools/blender_common.py
- Executable scriptline 1
Executable file - Network accessline 19
Blender 5.1 API facts this module relies on (verified by probes, see examples/zanko/BLENDER_RECIPE.md in the kit repo, https://github.com/EGSECDA/vocaloid-style-mv-pipeline/tree/main/examples/zanko): - Network accessline 20
https://github.com/EGSECDA/vocaloid-style-mv-pipeline/tree/main/examples/zanko):
skills/vocaloid-style-mv/template/tools/blender_run.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/tools/build_jizura_bundle.mjs
- Executable scriptline 1
#!/usr/bin/env node
skills/vocaloid-style-mv/template/tools/fetch_fonts.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 42
def api_list(d): url = f"https://api.github.com/repos/google/fonts/contents/ofl/{d}" - Network accessline 43
url = f"https://api.github.com/repos/google/fonts/contents/ofl/{d}" - Access to secretsline 44
[Credential-related source omitted] - Network accessline 46
if tok: hdr["Authorization"] = "Bearer " + tok with urllib.request.urlopen(urllib.request.Request(url, headers=hdr), timeout=60) as r: - Network accessline 47
hdr["Authorization"] = "Bearer " + tok with urllib.request.urlopen(urllib.request.Request(url, headers=hdr), timeout=60) as r: return json.load(r) - Network accessline 48
with urllib.request.urlopen(urllib.request.Request(url, headers=hdr), timeout=60) as r: - Network accessline 66
return dst, "skip" tmp = dst + ".part" with urllib.request.urlopen(urllib.request.Request(url, headers=UA), timeout=600) as r, open(tmp, "wb") as f: - Network accessline 67
tmp = dst + ".part" with urllib.request.urlopen(urllib.request.Request(url, headers=UA), timeout=600) as r, open(tmp, "wb") as f: while True: - Network accessline 68
with urllib.request.urlopen(urllib.request.Request(url, headers=UA), timeout=600) as r, open(tmp, "wb") as f:
skills/vocaloid-style-mv/template/tools/gigafile_upload.mjs
- Executable scriptline 1
#!/usr/bin/env node - Network accessline 29
const browser = await launchBrowser({ headless: true }); const page = await browser.newPage({ viewport: { width: 1400, height: 1000 } }); await page.goto('https://gigafile.nu/', { waitUntil: 'domcontentloaded', timeout: 90000 }); - Network accessline 30
const page = await browser.newPage({ viewport: { width: 1400, height: 1000 } }); await page.goto('https://gigafile.nu/', { waitUntil: 'domcontentloaded', timeout: 90000 }); await page.waitForTimeout(3000); - Network accessline 31
await page.goto('https://gigafile.nu/', { waitUntil: 'domcontentloaded', timeout: 90000 });
skills/vocaloid-style-mv/template/tools/imagegen.py
skills/vocaloid-style-mv/template/tools/jizura_parts.mjs
- Executable scriptline 1
#!/usr/bin/env node
skills/vocaloid-style-mv/template/tools/jizura_probe.mjs
skills/vocaloid-style-mv/template/tools/jizura_serve.mjs
- Executable scriptline 1
#!/usr/bin/env node - Network accessline 53
return new Promise((ok, fail) => { server.once('error', fail); server.listen(port, host, () => { const a = server.address(); ok({ server, port: a.port, origin: `http://${host}:${a.port}`, close: () => new Promise(r => server.close(r - Network accessline 54
server.once('error', fail); server.listen(port, host, () => { const a = server.address(); ok({ server, port: a.port, origin: `http://${host}:${a.port}`, close: () => new Promise(r => server.close(r)) }); }); }); - Network accessline 55
server.listen(port, host, () => { const a = server.address(); ok({ server, port: a.port, origin: `http://${host}:${a.port}`, close: () => new Promise(r => server.close(r)) }); });
skills/vocaloid-style-mv/template/tools/jz_cuts_at.mjs
- Executable scriptline 1
#!/usr/bin/env node - Network accessline 25
const browser = await launchBrowser({ headless: true, args: gpuArgs() }); const page = await browser.newPage(); await page.goto(`http://127.0.0.1:${server.address().port}/${pageUrl.replace(/^\/+/, '')}`); - Network accessline 26
const page = await browser.newPage(); await page.goto(`http://127.0.0.1:${server.address().port}/${pageUrl.replace(/^\/+/, '')}`); await page.evaluate(() => window.ready); - Network accessline 27
await page.goto(`http://127.0.0.1:${server.address().port}/${pageUrl.replace(/^\/+/, '')}`);
skills/vocaloid-style-mv/template/tools/kit_env.mjs
- Executable scriptline 1
#!/usr/bin/env node
skills/vocaloid-style-mv/template/tools/kit_env.py
- Executable scriptline 1
#!/usr/bin/env python3 - Access to secretsline 44
[Credential-related source omitted] - Access to secretsline 45
[Credential-related source omitted] - Access to secretsline 81
[Credential-related source omitted] - Access to secretsline 92
[Credential-related source omitted] - Network accessline 98
return str(c) if required: raise FileNotFoundError("Codex CLI not found: install it (https://github.com/openai/codex) or set CODEX_BIN " - Network accessline 99
if required: raise FileNotFoundError("Codex CLI not found: install it (https://github.com/openai/codex) or set CODEX_BIN " "to the codex executable") - Network accessline 100
raise FileNotFoundError("Codex CLI not found: install it (https://github.com/openai/codex) or set CODEX_BIN " - Access to secretsline 119
[Credential-related source omitted] - Access to secretsline 123
[Credential-related source omitted] - Access to secretsline 137
[Credential-related source omitted] - Access to secretsline 157
[Credential-related source omitted] - Access to secretsline 163
[Credential-related source omitted] - Access to secretsline 165
[Credential-related source omitted] - Access to secretsline 166
[Credential-related source omitted] - Access to secretsline 238
[Credential-related source omitted]
skills/vocaloid-style-mv/template/tools/preview_style_fx.mjs
- Executable scriptline 1
#!/usr/bin/env node - Network accessline 5
// node tools/preview_style_fx.mjs [--md docs/STYLE_RESEARCH.md] [--out docs/style_fx_preview.png] // The cookbook is examples/zanko/STYLE_RESEARCH.md in the kit repo (not in the installed skill folder; online: // https://raw.githubuserco - Network accessline 6
// The cookbook is examples/zanko/STYLE_RESEARCH.md in the kit repo (not in the installed skill folder; online: // https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipeline/main/examples/zanko/STYLE_RESEARCH.md); // copy it to do - Network accessline 7
// https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipeline/main/examples/zanko/STYLE_RESEARCH.md); - Network accessline 22
const outPath = path.resolve(ROOT, cliArg('out', 'docs/style_fx_preview.png')); if (!fs.existsSync(mdPath)) { console.error(`style cookbook not found: ${mdPath}\n copy <kit repo>/examples/zanko/STYLE_RESEARCH.md to docs/ or pass --md <pa - Network accessline 23
if (!fs.existsSync(mdPath)) { console.error(`style cookbook not found: ${mdPath}\n copy <kit repo>/examples/zanko/STYLE_RESEARCH.md to docs/ or pass --md <path>\n (online: https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipe - Network accessline 24
console.error(`style cookbook not found: ${mdPath}\n copy <kit repo>/examples/zanko/STYLE_RESEARCH.md to docs/ or pass --md <path>\n (online: https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipeline/main/examples/zanko/STYLE_R
skills/vocaloid-style-mv/template/tools/render_final.mjs
- Executable scriptline 1
#!/usr/bin/env node
skills/vocaloid-style-mv/template/tools/render_final.ps1
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/tools/render_frames.mjs
- Executable scriptline 1
#!/usr/bin/env node - Network accessline 109
res.setHeader('Cache-Control', 'no-store'); if (req.method === 'OPTIONS') { res.writeHead(204); return res.end(); } const u = new URL(req.url, 'http://x'); - Network accessline 110
if (req.method === 'OPTIONS') { res.writeHead(204); return res.end(); } const u = new URL(req.url, 'http://x'); if (u.pathname.startsWith('/__cap/')) { - Network accessline 111
const u = new URL(req.url, 'http://x'); - Network accessline 237
const p = (async () => { for (let k = 1; ; k++) { try { const r = await fetch(url, { method: 'POST', body }); if (r.ok) return; throw new Error('HTTP ' + r.status); } - Network accessline 238
for (let k = 1; ; k++) { try { const r = await fetch(url, { method: 'POST', body }); if (r.ok) return; throw new Error('HTTP ' + r.status); } catch (e) { - Network accessline 239
try { const r = await fetch(url, { method: 'POST', body }); if (r.ok) return; throw new Error('HTTP ' + r.status); } - Network accessline 328
const server = await startServer(a.root, sinks); const port = server.address().port; const endpoint = `http://127.0.0.1:${port}`; - Network accessline 329
const port = server.address().port; const endpoint = `http://127.0.0.1:${port}`; let url = a.url; - Network accessline 330
const endpoint = `http://127.0.0.1:${port}`;
skills/vocaloid-style-mv/template/tools/review_sheets.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/tools/stills.mjs
- Executable scriptline 1
#!/usr/bin/env node - Network accessline 40
}); await new Promise(r => server.listen(0, '127.0.0.1', r)); const origin = `http://127.0.0.1:${server.address().port}`; - Network accessline 41
await new Promise(r => server.listen(0, '127.0.0.1', r)); const origin = `http://127.0.0.1:${server.address().port}`; const browser = await launchBrowser({ headless: true, args: [...gpuArgs(), '--enable-gpu-rasterization'] }); - Network accessline 42
const origin = `http://127.0.0.1:${server.address().port}`;
skills/vocaloid-style-mv/template/tools/style_palette_sheet.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/tools/transcribe_align_mms.py
- Executable scriptline 1
Executable file - Network accessline 7
Requires CPU torch/torchaudio 2.8. Install them into an isolated folder (keeps the main site-packages clean): python -m pip install --target vendor/pydeps_torch torch==2.8.0 torchaudio==2.8.0 \\ --index-url https://download.pytor - Network accessline 8
python -m pip install --target vendor/pydeps_torch torch==2.8.0 torchaudio==2.8.0 \ --index-url https://download.pytorch.org/whl/cpu - Network accessline 9
--index-url https://download.pytorch.org/whl/cpu - Access to secretsline 27
[Credential-related source omitted]
skills/vocaloid-style-mv/template/tools/transcribe_kana.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/tools/transcribe_lines.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/tools/transcribe_onset_probe.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/tools/transcribe_prep.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/tools/transcribe_reconcile.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/tools/transcribe_score.py
skills/vocaloid-style-mv/template/tools/transcribe_separate.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/tools/transcribe_translation.py
- Executable scriptline 1
Executable file
skills/vocaloid-style-mv/template/tools/transcribe_vocal_activity.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/tools/transcribe_whisper.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/vocaloid-style-mv/template/tools/verify_style_snippets.mjs
- Executable scriptline 1
#!/usr/bin/env node - Network accessline 6
// node tools/verify_style_snippets.mjs [--md docs/STYLE_RESEARCH.md] // The cookbook is examples/zanko/STYLE_RESEARCH.md in the kit repo (not in the installed skill folder; online: // https://raw.githubusercontent.com/EGSECDA/vocaloid-st - Network accessline 7
// The cookbook is examples/zanko/STYLE_RESEARCH.md in the kit repo (not in the installed skill folder; online: // https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipeline/main/examples/zanko/STYLE_RESEARCH.md); // copy it to do - Network accessline 8
// https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipeline/main/examples/zanko/STYLE_RESEARCH.md); - Network accessline 24
const mdPath = path.resolve(ROOT, cliArg('md', 'docs/STYLE_RESEARCH.md')); if (!fs.existsSync(mdPath)) { console.error(`style cookbook not found: ${mdPath}\n copy <kit repo>/examples/zanko/STYLE_RESEARCH.md to docs/ or pass --md <path>\n - Network accessline 25
if (!fs.existsSync(mdPath)) { console.error(`style cookbook not found: ${mdPath}\n copy <kit repo>/examples/zanko/STYLE_RESEARCH.md to docs/ or pass --md <path>\n (online: https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipe - Network accessline 26
console.error(`style cookbook not found: ${mdPath}\n copy <kit repo>/examples/zanko/STYLE_RESEARCH.md to docs/ or pass --md <path>\n (online: https://raw.githubusercontent.com/EGSECDA/vocaloid-style-mv-pipeline/main/examples/zanko/STYLE_R
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Declared and executed: 8 facts
- Contacts nodejs.org, which SKILL.md, the README and the plugin manifest do not mentionvocaloid-style-mv/scripts/check_env.py:100High confidence
- Contacts www.python.org, which SKILL.md, the README and the plugin manifest do not mentionvocaloid-style-mv/scripts/check_env.py:110High confidence
- Contacts git-scm.com, which SKILL.md, the README and the plugin manifest do not mentionvocaloid-style-mv/scripts/check_env.py:184High confidence
- Contacts nodejs.org, which SKILL.md, the README and the plugin manifest do not mentionvocaloid-style-mv/template/setup.ps1:65High confidence
- Contacts www.python.org, which SKILL.md, the README and the plugin manifest do not mentionvocaloid-style-mv/template/setup.ps1:71High confidence
- Contacts git-scm.com, which SKILL.md, the README and the plugin manifest do not mentionvocaloid-style-mv/template/setup.ps1:156High confidence
- Contacts nodejs.org, which SKILL.md, the README and the plugin manifest do not mentionvocaloid-style-mv/template/setup.sh:68High confidence
- Contacts gigafile.nu, which SKILL.md, the README and the plugin manifest do not mentionvocaloid-style-mv/template/tools/gigafile_upload.mjs:31High confidence
Signal confidence: 279 facts
- Network access in prose of the SKILL.mdvocaloid-style-mv/SKILL.md:24Low confidence
- Network access in prose of the SKILL.mdvocaloid-style-mv/SKILL.md:26Low confidence
- Network access in prose of the SKILL.mdvocaloid-style-mv/SKILL.md:38Low confidence
- Network access in prose of the SKILL.mdvocaloid-style-mv/SKILL.md:39Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/02-creative-direction.md:112Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/03-audio-and-lyrics.md:157Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/04-asset-generation.md:87Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/05-engine.md:131Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/05-engine.md:174Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/05-engine.md:176Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/06-jizura.md:7Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/09-qa-and-lessons.md:64Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/09-qa-and-lessons.md:66Low confidence
- Network access in prose of documentationvocaloid-style-mv/references/effect-cookbook.md:5Low confidence
- Executable script in code of a file that runsvocaloid-style-mv/scripts/check_env.py:1High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:98High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:99High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:100High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:108High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:109High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:110High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:141Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:152Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:153Low confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:155High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:156High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:157High confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:182High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:182Low confidence
- Network access in code of a file that runsvocaloid-style-mv/scripts/check_env.py:184High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:196Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:215Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:216Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:225Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:241Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:255Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:274Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/check_env.py:302Low confidence
- Executable script in code of a file that runsvocaloid-style-mv/scripts/new_project.py:1High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuevocaloid-style-mv/scripts/new_project.py:90Low confidence
- Network access in prose of documentationvocaloid-style-mv/template/PROJECT_README.md:19Low confidence
- Network access in prose of documentationvocaloid-style-mv/template/PROJECT_README.md:20Low confidence
- Network access in prose of documentationvocaloid-style-mv/template/PROJECT_README.md:55Low confidence
- Network access in prose of documentationvocaloid-style-mv/template/PROJECT_README.md:56Low confidence
- Network access in prose of documentationvocaloid-style-mv/template/PROJECT_README.md:57Low confidence
- Network access in prose of documentationvocaloid-style-mv/template/PROJECT_README.md:150Low confidence
- Network access in prose of documentationvocaloid-style-mv/template/PROJECT_README.md:151Low confidence
- Network access in prose of documentationvocaloid-style-mv/template/PROJECT_README.md:152Low confidence
- Executable script in prose of a file that runsvocaloid-style-mv/template/blender/helpers_selftest.py:1Low confidence
- Executable script in prose of a file that runsvocaloid-style-mv/template/blender/probe_scene.py:1Low confidence
and 229 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md skills/vocaloid-style-mv/SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/vocaloid-style-mv/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/vocaloid-style-mv/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/vocaloid-style-mv/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/vocaloid-style-mv/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/vocaloid-style-mv/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.