Summarize
Fast CLI to summarize URLs, local files, and YouTube links.
When to use (trigger phrases)
Use this skill immediately when the user asks any of:
-
“use summarize.sh”
-
“what’s this link/video about?”
-
“summarize this URL/article”
-
“transcribe this YouTube/video” (best-effort transcript extraction; no yt-dlp needed)
Quick start
summarize "https://example.com" --model google/gemini-3-flash-preview summarize "/path/to/file.pdf" --model google/gemini-3-flash-preview summarize "https://youtu.be/dQw4w9WgXcQ" --youtube auto
YouTube: summary vs transcript
Best-effort transcript (URLs only):
summarize "https://youtu.be/dQw4w9WgXcQ" --youtube auto --extract-only
If the user asked for a transcript but it’s huge, return a tight summary first, then ask which section/time range to expand.
Model + keys
Set the API key for your chosen provider:
-
OpenAI: OPENAI_API_KEY
-
Anthropic: ANTHROPIC_API_KEY
-
xAI: XAI_API_KEY
-
Google: GEMINI_API_KEY (aliases: GOOGLE_GENERATIVE_AI_API_KEY , GOOGLE_API_KEY )
Default model is google/gemini-3-flash-preview if none is set.
Useful flags
-
--length short|medium|long|xl|xxl|<chars>
-
--max-output-tokens <count>
-
--extract-only (URLs only)
-
--json (machine readable)
-
--firecrawl auto|off|always (fallback extraction)
-
--youtube auto (Apify fallback if APIFY_API_TOKEN set)
Config
Optional config file: ~/.summarize/config.json
{ "model": "openai/gpt-5.2" }
Optional services:
-
FIRECRAWL_API_KEY for blocked sites
-
APIFY_API_TOKEN for YouTube fallback