Introduction to Operator Tags
Operator Tags is an open standard designed to enable AI agents and assistants to safely and effectively interact with web content. By embedding semantic metadata directly into HTML elements, website owners can specify how AI systems should interpret, access, and interact with their content.
Open Standard: This specification is an open standard, designed for community-driven improvement and widespread adoption. We welcome contributions and feedback to enhance its functionality and scope.
Purpose & Benefits
For Website Owners
- Control how AI agents interact with your content
- Protect sensitive or proprietary information
- Ensure accurate interpretation of your content
- Create AI-friendly interactive experiences
- Develop paywalled or premium content with clear access controls
For AI Developers
- Clearly understand permitted interactions with web content
- Access semantic information about content structure and purpose
- Respect content restrictions and privacy settings
- Create more intelligent and contextually aware interactions
For Users
- Enhanced privacy protection
- Better AI-assisted browsing experiences
- Clearer understanding of content that AI can/cannot access
- More accurate AI interpretations of web content
Implementation Guide
Basic Implementation
Operator Tags are implemented as HTML attributes using the operator-
prefix. They
can be applied to any HTML element.
<div operator-info="product description" operator-access="allow">
Product details here...
</div>
Implementation Methods
There are three ways to implement Operator Tags:
1. Direct HTML Attributes
Add attributes directly to HTML elements:
<p operator-info="pricing details" operator-access="allow">$99.99</p>
2. Custom Element
Use the dedicated <operator>
element:
<operator operator-info="special instructions" operator-access="allow">
Instructions for AI agents...
</operator>
3. HTTP Headers
For page-wide settings, use HTTP headers:
Operator-Access: deny-screenshot
Operator-Access-Control: must-authenticate
Operator-Privacy: no-process-pii
Core Attributes
Attribute | Description | Values | Example |
---|---|---|---|
operator-info |
Provides descriptive information about the element for AI agents | String | operator-info="product pricing information" |
operator-label |
Short label for the element that AIs can reference | String | operator-label="price-tag" |
operator-role |
Semantic role of the element (similar to ARIA roles) | String | operator-role="navigation" |
operator-importance |
Indicates importance level for AI processing | critical, high, medium, low | operator-importance="high" |
operator-version |
Version of the operator tag specification | String (semver) | operator-version="1.0.0" |
Access Control Tags
Basic Access Control
These tags control whether AI agents can access, process, or interact with content.
operator-access="allow"
Explicitly allows AI agents to access and process this content.
<div operator-access="allow">
This content is available for AI processing.
</div>
operator-access="deny"
Explicitly prevents AI agents from accessing or processing this content.
<div operator-access="deny">
This content should not be processed by AI.
</div>
operator-access="conditional"
Access is conditional based on other attributes.
<div operator-access="conditional"
operator-condition="authenticated">
Premium content here.
</div>
Access Conditions
Attribute | Description | Values | Example |
---|---|---|---|
operator-must-pay |
Indicates content requires payment to access | Boolean or payment details | operator-must-pay="true" |
operator-must-authenticate |
Requires authentication before access | Boolean | operator-must-authenticate="true" |
operator-must-read |
Content must be read/presented to users | Boolean | operator-must-read="true" |
operator-access-level |
Required access level for content | public, registered, premium, admin | operator-access-level="premium" |
operator-condition |
Custom condition for access | String | operator-condition="subscription-active" |
Examples
Example 1: Product Page with Mixed Access
<div class="product-container">
<h1 operator-info="product name" operator-access="allow">Ultra HD Smart TV</h1>
<div class="product-images" operator-access="allow" operator-no-screenshot="true">
<img src="tv-front.jpg" alt="TV Front View">
<img src="tv-side.jpg" alt="TV Side View">
</div>
<div class="product-description" operator-info="product details" operator-access="allow">
65-inch Ultra HD Smart TV with voice control and AI-powered picture quality.
</div>
<div class="pricing" operator-info="pricing details" operator-access="allow">
<p>Regular Price: $1,299.99</p>
<p>Sale Price: $999.99</p>
</div>
<div class="internal-notes" operator-access="deny">
Profit margin: 22%, Competitor pricing: $1,099 at BestBuy
</div>
<div class="reviews" operator-access="allow" operator-info="customer reviews">
<div class="review">★★★★★ Amazing picture quality! - John D.</div>
<div class="review">★★★★☆ Good TV for the price. - Sarah M.</div>
</div>
<div class="premium-content"
operator-access="conditional"
operator-must-pay="true"
operator-info="expert review">
Expert analysis: This TV outperforms competitors in its price range by...
</div>
</div>
Example 2: News Article with Privacy Controls
<article operator-info="news article" operator-content-type="news">
<h1 operator-access="allow">Breaking News: New Renewable Energy Policy</h1>
<div class="byline" operator-access="allow">
By Jane Smith, Senior Energy Correspondent
</div>
<div class="article-content" operator-access="allow" operator-no-quote="false">
The government announced today a new renewable energy policy that will...
</div>
<div class="subscriber-only"
operator-access="conditional"
operator-must-authenticate="true"
operator-info="premium content">
According to insider sources, this policy will impact the energy sector by...
</div>
<div class="comments" operator-access="allow" operator-info="user comments">
<div class="comment">This policy is long overdue! - GreenEnergy23</div>
<div class="comment">I'm concerned about implementation costs - EconomyFirst</div>
</div>
</article>
Example 3: Form with Interaction Controls
<form operator-info="contact form">
<label for="name">Name:</label>
<input type="text" id="name"
operator-can-fill="true"
operator-info="user name field">
<label for="email">Email:</label>
<input type="email" id="email"
operator-can-fill="true"
operator-info="user email field"
operator-pii="true">
<label for="message">Message:</label>
<textarea id="message"
operator-can-fill="true"
operator-info="user message"></textarea>
<label for="cc-number">Credit Card:</label>
<input type="text" id="cc-number"
operator-can-fill="false"
operator-info="credit card field"
operator-pii="true"
operator-privacy-level="critical">
<button type="submit"
operator-can-click="true"
operator-info="submit button">Submit</button>
</form>
Best Practices
Recommended Implementation Practices
-
Be Explicit with Access Controls
Clearly mark sections that should be restricted from AI access with
operator-access="deny"
. -
Provide Rich Contextual Information
Use
operator-info
andoperator-label
to help AI understand content context. -
Group Related Content
Apply operator tags to container elements when possible, rather than individual elements.
-
Be Consistent
Use consistent naming conventions and attribute values across your site.
-
Don't Over-Tag
Focus on important elements that need special handling rather than tagging everything.
-
Consider Privacy Implications
Always mark PII and sensitive data with appropriate privacy controls.
-
Test with AI Tools
Verify that AI agents respect your implemented tags.
Performance Considerations
While operator tags provide valuable context for AI agents, they can increase HTML size. Consider minifying or compressing your HTML to offset this impact in production environments.
Contribute to the Standard
Operator Tags is an open standard under active development. We welcome contributions in the following areas:
- New tag proposals and enhancements
- Implementation libraries and tools
- Documentation improvements
- Case studies and usage examples
- Compliance testing tools
Join the Community
Visit our GitHub repository to contribute to the standard, report issues, or participate in discussions about the future of Operator Tags.