New — AI replies right at the pin

Feedback that thinks.
From the first click-dummy
to the live bug.

Reviewers pin straight inside the prototype. The AI layer sharpens vagueness and groups duplicates. You triage in the dashboard — or let the AI take the first pass.

acme.com/preview/landing-v3
Welcome to Acme
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Get started
1
2
3
LM
Lisa M.2 min ago
Button feels too small to me.
Just the primary CTA in the hero, or every small button on the page? Currently 32px tall.
How it works

Four steps. You skip three of them.

Setup is a copy-paste. The AI handles the rest until you want to step in.

1

Drop in the script tag

One line in your prototype, staging or live build. Or use the Chrome extension.

2

Reviewers pin

Click an element, write a comment, done. Screenshot comes along automatically.

3

AI sharpens & answers

Vagueness turns into concrete questions. Duplicates merge. First answers straight from code context.

4

You triage

Open, In progress, Resolved — or push a pull request via the MCP bridge.

With AI that knows your context

A co-reviewer that never sleeps.

Pinmerge sees the element, the component, the surrounding code. The result is not "ticket created" — it is a dialog.

Sharpens the vague

"I do not like it" becomes a concrete design decision.

I do not like the header.
Is it the height (currently 72px), the type (Inter 600/22px), or the logo spacing? Want me to propose variants?

Groups & categorises

Three reviewers, same bug — one card with three avatars.

3 pins · all on the checkout button · 2 say "broken", 1 says "loads forever"
Merged as Bug · High. Reproducer identified in the DOM: the onClick handler is not firing a fetch.

Answers directly

For "is this on purpose?" a quick code look is enough.

Why is the sidebar desktop-only?
Design decision from migration 0014: mobile uses a bottom sheet (useMobileNav.ts). Want me to switch it?

Ships the fixsoon

MCP bridge to Claude Code: every pin can land as a pull request in your repo.

Button is missing a hover state entirely.
Opened PR #142: Button.tsx · +hover:bg-primary/90 · 1 line changed. Review on the repo →
Where Pinmerge runs

One URL is all it takes. At any phase.

From the Figma click-dummy to production — same workflow, same pin, same AI.

🎨

Design preview

Figma prototypes or static mockups. Stakeholders pin directly.

FigmaPenpotSketch Cloud
🧪

Prototype

Webflow, Framer, static demos. Drop the snippet once and forget it.

WebflowFramerNext/Vercel
🛠

Staging / Dev

Preview deploys of a real product. Internal QA with full code context.

Vercel previewNetlifyRender
🚀

Live product

Production bugs, "click here for a sec". Via script or Chrome extension.

Feature flagExtension
Who it is for

Three roles. One tool.

Designer

No more PDF annotations

Stakeholders comment on the real element, not in a parallel Slack thread. AI translates "I do not like the header" into a concrete design discussion.

Developer

Bugs on the live app

Pin the element, AI sees the DOM path, element HTML, and (optionally) your code via MCP. The report becomes a reproducer — or a PR.

Product / Agency

One workspace, the whole lifecycle

Prototype, staging, live — all in one project with version tagging. Feedback travels with the build; nothing gets lost between phases.

Features

Everything you expect from a feedback tool.
Plus what you do not.

📍

Pixel-anchored pins

Pins stick to the element, not the pixel. Survive viewport changes, scrolling, re-layouts.

📸

Element screenshots

Auto crop of the commented element. No more "zoom in please" loops.

💬

Threads & reactions

Replies right on the pin. 👍 ❤️ 🎉 for "got it, on it" moments.

🔐

Magic link & OAuth

Reviewer sign-in via email link, Google, or GitHub. No password rituals.

🏷

Version tagging

Several prototype iterations per project. Comments stay tied to the version.

👥

Workspaces & roles

Owner, admin, editor, viewer. Invite link, 7-day expiry, one click.

Security & privacy

Your code stays yours.

Per-project token, origin allow-list, no API keys in the widget. AI context is opt-in per project.

  • Per-project token + URL allow-list — nothing runs on the wrong site
  • No Supabase or service keys baked into the widget bundle
  • AI only sees what you explicitly share via MCP
  • Your code is never used for training
  • EU-region hosting, GDPR DPAs included
widget_token✓ scoped
allowed_urlsacme.com/*
service_key in bundlenone
training opt-inoff
regioneu-central-1
encryptionTLS 1.3 · AES-256
FAQ

The questions we hear most.

Does it work on a production site where I cannot drop in a script?

Yes — the Chrome extension overlays the widget on any page, no build changes needed. Ideal for internal QA on production URLs.

Which AI model is in the loop?

Claude by Anthropic. EU-region depending on your plan. Your code is never used for training.

What does the AI see of my code?

By default only what is in the DOM — element HTML, selector, screenshot. With the MCP bridge enabled it can read your repo on top — fully opt-in per project.

Can I invite reviewers without making them create an account?

Yes — a magic link is enough. One click in the email and they are in. No password, no onboarding hurdle.

Can I turn the AI off completely?

Yes, per project setting. Pinmerge then runs as a pure pin tool — sharpening, grouping, replies all off.

Drop your first pin today.

The free tier covers your first project. No credit-card theatre.