You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
LLM providers: add native MiniMax models via the OpenAI-compatible API, keeping reasoning separate from summary text in streaming and non-streaming calls (#250, thanks @neeravmakwana).
CLI providers: add pi CLI as --cli pi / --model cli/pi, with JSON-mode parsing, stdin prompts, configurable binary/model, and daemon/Chrome model picker support (#247, thanks @Youpen-y).
Add Antigravity CLI (agy) as a supported CLI provider. (#231, thanks @yetmike)
CLI media: bundle an LGPL FFmpeg WebAssembly fallback for slide extraction and transcoding when native ffmpeg/ffprobe are unavailable, while continuing to prefer native tools.
Chrome extension: add a Browser slide runtime with bundled FFmpeg WebAssembly for daemonless video extraction, while keeping Daemon as an optional faster runtime.
Chrome extension: persist Browser-mode summaries, slide text, transcripts, and thumbnails in Chrome storage for 30 days, with Runtime settings showing cache status and a clear button.
Add --diarize [auto|elevenlabs|openai] for speaker-labelled YouTube transcripts using ElevenLabs Scribe v2 or OpenAI gpt-4o-transcribe-diarize.
Add verified speaker naming for diarized YouTube transcripts with timestamp anchors, reusable profiles, transcript-hash-guarded mappings, GPT-5.5 context inference, and atomic --remember-speakers config updates.
Fixes
CLI cache: derive summary content hashes from binary attachment bytes so repeated local image summaries can hit the cache (#244, thanks @alfozan).
YouTube transcripts: let --diarize auto and matching explicit provider requests reuse the same compatible cached speaker-labelled transcript instead of re-transcribing the same video.
Dependencies: enforce a seven-day minimum release age and replace Cheerio/JSDOM HTML parsing with LinkeDOM, reducing the CLI production closure by 47 packages while preserving extraction behavior.
Dependencies: replace the oversized tokenizer package with a compact o200k-compatible implementation and remove Zag from Chrome extension controls.
DNS-pinned fetches: bypass Node environment proxies so validated IP addresses cannot be replaced by proxy-side DNS resolution.
CLI cache: include local media fileMtime when writing transcript cache entries so repeated unchanged audio/video extraction can hit cache (#240, #241, thanks @alfozan).
CLI: pass Codex image attachments to codex exec so local image summaries no longer fail before starting (#242, #243, thanks @alfozan).
OpenAI-compatible gateways: honor OPENAI_USE_CHAT_COMPLETIONS=false and openai.useChatCompletions=false so custom base URLs can use the Responses API (#235, #236, thanks @mzbgf).
RSS transcripts: block feed-controlled transcript URLs that target loopback, private, link-local, reserved, or redirected local-network addresses (#239, thanks @Hinotoi-agent).
Podcast transcripts: cap remote media downloads at 512 MB by default, with a finite opt-in override for larger files (#237, thanks @Hinotoi-agent).
Anthropic: forward explicit CLI --thinking to Anthropic text and streaming requests without leaking persisted OpenAI thinking defaults into non-OpenAI providers (#233, thanks @wangwllu).
Chrome extension: abort stale side-panel summary streams on tab changes so delayed output from a closed or replaced tab cannot render under the new page title.
Core: extract video IDs from YouTube /live/ URLs so live and premiere links no longer abort summarization (#232, thanks @devYRPauli).
Chrome extension: keep YouTube slide cards on the shared slide-summary path so local browser thumbnails receive the same summary text shape as CLI --slides.