{"name":"anew","description":"Encode a self-contained HTML page into a shareable anew.page URL, or recover the exact HTML from an existing URL.","version":"1.0.0","supportedInterfaces":[{"url":"https://anew.page/a2a/v1","protocolBinding":"JSONRPC","protocolVersion":"1.0"}],"provider":{"organization":"anew","url":"https://anew.page"},"documentationUrl":"https://anew.page/llms.txt","iconUrl":"https://anew.page/anew.png","capabilities":{"streaming":false,"pushNotifications":false},"defaultInputModes":["text/plain","text/html"],"defaultOutputModes":["text/plain"],"skills":[{"id":"write","name":"Write a page","description":"Encode a self-contained HTML document (or fragment, or plain text) into an anew.page URL and return that URL. Each encoding path is deterministic: the same input through the same path always produces the same URL. Different paths use different Brotli encoders, though, so the same HTML may mint different — equally valid — URLs; compare pages by their decoded HTML, never by slug. Inline all CSS, JS, and images (data: URIs, inline SVG, CSS gradients, or emoji) — the page should render alone forever, and each external reference gambles it on someone else's host staying up. One accepted exception: a webfont is far too large to inline, so a font may load from a durable CDN with a system-stack fallback; do not fight a user who asks for one. The HTML should stay ≤ 160000 UTF-8 bytes and the encoded URL ≤ 4000 bytes — the recommended share-safe budgets, not walls: a page past either still mints, renders and serves, up to the physical ceilings (65000 URL bytes, where the edge severs the request line; 163839 decoded bytes, the server's decode cap), it may just break in some apps — the response says so with a warning. Past a ceiling the endpoint refuses with an actionable error (code url_over_budget or content_too_large). Brotli slugs (the endpoint, or a local brotli mint) put a typical page in a few hundred URL bytes; raw base64 fits only ~2900 HTML bytes share-safe — know which budget you are drafting to, and never cut page content to fit before checking the brotli path. Returns the URL as plain text — return it to the user verbatim. To revise an existing anew page, its URL is its source: read it, edit that HTML, write it again. The new URL is a separate page and the original keeps working. Read the existing HTML back first by sending its URL as a `url` DataPart, then send the edited document here.","tags":["html","url","encode","share"],"examples":["Make a shareable link for