grr-cli 2.3.0

Google tools from the terminal, at maximum performance: 401 methods across 14 Google APIs in one generated command tree, zero-config, over HTTP/3
Documentation
# Cloudflare Pages headers — https://developers.cloudflare.com/pages/configuration/headers/
# A request that matches several rules inherits all of them; for a header set by
# more than one rule the more specific (less pervasive) path wins. The catch-all
# `/*` block below is therefore the baseline, and every rule after it overrides
# the baseline for the paths it matches.
#
# No Content-Security-Policy is set on purpose. The pages ship inline <script>
# blocks (the theme bootstrap, the theme toggle, the index stats module) and
# inline <style>/style attributes, and Astro emits no nonce or hash we can pin
# at build time. A CSP here would need 'unsafe-inline' to keep working, which
# buys nothing over the nosniff + frame + referrer + permissions set below.

/*
  X-Content-Type-Options: nosniff
  Referrer-Policy: strict-origin-when-cross-origin
  X-Frame-Options: DENY
  Permissions-Policy: camera=(), microphone=(), geolocation=()
  Cache-Control: public, max-age=0, must-revalidate

# Content-hashed build output: safe to cache forever.
/_astro/*
  Cache-Control: public, max-age=31536000, immutable

/fonts/*
  Cache-Control: public, max-age=31536000, immutable

/*.woff2
  Cache-Control: public, max-age=31536000, immutable

/*.png
  Cache-Control: public, max-age=31536000, immutable

/*.svg
  Cache-Control: public, max-age=31536000, immutable

# Crawl surfaces stay revalidated so a push is visible on the next request.
/sitemap.xml
  Cache-Control: public, max-age=0, must-revalidate

/robots.txt
  Cache-Control: public, max-age=0, must-revalidate