Install
openclaw skills install a2wfValidate, generate, and audit A2WF siteai.json files — the open standard for AI agent governance on websites. Use when working with siteai.json policies, checking website A2WF compliance, generating agent permission files, or auditing how a site controls AI agent behavior. TRIGGER "a2wf", "siteai.json", "agent governance", "website ai policy", "agent permissions", "a2wf validate", "a2wf generate", "a2wf audit"
openclaw skills install a2wfA2WF is an open standard that defines what AI agents can and cannot do on a website via a machine-readable siteai.json file at the site root. Think of it as a legally actionable robots.txt for AI agents.
Validate a siteai.json file against the A2WF v1.0 spec. The validator is local-only (no network requests).
# Validate a local file
node {baseDir}/scripts/validate.mjs /path/to/siteai.json
# Validate from stdin
echo '{"specVersion":"1.0",...}' | node {baseDir}/scripts/validate.mjs --stdin
To validate a live website: Use web_fetch to download https://example.com/siteai.json, save to a temp file, then validate it.
Output: errors (must fix), warnings (should fix), info (suggestions). Exit 0 = valid, exit 1 = invalid.
If the user pastes raw JSON instead of a file path, save it to a temp file first, then validate.
Build a spec-compliant siteai.json interactively or from parameters.
node {baseDir}/scripts/generate.mjs \
--domain "https://example.com" \
--name "Example Store" \
--language "en" \
--category "e-commerce" \
--jurisdiction "EU"
When used interactively (no flags), ask the user:
Output is a complete, validated siteai.json ready to deploy at the site root.
node {baseDir}/scripts/validate.mjs https://example.com --audit
Performs:
/siteai.json exist? Correct content-type?Outputs a structured report with a compliance score (0–100).
{
"specVersion": "1.0",
"identity": {
"domain": "https://example.com",
"name": "Site Name",
"inLanguage": "en",
"jurisdiction": "EU",
"applicableLaw": ["GDPR", "EU AI Act"]
},
"permissions": {
"read": { "productCatalog": {"allowed": true, "rateLimit": 60} },
"action": { "createAccount": {"allowed": false} },
"data": { "customerRecords": {"allowed": false} }
}
}
| Group | Controls | Key examples |
|---|---|---|
read | What agents can read | productCatalog, pricing, reviews, faq, contactInfo |
action | What agents can do | search, addToCart, checkout, createAccount, submitContactForm |
data | What data agents can access | customerRecords, orderHistory, paymentInfo, employeeData |
Use --category with generate to start from a template: ecommerce, banking, healthcare, news-media, restaurant, saas.
When browsing a website, check for siteai.json at the domain root before taking actions. Respect the declared permissions — violations are documented and legally actionable under the declared jurisdiction.
See the full Agent Implementer Guide: {baseDir}/references/implementer-guide.md