<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <id>tag:stacktr.ee,2026:feed</id>
  <title>Stacktree — blog and changelog</title>
  <subtitle>Turn reports, audits and proposals into private pages on your own domain, then see who opened them and how far they read. Private by default, unguessable links, update in place.</subtitle>
  <link rel="self"      type="application/atom+xml" href="https://stacktr.ee/feed.xml"/>
  <link rel="alternate" type="text/html"            href="https://stacktr.ee/blog"/>
  <updated>2026-08-23T01:14:02+01:00</updated>
  <author>
    <name>Steve Smith</name>
    <uri>https://stacktr.ee/about</uri>
  </author>
  <generator uri="https://stacktr.ee">Stacktree</generator>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/engagement-without-recording</id>
    <title>Page engagement analytics, without recording the reader</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/engagement-without-recording"/>
    <updated>2026-08-17T01:36:17+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">We wanted to show how a shared page is read: time on page, scroll depth, where attention landed. We did it without session replay, keystrokes, or identity. The design, and why aggregate was the point.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/notion-html-block-explained</id>
    <title>What is the Notion HTML block? Uses, limits, sharing</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/notion-html-block-explained"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Notion 3.6 adds an HTML block: agents build interactive HTML, calculators, quizzes, diagrams, right on the page. A plain reading of what&apos;s announced, what&apos;s not documented yet, and the sharing gap it leaves.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/cloudflare-monetization-gateway</id>
    <title>Cloudflare Monetization Gateway: x402 at the edge, explained</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/cloudflare-monetization-gateway"/>
    <updated>2026-07-02T00:45:40+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Cloudflare announced a Monetization Gateway: charge agents for pages, APIs, datasets, and MCP tools over x402, enforced at the edge. What it does, what it leaves out, and notes from running agent payments in production.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/throwaway-dashboard</id>
    <title>Throwaway dashboards: where the agent-built one lives</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/throwaway-dashboard"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Agents now build a dashboard on demand and throw it away. The pattern works, but the HTML still needs a home. How to host an agent-built dashboard on a private link that expires on its own.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/why-agents-need-a-publish-primitive</id>
    <title>Why AI agents need a publish primitive</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/why-agents-need-a-publish-primitive"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Agents write HTML at the rate humans write commits. The publish step deserves its own verb — not a workflow grafted onto a static-site host.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/mcp-servers-explained-for-developers</id>
    <title>What is an MCP server? A developer reference (2026)</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/mcp-servers-explained-for-developers"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">MCP is the protocol every AI assistant now speaks: Claude, ChatGPT, Cursor, Codex. How MCP servers work, what they replace, and how to build one in about 50 lines.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/private-by-default-html-hosting</id>
    <title>Private-by-default HTML hosting is the new normal</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/private-by-default-html-hosting"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Agents emit a lot of HTML with real data in it. Public-by-default hosting is no longer the safe baseline. Here is what the new baseline looks like.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/do-ai-agents-leak-secrets</id>
    <title>Do AI agents leak secrets? Yes. The publish step is where it becomes public.</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/do-ai-agents-leak-secrets"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Agents assemble pages from whatever is in context, and context routinely contains live credentials: the bearer token that fetched the data, the key in a pasted config. What a pre-flight secret scan catches (API key prefixes, JWTs, Luhn-checked card numbers, SSNs, emails), why the MCP publish path blocks by default, what a regex net honestly cannot promise, and what to do when a key already shipped.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/mcp-2026-spec-changes</id>
    <title>MCP 2026-07-28 spec: every breaking change, with fixes</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/mcp-2026-spec-changes"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Every change in the final MCP 2026-07-28 spec and how to migrate: stateless core, MCP Apps, Tasks, elicitation, sampling, caching. What breaks, what stays compatible, and the fix for each.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/mcp-apps-html-ui</id>
    <title>MCP Apps made HTML the official UI of agents. Where does that HTML live?</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/mcp-apps-html-ui"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">MCP Apps (SEP-1865) is final: Claude, ChatGPT, VS Code, and Goose all render server-shipped HTML in a sandboxed iframe. The extension standardizes emitting interactive HTML and is deliberately silent on hosting it beyond the session. What it covers, its lifecycle, and where the publish step fits.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/mcp-resources-vs-tools-vs-prompts</id>
    <title>MCP tools vs resources vs prompts: a decision table</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/mcp-resources-vs-tools-vs-prompts"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Tools act, resources read, prompts guide. A decision table for which MCP primitive to use, the mistakes that come from picking wrong, and what the 2026-07-28 spec changed.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/skills-vs-mcp-vs-api</id>
    <title>Skills vs MCP vs API: when you need each (2026)</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/skills-vs-mcp-vs-api"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">API is the surface, MCP is the interface, a skill is the expertise on top. The three layers of an agent-facing product, explained with Stacktree, which ships all three.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-is-mcp-elicitation</id>
    <title>What is MCP elicitation and sampling?</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-is-mcp-elicitation"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Elicitation lets an MCP server pause and ask the user for input mid-call. Sampling lets it ask the client model to reason. Together they turn servers from passive endpoints into active participants.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/sites-in-codex-explained</id>
    <title>Codex Sites is now ChatGPT Sites: what the docs don&apos;t say</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/sites-in-codex-explained"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Codex Sites went GA as ChatGPT Sites on 9 July 2026: every paid plan, public publishing, custom domains. Where the official docs stop: gates, expiry, API access, and private alternatives.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/can-you-make-a-codex-site-public</id>
    <title>Can you make a Codex Site public? Plan availability and access (June 2026)</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/can-you-make-a-codex-site-public"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">No public or link-only mode is documented for Codex Sites: all three access modes require an OpenAI workspace seat. Which plans have it, what OpenAI says is coming, and how to get a public link for agent output today.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/codex-sites-custom-domain</id>
    <title>Can a Codex Site have a custom domain?</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/codex-sites-custom-domain"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">No custom-domain support is documented for Codex Sites: a deployed Site renders only at an OpenAI-hosted, workspace-scoped URL. Why it is built that way, and how to put agent output on your own domain today.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-are-claude-live-artifacts</id>
    <title>What are Claude Live Artifacts? Access, plans, and the sharing gap</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-are-claude-live-artifacts"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">A plain reading of Anthropic docs: Claude Live Artifacts are persistent Cowork dashboards that re-query your apps and refresh on open. Paid plans, desktop only, personal and local at launch, not yet shareable. The private-link gap Stacktree fills.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/artifacts-in-claude-code-explained</id>
    <title>Artifacts in Claude Code: what they are, who can view, sharing limits (2026)</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/artifacts-in-claude-code-explained"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">A plain reading of Anthropic&apos;s launch: Claude Code turns a session into live pages that update in place. Org-only and cannot be made public; Team and Enterprise beta. The external-sharing gap Stacktree fills.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/claude-artifact-cannot-republish</id>
    <title>Claude artifact unpublished and cannot be republished? Why, and the fix</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/claude-artifact-cannot-republish"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Unpublishing a Claude artifact is permanent for that version: the link dies, the Publish button deactivates, persistent-storage data is deleted, and republishing mints a new URL. Why it happens, and how to keep a link that stays put.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/stacktree-n8n-node</id>
    <title>Stacktree is an n8n node now</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/stacktree-n8n-node"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">n8n-nodes-stacktree passed n8n&apos;s review and is live: any workflow can publish HTML to a private link, update it in place, gate it, and read viewer feedback. Works as an AI Agent tool.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/slack-renders-html-attachments</id>
    <title>Slack renders HTML attachments now. Rendering still is not sharing</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/slack-renders-html-attachments"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Slack is starting to render attached HTML files inline instead of a download or raw code. Useful, and rolling out. But a rendered file in a channel has no link, no access control, and no life outside the workspace. How to turn it into a private link.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/per-seat-pricing-ai-agents</id>
    <title>The end of per-seat pricing: agents don&apos;t have seats (2026)</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/per-seat-pricing-ai-agents"/>
    <updated>2026-08-16T23:11:24+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Per-seat pricing assumes one human per seat. AI agents do not log in or take seats, so the model breaks. Original data on what static hosts charge per seat today, why the category is moving to flat and usage pricing, and where it leaves teams running agents.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/x402-mpp-explained</id>
    <title>x402 and MPP, explained by building a service that takes both</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/x402-mpp-explained"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">What x402 and MPP are, how an AI agent pays with each, and how we built a multi-rail service with agentcash where the payment turns into a site the agent or a human can then claim and manage.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/ai-agents-pay-over-mpp-tempo</id>
    <title>MPP in production: how AI agents pay Stacktree over Tempo</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/ai-agents-pay-over-mpp-tempo"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">An early, live example of MPP, the agent-payment standard from Stripe and Tempo. AI agents pay Stacktree over MPP or x402 on one endpoint, with no account and no card. How it works, why the onchain method is permissionless, and the on-chain receipt.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/agent-paid-to-provision-itself</id>
    <title>An AI agent paid us $1 to provision itself: x402, end to end</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/agent-paid-to-provision-itself"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">A working x402 example on Base mainnet: an agent hits a 402, signs an EIP-3009 USDC authorization, pays $1 with no human and no card, gets a persistent API key, and publishes a live page. The whole loop, the real transaction, and the bug that cost two attempts.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/mpp-vs-x402</id>
    <title>MPP vs x402: you do not have to choose</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/mpp-vs-x402"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">MPP and x402 are usually framed as crypto versus Stripe. That is a false binary: MPP’s evm method settles the same EIP-3009 USDC on Base that x402 does. What actually differs, what is identical underneath, and why we accept both on one endpoint, with a real on-chain MPP payment as proof.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-shopify-quick-proves</id>
    <title>What is Shopify&apos;s Quick? What it proves about AI-era hosting</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-shopify-quick-proves"/>
    <updated>2026-08-16T23:11:24+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Shopify built an internal host for AI-made HTML: drop a folder in, get a company-only URL. Half the company used it. Why constraints won, and the public version.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-is-vercel-drop</id>
    <title>What is Vercel Drop? Limits, privacy, and when to use it</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-is-vercel-drop"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Vercel Drop (June 2026) deploys a dragged file or folder with no Git or CLI. What it does, its documented limits, and when an artifact wants a different host.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/is-agentic-score-explained</id>
    <title>is-agentic explained: what the agent-readiness score measures, and the fix that took us from 93 to 100</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/is-agentic-score-explained"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">We ran Vercel&apos;s new is-agentic scanner against stacktr.ee: 93 at baseline, 100/100 a day later. The gap that mattered most was invisible to humans: 99KB of inlined CSS pushing the first heading past byte 100,000. Every fix, ranked by what it was actually worth.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/skills-sh-indexing-explained</id>
    <title>skills.sh indexing explained: why your skill is not listed, and what actually breaks</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/skills-sh-indexing-explained"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">The agent-skills leaderboard has 191 open &quot;request indexing&quot; issues. We shipped a listed skill, hit two silent failures on the way, and wrote down what the index actually does: parsing, repo layout, ranking, and the diagnostic checklist we wish existed.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-is-grok-bot</id>
    <title>Grok Bot explained: what it is, what it costs, and what it can reach</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-is-grok-bot"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">xAI&apos;s Grok Bot is an AI teammate with its own cloud computer that signs into your apps by driving a browser. What it does, what it costs, why it needs no integrations, and what we found when we asked one to publish a page. Tested hands-on.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-is-chatgpt-sites</id>
    <title>ChatGPT Sites explained: cost, access, domains, privacy</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-is-chatgpt-sites"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">ChatGPT Sites launched 9 July 2026 for all paid subscribers: ChatGPT builds and hosts live sites at openai.chatgpt.site. Who gets it, what it costs, custom domains, privacy, and what is still undocumented.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/share-chatgpt-site-with-client</id>
    <title>How to share a ChatGPT Site with a client</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/share-chatgpt-site-with-client"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">ChatGPT Sites has two audiences: your workspace, or the whole internet. There is no setting for one named client without an account. What the options actually are after the August 2026 collaboration launch, and when you need a different tool.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-is-design-in-claude-code</id>
    <title>What is /design in Claude Code? Tested at launch</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-is-design-in-claude-code"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">The /design research preview shipped in Claude Code 2.1.234 with no docs. We ran it: artboards land as .dc.html files in your repo and the canvas publishes as a claude.ai artifact.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-is-cloudflare-drop</id>
    <title>What is Cloudflare Drop? Tested at launch</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-is-cloudflare-drop"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Cloudflare Drop launched 8 July 2026: drag a folder or zip, get a live workers.dev site with no account, 60 minutes to claim it. We deployed through it at launch; here is how it behaves.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/claude-artifacts-public-sharing</id>
    <title>Claude artifacts now share publicly and edit multiplayer (2026)</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/claude-artifacts-public-sharing"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Claude Code shipped public sharing and multiplayer editing for artifacts on 13 July 2026. What it does, the three things it still cannot do (private gating, your own domain, non-Claude agents), and where a publish primitive fits.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/how-to-add-x402</id>
    <title>How to add x402 payments to your API: what it actually took</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/how-to-add-x402"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">The build guide behind our live x402 endpoint: a real 402 (v1+v2), facilitator settlement, idempotent minting, SKU pricing that cannot bleed you, discovery listings, and the mainnet gotchas.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/x402-in-production</id>
    <title>x402 in production: 30 days of a live paid endpoint</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/x402-in-production"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Real numbers from a live x402 endpoint: settled payments on four rails, x402scan vs the application ledger, what buyers did after paying, and the gotchas that cost live transactions.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/loop-engineering-paywall</id>
    <title>What happens when an AI agent loop hits a paywall?</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/loop-engineering-paywall"/>
    <updated>2026-08-16T23:11:24+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Loop engineering says design loops that ship while you sleep. A 402 at 3am is a stop condition you did not design. Two live rails let a loop pay and keep going.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/what-ai-agents-publish</id>
    <title>What AI agents actually publish: data from our first 80 sites</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/what-ai-agents-publish"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Early aggregate data from Stacktree: 99% of agent-published pages are a single self-contained file, 86% are under 100KB, and over half are password-gated. Agents emit private artifacts, not projects.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/dashboard-speaks-webmcp</id>
    <title>WebMCP in production: how the Stacktree dashboard speaks it</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/dashboard-speaks-webmcp"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">WebMCP lets a page register tools that in-browser AI agents can call. Stacktree&apos;s dashboard now exposes its site actions as WebMCP tools, behind one cmd-K palette.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/agent-publishes-from-the-browser</id>
    <title>Our homepage publishes for you now: an AI agent builds and ships a page, no login</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/agent-publishes-from-the-browser"/>
    <updated>2026-08-23T01:14:02+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">We put a WebMCP publish tool on the public site. A browsing AI agent, or you in plain English, can generate an HTML page and ship it live from stacktr.ee with no sign-in.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/blog/clients-never-log-into-your-portal</id>
    <title>Clients never log into your portal. The login is the reason.</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/blog/clients-never-log-into-your-portal"/>
    <updated>2026-08-16T23:11:24+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">The recurring complaint about client portals is not a missing feature, it is that the client never went in. The category knows, and its own published fix, put the invoice behind the login, gives the game away.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/agent-loop-hosting</id>
    <title>Agent-loop hosting · replace-in-place URLs</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/agent-loop-hosting"/>
    <updated>2026-07-02T23:11:37+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">When an agent iterates 30× a session, you do not want 30 URLs. Stacktree gives every artifact one URL the agent updates in place.</summary>
  </entry>
  <entry>
    <id>tag:stacktr.ee,2026:/changelog</id>
    <title>Changelog — Stacktree updates</title>
    <link rel="alternate" type="text/html" href="https://stacktr.ee/changelog"/>
    <updated>2026-08-20T01:44:52+01:00</updated>
    <author>
      <name>Steve Smith</name>
      <uri>https://stacktr.ee/about</uri>
    </author>
    <summary type="text">Dated release notes for Stacktree — what shipped, what changed, what to upgrade.</summary>
  </entry>
</feed>
