<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc version 1.7.31 (Ruby 3.3.0) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-zzn-dvs-00" category="info" submissionType="independent" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="DVS">Domain-Verified Skills (DVS) Protocol</title>

    <author fullname="Zainan Victor Zhou">
      <organization>Namefi</organization>
      <address>
        <email>zzn@namefi.io</email>
      </address>
    </author>

    <date year="2026" month="March" day="02"/>

    
    
    

    <abstract>


<?line 39?>

<t>This document defines the Domain-Verified Skills (DVS) protocol, a
lightweight mechanism for AI Agents to discover, verify, and execute
skill definitions served over HTTPS.  A skill is a directory
containing a SKILL.md entry point and optional bundled resources
that instructs an AI Agent to perform a specific task or adopt a
specific behavior.</t>

<t>The central design principle of DVS is that a skill's identity and
trustworthiness are derived entirely from the HTTPS URL at which it
is served -- no centralized registry or third-party certification is
required.  The operator of the URL's origin is the authoritative
endorser of the skill.</t>

<t>This trust is formalized through the concept of a Trust Root: an
HTTPS URL prefix declared by the skill publisher that scopes the
trust boundary for their skills.  A skill is considered verified
if and only if its URL begins with the declared Trust Root.  For
brands with first-party domains, the Trust Root is the domain
origin.  For brands publishing on user-generated content platforms
where the platform operator does not vouch for individual
publishers, the Trust Root <bcp14>MUST</bcp14> be path-scoped to content the
brand controls, ensuring that trust does not extend to the entire
platform.</t>

<t>The protocol leverages the existing trust infrastructure of the
Domain Name System (DNS) and Transport Layer Security (TLS) and is
backward compatible with skills already served over HTTPS, including
those hosted on GitHub or other platforms.</t>



    </abstract>



  </front>

  <middle>


<?line 70?>

<section anchor="introduction"><name>Introduction</name>

<t>Current AI Agent skills (such as those in the Claude Agent Skills
protocol <xref target="CLAUDE-SKILLS"/>) are primarily distributed via centralized
code repositories or platform-specific upload mechanisms.  This
creates several friction points:</t>

<t><list style="symbols">
  <t>Identity Ambiguity: Users cannot easily verify if a skill hosted
on a third-party platform genuinely belongs to a brand.</t>
  <t>Hosting Friction: Brands must manage external accounts and
synchronization instead of using their existing web
infrastructure.</t>
  <t>Security Risks: Malicious skills can spoof brand names on open
platforms to exfiltrate data.</t>
</list></t>

<t>The Domain-Verified Skills (DVS) protocol returns to the fundamental
logic of the Web: the URL is the Identity.  By serving skills
directly from a brand-controlled URL prefix, we leverage the existing
global trust of the DNS and HTTPS infrastructure.</t>

