Inspiration
Anyone who films talking-head videos knows the worst part of the edit isn't the edit. It's the hour before it: scrubbing through raw clips to work out which of the four attempts at a line was the good one, and discovering a missing line only after the set is packed away. That prep happens on the storage where the footage lands, so it belongs on the NAS.
What it does
footage-selects turns a folder of raw talking-head, interview or podcast clips on a UGREEN AI NAS into a Selects sheet (one Markdown file saved to a folder you pick):
- Clip table: every clip with duration, resolution and transcription status
- Retake groups: each line said more than once, every attempt with clip name and timecode, and the recommended keeper take with a one-line reason
- Set aside: false starts and clips with no usable speech
- Script coverage (optional): give it the script and every line is marked
covered,covered - check by ear, ormissing, so a reshoot happens while it's still cheap
Optionally, after approval, it tags clips fs-keeper / fs-retake / fs-dead and moves dead clips into a _rejects subfolder. It never deletes, trims or re-encodes anything.
How we built it
It's an orchestration Skill under the Uliya Skill Development Standard, built with the UGREEN Skill Developer Package (uliya-skill-kit 0.7.7). The Skill only delegates to registered UGOS experts and passes real returned paths and text downstream:
file-agent:ug-filesystem find+ug-filemgr mediainfoto list clips (bounded to one folder, max 60 clips per run)knowledge-agent:ug-knowledge audio-transcriptionwith timestamped segments, preferring a same-name sidecar transcriptdocument-agent:ug-document qafull read of the script- Written rules group attempts, spot false starts and pick keepers from the returned segments and confidence
knowledge-agent:ug-knowledge save-textto save the sheetfile-agent:ug-filemgrtags +file-workflow batch-move, only with approval
All five delegation states (completed, failed, cancelled, waiting_user, waiting_approval) are handled, and empty or partial results are reported honestly instead of guessed. The package passes the kit's static checker with zero errors and zero warnings. Data never leaves the NAS.
Challenges
The capability catalog describes transcription as working on "NAS audio" and doesn't confirm video containers. Rather than assume, the Skill prefers sidecar .srt/.txt transcripts and records any unsupported clip as "not transcribed" instead of failing the run. Confirming direct .mp4/.mov support is test case #1 on real hardware.
What we learned
Writing an orchestration Skill is mostly about saying what not to do: never invent a timecode, never broaden a search when it comes back empty, never treat chat agreement as platform approval.
What's next
On a real iDX6011 Pro: tune the retake-grouping thresholds against hand-labelled shoots, confirm timecode precision, and test batch limits.
Built With
- claude
- markdown
- ugos
- uliya-skill-kit