Now onboarding pilot teams

Fourteen tickets. One bug. Squash sees it first.

Squash reads every support ticket as it arrives, groups the ones about the same problem, and each morning shows you what needs you first. When it's a bug, it drafts the GitHub, GitLab or Jira issue for you, with personal data taken out.

Works with Zendesk, or any helpdesk that can send a webhook. Hosted in the EU. Bring your own Anthropic key if you like.

The tour

One morning with Squash, start to finish.

Four screens from the real product, with sample data. Click through, or use the buttons inside the screens.

app.squashtriage.com/home sample data
Good morning. 5 things today, most urgent first.
Urgent buggrowing · 9 in the last 24h
First because it's urgent, growing fast, and engineering doesn't have it yet.
People can't log in after resetting their password.
“Client demo at 4pm today and none of us can sign in.”newest of 14 reports · 6 min ago
14customers
+9since last night
3blocked
Squash, overnight ✓ Sorted 47 new tickets✓ Added 12 to clusters you already had✓ Started 2 new clusters

Each morning, Squash puts what needs you in order, one card at a time, and says why each one is where it is.

Underneath

Every ticket is still read, sorted and kept.

Each ticket classified

bug feature request question other

One category, a confidence level, and the details that matter for it: the symptom and affected area for a bug, the request and its reason for a feature. Low-confidence calls are flagged for a person.

Nothing dropped

Fwd: (no text, 1 attachment)Retry

A ticket Squash can't read is kept with its original text and a one-click retry. You can see every ticket in the Queue, newest first.

Your corrections stick

TCK-2344 · moved to “Login loop”pinned

Move a ticket, merge two clusters or rename one, and Squash keeps your call. Automatic grouping never undoes a change a person made.

Setup

Live in about 15 minutes, with us on the call.

  1. 1

    Point your tickets at Squash

    On Zendesk, create a webhook for new tickets and paste its signing secret back into Squash. Any other helpdesk gets a webhook URL and a secret for its webhook settings, or a small script. About 5 minutes.

  2. 2

    Send one test ticket

    Create one in your helpdesk, or copy the ready-made command, and watch it land in your Queue, sorted, a few seconds later. 30 seconds.

  3. 3

    Connect GitHub, GitLab or Jira optional

    A token that can read and create issues in one repository or project. Then any cluster can go to engineering in one click.

  4. 4

    Add your own Anthropic key optional

    Run every Claude call for your tickets on your own Anthropic account. Squash checks the key before saving it. How it's protected

Step 2 · test ticketbash
curl -X POST "$SQUASH_WEBHOOK_URL" \ -H "Content-Type: application/json" \ -d '{"subject": "CSV export hangs", "body": "Exports over ~500 rows spin forever."}'
In your Queue a few seconds later: bug confidence high

Your connection page has this command with the URL and secret already filled in.

Security & privacy

Your customers' words, handled carefully.

Support tickets carry names, emails and account details. Here is exactly where they go, what we keep, and what we never do with them.

New

Bring your own Anthropic key

Squash uses Claude to read your tickets. If you'd rather that ran under your own agreement with Anthropic, add your API key on the Connections page. From then on, every Claude call for your tickets goes through your account: classifying, grouping duplicates and naming clusters.

It's optional. Without a key, Squash uses its own, and nothing changes.

  • Encrypted at rest, with an encryption key used for nothing else, and tied to your account so it can't be read back as anyone else's.
  • Never shown again. After you save it, you see only the last four characters. It never appears in logs, error messages or our job queue.
  • Sent to one place only: api.anthropic.com, over HTTPS, with redirects refused so it can't be forwarded anywhere else.
  • No silent switch. If Anthropic rejects your key, Squash stops and tells you on Home. It never quietly falls back to its own key.
  • Yours to remove. Replace or delete it any time; work queued under your key won't be run on ours.
  • Tested for leaks. An automated test runs every path a key takes, including failures and redirects, and fails if the key turns up anywhere but the request to Anthropic.

Personal data stays out of prompts and issues

