Development¶
Development¶
git clone https://github.com/LaplacianAI/manimvox && cd manimvox
uv sync --extra dev --extra kokoro
uv run pytest # about 30 s; offline, no heavy extras needed
uv run ruff check src tests
Tests that need real engines are opt-in:
- uv run pytest -m kokoro needs the Kokoro model in the cache.
- uv run pytest -m piper needs uv sync --extra piper and network access once.
Tests that render with Manim are marked slow.
src/manimvox/
cli.py the manimvox command
tools.py typed tools mirroring the CLI, for agents with no shell
integrations/ adapters for eight agent frameworks
project.py series.json loading and validation
scaffold.py manimvox new
skills.py finds the bundled agent skills
skills_admin.py manimvox skills install|check|update|remove
playlist.py manimvox index and package
runner.py runs Manim in a subprocess
kit/ Episode, components, theme, text (what episodes import)
scenes/ clips from Pillow, Cairo, Matplotlib and Plotly
post/ music bed, captions, cards, join
blocks.py block registry, manimvox add, the preview tool
checks/ theme, layout, audio, contact sheets
voice/ the voice interface, cache, downloads, HTTP, audio conversion
voice/engines/ one module per text-to-speech engine
examples/agents/ one script per framework
skills/ the eleven agent skills (bundled into the wheel)
.claude-plugin/ Claude Code plugin and marketplace manifests
.codex-plugin/ Codex plugin manifest
.cursor-plugin/ Cursor plugin manifest
gemini-extension.json, plugin.json Gemini CLI and agent-plugins manifests
tests/