id = "summarize" name = "summarize" homepage = "https://github.com/steipete/summarize" description = "Point at any URL/YouTube/Podcast or file. Get the gist." executables = ["summarize"] [dotfiles] # The upstream configuration guide documents this fixed user file. # https://github.com/steipete/summarize/blob/main/docs/config.md paths = ["~/.summarize/config.json"] # The browser-extension guide documents daemon.json as the paired-token store. # https://github.com/steipete/summarize/blob/main/docs/chrome-extension.md secret = ["~/.summarize/daemon.json"] # API keys may be stored in either the current env object or the legacy apiKeys # object in config.json. The provider names are user-defined, so match one key # below either object rather than guessing a finite provider list. [[dotfiles.secret_paths]] file = "~/.summarize/config.json" match = { key_path = ["env.*", "apiKeys.*"] } [commands] format = 1 label = "Summarize a URL or file" description = "Summarize or extract content from a URL or file. Model, length, daemon and other options from the command reference are left out." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false } [[commands.source]] id = "s" kind = "help" url = "https://github.com/steipete/summarize" revision = "2026-10-27" evidence = """ summarize "https://example.com" --extract --plain summarize "https://example.com" --cli codex summarize "https://example.com" --locale de --language japanese Use `--extract` when you only need clean content, `--json` for a stable automation envelope, and `--slides` for video frames. """ [[commands.field]] id = "input" label = "URL or file" type = "string" position = 0 sources = ["s"] [[commands.field]] id = "extract" label = "Extract content only" type = "boolean" option = ["--extract"] sources = ["s"] [[commands.field]] id = "plain" label = "Plain text output" type = "boolean" option = ["--plain"] sources = ["s"] [[commands.field]] id = "json" label = "JSON envelope" type = "boolean" option = ["--json"] sources = ["s"] [[commands.field]] id = "slides" label = "Include video slides" type = "boolean" option = ["--slides"] sources = ["s"] [[commands.field]] id = "cli" label = "CLI provider" type = "string" option = ["--cli"] suggestions = [{ value = "codex", label = "Codex" }] sources = ["s"] [[commands.field]] id = "locale" label = "Interface locale" type = "string" option = ["--locale"] suggestions = [{ value = "de", label = "German" }] sources = ["s"] [[commands.field]] id = "language" label = "Summary language" type = "string" option = ["--language"] suggestions = [{ value = "japanese", label = "Japanese" }] sources = ["s"] [[commands.task]] id = "summary" label = "Summarize" fields = ["input", "language"] required = ["input"] [[commands.task]] id = "extract" label = "Extract clean text" fields = ["input", "extract", "plain"] required = ["input", "extract"] set = { extract = [true], plain = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["input", "extract", "plain", "json", "language"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["slides", "cli", "locale"]