aa-on-ai/agent-friendly-design/SKILL.md
Design websites and applications that AI agents can consume, navigate, and interact with. Use when building any site, app, or product that agents will use as an end-user — not just crawl or index. Covers semantic structure, accessibility-as-agent-interface, machine-readable data, API-first patterns, and the emerging protocols (llms.txt, MCP, NLWeb, A2UI) that make sites agent-ready. Triggers on: agent-friendly, agent-readable, agent-accessible, AX, agent experience, agentic web, dual-interface, machine-readable, llms.txt, MCP integration, NLWeb, accessibility tree, ARIA for agents, structured data, JSON-LD, Schema.org, API-first design, build for agents, agent-ready.
npx skillsauth add openclaw/skills agent-friendly-designInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
how to build sites and apps that AI agents can actually use.
most design guidance is about agents building UI. this skill is about agents consuming UI. the audience for your site is no longer just humans — automated traffic surpassed human traffic in 2024 (51% of all web interactions). agents browse, compare, purchase, research, and interact on behalf of users.
if your site is invisible to agents, you're invisible to a growing majority of the web.
the accessibility tree — originally built for screen readers — is becoming the primary interface between AI agents and your website. OpenAI's Atlas explicitly uses ARIA tags to interpret page structure. Microsoft's Playwright MCP provides accessibility snapshots, not screenshots. even vision-first agents (Anthropic Computer Use, Google Mariner) are incorporating accessibility data for reliability.
building for agents and building for accessibility are the same work. every improvement you make for one benefits the other.
agents can't "see" your layout. they read structure. div soup is invisible.
<button>, <nav>, <main>, <article>, <section>, <header>, <footer>, <aside><h1> through <h6>, no skipped levels<label> elements explicitly associated with form inputs (use for attribute)<table> for tabular data with <thead>, <th>, and scope attributes<a> elements, buttons are <button> elements. never <div onclick><form> for forms, with <fieldset> and <legend> for groups<img alt> text (not "image1.png")test: disable CSS. can you still understand the page? if yes, agents can too.
ARIA supplements semantic HTML — it doesn't replace it. use it when native elements can't express the interaction.
aria-label on buttons and links that lack visible text (icon buttons, close buttons)aria-expanded on toggles, dropdowns, accordionsaria-live regions for dynamic content agents need to notice (status messages, notifications)role attributes only when there's no native element (e.g., role="tablist", role="dialog")aria-describedby for complex form fields that need additional contextaria-hidden="true" on decorative elements agents should ignoredon't do: put ARIA on everything. over-labeling creates noise. if the native element already communicates the role, skip the ARIA.
agents can't interpret visual cues. a grayed-out button means nothing if disabled isn't set.
disabled attribute on inactive controlsaria-selected, aria-checked, aria-pressed for toggle statesaria-busy="true" on containers updating contentaria-invalid="true" on fields with validation errors, plus aria-errormessage linking to the error text::after pseudo-elements)aria-current="page"the rule: if a human can tell the state by looking, an agent should be able to tell the state by reading the DOM.
helps agents understand what your content is, not just how it's structured.
Organization, Product, Article, BreadcrumbList, FAQPage, HowTo schemas as appropriate<script type="application/ld+json"> (preferred over microdata or RDFa)dateModified and datePublished so agents know freshnessa markdown file at /llms.txt that gives LLMs a concise overview of your site. like robots.txt, but for language models.
# Your Project Name
> Brief description of what this site/product does.
## Docs
- [Getting Started](https://yoursite.com/docs/getting-started): How to set up...
- [API Reference](https://yoursite.com/docs/api): Full API documentation...
## Optional
- [Changelog](https://yoursite.com/changelog): Recent updates...
.md to URLs if possible)agents can't all execute JavaScript. many rely on raw HTML.
robots.txt to allow known AI user-agents (ChatGPT-User, OAI-SearchBot, Googlebot, etc.)sitemap.xmlagents automate by finding patterns. inconsistency breaks them.
if agents can get data without scraping HTML, everyone wins.
<title> heavily)you're building two interfaces on one page:
human interface: visual hierarchy, color, typography, whitespace, motion, delight agent interface: semantic structure, ARIA roles, JSON-LD, predictable controls, API endpoints
they don't conflict. a well-structured semantic page is easier for humans AND agents. the dual-interface is additive, not a trade-off.
| protocol | what it does | status | |----------|-------------|--------| | llms.txt | markdown site overview for LLMs | adopted by many, simple to implement | | MCP | direct tool access for agents (no browser needed) | growing fast, Anthropic-led | | NLWeb | natural language queries against your data | Microsoft open-source, early | | A2UI | agent-driven native UI components | Google, early spec | | AGENTS.md | project-level agent instructions | community adoption growing |
after building or auditing a site for agent-friendliness:
the web is shifting from page-driven to action-driven. designing for agents isn't future-proofing — it's building for today's traffic.
tools
Use when the user wants to connect to, test, or use the McDonalds service at mcp.mcd.cn, including checking authentication, probing MCP endpoints, listing tools, or calling McDonalds MCP tools through a reusable local CLI.
development
Web scraping platform — Twitter/X data, Vinted marketplace, and general web scraping API
development
SlowMist AI Agent Security Review — comprehensive security framework for skills, repositories, URLs, on-chain addresses, and products (Claude Code version)
data-ai
去除中文文本中的 AI 写作痕迹,使其读起来自然。基于维基百科 AI 写作特征指南,检测 24 种 AI 模式。触发词:humanizer-cn、去除 AI 痕迹、去除 AI 写作痕迹、中文文本人性化。