Before any ticket text goes to Anthropic, Squash replaces emails, phone numbers, IP addresses, card numbers, device IDs and access tokens with placeholders. Your stored tickets keep the original. Drafts for a public repository never include personal data either. Names aren't detected automatically, so you read every draft before it's filed.

Issues only, never your code

The GitHub or GitLab token only needs to read and create issues, in the one repository you choose. A Jira token acts as its account, so use one that can only reach the project you pick. Nothing is filed without a click from you.

Authenticated webhooks

HTTPS only. Every delivery is checked against its connection's own secret: a 256-bit one Squash generates and you can rotate, or for Zendesk, the webhook's signature. Repeated bad-secret attempts are watched for.

Ticket text is treated as untrusted

Ticket content is fenced off from instructions and the output is validated, so a malicious ticket can't steer how other tickets are handled.

Isolated, encrypted accounts

Each account sees only its own tickets. Webhook secrets, tracker tokens and Anthropic keys are stored encrypted; passwords and session tokens only as hashes.

Not in our logs

Our logs record counts, timings and IDs. Ticket text, keys, tokens and passwords are never written to them, and email addresses only partly.

Where your data goes

Anthropic
Reads ticket text to classify it, and short summaries to group duplicates. Personal details are replaced with placeholders before anything is sent; names aren't detected. Under Anthropic's commercial terms, API data isn't used to train models. With your own key, this runs on your Anthropic account instead.
Hetzner
Hosts Squash and its database, in the EU.
Cloudflare
Sits in front of our servers to handle HTTPS and block abuse.
Resend
Sends account emails (verification and password reset) and passes pilot requests to our inbox. Never ticket text.
Backblaze
Stores encrypted backups.
Usage stats
Counted on our own server, not by a third party: which pages are visited and which buttons are clicked. No cookies, no ticket text, nothing you type.
Retention
Tickets are deleted from Squash after 90 days; encrypted backups roll off within about three months after that. Ask and we'll delete your data sooner.
The pilot

Join the pilot.

We're onboarding a small number of support teams and working closely with each one. Tell us a little about your setup and we'll get back to you.

  • Setup with us on a call, about 15 minutes.
  • An accuracy check against your own triage before you rely on it.
  • A direct line to the people building Squash.
  • Use our Anthropic key or your own, whichever your data terms need.

Request pilot access

Takes about a minute. Fields marked optional can wait.

Issue tracker · optional

We only use this to reply about the pilot, and delete it after 90 days. No newsletter. Rather email? Write to [email protected].

FAQ

Questions teams ask first.

What does it cost?

Nothing during the pilot. Paid plans will come later. Pilot teams will hear from us at least 30 days before anything changes, and will get a thank-you offer for helping us shape Squash.

Which helpdesks does Squash work with?

Zendesk connects directly: new tickets arrive as they're created. Anything else that can send a webhook works too, or a small script that POSTs JSON over HTTPS. If yours can't, say so in the request form and we'll work it out with you.

How does it decide two tickets are the same problem?

Each new ticket is compared with recent ones, and tickets that describe the same issue are grouped, however they're worded. If it gets one wrong, you can take a ticket out of a cluster or merge two clusters.

Does Squash need access to our code?

No. Connecting GitHub, GitLab or Jira is optional. Squash only reads and creates issues, in the one repository or project you pick.

Can we use our own Anthropic account?

Yes. Add your Anthropic API key on the Connections page and every Claude call for your tickets runs on your account, under your agreement with Anthropic. The key is encrypted, never shown again after you save it, and only ever sent to Anthropic. If it stops working, Squash tells you rather than switching to its own key.

What happens to tickets it can't classify?

They're kept with their original text and flagged in the Queue with a Retry button. Nothing is dropped.

Where is our data, and who can see it?

Squash is hosted in the EU. Ticket text, with personal details removed first, is sent to Anthropic's API for classification, on your own key if you add one, and deleted from Squash after 90 days. Each account sees only its own tickets. The full list is under Security & privacy.