[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7C8RBQJCD85PVGPDJY85C8J":3,"skill-same:01M7C8RBQJCD85PVGPDJY85C8J":52},{"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":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":14,"repositoryHtmlUrl":27,"repositoryHomepageUrl":6,"ownerHtmlUrl":28,"ownerBlogUrl":29,"ownerDescription":30,"updatedAt":31,"install":32,"resources":45},"01M7C8RBQJCD85PVGPDJY85C8J","video-maker-raw-material",null,"Prepare and upload the user's own material to Video Maker — screen or camera recordings, product clips, photos, a voice-over, music and the logo — with the right roles, names, specs and orientation for a horizontal (16:9, YouTube\u002Fweb) or vertical (9:16, Reels\u002FTikTok\u002FShorts) video, plus free media from open banks with their licenses and credits. Use it when the user brings files of their own, records their own screen or device, has no recordable web UI, or asks to add photos, clips, music or a voice-over to a video.","e-burgos\u002Fvideo-maker","e-burgos","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F71472902?v=4","01M728XDZXTGQMP76CXHXWT7B6","EstebanBurgos","01M7C8QX5RHWXAXPMG7A62T347",0,"MIT","https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fplugins\u002Fvideo-maker\u002Fskills\u002Fvideo-maker-raw-material\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: video-maker-raw-material\ndescription: Prepare and upload the user's own material to Video Maker — screen or camera recordings, product clips, photos, a voice-over, music and the logo — with the right roles, names, specs and orientation for a horizontal (16:9, YouTube\u002Fweb) or vertical (9:16, Reels\u002FTikTok\u002FShorts) video, plus free media from open banks with their licenses and credits. Use it when the user brings files of their own, records their own screen or device, has no recordable web UI, or asks to add photos, clips, music or a voice-over to a video.\n---\n\n# Raw material\n\nThe footage mode of the studio edits real material: one main video (the A-roll) that sets the length and\nthe cuts, plus support clips and photos, music, logo and narration. This skill gets that material right\nbefore it reaches the studio, so the montage works the first time.\n\nTalk to the user in their language; ask for files by what they are (\"the recording of your phone\", \"a\nphoto of the shop window\"), never by role names or folders.\n\nDetailed specs, ffmpeg recipes and the concept-matching rules: `references\u002Fmaterial-specs.md`.\n\n## 1. Roles\n\n`upload_asset` takes a `role`, an absolute local `filePath` and an optional `filename`:\n\n| Role | What it is | How many |\n| --- | --- | --- |\n| `aroll` | the main video: screen recording, camera, phone, or the user's clip that carries the story | exactly **1** |\n| `broll` | support clips without voice | 0..n |\n| `image` | support photos and screenshots | 0..n |\n| `audio` | the music bed | 0..1 used |\n| `voice` | a voice-over recorded by the user | 0..n |\n| `logo` | the logo, **with transparency** | 0..1 used |\n| `reference` | a video the user wants theirs to feel like (pace, style), analysed with a `reference` job | 0..n |\n\nEvery montage starts from an A-roll. If the user only has photos, a `photo-aroll` job turns them into\none (or make a motion video instead).\n\n## 2. Names\n\n- File names are ASCII, lowercase, no spaces, no folders: `shop-window.jpg`, not `Shop Window (1).JPG`.\n- **Support clips and photos are named by the concept the narration says**, one word per concept:\n  `shelves.mp4` appears when the voice says \"shelves\". `IMG_2041.jpg` or `screen-01.mp4` never appear.\n  Repeat each concept in the script as often as the preset needs (3 times for `software-demo`,\n  `hardware`, `recipe`; 4 for `educational`). See `references\u002Fmaterial-specs.md` §3.\n- The A-roll, music, logo and voice-over can have any name.\n- An existing name cannot be uploaded again: pick a new name (the user deletes old files in the studio).\n\n## 3. Specs that matter\n\n| Material | Rule |\n| --- | --- |\n| Orientation | everything in the orientation of the output: 16:9 for YouTube and web, 9:16 for reels. A horizontal recording in a vertical video is cropped at the sides and the UI becomes unreadable. A second format is a second recording. |\n| Video | `.mp4` `.mov` `.mkv` `.avi` `.webm`; H.264 yuv420p, 25–60 fps constant; 1920×1080 or 1080×1920 (≥ 1280×720) |\n| A-roll audio | silent when the studio generates the voice; with a clear voice track when the user narrates in it |\n| Support clips | 5–30 s, without audio, same orientation |\n| Photos | `.jpg` `.jpeg` `.png` `.webp` (no svg, gif, heic), ≥ 1280 px on the long side |\n| Music | `.mp3` `.wav` `.m4a` `.aac` `.flac`, **longer than the video**, no lyrics in the narration's language |\n| Logo | PNG (or webp) **with alpha**, ≥ 800 px wide, horizontal works best; check `pix_fmt` (`rgba`, `ya8`, `pal8` have alpha; `rgb24`, `yuv420p` do not) |\n| Voice-over | WAV 48 kHz mono or MP3 ≥ 128 kbps, one continuous take, no music |\n\nMeasure every file with `ffprobe` before uploading; after uploading, `probe_media` and `extract_frames`\n(videos) or `view_images` (photos) show the studio's view. Fix with ffmpeg (recipes in the reference),\nnever by asking the user to install an editor.\n\n## 4. Look before you use\n\n- Look at a frame of every video and at every photo: what does it really show? The script and the\n  concept names come from that, not from the file name.\n- Nothing with real customer data, emails, credentials, license plates or other companies' brands. Ask\n  before using photos with recognizable people.\n- Before proposing the video, `view_images` on every image and `review_material` with an honest verdict\n  per file (fits, doubtful, unfit) and the gaps; the proposal carries those warnings to the user. Skip\n  both when the only image is the logo.\n\n## 5. Free media\n\nWhen the user has no material for a concept, offer to search free media and wait for the OK:\n\n- Video and photos: `search_free_media` (Wikimedia Commons and the NASA library) with `kind` video or\n  image, then `import_media` with the chosen `resultId`. It lands as support material and its credit is\n  recorded in the project's credits file.\n- Music: `search_free_music` with a mood that includes the kind of video (\"calm tutorial\", \"upbeat\n  product promo\"), then `import_music`. Results come first from the brand's own bank, then Openverse\n  (CC BY, CC0, public domain; never share-alike) and Wikimedia Commons.\n- Material from a URL the user gives: download it outside the repo and `upload_asset` it; record its\n  title, author, license and source with `write_project_text` in `work\u002Fcredits.json`.\n- Licenses: CC BY requires the credit in the publication's description; say so when delivering. Never\n  use material whose license you could not confirm.\n\n## 6. Recipes by goal\n\n| The user has | Do |\n| --- | --- |\n| A screen recording of their own | normalize to 1080p30 silent (reference §2), `aroll`; script with `[m:ss]` marks; voice job; montage with `voice: \"script\"` and `subtle-lower` captions |\n| A recording where they already speak | `aroll` with its audio; montage without `voice` (the speech is transcribed); pass the script text if they have it so captions spell names right |\n| Photos and clips of their business, no main video | the best clip as `aroll` (or `photo-aroll` from photos), the rest as concept-named support; script repeating 2–4 concepts; preset `hardware` for an ad |\n| Only a logo and some photos | a motion video is usually better: hand over to `video-maker-motion-brief` with the photos as images |\n| Their own voice-over and a silent recording | the montage does not mix a loose voice-over: mux it onto the recording with ffmpeg (reference §2), upload the result as `aroll` and run the montage without `voice`; keep the original voice-over also as role `voice` |\n\nAfter uploading, continue with the entry skill's footage steps.\n","# Raw material\n\nThe footage mode of the studio edits real material: one main video (the A-roll) that sets the length and\nthe cuts, plus support clips and photos, music, logo and narration. This skill gets that material right\nbefore it reaches the studio, so the montage works the first time.\n\nTalk to the user in their language; ask for files by what they are (\"the recording of your phone\", \"a\nphoto of the shop window\"), never by role names or folders.\n\nDetailed specs, ffmpeg recipes and the concept-matching rules: `references\u002Fmaterial-specs.md`.\n\n## 1. Roles\n\n`upload_asset` takes a `role`, an absolute local `filePath` and an optional `filename`:\n\n| Role | What it is | How many |\n| --- | --- | --- |\n| `aroll` | the main video: screen recording, camera, phone, or the user's clip that carries the story | exactly **1** |\n| `broll` | support clips without voice | 0..n |\n| `image` | support photos and screenshots | 0..n |\n| `audio` | the music bed | 0..1 used |\n| `voice` | a voice-over recorded by the user | 0..n |\n| `logo` | the logo, **with transparency** | 0..1 used |\n| `reference` | a video the user wants theirs to feel like (pace, style), analysed with a `reference` job | 0..n |\n\nEvery montage starts from an A-roll. If the user only has photos, a `photo-aroll` job turns them into\none (or make a motion video instead).\n\n## 2. Names\n\n- File names are ASCII, lowercase, no spaces, no folders: `shop-window.jpg`, not `Shop Window (1).JPG`.\n- **Support clips and photos are named by the concept the narration says**, one word per concept:\n  `shelves.mp4` appears when the voice says \"shelves\". `IMG_2041.jpg` or `screen-01.mp4` never appear.\n  Repeat each concept in the script as often as the preset needs (3 times for `software-demo`,\n  `hardware`, `recipe`; 4 for `educational`). See `references\u002Fmaterial-specs.md` §3.\n- The A-roll, music, logo and voice-over can have any name.\n- An existing name cannot be uploaded again: pick a new name (the user deletes old files in the studio).\n\n## 3. Specs that matter\n\n| Material | Rule |\n| --- | --- |\n| Orientation | everything in the orientation of the output: 16:9 for YouTube and web, 9:16 for reels. A horizontal recording in a vertical video is cropped at the sides and the UI becomes unreadable. A second format is a second recording. |\n| Video | `.mp4` `.mov` `.mkv` `.avi` `.webm`; H.264 yuv420p, 25–60 fps constant; 1920×1080 or 1080×1920 (≥ 1280×720) |\n| A-roll audio | silent when the studio generates the voice; with a clear voice track when the user narrates in it |\n| Support clips | 5–30 s, without audio, same orientation |\n| Photos | `.jpg` `.jpeg` `.png` `.webp` (no svg, gif, heic), ≥ 1280 px on the long side |\n| Music | `.mp3` `.wav` `.m4a` `.aac` `.flac`, **longer than the video**, no lyrics in the narration's language |\n| Logo | PNG (or webp) **with alpha**, ≥ 800 px wide, horizontal works best; check `pix_fmt` (`rgba`, `ya8`, `pal8` have alpha; `rgb24`, `yuv420p` do not) |\n| Voice-over | WAV 48 kHz mono or MP3 ≥ 128 kbps, one continuous take, no music |\n\nMeasure every file with `ffprobe` before uploading; after uploading, `probe_media` and `extract_frames`\n(videos) or `view_images` (photos) show the studio's view. Fix with ffmpeg (recipes in the reference),\nnever by asking the user to install an editor.\n\n## 4. Look before you use\n\n- Look at a frame of every video and at every photo: what does it really show? The script and the\n  concept names come from that, not from the file name.\n- Nothing with real customer data, emails, credentials, license plates or other companies' brands. Ask\n  before using photos with recognizable people.\n- Before proposing the video, `view_images` on every image and `review_material` with an honest verdict\n  per file (fits, doubtful, unfit) and the gaps; the proposal carries those warnings to the user. Skip\n  both when the only image is the logo.\n\n## 5. Free media\n\nWhen the user has no material for a concept, offer to search free media and wait for the OK:\n\n- Video and photos: `search_free_media` (Wikimedia Commons and the NASA library) with `kind` video or\n  image, then `import_media` with the chosen `resultId`. It lands as support material and its credit is\n  recorded in the project's credits file.\n- Music: `search_free_music` with a mood that includes the kind of video (\"calm tutorial\", \"upbeat\n  product promo\"), then `import_music`. Results come first from the brand's own bank, then Openverse\n  (CC BY, CC0, public domain; never share-alike) and Wikimedia Commons.\n- Material from a URL the user gives: download it outside the repo and `upload_asset` it; record its\n  title, author, license and source with `write_project_text` in `work\u002Fcredits.json`.\n- Licenses: CC BY requires the credit in the publication's description; say so when delivering. Never\n  use material whose license you could not confirm.\n\n## 6. Recipes by goal\n\n| The user has | Do |\n| --- | --- |\n| A screen recording of their own | normalize to 1080p30 silent (reference §2), `aroll`; script with `[m:ss]` marks; voice job; montage with `voice: \"script\"` and `subtle-lower` captions |\n| A recording where they already speak | `aroll` with its audio; montage without `voice` (the speech is transcribed); pass the script text if they have it so captions spell names right |\n| Photos and clips of their business, no main video | the best clip as `aroll` (or `photo-aroll` from photos), the rest as concept-named support; script repeating 2–4 concepts; preset `hardware` for an ad |\n| Only a logo and some photos | a motion video is usually better: hand over to `video-maker-motion-brief` with the photos as images |\n| Their own voice-over and a silent recording | the montage does not mix a loose voice-over: mux it onto the recording with ffmpeg (reference §2), upload the result as `aroll` and run the montage without `voice`; keep the original voice-over also as role `voice` |\n\nAfter uploading, continue with the entry skill's footage steps.\n",{"name":5,"description":7},"main","c3d54dc0db791f99e689a6b86ece5b6099b12809","plugins\u002Fvideo-maker\u002Fskills\u002Fvideo-maker-raw-material","https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker","https:\u002F\u002Fgithub.com\u002Fe-burgos","https:\u002F\u002Festebanburgos.com.ar\u002F","More than 12 years of experience in different technology companies, I am oriented to design and develop productive and profitable software solutions. ","2026-11-15 03:24:14",{"source":8,"skillName":5,"commands":33,"prompt":43,"zipAvailable":44},[34,37,40],{"tool":35,"command":36},"npx","npx skills add e-burgos\u002Fvideo-maker --skill video-maker-raw-material",{"tool":38,"command":39},"bunx","bunx skills add e-burgos\u002Fvideo-maker --skill video-maker-raw-material",{"tool":41,"command":42},"pnpm","pnpm dlx skills add e-burgos\u002Fvideo-maker --skill video-maker-raw-material","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fplugins\u002Fvideo-maker\u002Fskills\u002Fvideo-maker-raw-material\u002FSKILL.md",true,[46],{"path":47,"resourceType":48,"resourceTypeDesc":49,"sizeBytes":50,"sourceHtmlUrl":51},"references\u002Fmaterial-specs.md","REFERENCE","参考文档",5402,"https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fplugins\u002Fvideo-maker\u002Fskills\u002Fvideo-maker-raw-material\u002Freferences\u002Fmaterial-specs.md",[53,60,67,74,81,88],{"skillNo":54,"name":55,"nameZh":6,"description":56,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":57,"categories":58,"keywords":59,"publishedAt":19},"01M7C8WJD3Y1T31YNSK5BFZKJ1","video-producer","Productor de video conversacional del Video Maker Studio. Parte de un prompt del usuario y del material que haya en `media\u002F\u003Cslug>\u002Fraw\u002F` (videos, fotos, pantallas grabadas, locución, música, guion, o nada), acuerda con el usuario qué video hacer y lo produce con las herramientas ya implementadas (guion, voz Piper, montaje, captions, mezcla, render), buscando medios libres solo cuando el usuario lo pide o no hay material. Invocar con `\u002Fvideo-producer media\u002F\u003Cslug>` o cuando el usuario pida \"armá\u002Fgenerá un video\" sobre un proyecto.","https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fsdd\u002Fskills\u002Fvideo-producer\u002FSKILL.md",[],[],{"skillNo":61,"name":62,"nameZh":6,"description":63,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":64,"categories":65,"keywords":66,"publishedAt":19},"01M7C8WDBXCXT0K71MXSX11HVX","tucu-ui-pro","Usar siempre que un frontend React\u002FNext use (o vaya a usar) @e-burgos\u002Ftucu-ui — montarlo en Vite, Next 16 o una app con Tailwind propio, elegir ThemeProvider\u002Flayout\u002Fpreset, tematizar con customPaletteColor y tokens --tucu-*, elegir el componente correcto con sus props válidos y esquivar las trampas que rompen en runtime, con o sin el MCP tucu-ui conectado.","https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fsdd\u002Fskills\u002Ftucu-ui-pro\u002FSKILL.md",[],[],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":19},"01M7C8W9MEXVQZPN9EP391J9YN","setup-graphify","Instala y configura graphify (grafo de conocimiento del repo) para un dev que lo quiera usar. Elige un backend gratuito, valida el modelo con una medición real y construye el primer grafo. Invocar solo si el dev pide habilitar graphify.","https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fsdd\u002Fskills\u002Fsetup-graphify\u002FSKILL.md",[],[],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M7C8W3NAKN7QQWWCGZ2GH9M7","sdd-steward","Conserje del kit SDD - puerta de entrada para status del harness, actualización de la librería, arranque de ideas, costos y salud de los arneses. Clasifica cualquier pedido con la tabla de ruteo, ejecuta solo lo que no tiene otro dueño y delega el resto sin bypassear gates. Invocar ante cualquier pregunta u operación sobre el kit en sí.","https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fsdd\u002Fskills\u002Fsdd-steward\u002FSKILL.md",[],[],{"skillNo":82,"name":83,"nameZh":6,"description":84,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":19},"01M7C8W0M5MPXACHFBRHRCJE58","sdd-reviewer","Skill del Agente Reviewer SDD. Valida la calidad de todo el output del ciclo y ejecuta los gates de cierre. Invocar cuando todas las tasks de implementación del ciclo estén completas.","https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fsdd\u002Fskills\u002Fsdd-reviewer\u002FSKILL.md",[],[],{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":94,"publishedAt":19},"01M7C8VY27546VQSRY8E3AQ7XN","sdd-planner","Skill del Agente Planner SDD. Convierte historias de usuario en tasks técnicas ordenadas y estimadas. Invocar después del Funcional, en paralelo con el Arquitecto.","https:\u002F\u002Fgithub.com\u002Fe-burgos\u002Fvideo-maker\u002Fblob\u002Fmain\u002Fsdd\u002Fskills\u002Fsdd-planner\u002FSKILL.md",[],[]]