Support

Is something not behaving the way you expected, or do you have a question that isn’t answered in the documentation? Here is where to take it.

Getting in touch

Merrykat is built by the team behind Happo, and shares its support channels.

Technical support

Hit a snag with a run, an integration, or a build? support@happo.io. Support hours are 8am–5pm, CET and CT.

General and media

General questions, partnerships, and anything else: info@happo.io. Media enquiries: media@happo.io.

Security

Disclosing a vulnerability, or asking about our security posture? security@happo.io. Please report suspected vulnerabilities there rather than as a public issue.

Evaluating Merrykat?

Request a demo for a 30-minute walkthrough of how it fits into your stack and your CI.

What to include

A run has a page of its own in the app, with the whole pipeline laid out step by step — that URL answers most questions on its own. Beyond it, the useful things are:

  • the pull request, and whether the same thing happens on a fresh run of it;
  • your merrykat.config.ts, or a note that there isn’t one;
  • the story id and viewport, if it is about one comparison rather than the whole run;
  • the upload step’s CI log, if the problem is that no run appeared at all.

Frequently asked questions

Every run says it is a first run, and there is never a baseline

Two usual causes. Either the workflow does not run on pushes to your default branch: the baseline is a build of your merge base, so something has to have uploaded it. Or the checkout is shallow and the CLI cannot resolve the merge base locally. Add fetch-depth: 0.

My fonts look wrong in the screenshots

Stories render with no network access, so a remotely-loaded webfont falls back. It falls back identically on both sides, so comparisons stay valid. The blocked hosts are named in the comment. Serving the font from the Storybook build itself fixes the appearance. You can also add the host serving the fonts to the Network allowlist, found under settings when you sign in to Merrykat.

One story keeps being reported as flaky

That is the system working, but it is telling you something. Start with a per-story waitFor or a delay (see Flakiness and the quarantine for what usually causes it and how a story gets back out).

Can I use it without the AI layer?

Yes. ai.enabled: false still gives you the full diff report, with one representative story per change class instead of a chosen shortlist. The check outcome never depended on the model in the first place.

What happens to my code?

The GitHub App has no permission to read repository contents at all. The only source that reaches Merrykat is the pull request’s own diff, computed locally by the CLI in your CI, encrypted and stored for a short time only, and deleted by the one run that reads it. Turn it off with ai.codeContext: false.

Pull requests from forks

Not supported yet. They are detected and explained rather than silently ignored — a fork pull request has no credentials to upload with, which is the same reason it cannot leak yours.