<t>For brands with first-party domains, the Trust Root is the domain
itself (e.g., <spanx style="verb">https://microsoft.com/</spanx>).  For brands that publish on
user-generated content platforms such as GitHub or Hugging Face,
the Trust Root is scoped to the brand's path on that platform (e.g.,
<spanx style="verb">https://github.com/microsoft/</spanx>).  This allows DVS to provide
brand-verified skill identity across all hosting configurations,
without requiring brands to self-host infrastructure.</t>

<t>This protocol is designed to be compatible with existing skill
formats and distributions.  A skill already hosted on GitHub
(e.g., <spanx style="verb">https://github.com/microsoft/repo/blob/main/.../SKILL.md</spanx>)
is immediately usable under DVS by registering
<spanx style="verb">https://github.com/microsoft/</spanx> as the Trust Root, with no changes
to the skill files themselves.  In particular, a skill directory
conforming to DVS can be directly consumed by any agent that
understands the SKILL.md convention, while also gaining the identity
and trust properties conferred by domain-verified hosting.</t>

</section>
<section anchor="conventions-and-definitions"><name>Conventions and Definitions</name>

<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

<?line -18?>

<t>The following terms are used in this document:</t>

<dl>
  <dt>Skill:</dt>
  <dd>
    <t>A directory containing a SKILL.md entry point and optional
bundled resources (scripts, templates, data files, additional
instructions) that directs an AI Agent to perform a specific task
or adopt a specific behavior.</t>
  </dd>
  <dt>SKILL.md:</dt>
  <dd>
    <t>The mandatory Markdown entry-point file within a skill
directory.  It contains YAML frontmatter metadata and human-
readable instructions for the Agent.</t>
  </dd>
  <dt>Agent:</dt>
  <dd>
    <t>An AI system capable of fetching, interpreting, and executing
Skill instructions.</t>
  </dd>
  <dt>Skill URL:</dt>
  <dd>
    <t>The HTTPS URL of the skill directory (or its SKILL.md
entry point).  This URL serves as the globally unique identifier
of the Skill.</t>
  </dd>
  <dt>Trust Root:</dt>
  <dd>
    <t>An HTTPS URL prefix that defines the trust boundary for a skill
or set of skills.  A skill is considered verified under a Trust
Root if and only if its Skill URL begins with the Trust Root
prefix.  For first-party brand domains, the Trust Root is
typically the domain origin (e.g., <spanx style="verb">https://microsoft.com/</spanx>).
For user-generated content platforms, the Trust Root <bcp14>MUST</bcp14> be
scoped to a path controlled by the brand (e.g.,
<spanx style="verb">https://github.com/microsoft/</spanx>).</t>
  </dd>
  <dt>Hosting Domain:</dt>
  <dd>
    <t>The domain component of the Trust Root URL, considered the
network-level endorser of the Skill via DNS and TLS.</t>
  </dd>
  <dt>Bundled Resource:</dt>
  <dd>
    <t>Any file within the skill directory other than
SKILL.md, including additional instruction files, executable
scripts, templates, schemas, and data files.</t>
  </dd>
</dl>

</section>
<section anchor="core-protocol"><name>Core Protocol</name>

<t>The identity of a skill is defined strictly by its HTTPS URL.</t>

<section anchor="identity-and-trust"><name>Identity and Trust</name>

<t>Skills <bcp14>MUST</bcp14> be served via HTTPS <xref target="RFC9110"/>.  Agents <bcp14>MUST NOT</bcp14> fetch or
execute skills served over plain HTTP.</t>

<t>The identity and trust of a skill is defined by its Trust Root.  A
skill's URL <bcp14>MUST</bcp14> begin with its declared Trust Root prefix for the
skill to be considered verified under that root.</t>

<t>For first-party brand hosting, the Trust Root is the domain origin:</t>

<figure><artwork><![CDATA[
Trust Root: https://example.com/
Skill URL:  https://example.com/.well-known/
            skills/support/SKILL.md
]]></artwork></figure>

<t>For user-generated content platforms, the Trust Root <bcp14>MUST</bcp14> be scoped
to a path controlled by the brand.  Agents <bcp14>MUST NOT</bcp14> accept a bare
UGC platform domain (e.g., <spanx style="verb">https://github.com/</spanx>) as a Trust Root,
as this would confer trust to all content on the platform:</t>

<figure><artwork><![CDATA[
Trust Root: https://github.com/example-org/
Skill URL:  https://github.com/example-org/
            repo/blob/main/skills/SKILL.md
]]></artwork></figure>

<t>A skill URL that does not begin with its declared Trust Root prefix
<bcp14>MUST</bcp14> be rejected by the Agent.</t>

</section>
<section anchor="discovery"><name>Discovery</name>

<t>Skills <bcp14>MAY</bcp14> be hosted at any valid URL path on a domain (e.g.,
<spanx style="verb">https://example.com/skills/my-assistant/SKILL.md</spanx>).</t>

<t>Official brand skills <bcp14>SHOULD</bcp14> be served from the well-known path
prefix:</t>

<figure><artwork><![CDATA[
/.well-known/skills/{skill-name}/SKILL.md
]]></artwork></figure>

<t>This follows the conventions established by <xref target="RFC8615"/> for well-known
URIs.</t>

<t>Skills <bcp14>MAY</bcp14> be indexed in the domain's <spanx style="verb">sitemap.xml</spanx> <xref target="SITEMAP"/> to
enable automated agent discovery.  Agents supporting discovery <bcp14>SHOULD</bcp14>
check for skill entries in the sitemap when exploring a domain's
available skills.</t>

<t>A domain <bcp14>MAY</bcp14> serve a skill index document at:</t>

<figure><artwork><![CDATA[
/.well-known/skills/index.json
]]></artwork></figure>

<t>The index document, if present, <bcp14>SHOULD</bcp14> contain an array of objects,
each with <spanx style="verb">name</spanx>, <spanx style="verb">description</spanx>, and <spanx style="verb">path</spanx> fields pointing to
available skills on the domain.</t>

</section>
</section>
<section anchor="skill-specification"><name>Skill Specification</name>

<section anchor="directory-structure"><name>Directory Structure</name>

<t>A Domain-Verified Skill is a directory containing at minimum a SKILL.md
file.  The directory <bcp14>MAY</bcp14> contain additional files organized by
purpose:</t>

<figure><artwork><![CDATA[
my-skill/
+-- SKILL.md              (entry point - REQUIRED)
+-- ADVANCED.md           (additional instructions - OPTIONAL)
+-- REFERENCE.md          (detailed reference docs - OPTIONAL)
+-- scripts/
|   +-- process.py        (executable script - OPTIONAL)
|   +-- validate.sh       (executable script - OPTIONAL)
+-- templates/
|   +-- report.html       (template file - OPTIONAL)
+-- data/
    +-- schema.json       (data/reference file - OPTIONAL)
]]></artwork></figure>

<t>When served over HTTPS, the directory structure is represented by
URL paths relative to the skill's base URL.  For example, a skill
at <spanx style="verb">https://example.com/.well-known/skills/my-skill/</spanx> would have
its entry point at:</t>

<figure><artwork><![CDATA[
https://example.com/.well-known/skills/my-skill/SKILL.md
]]></artwork></figure>

<t>And a bundled script at:</t>

<figure><artwork><![CDATA[
https://example.com/.well-known/skills/my-skill/scripts/process.py
]]></artwork></figure>

</section>
<section anchor="skillmd-entry-point"><name>SKILL.md Entry Point</name>

<t>Every skill directory <bcp14>MUST</bcp14> contain a file named <spanx style="verb">SKILL.md</spanx>.  This
file <bcp14>MUST</bcp14> be encoded in UTF-8 and served with the media type
<spanx style="verb">text/markdown</spanx> <xref target="RFC7763"/>.</t>

<t>The file consists of two parts:</t>

<t><list style="numbers" type="1">
  <t>YAML frontmatter (metadata) - <bcp14>REQUIRED</bcp14></t>
  <t>Markdown body (instructions) - <bcp14>REQUIRED</bcp14></t>
</list></t>

</section>
<section anchor="metadata-frontmatter"><name>Metadata (Frontmatter)</name>

<t>SKILL.md files <bcp14>MUST</bcp14> begin with a YAML frontmatter block delimited
by <spanx style="verb">---</spanx> lines.  The frontmatter <bcp14>MUST</bcp14> contain the following fields:</t>

<dl>
  <dt>name:</dt>
  <dd>
    <t>A short, human-readable name for the skill.
<bcp14>MUST NOT</bcp14> exceed 64 characters.
<bcp14>MUST</bcp14> contain only lowercase letters, numbers, and hyphens.</t>
  </dd>
  <dt>description:</dt>
  <dd>
    <t>A brief description of the skill's purpose and
capabilities, including guidance on when an Agent should trigger
the skill.
<bcp14>MUST NOT</bcp14> be empty.
<bcp14>MUST NOT</bcp14> exceed 1024 characters.</t>
  </dd>
</dl>

<t>Example:</t>

<figure><artwork><![CDATA[
name: customer-support
description: Handles common customer support inquiries for
  Acme Corp products. Use when the user asks about product
  returns, warranty claims, or order status.
]]></artwork></figure>

</section>
<section anchor="instructions-body"><name>Instructions (Body)</name>

<t>The body of SKILL.md, following the frontmatter, <bcp14>MUST</bcp14> contain
human-readable instructions for the Agent.  These instructions
define the behavior, constraints, and capabilities of the skill.</t>

<t>Instructions <bcp14>SHOULD</bcp14> be written as clear, step-by-step procedural
guidance.  They <bcp14>MAY</bcp14> reference bundled resources using relative URLs
(e.g., <spanx style="verb">[see advanced guide](ADVANCED.md)</spanx> or <spanx style="verb">run the script at
scripts/process.py</spanx>).</t>

</section>
<section anchor="bundled-resources"><name>Bundled Resources</name>

<t>Skills <bcp14>MAY</bcp14> include additional files alongside SKILL.md.  These
bundled resources fall into three categories:</t>

<section anchor="additional-instructions"><name>Additional Instructions</name>

<t>Additional Markdown files (e.g., ADVANCED.md, REFERENCE.md,
FORMS.md) provide specialized guidance, detailed API references,
or extended workflows.  These files:</t>

<t><list style="symbols">
  <t><bcp14>SHOULD</bcp14> use the <spanx style="verb">.md</spanx> extension and <spanx style="verb">text/markdown</spanx> media type.</t>
  <t>Are loaded by the Agent only when referenced from SKILL.md or
when the task context requires them.</t>
</list></t>

</section>
<section anchor="executable-scripts"><name>Executable Scripts</name>

<t>Scripts (e.g., Python, Shell, JavaScript) provide deterministic
operations that the Agent can execute.  These files:</t>

<t><list style="symbols">
  <t><bcp14>MUST</bcp14> reside within the same skill directory (same-origin).</t>
  <t>Are executed by the Agent via its runtime environment; only the
script's output enters the Agent's context, not the script
source code itself.</t>
  <t><bcp14>MUST</bcp14> be subject to the Explicit Consent requirement defined in
<xref target="explicit-consent"/> before execution.</t>
</list></t>

</section>
<section anchor="data-and-reference-materials"><name>Data and Reference Materials</name>

<t>Data files (e.g., JSON schemas, CSV datasets, configuration
templates, API documentation) provide factual lookup material.
These files:</t>

<t><list style="symbols">
  <t><bcp14>MUST</bcp14> reside within the same skill directory (same-origin).</t>
  <t>Are read by the Agent on demand when the task requires specific
reference information.</t>
  <t>Impose no context cost until actually accessed.</t>
</list></t>

</section>
</section>
<section anchor="progressive-loading"><name>Progressive Loading</name>

<t>Agents implementing DVS <bcp14>SHOULD</bcp14> employ a progressive loading strategy
to manage context efficiently:</t>

<dl>
  <dt>Level 1 - Metadata (always loaded):</dt>
  <dd>
    <t>The YAML frontmatter (name and description) is loaded at agent
startup or skill registration time.  This enables skill discovery
with minimal token cost (approximately 100 tokens per skill).</t>
  </dd>
  <dt>Level 2 - Instructions (loaded on trigger):</dt>
  <dd>
    <t>The body of SKILL.md is fetched and loaded into the agent's
context only when the skill is triggered by a matching user
request.</t>
  </dd>
  <dt>Level 3 - Resources (loaded as needed):</dt>
  <dd>
    <t>Bundled resources (additional markdown files, scripts, data
files) are accessed only when referenced during execution.
Scripts are executed and only their output is loaded into context.</t>
  </dd>
</dl>

<t>This three-level approach ensures that a domain can publish many
skills without imposing context overhead on agents, as only the
metadata of registered skills is persistently loaded.</t>

</section>
</section>
<section anchor="security-and-permissions"><name>Security and Permissions</name>

<section anchor="same-origin-isolation"><name>Same-Origin Isolation</name>

<t>Agents <bcp14>MUST</bcp14> restrict a skill's automated access to resources within
its Trust Root prefix.  A skill with Trust Root
<spanx style="verb">https://github.com/example-org/</spanx> <bcp14>MUST NOT</bcp14>
be permitted to automatically access resources outside that prefix
(including other GitHub users or repos) without explicit user
consent.</t>

<t>Bundled resources (scripts, data files, templates) referenced by a
skill <bcp14>MUST</bcp14> reside within the same Trust Root prefix as the SKILL.md
file.  Agents <bcp14>MUST</bcp14> reject references to resources outside the
skill's Trust Root unless the user explicitly approves the access.</t>

<t>This prevents a compromised or malicious skill from leveraging its
trusted context to exfiltrate data from, or perform actions on,
unrelated origins or paths.</t>

</section>
<section anchor="explicit-consent"><name>Explicit Consent</name>

<t>Agents <bcp14>MUST</bcp14> display the source domain to the user and request
explicit confirmation before executing any non-textual instructions
contained in a skill (e.g., shell commands, API calls, file system
operations, running bundled scripts).</t>

<t>The consent prompt <bcp14>SHOULD</bcp14> clearly indicate:</t>

<t><list style="symbols">
  <t>The Trust Root of the skill.</t>
  <t>A description of the action to be performed.</t>
  <t>Any resources that will be accessed or modified.</t>
</list></t>

<t>Textual instructions (Markdown content) <bcp14>MAY</bcp14> be loaded without
additional consent beyond the initial skill activation.  Executable
content (scripts, commands) <bcp14>MUST</bcp14> always require explicit consent.</t>

</section>
<section anchor="dnssec"><name>DNSSEC</name>

<t>Domain operators <bcp14>SHOULD</bcp14> deploy DNSSEC <xref target="RFC4033"/> to prevent DNS
spoofing attacks that could redirect agents to malicious skill
files hosted on attacker-controlled infrastructure.</t>

</section>
</section>
<section anchor="composition"><name>Composition</name>

<t>A skill <bcp14>MAY</bcp14> reference other skills via their full HTTPS URLs.  When
an Agent encounters a referenced skill URL during execution, it
<bcp14>SHOULD</bcp14> dynamically fetch and load the referenced skill if the current
context requires the extended capabilities it provides.</t>

<t>Each referenced skill is subject to its own Trust Root's trust and
security policies.  Agents <bcp14>MUST</bcp14> apply the Same-Origin Isolation
policy (<xref target="same-origin-isolation"/>) independently to each loaded skill
based on its own Trust Root.</t>

<t>When composing skills across domains, agents <bcp14>SHOULD</bcp14> clearly
communicate to the user that the trust context is being extended
to additional domains.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>The primary security property of this protocol is that trust is
anchored to domain ownership.  This inherits both the strengths and
weaknesses of the existing Web PKI and DNS infrastructure.</t>

<t>Skill spoofing is mitigated by the HTTPS requirement, which ensures
that only the legitimate operator of a domain can serve skills from
that domain.  DNSSEC (<xref target="dnssec"/>) provides an additional layer of
protection against DNS-level attacks.</t>

<t>Agents implementing this protocol should be aware of the following
risks:</t>

<t><list style="symbols">
  <t>Domain compromise: If a domain is compromised, all skills served
from it should be considered compromised.</t>
  <t>Subdomain delegation: Skills on subdomains should be treated as
distinct trust contexts from the parent domain.</t>
  <t>UGC platform Trust Roots: On user-generated content platforms,
agents <bcp14>MUST</bcp14> enforce path-scoped Trust Roots.  Accepting a bare
platform domain (e.g., <spanx style="verb">https://github.com/</spanx>) as a Trust Root
would allow any user on that platform to publish skills that
appear equally trusted as a legitimate brand's skills.</t>
  <t>Transitive trust in composition: When skills reference other
skills (<xref target="composition"/>), the trust chain extends across domains.
Agents should clearly communicate this to users.</t>
  <t>Script execution: Bundled scripts execute with the permissions
of the agent's runtime environment.  Malicious scripts could
perform unauthorized file access, network calls, or data
exfiltration.  The Explicit Consent requirement (<xref target="explicit-consent"/>)
mitigates this risk, but agents <bcp14>SHOULD</bcp14> also sandbox script
execution where possible.</t>
  <t>External resource fetching: Skills that instruct agents to fetch
data from external URLs pose particular risk, as fetched content
may contain malicious instructions.  Agents <bcp14>SHOULD</bcp14> treat
externally-fetched content as untrusted.</t>
</list></t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>This document requests registration of the well-known URI suffix
<spanx style="verb">skills</spanx> in the "Well-Known URIs" registry established by <xref target="RFC8615"/>.</t>

<dl>
  <dt>URI suffix:</dt>
  <dd>
    <t>skills</t>
  </dd>
  <dt>Change controller:</dt>
  <dd>
    <t>Namefi</t>
  </dd>
  <dt>Specification document:</dt>
  <dd>
    <t>This document (<xref target="discovery"/>)</t>
  </dd>
</dl>

</section>


  </middle>

  <back>


<references title='References' anchor="sec-combined-references">

    <references title='Normative References' anchor="sec-normative-references">



<reference anchor="RFC2119">
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname="S. Bradner" initials="S." surname="Bradner"/>
    <date month="March" year="1997"/>
    <abstract>
      <t>In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="2119"/>
  <seriesInfo name="DOI" value="10.17487/RFC2119"/>
</reference>

<reference anchor="RFC4033">
  <front>
    <title>DNS Security Introduction and Requirements</title>
    <author fullname="R. Arends" initials="R." surname="Arends"/>
    <author fullname="R. Austein" initials="R." surname="Austein"/>
    <author fullname="M. Larson" initials="M." surname="Larson"/>
    <author fullname="D. Massey" initials="D." surname="Massey"/>
    <author fullname="S. Rose" initials="S." surname="Rose"/>
    <date month="March" year="2005"/>
    <abstract>
      <t>The Domain Name System Security Extensions (DNSSEC) add data origin authentication and data integrity to the Domain Name System. This document introduces these extensions and describes their capabilities and limitations. This document also discusses the services that the DNS security extensions do and do not provide. Last, this document describes the interrelationships between the documents that collectively describe DNSSEC. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="4033"/>
  <seriesInfo name="DOI" value="10.17487/RFC4033"/>
</reference>

<reference anchor="RFC7763">
  <front>
    <title>The text/markdown Media Type</title>
    <author fullname="S. Leonard" initials="S." surname="Leonard"/>
    <date month="March" year="2016"/>
    <abstract>
      <t>This document registers the text/markdown media type for use with Markdown, a family of plain-text formatting syntaxes that optionally can be converted to formal markup languages such as HTML.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="7763"/>
  <seriesInfo name="DOI" value="10.17487/RFC7763"/>
</reference>

<reference anchor="RFC8174">
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname="B. Leiba" initials="B." surname="Leiba"/>
    <date month="May" year="2017"/>
    <abstract>
      <t>RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
    </abstract>
  </front>
  <seriesInfo name="BCP" value="14"/>
  <seriesInfo name="RFC" value="8174"/>
  <seriesInfo name="DOI" value="10.17487/RFC8174"/>
</reference>

<reference anchor="RFC8615">
  <front>
    <title>Well-Known Uniform Resource Identifiers (URIs)</title>
    <author fullname="M. Nottingham" initials="M." surname="Nottingham"/>
    <date month="May" year="2019"/>
    <abstract>
      <t>This memo defines a path prefix for "well-known locations", "/.well-known/", in selected Uniform Resource Identifier (URI) schemes.</t>
      <t>In doing so, it obsoletes RFC 5785 and updates the URI schemes defined in RFC 7230 to reserve that space. It also updates RFC 7595 to track URI schemes that support well-known URIs in their registry.</t>
    </abstract>
  </front>
  <seriesInfo name="RFC" value="8615"/>
  <seriesInfo name="DOI" value="10.17487/RFC8615"/>
</reference>

<reference anchor="RFC9110">
  <front>
    <title>HTTP Semantics</title>
    <author fullname="R. Fielding" initials="R." role="editor" surname="Fielding"/>
    <author fullname="M. Nottingham" initials="M." role="editor" surname="Nottingham"/>
    <author fullname="J. Reschke" initials="J." role="editor" surname="Reschke"/>
    <date month="June" year="2022"/>
    <abstract>
      <t>The Hypertext Transfer Protocol (HTTP) is a stateless application-level protocol for distributed, collaborative, hypertext information systems. This document describes the overall architecture of HTTP, establishes common terminology, and defines aspects of the protocol that are shared by all versions. In this definition are core protocol elements, extensibility mechanisms, and the "http" and "https" Uniform Resource Identifier (URI) schemes.</t>
      <t>This document updates RFC 3864 and obsoletes RFCs 2818, 7231, 7232, 7233, 7235, 7538, 7615, 7694, and portions of 7230.</t>
    </abstract>
  </front>
  <seriesInfo name="STD" value="97"/>
  <seriesInfo name="RFC" value="9110"/>
  <seriesInfo name="DOI" value="10.17487/RFC9110"/>
</reference>




    </references>

    <references title='Informative References' anchor="sec-informative-references">

<reference anchor="CLAUDE-SKILLS" target="https://platform.claude.com/docs/en/agents-and-tools/agent-skills/overview">
  <front>
    <title>Agent Skills Overview</title>
    <author >
      <organization>Anthropic</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="SITEMAP" target="https://www.sitemaps.org/protocol.html">
  <front>
    <title>Sitemaps XML Format</title>
    <author >
      <organization>sitemaps.org contributors</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>


    </references>

</references>


<?line 490?>

<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>The authors would like to thank the broader AI agent community for
discussions that informed this protocol design.</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAAAAAAAAA61c6XYbR3b+X09RoX+YnACgaDtemMlMaJIacUwtISQ5njlz
hoXuAtDDRjfc1U0SVuRnybPkyfLde2vpBmDJM4nPsQUBXdV19+8u5fF4rNqi
Le2pPrioV6aoxm9tU8wLm+vpXVGWTh9evJ0e6VdN3dZZXR4oM5s19p6efzs9
UHmdVWaF5Xlj5u34p5+qcX7vxqVprWtVhj8WdbM51UU1r1Wxbk5123Su/ezJ
k2+efKZcN1sVzhV11W7Wlp7K7driP1WrlGtNlf/VlHWFXzbWKbcyTfvXH7sa
e5/qqlbr4lT/GccaaVc3bWPnDp82K/rwF6VM1y7r5lRpPca/Ws+7spSz/gl0
mkq/LbK2bvSflnXHD9TNwlTFT6bFeU71Czw6L/gHC8aUpxrE/XvF306KWqmq
blZ49t7SK26enn92cvKN//jFk88/9x+/+urL8PHrk6++CB+/PPkX//Gbk5Mn
p0oRg3r7nV+fvbm4HE+/u7q+np7yKYKczhZgT5DOy3vb3Bf24YAfSSTTP2Oi
6FSfVe2yqddFJruYZmHbU71s27U7PT5eQ1T05klWmi63k6xeHUOo7thWx4be
5MYQw7it69LJF2PHrz6u/aux7fTq9eXzs1fDc06LFoxbO/2fz6/1UybuA6d0
/ukJ/qYzKERTzDqIx+099cPDw6S/4njt9XOybFelUuPxWJuZaxuTQZNeLwun
QVS3Is7lEGBlnW6XVn9Q58OeI21UWSyW7YOl/+qVzZZQFLfSYJw+u9IsEWxY
67xwGfFlpO9pyw2WVrm2jzbrWquYcfL+gpTMaQcW4rW0RD97/frVdKL1mZbn
cGaDDRtLWrpRxBOctagW+Jr1YrLC1mDURq/rAoTRq+o1bWxKPeuqvMTWjXV1
12Qwn3ZpWlgYmNJlOC0MIBydTr62DakB9nZrm4EbGZju7iAcbXLsCh7EH2Z2
ae6LupkQa63O6BCGCHPFogLbiior1qXV9VyDkUQIv9sIYZ86XZCFF+2GjqzY
ITzAgJckFhyssdiqKYgx9Fhjy42eN/WKJcZc0m9urjV2fFgW2VIXrSoiKyH4
qg5HKn5iDiwKR1wCKXhHk4/X8CMbPNO0RA7bOw6pGvtjh7flkAGRVYMlhhwE
yKA34504et0Ui6ISmqxX5aJlu1XwXFBYG1cwuROvf0wmrWM7l6ORYXaLJT8M
+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

-->

</rfc>

