video-transcription
Transcribe remote HTTPS videos, or local videos after a PostPlus media-file upload, into timed transcripts and subtitle-ready artifacts using hosted Whisper video-to-text. Use this when the input is a video and the goal is speech extraction, caption generation, or edit-prep timing.
How do I install this agent skill?
npx skills add https://github.com/postplusai/postplus-skills --skill video-transcriptionIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The video-transcription skill transcribes media using a hosted Whisper model. It handles authentication through local configuration files and uses yt-dlp to download media. It possesses an inherent attack surface for indirect prompt injection by processing unverified transcription text from external media.
- Socketwarn
1 alert: gptAnomaly
- Snykwarn
Risk: MEDIUM · 1 issue
What does this agent skill do?
Video Transcription
Use When
- The input is a video file and the goal is speech extraction, timed transcript, caption generation, multilingual transcript, or edit-prep timestamps.
- Use
video-analysisinstead when the user needs semantic visual analysis.
Do Not Use When
- The task belongs to ideation, QA, or another released skill listed in the handoff section.
- Required inputs are missing and guessing would change the result.
Execution Boundary
- Hosted video transcription runs through the public
postplus media transcribeverb and is async. The generated example below shows the endpoint key. - The transcription submit command accepts a remote HTTPS video URL. For a local
video file, first run the generic hosted upload step, read
output.data.download_urlfrom the upload result, then pass that HTTPS URL to--video. - Request timestamps by default when results drive subtitles or edit decisions.
- Hosted video transcription is async. Submit writes request, response, manifest, normalized transcript path, generation handle, provider status, provider URLs, and artifacts when already completed.
Source And Path
- Before submit, derive
durationSecondsfrom the source video or uploaded source URL and include it in the hosted capability request input for billing/preflight. - Start with one source file before larger batches.
- Keep internal requests, responses, normalized transcripts, and downloaded
artifacts under
.postplus/video-transcription; keep final user-facing transcript exports outside.postplus.
Handoff
- If status is pending, return the manifest path, the
output.data.idgeneration handle, and the poll commandpostplus media poll --handle <output.data.id>(waits in-command up to 45s per invocation; rerun while pending). Do not keep the conversation open just to poll. - When completed, hand off
normalizedTranscriptPath, downloaded artifacts, and final transcript paths tosubtitle-packagerif SRT/ASS is needed.
Stop Conditions
- Stop when required user intent, source evidence, or owned input artifacts are missing and guessing would change the result.
- If an owned CLI or script command fails, report the exact error and stop. Do not bypass the failure with metadata-only answers, readiness probing, local payload rewrites, fallback providers, or unpublished tools.
Public Command Boundary
- Choose the smallest matching command or workflow from the user input and run it directly.
- Readiness diagnostics:
postplus doctor --skill video-transcription. - If an owned CLI or script command fails, report the exact error and stop. Do not bypass the failure with metadata-only answers, readiness probing, local payload rewrites, fallback providers, or unpublished tools.
- Use
postplus media schema --jsononly when you need the full endpoint, flag, and enum contract or are repairing an unknown request shape. - Run the hosted transcription job with the generated command below; do not call provider APIs directly.
- For a local file, first run
postplus media-file upload --skill video-transcription --input-file <video-file> --mime <video/mp4|video/quicktime|video/webm> --output <upload.json>. Then read the HTTPSoutput.data.download_urlfrom<upload.json>and pass that URL as--video. Do not pass local paths,file://URLs, orstorageReferenceobjects topostplus media transcribe. - If the CLI returns a quote-confirmation challenge, run
postplus quote confirm --json --challenge-file <challenge.json>and retry with the returned token.
postplus media transcribe transcription-video \
--video <video> \
--duration-seconds <duration-seconds> \
--output <result.json>
<!-- END GENERATED EXECUTION EXAMPLE -->How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/postplusai/postplus-skills/video-transcription">View video-transcription on skillZs</a>