Point at the bug. Ship the fix.

Your team clicks where it breaks. FeedBug captures the screenshot, the console, the network, and writes a Linear ticket. Your AI agent reads it and ships the patch.

See how it works
Free forever plan 2-minute setup No credit card
app.example.com

Setup

Drop one script.
Done in two minutes.

No SDK, no dependencies, no build step. Paste one line in your HTML, your QA team can report bugs immediately. Works with React, Vue, Angular, Svelte, or plain HTML.

Lightweight, no conflicts with your existing styles or scripts.

claude code · feedbug-mcp
$ fix PRE-1514
→ Fetching ticket from FeedBug...
· Component: MetricCard
· Error: chart.render is not a function
· File: src/components/MetricCard.vue:42
→ Reading MetricCard.vue...
Diagnosis: chart.render() called before DOM mount
✓ Patch applied
Moved chart.render() inside onMounted().
+ 3 lines · - 1 line · src/components/MetricCard.vue
→ Opening PR...
✓ #428 ready for review

AI debugging

Bugs traced to
the exact line.

Each report carries the HTML context: CSS selector, component name, attributes, siblings. Plug the MCP server into Claude Code, Cursor, Windsurf. Your AI finds the file and ships the patch.

Works with Claude Code, Cursor, VS Code, Windsurf. One install command.

Pins

Pin bugs where
they happen.

Numbered markers show exactly where each bug was reported. Resize the browser, switch to mobile, the pins stay on the right spot. Click one to see details, add a comment, or update the ticket.

Resolved bugs disappear automatically.

app.example.com/dashboard
Last 7 days
2
User avatar
diagnostics · captured at submit
Device
macOS 15.3 · Safari 19.2 · 1440×900
Console
[info] Mounted Dashboard.vue
[warn] Deprecated API: useStore
[error] chart.render is not a function
at MetricCard.vue:42
Network
GET 200/api/projects
GET 500/api/metrics
Element
Component: MetricCard
Selector: div[data-slot="card"]:nth-child(3)

Diagnostics

Every report,
a full picture.

Console logs, JS errors, failed network requests, device info, and the HTML context of the clicked element are captured at submit. Your devs see exactly what happened, no "can you reproduce?".

Configure custom data too: cookies, localStorage, sessionStorage keys.

Linear

Lands in Linear
in two seconds.

Screenshot embedded, diagnostics pretty-printed, link to the live pin on the page, and a session replay attached. Triage from your usual workflow.

Tickets are attributed to the QA member who reported them. No anonymous bots.

linear.app · PRE-1514
Chart not loading on SafariIn Triage
Device: macOS · Safari 19.2 · 1440×900
URL: app.example.com/dashboard
JS Error: TypeError: chart.render is not a function
Network: GET 500 /api/metrics (342ms)
Session replay · 30s before report
JasonReported by Jason · just now

Pricing

Simple, transparent pricing.

Start free, upgrade when you need more. No credit card required.

Free

0€forever
  • 1 project
  • 10 feedbacks/month
  • Screenshot + diagnostics
  • Visual pins
  • Guest auth
Popular

Pro

9€/month
  • 3 projects
  • Unlimited feedbacks
  • MCP server
  • Session replay
  • Webhook
  • Custom data capture

Team

19€/month
  • Unlimited projects
  • Everything in Pro
  • Priority support

Everything your team already needs.

Full diagnostics. Console logs, JS errors, failed requests attached to every ticket
Device metadata. OS, browser, screen size, pixel ratio, page load time
Network requests. Failed API calls logged with URL, status and timing
Change status. Update Linear ticket status directly from the pin
Comment from pin. Add comments to tickets right from the page
Annotate screenshots. Draw on screenshots before sending with pen strokes
Per-user attribution. Every action appears under the user's own Linear name
Custom data capture. Grab cookies, localStorage or sessionStorage values
Environment control. Only loads on allowed domains. Nothing runs in production unless you want it to
Session replay. See what the user did in the 30 seconds before the bug report

Start in two minutes.

One script tag. Your team clicks the bug, your devs ship the fix. Free forever for solo teams.

No credit card required.