Install
$ agentstack add skill-crysgate-agentskills-video-transcript-explainer ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Video Transcript Explainer
Goal
Produce a high-quality Chinese lecture handout (notes-body.tex -> notes.tex -> notes.pdf) that is complete enough for a diligent reader to master the video without watching it.
The handout must:
- scale in length with video duration and content density
- proactively teach prerequisite knowledge that the speaker assumes
- preserve the full reasoning chain (not only conclusions)
- cover late-video sections with the same rigor as early sections
When To Use
- The user wants subtitle extraction + deep Chinese lecture notes + PDF.
- The user expects a targeted, teachable handout, not a brief summary.
- The user wants adaptive page count (different videos should produce different lengths).
Procedure
- Transcript first (do not change acquisition logic)
- Use
VIDEO_ROOT=~/Desktop/bilibili-video. - Keep output under
"$VIDEO_ROOT/output". - Reuse an existing
transcript.txtfor the same video unless the user explicitly asks for--refresh. - Run:
UV_CACHE_DIR="$VIDEO_ROOT/.uv-cache" uv run --with yt-dlp --with mlx-whisper python ~/.codex/skills/video-transcript-explainer/scripts/video_transcript.py ""
- This step is network-dependent; prefer escalated execution in sandboxed environments.
- Add
--cookies /path/to/cookies.txtonly for gated videos. - Add
--save-cookies-from-browser chromeonce if the user wants reusable Bilibili login cookies. - Add
--refreshonly when explicitly requested.
- Keep transcript artifacts in one place
- Keep all transcript outputs under
~/Desktop/bilibili-video/output. - Do not write transcript artifacts outside that folder.
- Enter the video output directory and inspect inputs
- Read
transcript.txtfirst. - Read
metadata.jsonwhen present. - Typical downstream artifacts:
notes-body.texnote-title.txtnotes.texnotes.pdf
- Build a coverage plan before drafting
- Identify major topic segments from the transcript.
- For each segment, record internally:
- What question this segment answers
- Which details are easy to miss
- What prerequisite knowledge a reader might lack
- Ensure the plan includes the entire video timeline, including the final third.
- Decide autonomously whether to use subagents
- Never use subagents for transcript extraction itself.
- Subagents are optional acceleration, not mandatory.
- If runtime/policy blocks subagents, continue locally without blocking.
- Heuristics that favor subagents:
- more than 6000 Chinese characters
- more than 120 timestamped blocks
- multiple dense topic shifts
- high formula/code/comparison density
- If using subagents, split work into 2-4 coherent chunks (time ranges or topic bundles).
- Assign each subagent a concrete task package and require outputs for:
- segment intent and teaching objective
- corrected key statements (ASR repairs)
- LaTeX-ready
\section/\subsectiondraft - formulas, code, examples, pitfalls worth emphasizing
- prerequisite assumptions that need bridging
- ambiguities requiring main-agent arbitration
- The main agent must unify terminology, resolve contradictions, normalize structure, and produce one consistent
notes-body.tex.
- Draft as a standalone teachable handout (not a thin summary)
- Replace spoken fillers with clear teaching prose.
- Preserve nontrivial details, comparisons, caveats, and speaker intent.
- Fix obvious ASR errors by context.
- Add prerequisite bridges where needed so the text is self-contained.
- Prefer expansion over compression when completeness is at risk.
- Do not use vague placeholders such as "not elaborated here".
- Default teaching shape per major topic:
- one-sentence overview
- detailed explanation
- logical step-by-step flow
- plain-language interpretation of key concepts
- for technical/math content: intuition + example + input/output relationship
- Enforce adaptive note length
- Never default to a fixed page target.
- Estimate expected depth from:
metadata.jsonduration (if available)- transcript character count
- timestamped block count
- number of topic shifts
- density of formulas/code/comparisons/caveats
- Planning heuristic (not a hard quota):
10-20 min: usually5-9pages20-35 min: usually8-14pages35-50 min: usually12-20pages50-70 min: usually16-28pages70+ min: usually22-40+pages- Dense technical lectures should land in the upper half or exceed the range.
- If a 60-minute technical video produces roughly the same length as a 20-minute one, treat it as over-compressed and expand before shipping.
- Minimum depth standard per major topic
- Unless clearly irrelevant, cover:
- what it is
- why it matters
- what problem it solves
- how it connects to previous/next topics
- inputs/outputs or participating entities
- step-by-step mechanism
- why this approach vs alternatives
- at least one intuition, analogy, or concrete scenario
- common pitfalls, boundary conditions, failure modes
- If a technical topic states conclusions without reasoning, that section is incomplete.
- Clean the title before rendering
- Inspect raw video title.
- If noisy/duplicated/SEO-heavy/too long, write a polished short title to
/note-title.txt. - Prefer clean forms like:
Course Name Lecture X: TopicCourse Name: TopicTopic Deep Dive- Remove marketing noise and repetitive tags.
- Render with the existing template pipeline
- Write
/notes-body.texfirst. - Run:
python ~/.codex/skills/video-transcript-explainer/scripts/render_notes_pdf.py --transcript "" --metadata "/metadata.json" --body "/notes-body.tex" --output-dir ""
- The renderer prefers
note-title.txtwhen present. - After rendering, sanity-check PDF page count when tooling allows; otherwise use
notes-body.texsize as a proxy. - If output is materially shorter than the coverage plan for that video's duration/density, expand and rerender.
notes-body.texwriting rules
- Use
\section{...}and\subsection{...}. - Prefer teaching order over strict transcript order.
- Every major section must contain substantive explanation.
- Define specialized terms in Chinese on first use.
- Use
importantbox,knowledgebox,warningboxonly when they add value. - Formula rule:
- explain intuitively in Chinese first
- show
$$...$$ - define symbols
- explain sensitivity: what changes when key variables change
- Code rule:
- use
lstlistingwith a short caption - explain problem, inputs/outputs, and design rationale
- Preserve explicit comparisons and trade-offs when the speaker compares approaches.
- Add prerequisite bridge subsections whenever a careful reader could get stuck.
- For long/dense videos, substantially longer notes are expected and desirable.
- End with a final summary section (use a Chinese heading equivalent to "Summary" in the generated notes).
- Do not append recommendation sections unless explicitly requested.
- Quality gate before final render
- Read
notes-body.texonce as a student who did not watch the video. - Expand before shipping if any answer is "no":
- Can I reconstruct the full lecture storyline, not just isolated conclusions?
- Are first-time technical terms understandable at first mention?
- Does each formula include intuition, symbol definitions, and practical use?
- Does each code block explain what problem it solves?
- Are important late-video topics covered with equal depth?
- Is reasoning explained, not merely summarized?
- Is the handout length aligned with duration, topic count, and technical density?
- For longer videos, is there clearly more substantive explanation instead of template reuse?
- Could a diligent reader learn the full lesson from this PDF alone?
- If the last answer is not a confident "yes", keep expanding.
- Delivery
- Return a concise Chinese summary to the user.
- Point to:
transcript.txtnotes.texnotes.pdf- If TeX compilation fails, report the error clearly and keep generated
.texartifacts.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: CrysGate
- Source: CrysGate/AgentSkills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.