Configuration
HtmlQuill resolves configuration files in this order:
--config PATHHTMLQUILL_CONFIG$XDG_CONFIG_HOME/htmlquill/config.toml~/.config/htmlquill/config.toml
Example config.toml
version = 1
[defaults]
adapter = "html"
browser = "auto"
timeout = 30.0
fail_on_challenge = true
fallback_on_challenge = true
[paths]
auth_file = "~/.config/htmlquill/auth.json"
[challenge]
markers = [
"Performing security verification",
"verifies you are not a bot",
"You've been blocked by network security",
"blocked by network security",
"If you think you've been blocked by mistake, file a ticket",
]
# Browser-backed authentication is opt-in. Add a site rule only when needed:
#
# [sites."example.com"]
# browser = "chromium"
# timeout = 60.0
# auth = "example"
Sections
defaultsGlobal defaults for all sites.
browsercan beauto,requests,playwright, orchromium.pathsOverride the default auth file location.
challengemarkersis a list of substrings used to detect network-security challenge pages (CAPTCHA, block interstitial). When a match is found andfallback_on_challengeis true, HtmlQuill escalates fromrequeststo a browser backend.sitesPer-site configuration keyed by hostname. Hostname keys must be quoted when they contain dots (
[sites."medium.com"]). Sites inherit fromdefaultsand override specific keys. Prefer the defaultautomode when normal HTTP fetching returns complete content. Forced browser mode can time out on pages that keep background connections open.
Site matching
HtmlQuill matches a URL to a site section by the hostname. The site with the longest matching hostname suffix wins.
Commands
htmlquill config init– write a default config filehtmlquill config path– print the resolved config pathhtmlquill config show URL– display effective config for a URLhtmlquill config validate– validate config syntax