zshot/cliDownload

Scope

The navigator may go where its --navigator-initial-scope and any --navigator-allow-url globs admit. Links whose target is outside are hidden from the navigator, and every navigation outside is blocked.

Initial Scope

domain is the registrable domain: the same scope a credential gets without --navigator-credential-origin, and the one a crawl stays within. A host without one, such as an IP address or localhost, is its origin. From an http start, domain admits https too.

path is the start URL’s folder, up to its last /, so a start of https://zshot-cli.com/example_assets is the folder /: the whole origin. Use it to keep the navigator in one section, such as a wiki section or one tenant’s area of a shared host.

The scope comes from the URL as given, so a redirect at start does not move it. A file: start is its folder and descendants under every scope.

Globs

--navigator-allow-url and --navigator-credential-origin take these globs.

GlobMatches
*.zshot-cli.comevery path on a subdomain of zshot-cli.com, on the default port
*.zshot-cli.com/accounts/*only paths under /accounts/ there
localhost:8080every path on that host and port
/docs/*that path on the start URL’s own host
https://zshot-cli.comevery path on that origin, scheme as written
*any URL

A glob without a scheme is https, or http and https when the start URL is http. A port matches only when written; host:* is any port but the default. A * before the first / stays within the host, so https://*.zshot-cli.com/* never matches https://evil.test/?x=www.zshot-cli.com/. Within the path * spans /, and */**/admin/* finds admin at any depth on any host. Alternation such as {a,b}.zshot-cli.com/{x,y}/* works within either half and cannot cross the first /. Write an IPv6 host as [[]::1]:8080.

From a file: start every glob without a scheme is a path: /srv/site/* as written, */admin or ./*/admin under the start file’s folder, ../shared/* one folder up. Name a web host from a file start with its scheme.

New Tabs and Windows

A link or script that opens a new tab or window never opens one. In a navigation session its URL is listed for the navigator as a tab or window it can switch to, and only when the scope admits it.