Users report it.
Your Claude fixes it.
And everything around it. SnagFrog takes an app from an idea to a live site, collects every bug report and error, fixes them overnight, ships the release, tells the people who asked, then helps the app get found.
Launchpad · Report pages & widget · Error capture · Night shift · Release Day · SEO, AI answers & X
Every app here was built, fixed and grown in it.
Mac apps, browser games and web tools that send their bug reports, ideas and questions through SnagFrog.
Five stages. One workspace.
Most tools cover one of these. SnagFrog covers all five, for every app and game you make, and Claude can work in each of them over MCP.
- 01 Build An idea to a live site
- Designs to approve
- Cloudflare deploys
- A backend on Fly.io
- Launch kit
- 02 Listen Everything users run into
- Report pages & widget
- Errors & crashes
- Custom forms
- 17 languages
- 03 Fix Claude does the fixing
- MCP server & skill
- Night shift
- Two-way email
- Slack, GitHub, Linear
- 04 Ship Releases people hear about
- Changelog
- Release Day
- Release health
- Roadmap & testimonials
- 05 Grow Get found and talked about
- SEO & keywords
- AI answers
- X posts & campaigns
- Threads & backlinks
From an idea to a live site.
Tell your local Claude about a new app or game. Launchpad creates it in SnagFrog, puts the screens, landing page and logo up for your approval, then builds it and deploys it with your own Cloudflare account.
- Pin comments on a design, compare versions, approve or ask for changes
- A preview first, promoted to production after checks pass
- A PocketBase backend on Fly.io, with health checks and backups
- Custom domain, restore, monthly cost and a Shut down button
- A launch kit for day one: directories, an X campaign, an audit, analytics
Hear about every bug, even the unreported ones.
A report page people will bother to use, a widget for the web, a menu item for Mac apps and a key for Godot games. Errors and crashes come in on their own. All of it lands in one calm inbox.
17 languages
The widget, the report page, the tracking page and the confirmation email follow the visitor’s language, from English to Macedonian and Japanese.
Your own forms
Beside bug, idea and question: an importer request, a beta sign-up, anything. Open one from your site by its key; answers arrive as a report.
Errors before anyone writes
Errors and crashes captured on their own, grouped and counted, with versions affected and one email an hour, not one per error. Error tracking guide
Logs you can read
Tail of every log inline, errors highlighted, filter as you type. Console errors from the web and crash logs from Mac apps and Godot games.
Looks like your app
Per-app colour, icon, chat-style or classic popup, intro and thank-you text. A live configurator shows it before you paste it.
A page they come back to
Every reporter gets a private link to follow their report and add details, without signing up.
Where your team already is
New reports and replies to Slack, Discord or a webhook. Turn a report into a GitHub or Linear issue per app.
Private by default
Per-workspace access rules, private file storage, rate limits, 90-day retention, and reporters untick anything before it’s sent.
“Fix these reports and tell the users.”
That’s the whole workflow. SnagFrog ships an MCP server with 60+ tools and a Claude skill, so Claude can read each report with its logs, open the right repository, fix and test the code, and leave you a note with the commit. Then it writes to each reporter in plain words.
- Knows where every app’s code lives
- Never emails anyone unless you say “notify”
- Internal notes with root cause and commit
- Per-workspace tokens you can revoke anytime
claude mcp add --transport http snag \ https://snagfrog.com/api/mcp \ --header "Authorization: Bearer snag_sk_…"Then just ask
Go to sleep with bugs. Wake up to pull requests.
Claude works through an app’s open reports overnight, on Anthropic’s servers while your laptop sleeps, or on your Mac for apps that need Xcode. It fixes what it can on a branch, runs the tests, opens a pull request and notes the cause on each report. In the morning the app’s Overview says how many fixes are ready, with the release notes drafted.
- You pick the time, how many reports a night, and a spending cap
- One label keeps a report out of it
- Never emails, merges or publishes: that stays your button
Every release, a launch.
Publish the release and the people who reported its bugs, and the people who voted for its features, hear about it. Then Release Day runs the rest of the launch from one page, and release health watches whether the new version is worse than the last.
- A story-first X thread drafted from the notes
- Directories, Reddit threads and mentions worth posting to
- Testimonials from the people the release helped
- A week-one report card against the last release
Releases and a public changelog
Publish a release with its notes and pick the reports it fixes. Everyone who reported them hears it’s fixed, and it goes on the app’s changelog.
- A pre-flight check catches open errors and unfixed reports before you publish
- A changelog page per app, as JSON and RSS too
- One script tag shows it on your site
Release health
For two weeks after each release, its errors and bug reports per day are compared with the version before it. A regression is flagged on the Overview and in the Inbox.
- Healthy, watch or regression
- Exact per-version error counts
- “Too early to tell” for the first hours
A public roadmap people vote on
Visitors vote on what you build next without an account; an email link confirms each vote. Ship an item with a release and its voters get an email.
- Under consideration, Planned, In progress, Shipped
- Ideas they send wait for your OK
- A hosted board, or one script tag on your site
Testimonials from your own reports
When a report says something kind, turn it into a testimonial. The person is asked by email first, and nothing goes up until they say yes.
- Pick the words straight from a report
- Editing a quote asks them again
- A wall or a carousel with one script tag
Get found. Get talked about.
The same workspace keeps an eye on how people find each app: in search, in AI answers, on X and in the threads where they ask for recommendations. Then it turns it all into one list of what to do next.
Plan the posts. See what lands.
Connect your X account and keep the posts for every app in one place: drafts, campaigns, a calendar and a timeline, pictures included. Analytics show which posts worked and the hours your followers are around.
- Campaigns that schedule a run of posts at once
- List, Timeline and Calendar views
- Claude can draft and import posts over MCP
- Posts go out only when you schedule them
SEO audits
Crawl the site for a score and a list of fixes ordered by what they gain you, for search engines and AI answers. Re-checked weekly or monthly.
Keywords and rankings
Research the searches worth winning, see which page should rank for each, and get an email when a weekly rank check moves.
Does AI name your app?
Ask Gemini and Claude what your buyers ask. See whether they mention you, where, and who they name instead.
One list of what to do next
Audit, keywords, Search Console, Bing and AI answers become one ranked to-do list per app.
Threads worth answering
Reddit threads Google shows for your searches, and mentions on Hacker News, Lobsters, Bluesky, Mastodon and Product Hunt, with reply drafts.
Backlinks and directories
Who links to you, what’s new or lost each week, which of 54 launch directories still don’t list you, and their badges added to your footer.
Analytics for every app
Google Analytics visits per app, summed on one page with reports and errors per day, so you see which app is moving.
Domain authority
An authority score for your site and for every domain that links to it, from free sources, beside your keywords.
Fast enough to live in.
One dashboard for every app, built to be used with the keyboard and kept quiet until something needs you.
⌘K for everything
Jump to any app, report, page or action. ⌘\ folds the sidebar to icons.
Keyboard-first inbox
j / k to move, x to select, e to close, / to search. Peek a report without leaving the list.
Focus mode
Hide everything but the report in front of you. “Since you were last here” sums up what changed.
Real two-way email
Reply from SnagFrog, reporters answer from their inbox. Internal notes stay internal.
Saved replies
Type / in a reply for canned answers. “Fixed in the next update” shouldn’t need typing twice.
Team and activity
Invite people to the workspace. Owners keep the connections, and an activity log shows who did what.
Near-live
New reports and closes show up without a reload. The tab title tells you when something’s unread.
Light and dark
A calm dashboard either way, with each app tinted in its own colour.
One line for the web. Five for Mac. One call in Godot.
<script src="https://snagfrog.com/widget.js" data-app="gridburg" data-color="#30a46c" async></script>
A floating “Report a bug” button in the page’s language. Captures the page, browser and recent console errors. Website guide
let snag = SnagReporter(appSlug: "hourslip", publicKey: "snag_pk_…", baseURL: URL(string: "https://snagfrog.com")!) NSApp.helpMenu?.addItem(snag.menuItem(logFiles: { [logURL] }))
Adds “Report an Issue…” with the SnagFrog icon to your Help menu. Uploads the tail of your logs, system info and a window snapshot, then opens the report page. After a crash, the crash log comes too. macOS guide
# Project Settings: snagfrog/app_slug and snagfrog/public_key # F9 opens a report, or call it from your pause menu: SnagFrog.report()
Captures a screenshot, the end of the log and system info, then opens the report page. Notices when the last session ended unexpectedly. Godot guide · Download the addon
How I keep track of bugs and suggestions for six apps.
Why I built SnagFrog, how the reports get in, and the HourSlip report that went from "this annoys me" to a release in an hour and a half.
Read the postQuestions about SnagFrog.
What is SnagFrog?
SnagFrog is a workspace for indie apps and games, from the first idea to growth. Launchpad takes an idea from your local Claude to a live site. Each app then gets a branded bug report page, a one-line web widget, a Swift helper for Mac apps or a Godot addon for games. Reports and captured errors land in one inbox, Claude fixes the bugs and replies, releases tell the people who asked, and the growth tools track search, AI answers, X and backlinks.
How does Claude fix the bugs?
SnagFrog includes an MCP server and a Claude skill. Claude lists your open reports, reads each one with its logs, opens the repository for that app, fixes and tests the code, and leaves an internal note with the root cause and commit. It only emails reporters when you ask it to.
What is the night shift?
Claude works through an app’s open bug reports overnight. Web apps run in the cloud on Anthropic’s servers, so it works while your laptop sleeps; Mac apps, whose tests need Xcode, run as a scheduled Claude Code task on your Mac. It fixes what it can on a branch, runs the tests, opens a pull request, notes the cause on each report and drafts the release notes. In the morning the app’s Overview says how many fixes are ready. It never emails anyone or publishes anything on its own.
What does Launchpad do?
Tell your local Claude about a new app or game. Launchpad creates it in SnagFrog, puts the screens, landing page and logo up for your approval, then builds it, gives a web app a PocketBase backend on Fly.io, and deploys it to Cloudflare with your own account: a preview first, then promoted to production, with checks, backups and a custom domain.
Does SnagFrog post or email on its own?
No. Claude drafts replies and waits for “notify”. Release Day drafts an X thread and lists directories and threads worth posting to, but you press the buttons. X posts go out only when you schedule them, and SnagFrog never posts, votes or messages on Reddit or in launch directories for you.
Do I need Claude to use SnagFrog?
No. The report pages, the inbox, releases, roadmap, labels, saved replies and two-way email all work on their own. Claude is there when you want it to do the fixing, the replying and the growth work for you.
What gets collected?
What the reporter types and attaches, plus app version, OS and device info. From Mac apps and Godot games, logs and a screenshot come along, and after a crash the crash log too. The reporter sees what is attached and can untick it before sending.
Which platforms?
Anything with a browser link. A one-line widget for web games and sites, a tiny Swift package for Mac apps, and an addon for Godot 4 games on Windows, macOS and Linux. Report pages speak 17 languages.
How is SnagFrog different from Sentry or Instabug?
Sentry and Instabug focus on crash reporting, monitoring and SDK-level telemetry. SnagFrog collects what your users choose to tell you, keeps it in one small inbox, and lets you or Claude reply. It can also capture errors and crashes on its own, grouped and counted, but it is not a monitoring suite: no performance tracing, source maps or session replay. It works well alongside one. See the full comparisons.
How do I get started?
Email hello@snagfrog.com with a line about your apps or games, and we'll set up a workspace for you.
Build it. Hear it. Fix it. Ship it.
Grow it.
Tell us about your apps or games, and we’ll set up a workspace for you.







