github steipete/summarize v0.17.0

latest releases: v0.17.3, v0.17.2, v0.17.1...
19 hours ago

Features

  • 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.

npm

Artifact SHA-256

  • macOS arm64: f156acf10ba8ca5709ccec89bdfcf1dd17518116e8ca3961ca1425c6b59b01d8
  • macOS x64: bac577b76b999625773fae47b6bd00c8e35e42b610c2596d6809ad963eaa77bd
  • Chrome extension: 88fb23288c6080168c57ba559498e6624320e244a45204f4409a37ba5ac6324a
  • Firefox extension: 1e0d54d0df486130cccba59183cbc50cfe7dca320e4d6f2ecbbf05371e8984fd

Verification

  • CI: successful run
  • Commit: a0224503
  • Registry tarballs were reproduced byte-for-byte from the tagged commit before release.

Don't miss a new summarize release

NewReleases is sending notifications on new releases.