[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DCBPAC4J6T3HG825ECEXYF":3,"skill-same:01M6DCBPAC4J6T3HG825ECEXYF":57},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":14,"repositoryHtmlUrl":40,"repositoryHomepageUrl":6,"ownerHtmlUrl":41,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":42,"install":43,"resources":56},"01M6DCBPAC4J6T3HG825ECEXYF","audio-extract-mix",null,"Use when extracting, mixing, replacing, ducking, loudness-normalizing, muxing, or analyzing a video or clip audio track with ffmpeg.","Prekzursil\u002Fagent-skills-toolchain","Prekzursil","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F54636077?v=4","01M6DACZ1PCQHD99SCR1YXG28B","Andrei Mihai Visalon","01M6DACZ670WZF535V3WYYSS4Z",0,"MIT","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Fplatform\u002Frouting\u002Ffixtures\u002Fhome\u002F.agents\u002Fskills\u002Faudio-extract-mix\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000016","图像与多媒体","SCENARIO","使用场景",[24,25,26,27,28,29,30,31],"Audio","extract","audio extract mix","analyzing","Video","use","clip","ffmpeg","2026-11-10 10:12:30",false,"---\nname: audio-extract-mix\ndescription: \"Use when extracting, mixing, replacing, ducking, loudness-normalizing, muxing, or analyzing a video or clip audio track with ffmpeg.\"\n---\n\n# audio-extract-mix\n\nExtract \u002F mix \u002F replace \u002F duck \u002F loudness-normalize audio on a clip, the way the\nReframe media_studio sidecar actually does it. Every command below is copied from\nreal source — no invented flags.\n\n## Source modules (read these for ground truth)\n\n- `sidecar\u002Fmedia_studio\u002Ffeatures\u002Faudiomix.py` — `audiomix.merge` (duck→mix→loudnorm)\n  + `audiomix.normalize` (loudnorm only). Owns `build_mix_filter`,\n  `build_mix_argv`, `build_loudnorm_argv`, `PLATFORM_LOUDNESS`,\n  `resolve_loudness_target`.\n- `sidecar\u002Fmedia_studio\u002Ffeatures\u002Ftracks_audio.py` — `tracks.audio.{list,mux,replace,strip}`.\n  Owns `build_mux_argv`, `build_replace_argv`, `build_strip_audio_argv`,\n  `probe_streams`, `original_tracks_from_probe`.\n- `sidecar\u002Fmedia_studio\u002Ffeatures\u002Faudio_saliency.py` — PANNs CNN14 audio tagging +\n  pure RMS `loudness_curve`. Owns `compute_audio_signals`, `peak_windows`,\n  `sample_windows`, the decode argv in `_default_audio_loader`.\n- `sidecar\u002Fmedia_studio\u002Fffmpeg.py` — the shared seam: `ffmpeg_path` \u002F\n  `ffprobe_path` (resolve binary by absolute path), `run` (argv-list Popen,\n  both pipes drained, `-progress` parsing, cooperative cancel),\n  `ffprobe_duration` (drives the progress %).\n\nThe whole module follows one law (audiomix.py docstring, CONTRACTS §4\u002F§6\u002F§7):\n**argv LISTS only, never `shell=True`**; the filter graph and every path is a\nsingle argv element; the ffmpeg binary is resolved by absolute path; both stdout\nand stderr are drained by the shared `run`. Keep that when you hand-run these.\n\n### Recipe 1 — Mix a music bed \u002F VO UNDER speech with sidechain ducking + loudnorm\n### Recipe 2 — Loudness-normalize an export (no bed)\n### Per-platform LUFS targets (`PLATFORM_LOUDNESS`, audiomix.py:67-80)\n### Recipe 3 — Extract \u002F decode audio to raw samples\n### Recipe 4 — Mux \u002F replace \u002F strip an audio track (preserve everything else)\n### Pitfalls that actually bite\n### GPU \u002F HF-model notes (audio_saliency only)\n### Worked example: lay a -10 dB music bed under a TikTok clip at -14 LUFS\n","# audio-extract-mix\n\nExtract \u002F mix \u002F replace \u002F duck \u002F loudness-normalize audio on a clip, the way the\nReframe media_studio sidecar actually does it. Every command below is copied from\nreal source — no invented flags.\n\n## Source modules (read these for ground truth)\n\n- `sidecar\u002Fmedia_studio\u002Ffeatures\u002Faudiomix.py` — `audiomix.merge` (duck→mix→loudnorm)\n  + `audiomix.normalize` (loudnorm only). Owns `build_mix_filter`,\n  `build_mix_argv`, `build_loudnorm_argv`, `PLATFORM_LOUDNESS`,\n  `resolve_loudness_target`.\n- `sidecar\u002Fmedia_studio\u002Ffeatures\u002Ftracks_audio.py` — `tracks.audio.{list,mux,replace,strip}`.\n  Owns `build_mux_argv`, `build_replace_argv`, `build_strip_audio_argv`,\n  `probe_streams`, `original_tracks_from_probe`.\n- `sidecar\u002Fmedia_studio\u002Ffeatures\u002Faudio_saliency.py` — PANNs CNN14 audio tagging +\n  pure RMS `loudness_curve`. Owns `compute_audio_signals`, `peak_windows`,\n  `sample_windows`, the decode argv in `_default_audio_loader`.\n- `sidecar\u002Fmedia_studio\u002Fffmpeg.py` — the shared seam: `ffmpeg_path` \u002F\n  `ffprobe_path` (resolve binary by absolute path), `run` (argv-list Popen,\n  both pipes drained, `-progress` parsing, cooperative cancel),\n  `ffprobe_duration` (drives the progress %).\n\nThe whole module follows one law (audiomix.py docstring, CONTRACTS §4\u002F§6\u002F§7):\n**argv LISTS only, never `shell=True`**; the filter graph and every path is a\nsingle argv element; the ffmpeg binary is resolved by absolute path; both stdout\nand stderr are drained by the shared `run`. Keep that when you hand-run these.\n\n### Recipe 1 — Mix a music bed \u002F VO UNDER speech with sidechain ducking + loudnorm\n### Recipe 2 — Loudness-normalize an export (no bed)\n### Per-platform LUFS targets (`PLATFORM_LOUDNESS`, audiomix.py:67-80)\n### Recipe 3 — Extract \u002F decode audio to raw samples\n### Recipe 4 — Mux \u002F replace \u002F strip an audio track (preserve everything else)\n### Pitfalls that actually bite\n### GPU \u002F HF-model notes (audio_saliency only)\n### Worked example: lay a -10 dB music bed under a TikTok clip at -14 LUFS\n",{"name":5,"description":7},"main","a298c929b6cbd662e1fce54302ce520d5ceea1a5","platform\u002Frouting\u002Ffixtures\u002Fhome\u002F.agents\u002Fskills\u002Faudio-extract-mix","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain","https:\u002F\u002Fgithub.com\u002FPrekzursil","2026-11-02 14:30:57",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add Prekzursil\u002Fagent-skills-toolchain --skill audio-extract-mix",{"tool":49,"command":50},"bunx","bunx skills add Prekzursil\u002Fagent-skills-toolchain --skill audio-extract-mix",{"tool":52,"command":53},"pnpm","pnpm dlx skills add Prekzursil\u002Fagent-skills-toolchain --skill audio-extract-mix","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Fplatform\u002Frouting\u002Ffixtures\u002Fhome\u002F.agents\u002Fskills\u002Faudio-extract-mix\u002FSKILL.md",true,[],[58,79,108,135,149,165],{"skillNo":59,"name":60,"nameZh":6,"description":61,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":64,"publishedAt":32},"01M6DF7D7478R55P46REYH4QAC","clarify-requirements","Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fworkspace-hooks\u002Fskills\u002Fclarify-requirements\u002FSKILL.md",[],[65,66,67,68,69,70,71,72,73,29,74,75,76,77,78],"clarify requirements","clarify","requirements","risk","options","task","prompts","goal","scanning","context","repo","injection","execution","file",{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":88,"publishedAt":32},"01M6DF79CA4BHJS66J8EZDBPWJ","openmm-md","Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein \u002F protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fmcp\u002Fopenmm-md-mcp\u002Fskill\u002Fopenmm-md\u002FSKILL.md",[85],{"categoryNo":86,"categoryName":87,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[89,90,91,92,93,94,95,96,97,98,99,100,101,102,29,103,104,105,106,107],"openmm md","how","decision","pick","linux","analyze","tool","stack","open","NVIDIA","gpu","license","workflow","windows","free","molecular dynamics","local","do","MCP",{"skillNo":109,"name":110,"nameZh":6,"description":111,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":112,"categories":113,"keywords":120,"publishedAt":32},"01M6DF76C1MG85VEWP8VZCBNMN","visual-review","Take screenshots of web pages and UI using Playwright for visual review and iteration","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fvisual-review\u002FSKILL.md",[114,117],{"categoryNo":115,"categoryName":116,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":118,"categoryName":119,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[121,122,123,124,125,126,127,128,129,130,90,131,132,133,134],"review","visual","visual review","pages","web","false","iteration","take","check","slides","ui","screenshot","playwright","screenshots",{"skillNo":136,"name":137,"nameZh":6,"description":138,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":139,"categories":140,"keywords":141,"publishedAt":32},"01M6DF73AQVCBZKEN0YXEX9FXP","status","Diagnostic status report — shows metaswarm installation state, project setup, and potential issues","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstatus\u002FSKILL.md",[],[137,142,143,144,145,146,147,148],"setup","report","project","installation","project setup","issues","state",{"skillNo":150,"name":151,"nameZh":6,"description":152,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":153,"categories":154,"keywords":156,"publishedAt":32},"01M6DF6X6C2XB0P6GX76P7TTYV","start","Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstart\u002FSKILL.md",[155],{"categoryNo":86,"categoryName":87,"taxonomyType":21,"taxonomyTypeDesc":22},[151,157,70,158,159,160,29,161,162,163,164],"start issue","issue","ready","work on issue","user","work","work on","development",{"skillNo":166,"name":142,"nameZh":6,"description":167,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":168,"categories":169,"keywords":170,"publishedAt":32},"01M6DF6QMJ9AJKFKHHKRT005PQ","Interactive project setup — detects your project, configures metaswarm, writes project-local files","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fsetup\u002FSKILL.md",[],[142,144,105,171,146,172],"files","interactive"]