jetti.
( o.o )

Website reviews for agent workflows.

Tell your AI agent to install jetti. Send the link to your client. Get back changes your agent can apply.

claude-code · paste this prompt
install jetti from https://jetti.co/install.md
Works in Claude Code, Codex, Cursor
Paste into Claude Code, Codex, or Cursor.
─── thirty-second tour ───

The whole loop, in three steps.

One command in your agent. One link to your reviewer. One handoff back to your codebase.

no shortcuts skipped ↘
1 install

Install in your agent.

install jetti is a real prompt your AI dev tool understands. We publish a public install contract; your agent reads it and patches your project.

▸ install jetti_
2 review

Reviewers edit live.

Your client opens a link and edits the words and photos they mean — on the actual site, in their browser. No comments to translate. No screenshots to interpret.

click → type → done
3 apply

Hand back to your agent.

npx jetti apply stages the changes on a branch and opens a draft PR. Deterministic patches for text. Photo files saved to disk. Comments left for you to read.

↗ draft PR · 4 files
─── what your agent runs ───

The install, start to finish.

This is the actual output of scripts/jetti-install.mjs. No marketing demo — your agent runs this exact flow.

jetti — claude-code · ~/your-repo
you ~/your-repo $ install jetti
    ╔══════════════════════════════════════════════════════╗
    ║                                                      ║
    ║       ██╗ ███████╗ ████████╗ ████████╗ ██╗           ║
    ║       ██║ ██╔════╝ ╚══██╔══╝ ╚══██╔══╝ ██║           ║
    ║       ██║ █████╗      ██║       ██║    ██║           ║
    ║  ██   ██║ ██╔══╝      ██║       ██║    ██║           ║
    ║  ╚█████╔╝ ███████╗    ██║       ██║    ██║           ║
    ║   ╚════╝  ╚══════╝    ╚═╝       ╚═╝    ╚═╝           ║
    ║                                                      ║
    ║              J  E  T  T  I     v0.4 · skill      ║
    ║      website reviews for agent workflows             ║
    ║                                /'^^^\  .              ║
    ║                               ( o.o ) /              ║
    ║                                                      ║
    ╚══════════════════════════════════════════════════════╝


   What jetti will do
    1.    Detect your framework            (vite+react)
    2.    Patch index.html with the snippet
    3.    Generate a unique reviewer link
    4.    Verify with a build run
    5.    Hand back a deterministic apply contract


  ┌─ status ─────────────────────────────────────────────┐
    detecting framework  ✓ Vite React app             
    patching head        ✓ index.html                 
    verification         · run app/build next         
    reviewer link        ↗ jetti.co/#/r/rev_design    
  └──────────────────────────────────────────────────────┘


  jetti> ready when you are
real output. your agent runs this. you don't have to.
─── what your reviewer sees ───

They edit. You apply.

Same site, two perspectives. Your reviewer changes what they mean. You receive a structured handoff — not a screenshot, not a Loom, not a Slack thread.

↪ structured, not screenshots
🔒 rollingfeasts.com/about · LIVE
A Reviewer · Jamie click anything →

Born from a food truck on Hawthorne.

We started with one truck, two recipes, and a habit of arguing about salt. Today we cater across Portland — same recipes, slightly less salt.

📷
Jamie · note move the menu link higher up — clients always miss it!
~/rolling-feasts $ jetti review · INBOX
B Developer · You ↩ ready to apply
Aa
"food cart" → "food truck"about/hero h1 → span:nth-child(2)
Jamie · 2m
Replace hero photo · truck-final.jpg (2.4mb)about/hero figure → img.cover
Jamie · 1m
"move the menu link higher up — clients always miss it!"about/header → comment
Jamie · just now
$ npx jetti apply rev_design → branch + draft PR
Reviewers stay free on every plan. Always. See pricing →
─── what we support today ───

Built for the stacks your agent already knows.

Same snippet, three install paths: the CLI auto-patches Vite or static sites, an agent like Claude Code follows our recipe at jetti.co/install.md, or you paste it into Webflow / Shopify / GTM.

Vite + Reactauto-patched · CLI edits index.html
vite.config · package.json
supported
Plain HTML / staticauto-patched · CLI edits <head>
index.html · no bundler
supported
Next.jsAI prompt patches app/layout.tsx
app router · server components
supported
N
Next.jsAI prompt patches _document.tsx
pages router · legacy
supported
Webflow · Shopify · GTMone paste — site head or GTM Custom HTML tag
no codebase access
supported
same snippet · three install paths
─── for the vibe coder ───

You ship the vibes. We ship the handoff.

If you're shipping sites with Claude Code at 2am and you'd rather not Slack-translate your client's screenshots into commits — jetti is for you.

no git PhD required ↗
A agent first

Claude Code, Codex, Cursor.

Your agent runs the install. Your agent applies the patch. You stay in your editor — no new dashboard, no second login, no context switch.

▸ install jetti
B branch + PR

Never touches main.

Apply runs on a fresh branch and opens a draft PR. Diff looks weird? Close it. Looks right? Merge it. Brake-tap UX for people who didn't really learn git.

draft PR · #142
C deterministic

Patches, not prompts.

Text edits land as exact string swaps with selectors. Photos save to public/. Comments stay as comments — your agent reads them, you decide.

4 files changed

Free for the first review.
Solo $29/mo. Reviewers always free.

One agent install, one reviewer link, no hidden seat math. Start free, upgrade when you ship enough sites that $29 is rounding error.

See full pricing no seat traps · no signup walls