Done — I fully ported skills/creative/manim-video/ into a new pi package/extension repo and wired /manim.
Repo: ~/dev/pi-manim-video
Remote: [REDACTED]:maujim/pi-manim-video.git (created via pnpm dlx gh-axi repo create ... --clone)
Pushed commit: 9542d3b
extensions/manim-video/index.ts
/manimresources_discover to load bundled skill:
skills/manim-video/SKILL.mdskills/manim-video/SKILL.mdskills/manim-video/README.mdskills/manim-video/references/* (all files)skills/manim-video/scripts/setup.shI replaced the old setup behavior with a lighter checker that:
uv checks for Python + Manim executablepdflatex and ffmpegExecuted successfully:
And confirmed via pi list.
If you want, I can now add a /manim-init helper command that scaffolds a fresh project folder (plan.md, script.py, concat.txt) in one shot.
Yes — absolutely possible.
In pi, skills themselves are just prompt content, but your extension command (/manim) can control model selection before dispatching /skill:manim-video.
In /manim handler:
await pi.setModel(targetModel)pi.sendUserMessage("/skill:manim-video ...")Optionally:
agent_end), orpi.registerProvider())./manim-model set provider/model-id).If you want, I can patch your pi-manim-video extension to do exactly this with a default + optional auto-restore toggle.
Yep — done ✅
I added explicit provenance tracking to ~/dev/pi-manim-video and pushed it.
README.md now includes:
e902e55b26aab4658debab070fc1048b22517158references/scripts/UPSTREAM.md (new file) with:
setup.sh is intentionally adapted (lightweight, no auto-install)22cd475[REDACTED]:maujim/pi-manim-video.gitIf you want, I can also add a tiny /manim-upstream command that prints this provenance info in-chat so you can quickly inspect source/commit without opening files.
Committed and pushed already ✅
Latest pushed commit is:
22cd475 on master[REDACTED]:maujim/pi-manim-video.gitAnd right now: no uncommitted changes.
On your question: currently this skill does NOT enforce fresh uv env / uvx manim.
What it does today:
uv only to verify availabilitymanim -ql ...manim -qh ...pip install ... snippets for optional voiceover toolingSo execution is effectively in the user’s existing env / PATH, unless the model decides otherwise.
If you want, I can patch it so the skill consistently prefers one strategy, e.g.:
uvx manim ... (tool-style ephemeral execution), oruv run --no-project manim ..., oruv venv && uv pip install ... instructions.Done — committed and pushed ✅
798b1c8docs: prefer uvx for one-offs and uv run/project env for mature workflows[REDACTED]:maujim/pi-manim-video.gitPreviously it didn’t enforce this clearly.
Now the skill/docs explicitly guide:
uvx manim ...uv run --no-project manim ...uv env (venv + pinned deps)I updated:
skills/manim-video/SKILL.mdskills/manim-video/references/rendering.mdskills/manim-video/references/troubleshooting.mdskills/manim-video/references/production-quality.mdIf you want, I can also add a strict /manim-mode oneoff|mature|repro command that injects the chosen policy into the session automatically.
Done ✅
798b1c8 docs: prefer uvx for one-offs and uv run/project env for mature workflowspi update git:[REDACTED]:maujim/pi-manim-videoDone ✅ — updated, committed, pushed, and refreshed in Pi.
I taught the extension/skill to keep render logs out of LLM context by default:
skills/manim-video/SKILL.md
stdout+stderr to log filetail -n 120)tee only when explicit live streaming is neededskills/manim-video/references/rendering.md
uvx + log redirection, failure handling, optional tee streaming).extensions/manim-video/index.ts
/manim now appends a short render-policy instruction every time it dispatches /skill:manim-video, to reinforce this behavior operationally.0389ed9feat: enforce render log redirection to keep Manim output out of contextorigin/masterpi update git:[REDACTED]:maujim/pi-manim-video