Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计异常

video-summarizer视频摘要器

Agent Skill

用于辅助视频生成、动画合成、脚本化剪辑或 Remotion 等视频项目开发。它适合让 Agent 组织镜头、生成素材说明、维护合成代码或排查渲染问题。使用时需要确认分辨率、时长、素材路径和导出格式;涉及外部素材、人物肖像或商业发布时,应先核对版权授权和内容审核要求。

总安装

25,828

周安装

613

GitHub Stars

167

下载量

6,299
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:video-summarizer(视频摘要器)
来源仓库:https://github.com/martinopiaggi/summarize
仓库路径:skills/video-summarizer
安装命令:
npx skills add https://github.com/martinopiaggi/summarize --skill 'Video Summarizer'
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/martinopiaggi/summarize --skill 'Video Summarizer'

简介

video-summarizer 辅助视频生成、动画合成和 Remotion 项目开发,支持镜头组织和素材说明生成。

  • 适用于视频脚本编写、合成代码维护和渲染问题排查等场景。
  • 通过分辨率、时长和素材路径参数配置实现视频处理流程。
  • 涉及外部素材或人物肖像时需核对版权授权和内容审核要求。
  • 安装命令为 npx skills add https://github.com/martinopiaggi/summarize --skill 'Video Summarizer'。

SKILL.md

Overview

This skill transcribes and summarizes video content by running the python -m summarizer CLI tool. It handles YouTube (captions or audio), local files, Google Drive, and Dropbox. Transcripts are chunked, processed in parallel through an OpenAI-compatible LLM, and merged into a final summary.

IMPORTANT: Always use the CLI command below. Never try to fetch, scrape, or download video URLs directly (e.g., with webfetch or curl). The CLI handles all downloading, transcription, and summarization internally.

Quick Start (Step-by-Step)

Follow these steps exactly:

Step 1 -- Run the CLI:

python -m summarizer --source "VIDEO_URL"

The tool uses the default provider from summarizer.yaml (already configured). No extra flags needed for basic usage.

Step 2 -- Read the output file:

The CLI prints the output filename on success. It is always saved inside the summaries/ subdirectory relative to the project working directory. For example:

[+] Saved watch_20260207_234533.md

The full path to read is: summaries/watch_20260207_234533.md

Step 3 -- Show the result to the user.

That's it. Three steps.

Where Files Live

All paths are relative to the project working directory (where summarizer.yaml and setup.py are).

FileLocation
Config./summarizer.yaml
API keys./.env
Prompt templates./summarizer/prompts.json
Output summaries./summaries/<filename>.md
CLI entry pointpython -m summarizer

Do NOT look for .env or config files in your home directory or in the skill directory. They are in the project root.

CLI Reference

python -m summarizer [OPTIONS]

Required

FlagDescription
--sourceOne or more video URLs or file paths

Provider Options

FlagDescriptionDefault
--providerNamed provider from summarizer.yamldefault_provider from YAML
--base-urlAPI endpoint URL (overrides provider)From YAML
--modelModel identifier (overrides provider)From YAML
--api-keyAPI key (overrides .env auto-matching)Auto from .env

Source Options

FlagDescriptionDefault
--typeYouTube Video, Video URL, Local File, Google Drive Video Link, Dropbox Video LinkYouTube Video
--force-downloadSkip YouTube captions, download audio insteadFalse
--transcriptionCloud Whisper (Groq API) or Local WhisperCloud Whisper
--whisper-modeltiny, base, small, medium, largetiny
--languageauto picks the first available YouTube caption track and lets Whisper detect language; explicit codes stay strictauto

Processing Options

FlagDescriptionDefault
--prompt-typeSummary style (see Styles below)From YAML defaults
--chunk-sizeCharacters per text chunkFrom YAML defaults
--parallel-callsConcurrent API requests30
--max-tokensMax output tokens per chunk4096

Output Options

FlagDescriptionDefault
--output-dirDirectory to save summariessummaries
--output-formatmarkdown, json, or htmlmarkdown
--no-savePrint to stdout only, don't save fileFalse
--verbose, -vDetailed progress outputFalse

Warning: Do NOT use --no-save on Windows. There is a known encoding bug where Unicode characters in the summary crash stdout output. Always let the tool save to a file, then read the file.

Config Options

FlagDescription
--configPath to config file (default: auto-detect)
--no-configIgnore config file, use CLI args only
--init-configGenerate example summarizer.yaml and exit

Summary Styles

Use with --prompt-type. Defined in summarizer/prompts.json.

