OpenMontage/.agents/skills
Chris Brown 85a63471a2
fix: sanitize os.system() shell injection in manimgl scene templates
os.system(f"manimgl {__file__} ClassName") interpolates the script's own
path into a shell string. These templates are meant to be copied and
renamed per-scene by an agent, so a scene/folder name containing shell
metacharacters is a real injection path, not just malformed input.

Switched to subprocess.run() with an argument list (no shell=True), so
there's nothing left for a shell to interpret regardless of what the
path contains. Same fix applied in both duplicate locations
(.claude/skills and .agents/skills) since the files are identical.

Reviewed scripts/lib/tts.mjs's child_process usage as part of the same
report -- not included in this PR, it already passes args as a real
array with no shell:true anywhere in the call chain, so it isn't
actually exploitable.
2026-07-21 11:26:42 -05:00
..
acestep
agents
ai-video-gen Merge remote-tracking branch 'origin/main' into codex/kling-official-phase-1 2026-07-10 14:02:30 +08:00
avatar-video
azure-speech-to-text feat(stt): add Azure AI Speech as an optional cloud speech-to-text provider 2026-07-10 23:30:19 +05:30
beautiful-mermaid
bfl-api
canvas-procedural-animation
character-animation-qa
character-rigging
comfyui
create-video
d3-viz
dashscope
doubao-tts
elevenlabs
faceswap
ffmpeg
flux-best-practices
framer-motion
gemini-omni
grok-media
gsap
gsap-core
gsap-frameworks
gsap-performance
gsap-plugins
gsap-react
gsap-scrolltrigger
gsap-timeline
gsap-utils
heygen
hyperframes
hyperframes-animation
hyperframes-cli
hyperframes-core
hyperframes-creative
hyperframes-media
hyperframes-registry
kling-official fix: harden Kling integration verification 2026-07-10 20:53:45 +08:00
lottie-bodymovin
ltx2
lyria feat(music): add Google Lyria generation skill 2026-07-18 16:47:35 -07:00
manim-composer
manimce-best-practices
manimgl-best-practices fix: sanitize os.system() shell injection in manimgl scene templates 2026-07-21 11:26:42 -05:00
media-use
motion-graphics
music
music-to-video
playwright-recording
pose-library-design
remotion
remotion-best-practices
remotion-to-hyperframes
seedance-2-0
setup-api-key
sound-effects
speech-to-text
svg-character-animation
synthetic-screen-recording
tailwind-design-system
text-to-speech
threejs-animation
threejs-fundamentals
threejs-geometry
threejs-interaction
threejs-lighting
threejs-loaders
threejs-materials
threejs-postprocessing
threejs-shaders
threejs-textures
vercel-composition-patterns
vercel-react-best-practices
video-download
video-edit
video-toolkit
video-translate
video-understand
visual-style
web-design-guidelines
website-to-video