# Agent Skills Discovery RFC

Cloudflare's draft spec for publishing Agent Skills at a predictable URL — an index at /.well-known/agent-skills/ lists each skill as a single artifact with a type, a URL and a SHA-256 digest. Apache-2.0, v0.2.0, and a draft rather than a ratified IETF RFC.

**Type:** repo
**Added:** 2026-08-13
**Link:** https://github.com/cloudflare/agent-skills-discovery-rfc
**Topics:** AI Coding, Dev Tools, Open Source
**Tags:** agents, reference, security

---

Skills live wherever whoever wrote them left them — a GitHub repo, a docs page, a link in someone's timeline, a paragraph of setup instructions for the user to follow by hand. Nothing answers the obvious question: what skills does `example.com` publish? This document registers `agent-skills` as a suffix under the RFC 8615 `.well-known` prefix, so the answer becomes a single fetch of `https://example.com/.well-known/agent-skills/index.json`.

The index is deliberately thin. Each entry is one artifact: a `type` of either `skill-md` for a lone `SKILL.md` or `archive` for a skill that ships scripts, references and assets, plus a `url` and a `digest`. v0.2.0 is what collapsed the earlier `files` array and `package` object into that flat model, made the digest a SHA-256 over the artifact's raw bytes, and replaced the `version` field with a `$schema` URI that clients match as an opaque identifier rather than parse. Names, descriptions and the `SKILL.md` format itself stay the [Agent Skills spec](https://agentskills.io/specification)'s business; this one only covers finding them.

Progressive disclosure is the reason the index carries descriptions at all. Name and description cost roughly 100 tokens per skill at discovery, the `SKILL.md` body loads when a task activates the skill, and referenced files load after that if the task reaches for them — so a skill can bundle a reference manual without charging context for it upfront.

The half worth reading closely is what a client owes the user. Digests MUST be verified and unverified content MUST NOT be used. Unpackers MUST reject `..` paths and links that escape the skill directory, and SHOULD cap unpacked size against decompression bombs. Clients SHALL NOT execute anything under `scripts/` by default, and SHOULD allowlist origins before letting a `SKILL.md` — which lands straight in the model's context — be loaded at all.

Status matters here: this is a draft, v0.2.0, published 17 January 2026 and last updated 12 March 2026. It is not a published IETF RFC despite the repo name, and the flat artifact model already broke v0.1.0 once. Apache-2.0, ~334 stars, with `examples/` holding index handlers for Next.js, TanStack Start, Astro and a plain CGI script. It's the discovery half of the same problem [Accept Markdown](/directory/accept-markdown) solves for page content — a predictable URL beats a convention nobody can query.

---

## Links

- Directory entry: https://andrey-markin.com/directory/agent-skills-discovery-rfc
- All directory entries: https://andrey-markin.com/directory
- Contact: https://andrey-markin.com/#contact
