round/anew
v1.0.10BSD
Free webpages: websites that live in the URL. Encode a self-contained HTML document into a shareable anew.page URL, and read the HTML back out of one. No account, no hosting, no deploy step.
hosts
- anew.page
plugin.json
- name
- anew
- version
- 1.0.1
- description
- Free webpages: websites that live in the URL. Encode a self-contained HTML document into a shareable anew.page URL, and read the HTML back out of one. No account, no hosting, no deploy step.
- author
- anewhttps://github.com/round
- license
- 0BSD
- homepage
- https://anew.page
- repository
- https://github.com/round/anew.page
- extensions
- com.openai
mcp.json
- anewstreamable-httphttps://anew.page/mcp
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "anew",
"version": "1.0.1",
"description": "Free webpages: websites that live in the URL. Encode a self-contained HTML document into a shareable anew.page URL, and read the HTML back out of one. No account, no hosting, no deploy step.",
"author": {
"name": "anew",
"url": "https://github.com/round"
},
"homepage": "https://anew.page",
"repository": "https://github.com/round/anew.page",
"license": "0BSD",
"keywords": [
"anew",
"html",
"mcp",
"publishing",
"url",
"sharing",
"webpage",
"static-site"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "anew",
"shortDescription": "free webpages",
"longDescription": "websites self-contained in personalized URLs with no account required",
"developerName": "round",
"category": "Productivity",
"capabilities": [],
"websiteURL": "https://anew.page",
"supportURL": "https://github.com/round/anew.page/security",
"privacyPolicyURL": "https://anew.page/privacy",
"termsOfServiceURL": "https://anew.page/terms",
"defaultPrompt": [
"Make me a one-page résumé from this text and give me the link.",
"Take the page at this anew.page URL, change the heading colour to red, and send me the new link.",
"Build a small interactive tip calculator as a page I can share with my team."
],
"composerIcon": "./assets/anew.png",
"composerIconDark": "./assets/anew-dark.png",
"logo": "./assets/anew.png",
"logoDark": "./assets/anew-dark.png"
},
"onboardingSkill": "./skills/anew/SKILL.md",
"review": {
"test_cases": {
"positive": [
{
"description": "Create a simple shareable page.",
"prompt": "Create a self-contained anew.page with the heading \"Hello from anew\" and one short paragraph, then give me its shareable link.",
"tools_triggered": "anew_write",
"expected_behavior": "Returns the minted anew.page URL verbatim with its byte measurements; the page shows the requested heading and paragraph."
},
{
"description": "Create an interactive self-contained page.",
"prompt": "Build a self-contained interactive tip calculator with inline CSS and JavaScript, then give me an anew.page link.",
"tools_triggered": "anew_write",
"expected_behavior": "Returns a working anew.page URL with byte measurements; the page contains the requested interactive calculator without required external assets."
},
{
"description": "Read exact author HTML from a full anew.page URL.",
"prompt": "Read the exact author HTML encoded in https://anew.page/PGgxPmEgbmV3IGludGVybmV0IHN0YXJ0cyB3aXRoIGFuZXcucGFnZTwvaDE- and return the source, not the rendered DOM.",
"tools_triggered": "anew_read",
"expected_behavior": "Returns exactly <h1>a new internet starts with anew.page</h1> together with the canonical URL and byte metadata."
},
{
"description": "Read a bare slug as a typed HTML resource.",
"prompt": "Decode the bare anew slug PGgxPmEgbmV3IGludGVybmV0IHN0YXJ0cyB3aXRoIGFuZXcucGFnZTwvaDE- and return it as an HTML resource.",
"tools_triggered": "anew_read",
"expected_behavior": "Returns one text/html embedded resource containing the exact heading HTML, plus the canonical URL and byte metadata."
},
{
"description": "Round-trip an edit without overwriting the original page.",
"prompt": "Read https://anew.page/PGgxPmEgbmV3IGludGVybmV0IHN0YXJ0cyB3aXRoIGFuZXcucGFnZTwvaDE-, change the heading to \"Revised with anew\", and return a new anew.page link.",
"tools_triggered": "anew_read, anew_write",
"expected_behavior": "Reads the exact original HTML, returns a new working URL containing the revised heading, and leaves the original URL unchanged."
}
],
"negative": [
{
"description": "Do not trigger for deletion requests.",
"prompt": "Permanently delete this anew.page URL so nobody can open it again.",
"expected_behavior": "The app should not be invoked because anew provides no deletion capability."
},
{
"description": "Do not trigger for page discovery or history requests.",
"prompt": "List everything someone else has published on anew.page this week.",
"expected_behavior": "The app should not be invoked because anew has no page index, account history, or search workflow."
},
{
"description": "Do not trigger for arbitrary website reading.",
"prompt": "Fetch the HTML source of https://example.com and summarize it.",
"expected_behavior": "The app should not be invoked because anew_read only decodes HTML carried by anew.page URLs or slugs and does not fetch arbitrary sites."
}
]
},
"demo_recording_url": "https://anew.page/demo/anew-plugin-demo-20260901-v3.mp4",
"commerce": false,
"commerce_description": "anew sells nothing and processes no payments. Every tool works without an account."
},
"publication": {
"release_notes": "The listing, starter prompts and review cases ship in the manifest under extensions.com.openai, with the listing text as already published. On the server: the page runs live in its card, Edit opens the anew editor, and two entry points open the editor, anew in the sidebar and Page Editor beside a chat. Ownership: anew.page is the submitting developer's own site. Its domain is verified in the plugin portal, the structured data on https://anew.page lists this ChatGPT listing under sameAs, and this package is published from https://github.com/round/anew.page."
}
}
}
}
Client extensions
Data this package carries for particular clients. The directory lists the clients named and never reads what is addressed to them.
- com.openai