SET_TEXTRewrite copy
Headlines, buttons, paragraphs. The exact new text, not “make it punchier”.
For web agencies building with AI coding agents
Clients show their changes directly on your staging site. You get a structured ChangeSet that developers and coding agents can implement without a single clarification email.
Two-minute demo in your browser. No sign-up.
The problem
“Can the button pop more?” “Change the second paragraph.” Each round costs a meeting, a screenshot hunt and a rewrite into tickets, and it all comes out of your margin.
How it works
Add one script tag to your staging site, create a project and share a private link. Clients need no account and nothing to install.
They click any element and show what they want: new copy, a colour, an image, a hidden section. Undo and redo included.
Every request arrives as a separate, typed change with the element, the before value and the proposed value.
Copy an implementation brief for Claude Code, Cursor or Codex, or download the JSON ChangeSet.
Deliberately focused
Not a page builder. Clients propose; your team decides and implements, in the source code.
SET_TEXTHeadlines, buttons, paragraphs. The exact new text, not “make it punchier”.
SET_STYLEColour, size, weight, alignment, spacing, radius, from an allowlist of safe properties.
REPLACE_IMAGEPoint to the new image URL and preview it in place before sending.
SET_VISIBILITYRemove what should go and see the page without it.
The output
Each accepted change carries the page, the element’s fingerprint (tag, stable attributes, selector, DOM path, text, position) and the before and after values.
### 2. Edit text - Page: `https://staging.acme.dev/pricing` - Element: `h1`, selector `#pricing-hero h1` Current text: ```text Plans for every team ``` Requested text: ```text Simple pricing. Cancel anytime. ```
{
"operation": "SET_STYLE",
"target": {
"tagName": "a",
"cssSelector": "#pricing-hero .cta",
"textFingerprint": "Start free trial"
},
"beforeValue": { "property": "background-color", "value": "rgb(17, 24, 39)" },
"proposedValue": { "property": "background-color", "value": "#7c5cff" }
}Everyone in the loop
Security by design
The review UI lives in a Shadow DOM and cleans up after itself. Your site’s CSS stays yours.
Edits change the browser preview. Nothing touches your code, repository or servers.
Four typed operations, schema-validated. No eval, no injected scripts, no free-form CSS.
Random review tokens, stored hashed, scoped to one hostname, revocable, kept out of server logs.
Client text is fenced as data so it cannot pose as instructions to your coding agent.
No cookies, form values or storage are read from the reviewed page.
Setup
The widget stays inert for everyone else. It only wakes up when a page is opened with a valid review link.
<script src="https://visumerge.app/review-widget.js" async></script>
We’re onboarding a small group of agencies. You get hands-on setup; we learn from a real client project.