I built a small open protocol for declaring the intent of a web page in a machine-readable way.
The problem it solves: crawlers, search engines, and AI pipelines treat all content as equally permanent and citable. A forum post you wrote at 2am, a draft article, an ephemeral tweet-length thought, a user-generated comment — they all get indexed, trained on, and cited the same way. There's no signal for "this was never meant to be permanent" or "this is a work in progress."
The protocol adds one tag to your HTML:
<meta name="untitled" content="draft">
or one HTTP header:
X-Untitled: ephemeral
Six states are defined in the spec:
now — canonical, stable, citable
draft — work in progress, not final
ephemeral — short-lived, not meant to be archived
anonymous — author requests identity de-coupling from content
collective — community/multi-author content (forums, wikis)
generative — AI-generated or AI-assisted content
States can be combined: content="draft,anonymous"
What's live:
- Spec at https://untitled.now/spec/
- Validator: paste any URL, see what it declares https://untitled.now/validate/
- Suggest tool: AI reads the page and recommends a state https://untitled.now/suggest/
- 1kb JS drop-in: https://untitled.now/js/untitled.js — reads the tag and exposes it for client-side use - npm package: untitled-meta (for React/Vue/Next.js/Astro)
- WordPress plugin (GitHub, not yet on wp.org)
- SVG badges: https://untitled.now/badge/now.svg
GitHub: https://github.com/untitled-now/protocol
The spec is MIT-licensed. I'm not trying to own this — the goal is to get it adopted broadly enough that it becomes a standard. Happy to answer questions about the design decisions.
Top comments (0)