--llm-format-model
Select the LLM that powers the llm, llm_json, and llm_text output types.
The value is a provider connection string.
zshot -t llm_json \
--llm-format-model "anthropic://$ANTHROPIC_API_KEY@?model=claude-haiku-4-5" \
--llm-format-prompt "Summarize this page." \
https://example.com -f out.jsonWith the provider’s key already exported, a bare provider name picks its default
model and reads the key from the environment, e.g. --llm-format-model anthropic
with ANTHROPIC_API_KEY set.
See Providers for the connection-string format, the supported providers, the per-provider key env vars, and query options.
stdio: extract with an external agent
--llm-format-model stdio hands the extraction to an external agent over a file
descriptor, exactly like the stdio
navigator. zshot sends one frame with
the page content (and an <img src="file://…"> screenshot path) plus the format
request, terminated by <<END>>; the agent replies with the extracted text or
JSON, terminated by <<END>> or a blank line. Endpoint forms (stdio,
stdio://3, stdio://?read=…&write=…) and limits (Unix-only, forbidden in HTTP
server mode, not fd 0/1 under MCP) match the navigator.
The reason to use it is session context: point both --navigator-type and
--llm-format-model at the same fd and one agent drives the navigation, then
shapes the extraction knowing what the task and page were.
zshot --navigate "Open the latest release notes" \
--navigator-type stdio://3 \
-t llm_json --llm-format-model stdio://3 \
https://example.com -f out.jsonWhen a stdio navigator is set and an llm_* output is requested without an
explicit --llm-format-model, the stdio formatter is inferred from the
navigator automatically.
This is a Pro-tier flag.