Install
openclaw skills install app-legal-pagesGenerate and deploy app Privacy Policy and Terms of Service static websites from an app feature document. Use when a user provides app requirements/feature docs and wants production-ready legal pages published via GitHub + Cloudflare Pages, including draft generation, consistency checks, and deployment-ready output URLs.
openclaw skills install app-legal-pagesGenerate a complete legal mini-site for an app:
index.html (legal home)privacy.html (Privacy Policy)terms.html (Terms of Service)styles.css (shared styles)Collect or confirm:
If facts are unknown, pause and ask for missing inputs before generation. Do not output placeholder markers (no TODO/TEMP strings in final pages). Never assume jurisdiction, region, analytics/tracking, sharing, or permission usage unless explicitly stated in the input document or user prompt. Generate policy clauses from explicit product claims first (e.g., offline-only, no cloud, no tracking, no analytics), and avoid introducing contradictory generic legal boilerplate.
Run:
python3 scripts/generate_legal_site.py \
--input /path/to/app-feature.md \
--out ./out/legal-site \
--app-name "Your App" \
--company "Your Company" \
--base-email "chentuan7963@gmail.com" \
--email-tag "quillnest" \
--effective-date "2026-03-03" \
--jurisdiction "California, United States"
Email rule:
chentuan7963@gmail.com + quillnest => chentuan7963+quillnest@gmail.com.--email only when you explicitly want a fixed address.Language rule:
The script auto-detects likely data categories/permissions from the feature text. Manually review and adjust output if app behavior is more specific than heuristic detection.
Run before publishing:
python3 scripts/check_consistency.py \
--feature /path/to/app-feature.md \
--privacy ./out/legal-site/privacy.html \
--terms ./out/legal-site/terms.html
The checker fails on:
Check before publishing:
privacy.html and terms.html both exist.If the app uses sensitive permissions or SDKs, verify these are explicitly disclosed in Privacy Policy.
Before deployment, share generated files with the user and ask for explicit approval to deploy. Do not deploy automatically without user confirmation.
Run auth readiness check:
python3 scripts/deploy_cloudflare_pages.py --check-auth --site-dir ./out/legal-site --project-name your-project-name --production-branch main
Auth is valid when either:
CLOUDFLARE_API_TOKEN + CLOUDFLARE_ACCOUNT_ID are set, orwrangler whoami succeeds.If auth is missing, ask the user to authenticate:
wrangler login
After explicit approval + auth ready:
python3 scripts/deploy_cloudflare_pages.py \
--site-dir ./out/legal-site \
--project-name your-project-name \
--production-branch main
Or use one-shot pipeline:
python3 scripts/run_pipeline.py \
--feature /path/to/app-feature.md \
--out ./out/legal-site \
--app-name "Your App" \
--company "Your Company" \
--base-email "you@gmail.com" \
--email-tag "yourapp" \
--effective-date "2026-03-05" \
--project-name your-project-name \
--production-branch main \
--confirm-deploy
Return:
<site>/privacy.html)<site>/terms.html)api-token or wrangler-login)