Installation guide

harry0703/MoneyPrinterTurbo installation guide

MIT-licensed Python application that turns a topic, title, prompt, or script into a finished short video by generating a script, obtaining stock or AI-generated footage, synthesizing speech, creating subtitles, mixing music, and rendering an MP4; it offers WebUI, API, CLI, and AI-agent entry points, including a portable SKILL.md plus helper workflow that a terminal-capable Claude Code session could use, but no native Claude Code plugin, hook, or MCP integration is evidenced.

Install MoneyPrinterTurbo on macOS Tahoe (Apple silicon)

What you are installing

MoneyPrinterTurbo is an MIT-licensed Python application that turns a topic, keyword, or script into a short video. Its documented features include script generation, stock or local footage, text-to-speech, subtitles, background music, WebUI, API, and command-line interfaces. The repository requires Python 3.11 or newer and recommends Python 3.11. A GPU is optional; the documentation says cloud-based language models, cloud TTS, and online media sources place more importance on CPU and memory.

This guide uses the repository’s preferred macOS method: `uv`. The supplied documentation supports macOS 11 or newer, so macOS Tahoe meets the stated operating-system requirement. It does not provide a separate Apple-silicon procedure, require Rosetta, or document Apple-silicon-specific acceleration. Therefore, use the ordinary macOS commands below rather than adding undocumented architecture workarounds.

Relationship to Claude Code: **unclassified**

The repository includes a portable Agent Skill and says an AI agent with terminal, network, filesystem, and long-running-command support can use it to install the application and generate a finished video. However, the supplied first-party files do not explicitly document a native Claude Code plugin, hook, MCP server, Claude Code installation directory, or tested Claude Code integration. Mentions of Anthropic Claude as an LLM provider concern video-script generation, not extension of Claude Code. The Claude Code mechanism is therefore **unclassified** rather than assumed.

Before you begin

You need:

Do not paste API keys into commands shown in this guide. Configure them through the WebUI as documented. API usage, AI-generated footage, and automatic social publishing may involve third-party costs or data transfer.

1. Open Terminal

Open **Terminal** from macOS. Run each command block separately, then wait until it finishes before continuing. Commands beginning with `cd MoneyPrinterTurbo` expect the preceding clone command to have succeeded.

2. Install `uv`

The project recommends `uv` for Python and dependency management. Its Agent Skill supplies this macOS installation command:

curl -LsSf https://astral.sh/uv/install.sh | sh

When it finishes, follow any message printed by the installer about making `uv` available to your shell. If the current Terminal session still cannot find `uv`, close Terminal, reopen it, and continue. This guide does not substitute Homebrew or another installer because no corresponding command was supplied by the repository.

3. Download MoneyPrinterTurbo

Clone the public repository:

git clone https://github.com/harry0703/MoneyPrinterTurbo.git

This creates a `MoneyPrinterTurbo` folder inside Terminal’s current directory. Enter it:

cd MoneyPrinterTurbo

Keep Terminal in this project root for the remaining commands. The WebUI script must be launched from the root directory.

4. Install Python 3.11 and locked dependencies

Ask `uv` to install the documented Python version:

uv python install 3.11

Now synchronize the project using its lock file:

uv sync --frozen

The repository identifies `pyproject.toml` as its primary dependency definition and `uv.lock` as the lock file, and recommends `uv sync --frozen`. The project is an application rather than a Python package intended for publication. Let this step finish fully; media and transcription dependencies can make installation take some time.

The repository also documents a legacy `venv + pip` route, but do not combine it with this `uv` installation. The `uv` route is the preferred macOS path and provides the clearest reproducible setup from the supplied sources.

5. Start the WebUI

From the `MoneyPrinterTurbo` root, run:

sh webui.sh

The script automatically uses the project virtual environment or `uv` and selects an available local port. The documentation says it should open a browser automatically. If the page is blank, it recommends trying Chrome or Edge.

On first launch, the application automatically creates `config.toml` from `config.example.toml`. You do not need to copy that file manually for this local `uv` installation. In the WebUI’s basic settings, choose and configure your language-model provider, footage source, and any required API keys. Treat `config.toml` as sensitive because it may contain credentials; do not publish it or paste its complete contents into support requests.

The project supports many provider choices, including Anthropic Claude, OpenAI, Gemini, Kimi/Moonshot, DeepSeek, Qwen, Azure OpenAI, Ollama, and compatible gateways. This is provider support inside MoneyPrinterTurbo and does not install Claude Code.

6. Create a first video

Use the WebUI to enter a subject or a custom script and select your desired settings. Documented options include portrait `1080x1920` video, landscape `1920x1080` video, subtitles, voice, background music, clip length, and multiple generated versions.

For a simple start, Edge TTS requires no API key. Online stock-footage providers such as Pexels or Pixabay require whatever credentials the interface requests. Review the terms, licensing, and cost rules of every selected provider. AI-generated footage and the documented Seedance path may create paid tasks; the repository specifically requires explicit confirmation before Seedance charges in its CLI workflow.

Generated background music comes from `resource/songs`, and subtitle fonts come from `resource/fonts`. The repository warns that some included music originated from YouTube and should be removed if it infringes rights, so verify that you have suitable rights before publishing a video.

To stop the WebUI, return to the Terminal window running it and use Terminal’s normal interrupt shortcut, **Control-C**.

7. Optional: use the command line

After configuration, you can generate a video without a browser. From the project root, the documented basic command is:

uv run python cli.py --video-subject "人工智能如何改变日常生活"

Replace the quoted Chinese subject with your own topic while preserving the command structure. To see the application’s documented options:

uv run python cli.py --help

CLI subtitle style and voice settings use this priority: explicit CLI arguments, saved WebUI `[ui]` settings in `config.toml`, then built-in defaults. Other generation settings do not automatically inherit every WebUI value. If you selected uploaded custom audio in the WebUI, the CLI requires an explicit custom-audio argument; consult `--help` rather than guessing its syntax.

8. Optional: start the API

To run the application’s API service from the project root:

uv run python main.py

Its documented local API pages are:

The API permits same-origin browser access by default. Do not change CORS settings unless you understand why a separately hosted browser frontend needs access.

Troubleshooting

If video processing reports that no FFmpeg executable can be found, the README says FFmpeg is normally downloaded and detected automatically. Its manual-download example is Windows-specific, so the supplied files do not support a macOS installation command to add here. Report the exact error through the repository’s issue tracker rather than using an invented package-manager command.

If macOS reports too many open files, first inspect the current limit:

ulimit -n

The repository documents this temporary increase:

ulimit -n 10240

Then retry the failed operation from that Terminal session.

Whisper subtitles are optional; the default `edge` subtitle mode uses TTS timestamps and does not require a GPU. The `whisper` mode uses `faster-whisper`, and its first use downloads a model. The default `large-v3` model is approximately 3 GB, while the documented `large-v3-turbo` alternative is approximately 1.6 GB. Configure this only after the basic installation works.

For security vulnerabilities, do not publish technical details in a public issue. Use GitHub private vulnerability reporting when available; otherwise, open only a minimal public request for a private contact channel. The supplied files do not document update or uninstall commands, so none are recommended here.