Claude can now render an HTML or Markdown file to a private, shareable web page hosted on claude.ai. The resulting URL can be shared with teammates.
Artifact(file_path="report.html", favicon="📊")
Artifact(file_path="notes.md", favicon="📝", label="v2")- Accepts
.html,.htm, and.mdfiles; Markdown is converted to styled HTML automatically - The
faviconparameter (required) sets the browser-tab emoji icon — use one or two emoji, no markup - The optional
labelparameter provides a human-readable version label shown in the version picker - The optional
urlparameter lets Claude redeploy to an existing artifact URL the user provides - A strict CSP blocks all external resources — inline all CSS/JS and embed assets as data: URIs
- Same file path → same URL on redeploy; different file path → new URL
- Controlled by the
CLAUDE_CODE_DISABLE_ARTIFACTenvironment variable and thedisableArtifactsetting - Gated by feature flag
tengu_cobalt_plinth; enabled for eligible claude.ai accounts
Artifact tool implementation (search for "Render an HTML or Markdown file to an Artifact" and uAH = "Artifact")
Strings lifted out of the shipped bundle, so the claim above can be checked against them.
tengu_cobalt_plinth Off by default, switched on for this accountThe shipped code defaults this off, and the flag server returned on for the one account this site reads on this version. That is the reading that makes the entry above worth a second look, and it still says nothing about your account.
This account: on · anonymous baseline: on · compiled default in v2.1.172: off
These values were read against a different version of Claude Code, so treat them as the nearest reading available instead of one taken on this release.
Read once, for one account on one subscription tier, against v2.1.172. It isn't a statement about your account. What a flag value here can and cannot tell you
A reading is one sample. Claude Code evaluates its flags remotely, so no client sees the targeting rule behind a value and this says nothing about your account.
A reading is one sample. Claude Code evaluates its flags remotely, so no client sees the targeting rule behind a value and this says nothing about your account.
The code path no longer asks a flag before it runs.
New in this build: tengu_cobalt_plinth