StylePurpose
Questions and answersQ&A extraction from content
SummarizationStandard summary with title
Distill WisdomIdeas, quotes, and references extraction
DNA ExtractorCore truth distilled to 200 words max
Fact CheckerClaim verification with TRUE/FALSE/MISLEADING labels
TutorialStep-by-step instructions from content
ResearchDeep analysis with broader context
ReflectionsPhilosophical extensions beyond what is said
Mermaid DiagramVisual concept map in Mermaid.js syntax
Essay Writing in Paul Graham Style250-word essay in Paul Graham's style
Only grammar correction with highlightsGrammar cleanup with bold highlights

Examples

Summarize a YouTube video (simplest form)

python -m summarizer --source "https://youtube.com/watch?v=VIDEO_ID"
# Output: summaries/watch_YYYYMMDD_HHMMSS.md

Specify a provider

python -m summarizer --source "https://youtube.com/watch?v=VIDEO_ID" --provider gemini
# Output: summaries/watch_YYYYMMDD_HHMMSS.md

Extract key insights with Distill Wisdom

python -m summarizer \
  --source "https://youtube.com/watch?v=VIDEO_ID" \
  --provider openrouter \
  --prompt-type "Distill Wisdom"
# Output: summaries/watch_YYYYMMDD_HHMMSS.md

Fact-check video claims using Perplexity

python -m summarizer \
  --source "https://youtube.com/watch?v=VIDEO_ID" \
  --base-url "https://api.perplexity.ai" \
  --model "sonar-pro" \
  --prompt-type "Fact Checker"
# Output: summaries/watch_YYYYMMDD_HHMMSS.md

Generate a Mermaid diagram from a lecture

python -m summarizer \
  --source "https://youtube.com/watch?v=VIDEO_ID" \
  --provider gemini \
  --prompt-type "Mermaid Diagram"
# Output: summaries/watch_YYYYMMDD_HHMMSS.md

Summarize a local file

python -m summarizer \
  --type "Local File" \
  --source "./lecture.mp4" \
  --provider groq
# Output: summaries/lecture_YYYYMMDD_HHMMSS.md

Batch-process multiple videos

python -m summarizer \
  --source "URL1" "URL2" "URL3" \
  --provider gemini \
  --prompt-type "Summarization"
# Output: one file per URL in summaries/

Use without config file (all flags explicit)

python -m summarizer \
  --source "https://youtube.com/watch?v=VIDEO_ID" \
  --base-url "https://openrouter.ai/api/v1" \
  --model "google/gemini-2.0-flash-exp:free" \
  --api-key "sk-or-v1-YOUR_KEY" \
  --prompt-type "Tutorial" \
  --no-config
# Output: summaries/watch_YYYYMMDD_HHMMSS.md

Reading the Output

After running the CLI, always read the output file from summaries/:

# The CLI prints something like:
# [+] Saved watch_20260207_234533.md
#
# The file is at:
summaries/watch_20260207_234533.md

Use the Read tool on the full path: summaries/<filename> (relative to project root).

Multi-Step Workflow

For comprehensive analysis, chain multiple styles on the same video:

  1. Start with Summarization for a quick overview
  2. Use Distill Wisdom to extract key insights
  3. Run Fact Checker (ideally with Perplexity) to verify claims
  4. Generate a Mermaid Diagram for visual reference

Error Handling

  • If no API key is found, the tool checks .env for a key matching the provider URL keyword
  • If YouTube captions are unavailable, the tool falls back to audio download + Whisper transcription
  • --language auto does not force English. It uses the first available YouTube caption track and lets Whisper detect language.
  • Use --verbose to see detailed progress and debug issues
  • Cloud Whisper requires a Groq API key (free tier available)

Configuration Files

All in the project working directory:

  • summarizer.yaml: Provider definitions (base_url, model, chunk-size) and defaults
  • .env: API keys, auto-matched by URL keyword (e.g., generativelanguage = YOUR_KEY)
  • summarizer/prompts.json: Prompt templates using {text} as transcript placeholder

Testing

python -m pytest tests/ -v

适合场景

01

调用多模型

02

代码和文本生成

03

Agent 推理流程

04

OpenRouter 模型接入

能力概览

能力 1

统一调用多种 LLM

能力 2

支持 Claude、Gemini、Kimi 等模型

能力 3

适合聊天、代码和推理任务

能力 4

可作为 Agent 模型调用入口

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.56%
按下载量换算2,177

Claude

30.6%
按下载量换算1,927

Cursor

20.28%
按下载量换算1,277

Gemini CLI

10.29%
按下载量换算648

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

未通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills