before you say hello, know their story.
AI should augment go-to-market. GTM agents, AI SDRs, however they are built, they should augment relationships, not replace them.
Before you say hello, sayhello enriches the story behind every lead, so you reach out already knowing who they are.
the problem
Everyone thinks go-to-market means one thing. Harvest more data. Get more leads. Blast more messages. Automate the spam. Generate your list, target your ICP, spin up a personalized message for each one.
That's why your inbox is always full of "Hi {firstName}, love what you're doing" with no soul behind it. It sounds like it could fit. But really it's just a machine that filled in a couple of details and called it personalized.
That's not connection.
I don't think go-to-market should try to do relationship building without people. That's the whole mistake. People confused volume with the relationship. The playbook: buy a list, create some fields, spin up personalized prose, send thousands of them, scrape everything about every individual, collect all that data, and harvest.
But if everybody does this, inboxes only get stricter. Reply rates only fall. And people's desire for an actual connection only gets higher.
So how do you build around that, when the game changes from volume to understanding? From information to a story?
this is why we built sayhello
The work you do before you say hello, so the first hello actually lands.
Here's the line it all rests on:
You can offload the research. You can offload the thinking. You cannot offload the understanding. You cannot offload the feeling.
The number one lesson in sales is that people buy from people who get them. Only a human can sit where somebody actually is, recognize the moment they're in, and feel what to say. That's the part that closes. That's the part that secures the deal.
what it does
We built a swarm of agents to go out into the open web and gather the real story of a person and their company. Their mission. Their purpose. A deep read of what they're actually interacting with right now.
The agents bring back the pieces. You put the puzzle together. You make the call. Your agents never send a thing on their own, and everything they bring back is guarded by strong validation before you ever see it.
AI does the 90% that scales. You keep the 10% that actually matters — the part that's human.
That's our honest use of scraping. Not to harvest people at scale. To understand someone well enough to talk to them like a person.
what makes us different
| traditional AI GTM | sayhello |
|---|---|
| Scrapes to harvest — more rows, more sends. | Scrapes to understand — one real story. |
| "Personalized" = a name in a template. | Personal = the actual situation they're in. |
| Trusts whatever the model writes. | A held-out critic kills any unproven claim. |
| Optimizes for volume and open rates. | Optimizes for one true thing to say. |
| The agent sends. You hope it's right. | You send. The agent hands you the truth. |
| A black box. No idea why it said that. | Every step traced. You can see the receipts. |
| One-shot. Forgets the lead instantly. | Remembers. The relationship builds over time. |
Everyone else uses AI to do the outreach for you. We use it to help you understand the person so the outreach is yours. Same tools, opposite intent.
how it works
scrape the company → scrape the person (LinkedIn · X · enrichment, in parallel)
→ ground every fact against real public data
→ draft the story + the outreach angle
→ judge · a held-out critic on a different model flags anything unsourced as FABRICATED
→ re-ground and rewrite until it's true
→ you approve → it renders live
You watch it happen as a spiral that goes from guessing to grounded.
why we built it this way
We did the research on where AI actually breaks. A model left to check its own work will tell you you're absolutely right. It can't catch its own confident lie, and it'll happily invent the one detail that makes a story sing. That's the lie that blows up the second you hit send.
So the writer and the judge are different models. Grounding is fail-closed: no source means fabricated, not "probably fine." And the human stays in the seat, always.
This comes straight from my research lab, SOTARE: two eyes, always. Machines prove, humans mean. Never let a model grade its own homework.
why it takes the whole suite
We're putting an agent on the open internet to research real people. That only works if every piece is clean, governed, and traceable. So this isn't a single API — it's a suite built together:
ClickHouse — proof, not storage
We query ClickHouse's free public datasets (GitHub events, Hacker News) as live grounding: star velocity, release cadence, launch traction — real signals a claim has to match. Every generation is archived so the grounding score's climb is queryable. Why it matters: most teams store their own data in ClickHouse; we use its public data as evidence the critic checks against.
Composio — frugal multi-app enrichment
A free-first chain across apps (news, SEC filings, finance) that only spends a credit once a lead clears a relevance bar, then escalates to deeper firmographics. Why it matters: richer signal without spray-and-pay cost. The enrichment is what makes the story good.
Guild — governance on the critical path
Guild validates every tool call before it fires and blocks anything ungrounded from shipping, with an audit log. Why it matters: "every claim cited or rejected" stops being a hope and becomes an enforced policy. An agent on the open web needs a control plane.
Langfuse — auditable honesty
Every node in the harness is wrapped in a trace with its score. You open the trace of the run you just watched and see it think, fail, and recover, span by span. Why it matters: the product's honesty is itself made auditable. You can see the receipts.
OpenUI / Thesys C1 — generated, adaptive interface
The grounded story and outreach report render as live UI generated from the run, not a hand-coded template. Sources are clickable, rejected claims are struck through. Why it matters: a verifiable interface per lead — a data-rich prospect becomes a full report, and a thin one a lean card.
Render — the live stage
One blueprint ships the whole harness: the API as a web service, scraping as background workers that absorb burst load. Why it matters: the agent's work runs where it's deployed; the demo is a real, live URL, not a laptop.
Airbyte — the memory
Every grounded story syncs into Airbyte's Context Store, so the agent can recall it later: have we touched this person? what pains recur for agencies? Why it matters: it turns a research agent that forgets into one that remembers relationships, so a relationship builds instead of resetting.
the honest intention
Web search and public data are never the problem. Intent is.
Without the right intent, data can be used a hundred ways, and the same data that powers spam can power understanding. We're choosing that angle. We use it to enrich your CRM, your Notion, with the actual stories and missions of the people you want to reach. A real glimpse into who they are and what they're building.
So you know their story, in order to build for them.
Built With
- claude
- fable-5
- react
- traces
Log in or sign up for Devpost to join the conversation.