meta-muse-video-analysis
Skill21 starsChanged 7 months agoMITView on GitHub
Analyze local video files with the fixed Meta Model API model Muse Spark 1.2 Contributor and a user-defined prompt. Use when Codex or Claude Code is asked to inspect, summarize, transcribe, timestamp, inventory, review, or extract information from a video and the META_MUSE_KEY Windows environment variable is available.
In this repository22 other files it gives its agents.
- 2d-pixel-assetSkill
- anthropic-skilljar-extractorSkill
- audio-to-midiSkill
- auto-researchSkill
- gemini-image-genSkill
- gemini-web-media-analysisSkill
- google-ai-studio-ttsSkill
- hermes-tweetSkill
- link-downloadSkill
- llama-cppSkill
- midi-synthSkill
- opencodeSkill
- seedanceSkill
- tech-product-landingSkill
- unreal-best-practicesSkill
- unreal-blueprint-codegenSkill
- unreal-gasSkill
- unreal-pcg-pythonSkill
- unreal-thirdpartySkill
- video-downloadSkill
- video-fetch-and-summarizeSkill
- video-summarizerSkill
The file
We split this skill into the rules it gives an agent
8 rules. About 0 are common, 3 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 31
Read the API key only from META_MUSE_KEY.
- Very specific: line 32
Use only muse-spark-1.2-contributor through https://api.meta.ai/v1.
- Very specific: line 34
Check the model catalog before upload.
- Very specific: line 36
Delete the remote file after the response, including after failures.
- Distinctive: line 37
Do not silently preprocess, transcode, shorten, or split the video.
- Distinctive: line 38
Treat Contributor uploads as externally shared data.
- Distinctive: line 39
Do not print, log, persist, or copy the API key.
- Very specific: line 49
If neither prompt option is supplied, the script reads redirected stdin or asks interactively.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Meta Muse Video Analysis
Analyze one local video with scripts/analyze_video.py. Keep the model fixed; never add or substitute a model selector.
Workflow
- Resolve the user's video to an absolute local path.
- Preserve the user's analysis prompt verbatim unless they ask for prompt improvement.
- Confirm that
META_MUSE_KEYexists without printing its value. - Run:
python "<skill-directory>\scripts\analyze_video.py" "C:\absolute\path\video.mp4" --prompt "Describe the requested analysis"For long or multiline prompts, write the prompt to a temporary UTF-8 text file and use --prompt-file. Use --output when the user requests a saved result:
python "<skill-directory>\scripts\analyze_video.py" "C:\absolute\path\video.mp4" --prompt-file "C:\absolute\path\prompt.txt" --output "C:\absolute\path\analysis.md"- Return the analysis or link the saved output. Surface API errors exactly enough to diagnose access, quota, format, or region issues, but never expose the API key.
Operational rules
- Read the API key only from
META_MUSE_KEY. - Use only
muse-spark-1.2-contributorthroughhttps://api.meta.ai/v1. - In Codex, run the script with network approval. The key may be visible only in the approved outside-sandbox process; never copy it into command arguments or output.
- Check the model catalog before upload. If Contributor access is absent, stop without uploading and never fall back to standard
muse-spark-1.2. - Upload the video through the Files API and attach it to a Responses API request.
- Delete the remote file after the response, including after failures. Use
--keep-uploadonly when the user explicitly asks to retain it. - Do not silently preprocess, transcode, shorten, or split the video. If Meta rejects its format or size, report that limitation and ask before transforming the source.
- Treat Contributor uploads as externally shared data. Warn before sending secrets, private customer material, unreleased footage, or other sensitive content unless the user has already confirmed that the Contributor data terms are acceptable.
- Do not print, log, persist, or copy the API key.
CLI reference
analyze_video.py VIDEO (--prompt TEXT | --prompt-file FILE)
[--output FILE] [--json] [--keep-upload]
[--timeout SECONDS]If neither prompt option is supplied, the script reads redirected stdin or asks interactively. --json emits a machine-readable result envelope. Progress and warnings go to stderr; the analysis goes to stdout.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

