The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Bilibili Huasheng Video listing page.
hs brings Huasheng's video creation pipeline to the command line.
Give it a sentence or a script, and it handles storyboarding, narration, footage and
composition — producing a video you can export or publish directly. You can step in and
adjust at any point along the way.
A single self-contained binary. No Node, no Python, no runtime to install.
Every command supports --json, designed for scripts and AI clients.
Do this once, regardless of which client you use later.
Pick whichever suits you — all three give you the same binary.
macOS / Linux
Windows, in PowerShell:
Either installer downloads the package for your platform, verifies its SHA256, and extracts
it to ~/.local/bin (%LOCALAPPDATA%\Programs\hs on Windows).
With npm, if you already live in the Node ecosystem or just want to try it first:
The npm package is a small launcher; the binary for your platform arrives as an optional dependency, so nothing is downloaded or compiled at install time.
Grab the package for your platform from
Releases, extract it, and place
the executable anywhere on your PATH:
| Platform | File |
|---|---|
| macOS · Apple Silicon | hs-darwin-arm64.tar.gz |
| macOS · Intel | hs-darwin-x64.tar.gz |
| Linux · x64 | hs-linux-x64.tar.gz |
| Windows · x64 | hs-windows-x64.zip |
Every release ships a SHA256SUMS file. Verifying it is recommended:
Both macOS packages are signed and notarized by Apple (Developer ID Application). The Windows package is unsigned; SmartScreen may prompt on first run — choose "More info → Run anyway".
Open a new terminal, sign in, and confirm that hs can read your credit balance:
The CLI and every AI client share ~/.hs/credentials.json; you do not sign in separately.
Both paths use the same hs binary and the same sign-in — pick either, or both.
Use this path for exact commands, scripts, or batch jobs. hs make can start from one sentence or
a complete script, run the creation workflow, wait for the finished video, and download it.
Create a video from one sentence:
Request an MG-style video:
Read a long script from a file:
Or start from your own narration recording — a file on your computer or a public URL:
Huasheng keeps your voice and cuts footage to it. The transcript is optional; without it, Huasheng
transcribes the recording. Supported formats are mp3, wav, flac, mp4 and m4a; hs uploads the
file itself and you never need an internal storage address.
hs make approves the storyboard for you — that spends credits, and it prints how many. To read
the storyboard and its price first, use the step-by-step commands instead. See the
hs CLI guide for parameters, step-by-step editing, resuming, and exporting. See
Scripting and automation for JSON, exit codes, and batches.
hs includes an MCP server. Any AI client that supports local STDIO MCP can launch it with:
This configuration simply tells the client to run hs mcp serve when Huasheng is needed. There is
no separate hs MCP package to install, and you should not keep the command running yourself. If the
client cannot find hs, replace command with the full path from which hs (where hs on Windows).
The following are setup examples for four common clients. For any other MCP client, enter the same
command and args in its MCP server settings.
huasheng and choose STDIOhs; add mcp and serve as the two arguments/mcp and check that huasheng is connectedChatGPT Desktop renders interactive timeline, preview, footage, and export cards. It shares
~/.codex/config.toml with Codex CLI, so this setup also enables hs there.
hs; the default is ~/.local/bin/hsIf you changed the install location, paste the full path from which hs (where hs on Windows).
Continue if the first install warns that the extension is unsigned. Claude Desktop also renders
interactive cards.
Do not add it again if you already configured huasheng in ChatGPT Desktop; both read
~/.codex/config.toml. See the OpenAI MCP documentation.
Both commands run in the same terminal where you just signed in, so plain hs resolves; if your
shell cannot find it, substitute the full path from which hs (where hs on Windows). Codex CLI
and Claude Code present complete text results instead of desktop interactive cards.
After setup, say in your AI client:
Make me a 30-second video about why the sky is blue
You can inspect and refine existing projects too:
List my recent Huasheng projects
Make the narration in clip 2 shorter
Replace clip 3 with more futuristic footage
Use my own file ./b-roll.mp4 for clip 2
Change the narrator to a warmer voice, and tell me the price first
Confirming a storyboard spends credits, and publishing makes the video public. hs marks those
and the other one-way tools (deleting a project, footage or a preference, joining the priority lane)
as destructive, so a client that confirms destructive tools asks you first; hs itself does not
prompt. Changing the voice after production and adding footage to the library spend credits too;
the MCP tools quote the price when asked.
hs never receives your Bilibili password.hs does what the
command says and reports the cost; whether you are asked first is up to you, your script, or your AI client.This simply re-runs the installer. hs never downloads or replaces itself on its own. Once a
day, when you run a command in a terminal, it asks GitHub for the latest release number and prints
one line if yours is older; set HS_NO_UPDATE_CHECK=1 to turn that off.
AI clients that run hs mcp serve keep the old process until they restart. After upgrading, start
a new session in Claude Code or Codex, or quit and reopen Claude Desktop; until then the client is
still on the old version. Upgrading while a client is running is safe on every platform.
Found a problem? Please open an
issue and include the output of
hs --version — it carries the commit and build time, which is the key to diagnosing anything.