varic Pointer · Chrome extension

Anyone who sees it can fix it.

Open the site your team already runs, mark what should change, and press Build. Pointer finds the code behind those pixels and opens a pull request your engineers review.

Add to Chrome What leaves your network

Chrome 116 or newer · works on any page you can open · the extension never touches your repository

01 — OPEN IT

Open it on the site your team already ships.

Press the Pointer icon in your toolbar and it docks beside the page. Nothing to configure, and no access to your repository from the browser.

The panel opens on this tab’s sessions — everything you have built from this page, with its status.

02 — PICK

Point at the element itself.

Every element under the cursor outlines as you move. Click the one that’s wrong — no file path, no component name, no guess about where it lives.

Status line: “Hover the page — every outlined element is pickable.”

05 — REGION

For the things a picker can’t reach.

Canvas, video, a chart, an area rather than a node. Drag a box around it and describe the change in words instead.

Status line: “Drag a box around anything the picker can’t reach.”

06 — MEASURE

Say 24, not “a bit tighter”.

Click two elements and Pointer measures the gap between them. The number rides along in the ticket, so the change is specified rather than described.

Status line: “Click two elements to measure the gap between them.”

04 — DRAW

Draw the correction on the page.

An arrow across the gap you mean. The ink gets measured too, so a gesture still arrives as a number.

Status line: “Draw an arrow across the gap — the ink gets measured.”

03 — DEVTOOLS

Or just fix it in DevTools.

Take a baseline, then restyle the page the way you already do. Every edit is captured automatically about a second after you stop typing — there is no second button to remember.

Press once for DevTools, again for Stop. That is the whole control.

07 — BUILD

Five marks, one press.

Pointer packs what it gathered — text, structure, ARIA, test ids, your measurements and your screenshots — and hands it to a coding agent against the branch named at the top.

The button says where it goes. It never merges.

08 — REVIEW

Your team merges it. Not us.

A pull request saying what changed and what it deliberately left alone, and a session row on this tab that keeps the link. Nothing reaches your default branch without a human approving it.

The fix lands on the page you marked — look at the button.

It plays as you scroll
Northwind — Team app.northwind.co/settings/team 01/ 08 Open it
Northwind OverviewTeamBilling

Team members

Everyone with access to the Northwind workspace.

Admin

Ana Ruizana@northwind.co

Editor

Dev Pateldev@northwind.co

Viewer

Sam Colesam@northwind.co

14 → 24
Invite member

Seats renew on 1 March.

1
Recording
ElementsConsoleNetwork Varic is recording
<div class="members">
  <div class="member editor">…</div>
  <div class="member">…</div>
</div>
element.style {
border-radius: 9px;
}
button.cta
What should happen to this mark
Instructionbecomes a code change
Note onlybecomes a PR comment with the crop
Change to
This is 1 of 3 identical elements.
Just this oneAll 3
CancelAdd change
— 104 —

Your team

Your engineers stay in control.

01

A pull request, never a merge.

Against the branch named at the top of the panel. Nothing reaches your default branch without a human approving it.

02

It says what it left alone.

The body lists what changed and what it deliberately did not touch, so a reviewer knows the shape of it before opening the diff.

03

Your checks run.

Lint, types and the test suite your CI already runs, before the pull request opens. When it breaks something, it fixes that first.

— 280 —

Five ways to mark

Every one of them ends in the same place.

The demo runs them in order. Here they are at rest — press one to watch it again.

— 002 —

Get it

One click, and it never sees your repository.

Add to Chrome

v0.4.0 · Chrome 116 or newer · updates itself

Pointer asks for four permissions and one host. It reads the tab you press it on, only while you have it open — and it has no way to reach your code. What leaves your network →

  1. Add it from the Chrome Web Store — Chrome does the rest, and keeps it up to date.
  2. Pin it, so the icon is where you expect it.
  3. Open the site your team already runs and press it.
— 001 —

What leaves

Your repository does not leave. The prompt context does.

The distinction a security team will draw, drawn here first.

The browser sends

  • The element you picked, and the markup around it
  • Your instruction, in your words
  • Crops of what you marked
  • Your measurements, the page URL and its title

It never touches

  • Your repository
  • Your git credentials
  • Any tab you did not open it on

From varic, the prompt context — those marks plus the source files the agent reads while working — goes to the model over TLS. Run varic on your own box and the same sentence is true of your box. Nothing merges: Pointer opens a pull request and stops.

manifest.json · shipped build v0.4.0
"permissions": [
  "activeTab",
  "scripting",
  "sidePanel",
  "storage"
]

Four permissions, and one host entry — the varic API it talks to. activeTab means it can only read the tab you press it on, and only when you press it.

Mark the page. Read the pull request.

Add to Chrome
— 048 —

Chrome panel

You’re looking at it.

Desktop app

The same runs and pull requests, on your own machine.

Download for macOS →