◉ Open source · self-hosted

Feedback on your vibecoded site, as an AI prompt that fixes it.

You built it with Lovable, Bolt, v0 or Cursor. KryMark lets non-coders click the exact element and say what they want — and hands you (or your AI editor via MCP) a DOM-rich, paste-ready fix prompt.

Get it on GitHub How to install MIT · Docker · one script tag

How it works

01 · you

Add it once

Paste one <script> tag, or use the browser extension / bookmarklet to review sites you can’t touch the code of.

02 · your client

They click & type

A Feedback tab sits on the edge. Reviewers tap the exact element, type in any language, hit send. No login, no install.

03 · your AI

You paste, it fixes

Each note arrives with the element’s HTML, styles, a screenshot and page context — compiled into a prompt built for Cursor, Lovable or Claude.

Four ways to collect feedback

</>

Embed snippet

One script tag on any site you control. Reviewers install nothing.

Browser extension

Review any site — even ones you can’t add code to. Beats strict CSP.

Bookmarklet

Drag to your bookmarks bar, click on any page. Zero install.

MCP for AI agents

Your AI editor pulls feedback, fixes it, resolves notes — end to end.

Built for AI editors

Point Claude Code or Cursor at your instance with an API key. The agent lists new feedback, builds the fix prompt itself, applies the changes and marks notes resolved — the reporter even gets an email to confirm the fix.

Read the MCP guide →
{
  "mcpServers": {
    "krymark": {
      "type": "http",
      "url": "https://your-krymark/api/mcp",
      "headers": { "Authorization": "Bearer km_live_…" }
    }
  }
}

# then just ask your agent:
"Pull my KryMark feedback and fix all of it."

What’s inside

Frozen snapshots — element HTML, styles, position & screenshot captured at report time. Selectors drift; snapshots don’t.
Fix Session — select many notes, get one numbered batch prompt for your AI.
Dashboard — list / cards / kanban board, auto-tagging, filters, page grouping, duplicate clustering.
Closed loop — resolving emails the reporter with “fixed the way you wanted?” links.
Screenshots on S3 — public URLs embedded in prompts so vision models can look.
Outbound webhooks — note events to n8n / Slack / ClickUp / anything.
Multi-tenant — orgs, projects, invites, roles. PocketBase rules enforce isolation.
Anti-spam — IP-hash rate limiting + per-project daily caps, on by default.

Self-host in minutes

git clone https://github.com/kryphan/krymark && cd krymark
cp .env.example .env          # set your origin + a salt
docker compose up -d --build
npm run setup                 # collections + multi-tenant rules
Full self-hosting guide →