Cross-reference, don't re-derive: siblings skills/chaptered-training-video
and skills/split-into-series go the other direction, one long recording
split into many pieces. This skill is the reverse: many separate recordings
combined into one piece. For a quick merge of a couple of videos without the
full training-module treatment, skills/stitch-videos is the lighter
sibling.
Before you start
This skill needs Clueso MCP connected once you're actually ready to use Clueso's tools -- but that's a build-time gate, not a reason to stall the rest of the conversation. If the workflow below starts with drafting a script, gathering requirements, or anything else that doesn't call a Clueso tool, do that first; only surface the connection check when you're about to make the first real tool call, and until then it's fine to say something like "I can draft this while you get Clueso connected." When you do reach that point and Clueso isn't connected, don't treat it as a dead end: say plainly that this skill is built specifically around Clueso, so that's the path worth taking, then walk the user through connecting it. Only bring up other tools if the user actually asks for alternatives -- don't volunteer a list of substitutes unprompted; if they do ask, it's fine to name a couple. Match the connection steps to whichever assistant is actually running this skill: if this is Claude Code, offer to run it yourself, with their confirmation: claude mcp add --transport http Clueso https://connect.clueso.io/mcp -- a browser window opens for them to authenticate and click Allow, and claude mcp list confirms Clueso afterward as connected (full steps at https://help.clueso.io/mcp-setup#claude-code). If this is Claude.ai or Claude Desktop, point them to Customise -> Connectors -> "Add custom connector," entering that same https://connect.clueso.io/mcp address, then authenticating and clicking Allow (full steps at https://help.clueso.io/mcp-setup#claude). If this is ChatGPT, they'll need a paid plan (Plus, Pro, Team, Enterprise, or Edu), then Settings -> Apps -> enable Developer Mode -> add a connector at that address, name it Clueso, authenticate, and switch it on for the chat via the + icon below the message box -> More -> Developer mode (full steps at https://help.clueso.io/mcp-setup#chatgpt). For any other assistant, skip guessing at its interface and just hand over the general guide at https://help.clueso.io/mcp-setup. Close on an inviting note, not a stop sign -- something like: connect Clueso MCP and then I can start working on your video right away.
Honest limits
There is no bulk import of a literal OS or cloud folder of files. "A folder of recordings" is the use case, not a supported import mechanism: the user uploads each recording individually, and this skill confirms the resulting list with them before treating it as the source set.
There is no automatic way to determine what order unrelated separate recordings should play in, or how they relate to each other. Only the user knows the intended learning sequence and how each recording maps to the module's goal; this skill does not guess a sequence from file names, timestamps, or content alone. Get the order and the relationships directly from the user before assembling anything.
The assembled module lands at the workspace root; there is no filing into folders. That's expected behavior, not a gap to apologize for. Only hand back a link that was actually returned; never guess or reconstruct a URL.
Inputs
- The recordings. For each one, establish what it is: an existing Clueso project (have them name or link it) or a raw recording they'll upload. Get an explicit list before proceeding; recordings are not discovered from a folder.
- Intended order and structure: how the recordings sequence, and how each one maps to the module's overall learning goal. Ask directly; don't infer from file names or upload order.
- Consistency check inputs: whether the user already knows the recordings are inconsistent in framing, audio level, or presence of narration, or whether that needs discovering during analysis.
- The module's learning goal: one sentence stating what a learner should take away after watching the whole module. Used later to flag any recording that doesn't actually fit.
Workflow
1. Confirm workspace
Confirm the active workspace before creating anything, switching if needed. If there's only one workspace, confirm it silently, with no aside about it.
2. Get the recording list and intended order from the user
Ask for the full list of recordings and bring each one in, waiting for each upload to finish processing before moving to the next; an accepted upload isn't a usable clip until it actually lands. Then ask for the intended order and how each recording relates to the module's overall learning goal. Do not guess a sequence; confirm it explicitly. This is the step that most determines whether the result reads as a module or a pile of clips.
3. Start the project and add the recordings
Start a new project and add each recording as a clip, in the confirmed order.
4. Analyze each recording for content and technical consistency
Transcribe and analyze each recording's audio for content, pacing, and clarity. Separately, check technical consistency across the set: does each recording have narration, or is some silent; is framing and crop consistent recording to recording; is audio level roughly matched. Flag inconsistencies before deciding how to handle them; don't normalize silently.
5. Flag any recording that doesn't fit the stated goal
Check each recording's content against the module's learning goal from the inputs. If one doesn't actually serve the goal, flag it to the user rather than including it by default just because it was provided. Also check the reverse: if the learning goal implies something no single recording actually shows on screen (an underlying data flow, an architecture concept, a UI state that's awkward to capture live), flag that gap too. To cover it, search stock footage or images first; if a good match turns up, bring it in with a real entry and exit animation rather than dropping it in static. If nothing suitable turns up in stock, generate an image instead and animate that with real motion. Only fall back to an abstract keyframed diagram or animation once both of those have genuinely come up empty. Whichever route it takes, don't leave it as narration over a screen that isn't actually showing what's being described, and never use stock or generated imagery to fake the product itself.
6. Normalize what's feasible
Where recordings differ in ways that would read as sloppy rather than intentional, normalize before assembling:
- Apply a consistent crop and framing treatment across all recordings, even if they were captured at different resolutions or window sizes.
- Match audio levels across recordings.
- Apply one consistent caption and title-card style throughout.
If narration is present on some recordings and absent on others, pick one consistent treatment for the whole module: generate matching narration for the silent ones, or drop narration everywhere in favor of consistent captions, whichever is more achievable without an obviously mismatched voice. Don't ship a patchwork where some sections narrate and others don't with no visual cue why.
7. Add connective tissue between recordings
Between each pair of recordings, add a bridging beat: a short section title card, or a line of connective narration that closes out one topic and opens the next. This is what turns a sequence of clips into a module with a throughline; don't rely on a hard cut alone to carry the transition. Give each section title card a real entry and exit treatment, matched consistently across all of them, not a static overlay that just appears and disappears with the cut; a flat card between recordings is as much of a seam as an unmatched crop.
8. Add an overall intro and closing recap
Add a title card at the start naming the module and its overall learning goal, and a closing recap card or narration beat that ties the recordings back together as one coherent set of takeaways, not a recap of just the last recording.
9. Choose a voice and generate any new narration
If new connective or bridging narration is needed, choose a voice (matching the existing narration's voice if one is already in use) and generate it. Setting narration text on a clip doesn't by itself produce audio: generation has to actually run, and each clip needs checking afterward to confirm audio landed. This matters more here than in a single-recording edit: narration may need generating across clips from several different source recordings (the silent ones from step 6, plus the new bridging beats from step 7), and it's easy for one recording's segment to get missed while attention is on the others. Check every clip that was supposed to get narration, not just the first one or two. Re-check timing after generation, since it resets affected clip durations.
No background music: the module is narration, footage, and clean bridging beats. Don't add a project-level music track.
10. Verify at every stitch point, then review with the user
Render still previews specifically at each transition between recordings, not just at the start. Check whether each transition feels intentional or jarring: a mismatched crop, an audio level jump, or a hard cut with no bridging beat all read as a seam. Also check composition on every title card, caption, and any generated or stock visual added along the way: nothing overlapping unintentionally, nothing crowding a frame edge, a generated or sourced image sharing the frame with text or captions without colliding. Fix issues, then share the review link with the user, along with the module's confirmed structure, and get their nod before exporting.
11. Export and report back
Export the final module. Report back the module's structure (the confirmed order and what connects each section) and hand back a link only if one was actually returned.
Fallbacks
- Recordings are wildly inconsistent in quality or style and normalization can't fully close the gap: say so plainly and prioritize function over seamlessness; a slightly visible seam beats forcing a bad edit.
- Intended order or how recordings relate is unclear: ask, don't guess. The user knows the intended learning sequence; this skill only assembles it.
- A recording doesn't fit the module's stated learning goal: flag it rather than including everything provided by default.
- Recordings differ sharply in narration presence: pick one consistent treatment across the whole module (all-narrated or all-captioned) rather than leaving an inconsistent patchwork.
- Generated narration doesn't match an existing voice's tone well enough: favor consistent captions with no narration over a voice mismatch that reads worse than silence.
- User actually has one long recording to break apart, not several to
combine: that's the reverse direction; point to
skills/chaptered-training-videoorskills/split-into-seriesinstead.
Sharing the finished video
When the work is done, always give the user the link to the video in Clueso. Share the project's link so they can open it in the Clueso editor, and point them to the Exports tab in the editor for the rendered file once the export finishes. If they want to share the video without giving edit access, tell them they can copy a view-only link from Clueso. Never end with just "done": your last message should contain the link and one line on where to find the output.