Follow Discord
Sweep 22 Sep 2026 · 17:19Z Build v2.1.280 501 read Stable v2.1.267 Latest v2.1.280 Next v2.1.280 Feeds RSS JSON llms.txt Unofficial
Claude Code v2.1.265 ·

Artifact database gains in-place edits, version checks, and access simulation

Artifact database writes can now edit a field in place, check document versions, and simulate lower access levels

TierUse it nowhow much it should matter to you
Useful3my rating, 1 to 5
Signal2worth watching, 1 to 5
AreaArtifactswhat it touches
KindNew Featuresin v2.1.265,
Group of 6 Use it now Notable No documentation found

Artifact database writes can now edit a field in place, check document versions, and simulate lower access levels

What

  • The artifact database's write tool gained a str_replace operation for editing a string field in place by exact old-text/new-text match, instead of resending the whole document. It supports replace_all to replace every match, and reports clear errors when the match can't be made: edit_no_match, edit_ambiguous, edit_field_missing, edit_field_not_string.
  • Writes can now use optimistic concurrency: passing if_version (ifVersion) rejects the write with a version_mismatch error if the document changed since it was last read, and write results can report the document's new version number.
  • A new as_level parameter on read_db/write_db lets the caller simulate reading or writing as a lower access level (interact or admin), to check what a less-privileged user would be allowed to do, without actually lowering the caller's own access.
  • str_replace is threaded through both the single-write and batch (write_db/batch) code paths, and is currently gated off by default behind a feature flag (requiring both the artifact database and a dedicated str-replace flag to be enabled).

Why

These changes let Claude make small, precise edits to artifact database records instead of rewriting entire documents, avoid clobbering concurrent changes via version checks, and preview permission outcomes for other access levels before acting.

Read from
Names in the bundleas_level

See this entry in the whole of v2.1.265 →

Feedback