Version: 1.2.0
Status: Production Ready
License: MIT
Author: SFCore Team
Standar interaksi antara AI Agents (LLM, RPA, Bots) dengan Web Applications. Spec ini menyediakan:
- Semantic HTML Attributes (
data-ai-*) untuk element discovery - JSON-LD Site Policy untuk machine-readable rules
- HTTP Contract untuk agent authentication & consent
- JSON Schema untuk cross-language validation
AIAgentSpec/
├── README.md # This file
├── spec-v1.2.md # Full specification (middleware, API, policy)
├── element-patterns.md # HTML element markup patterns
├── schema/
│ ├── ai-agent-attributes.schema.json # Validate data-ai-* attributes
│ ├── ai-policy.schema.json # Validate ai-policy.json
│ └── action-schema.schema.json # Validate action definitions
└── examples/
├── login-form.html # Login form example
└── crud-table.html # CRUD table example
<form data-ai-role="form"
data-ai-name="login_form"
data-ai-desc="User authentication form"
data-ai-sensitivity="restricted">
<input type="text"
data-ai-role="input"
data-ai-name="username"
data-ai-desc="Username or email"
data-ai-sensitivity="pii">
<button type="submit"
data-ai-role="button"
data-ai-name="submit_login"
data-ai-desc="Submit login form"
data-ai-action="submit"
data-ai-required-consent="true">
Login
</button>
</form><head>
<meta name="ai-agent-policy" content="/.well-known/ai-policy.json" />
<meta name="ai-agent-rate-limit" content="60" />
<meta name="ai-agent-consent-required" content="true" />
<meta name="ai-agent-version" content="1.2" />
</head>Create /.well-known/ai-policy.json:
{
"@context": "https://schema.org",
"@type": "WebSite",
"agentPolicy": {
"policyVersion": "1.2",
"crawlPolicy": {
"default": "allow",
"rateLimitPerMinute": 60
},
"dataHandling": {
"consentRequiredForWrite": true
}
}
}| Attribute | Required | Description |
|---|---|---|
data-ai-role |
✅ | Element type: form, input, button, link, section |
data-ai-name |
✅ | Unique identifier (snake_case) |
data-ai-desc |
✅ | Human-readable description for AI context |
data-ai-sensitivity |
Data classification: public, restricted, pii, sensitive |
|
data-ai-action |
Action type: submit, navigate, delete, toggle |
|
data-ai-required-consent |
Requires explicit consent: true, false |
| Document | Description |
|---|---|
| spec-v1.2.md | Full specification with middleware, controllers, API |
| element-patterns.md | Complete HTML element patterns reference |
| schema/ | JSON Schema files for validation |
| examples/ | Ready-to-use HTML examples |
JSON Schema enables validation in any language:
| Language | Library |
|---|---|
| JavaScript | ajv, jsonschema |
| Python | jsonschema, fastjsonschema |
| .NET | Newtonsoft.Json.Schema, NJsonSchema |
| Go | gojsonschema |
| PHP | justinrainbow/json-schema |
| Java | everit-org/json-schema |
| Version | Date | Changes |
|---|---|---|
| 1.2.0 | 2025-12-22 | Added JSON Schema, reorganized structure |
| 1.1.0 | 2025-12-22 | Added JSON-LD policy, meta tags, agent registration |
| 1.0.0 | 2025-12-22 | Initial release |