The web is being read by more than humans.
AHTML is a small, opinionated set of npm packages that adds typed agent endpoints to your existing site — MCP, OpenAPI, JSON-LD, and llms.txt — with zero migration. Browsers see the HTML they always did. Agents see a 100× cheaper, action-aware snapshot.
Why we built it
By 2026 a meaningful share of pageviews come from agents — Claude, ChatGPT, Perplexity, internal assistants, RPA. They re-read HTML that was designed for humans, burning tokens to skim past navigation, hydration scripts, and CSS-in-JS. The result is slower, more expensive, and less accurate retrieval than it needs to be.
AHTML fixes that without a rewrite. You install a plugin, the plugin emits typed entities and typed actions from the data your page already has, and the agent gets a snapshot tuned for its workload. Same Next.js / Vite / SvelteKit app. Same database. Same deploy.
Principles
- Additive, not replacement. AHTML lives alongside HTML — it never asks your team to migrate anything.
- Typed actions or none. Actions carry
cost,reversible,side_effects,confirmation. Anything else is just text. - Compile-to-many. One source-of-truth emits MCP, OpenAPI, JSON-LD, and llms.txt. Don't fragment your team into four spec teams.
- Provenance by default. Every package release is signed with sigstore via GitHub Actions. v0.2 adds signed snapshots.
- Open source forever. MIT. No SSPL. No license drift.
Who's behind it
AHTML is built by Dibbayajyoti Roy and contributors. The project lives on GitHub at github.com/DibbayajyotiRoy/AHTML under the MIT license. Issues, PRs, and discussions are welcome there.
How to get involved
- Star the repo if you want this to exist.
- Contribute — adapters, examples, fixes.
- Get in touch if you're shipping an agent and have feedback on the spec.