AaaS · internal briefing · for Tobias
This is the whole company in one sentence. Our product is email agents. Our growth engine — the GTM Fleet — is email agents whose job is to sell email agents. The ad and the product are the same thing. When it runs, it markets itself, closes itself, and pays for the next agent it builds.
01 — the product
Raw GPT / Claude / Gemini give you a smart text box. To make them do anything, you wire up APIs, tools, MCP connections, auth, data — yourself. That's the work. That's the friction.
AaaS removes it. You pick a micro-agent — a prompt that only becomes powerful with the right API / tool / MCP wired behind it — and our system is already hyper-connected. No setup, no keys, no plumbing. You email a request; the agent executes on autopilot; you're charged per request. The value isn't the prompt — it's the connection layer we run so you never touch it.
Everyone else
AaaS email agents
02 — the insight that changes everything
Here's the question that unlocks the company: what is the most convincing way to sell an email agent? Not a landing page. Not a demo call. Have it email you — and do the thing.
Every cold email we send is a live email agent. The prospect doesn't get an ad for the product. They get the product.
They reply — and the reply is the activation. The same inbound runtime that serves paying customers picks it up, runs the agent, delivers the result. No handoff, no "book a demo." The moment of interest and the moment of first value are the same keystroke. That's a conversion mechanic nobody with a normal funnel can copy — because for us, the funnel and the factory are one machine.
03 — the self-promoting loop · seven micro-agents
To promote itself, the system needs a fleet of micro-agents that run the whole go-to-market motion end to end. Below is that motion — and the live dashboard for each stage. The shop window is built. These are real screenshots from canvas.aaas.love, today.
Researches which micro-agent the market wants next, and scores it. The fleet decides its own roadmap.
Firmographics, personas, triggers — and a compliance-critical country gate. Targeting becomes machine-queryable.
LinkedIn + email discovery, then deliverable / risky / catch-all / undeliverable buckets. A clean, compliant list.
The email that promotes the agent — personalised to each prospect's pain. Message → pain, traceable.
Warmup, throughput, deliverability. Each send is a working agent, one reply from activating.
The prospect replies; the inbound runtime runs the offered agent and qualifies them — no demo, no wait.
Usage-based billing kicks in. Every new customer is another live demo of an agent in the wild — which feeds the top of the loop again. Revenue funds the next agent the Scout finds.
04 — why it compounds
A funnel is something you keep pouring money into the top of. This refills its own top. Four couplings turn a linear pipeline into a compounding engine:
Decision-traced A/B promotion. Winners get ratcheted in automatically.
Schedules the surrounding content + review-gate, so the outbound never runs dry.
05 — the honest status
This is the part that should excite you, not worry you: the hard, ambiguous product-design work is done and live. Eleven fleet dashboards render on canvas.aaas.love right now. What's missing is the thing you're best at — the backend that makes the buttons do the work.
All 11 GTM dashboards render (you've seen them above). And the core product loop already works: email → agent-router → gemini → reply + canvas is wired in functions/src. The thing we sell exists.
No state-machine sequences the stages yet; the real runners (lead-scan, personalize, Stripe) are real but unwired islands; and the cold-reply → activation bridge doesn't exist. That's the backend. That's you.
06 — the ask · what you build, Tobias
And the best part: it runs on the exact product we sell. The backend of the growth engine IS an application of the email-agent runtime. Build it once, and you've hardened the product and the go-to-market at the same time. Concretely, in order:
Extend the real icpLeadScannerRunner.ts: a compliance-grade ICP + country-gate, bulk LinkedIn (the Apify actors are already defined), and SMTP-ping verification. Output: clean, verified, compliant target lists. No sending. → issues #3632 / #3633 / #3634
GrowthRun spine — the state machineDefine defining → building_audience → outbound → converting → done and wire the existing real runners into it, so the fleet stops being islands and starts being a pipeline that hands off artifacts. Reconcile the two data stores so the dashboards show real runs, not seed.
Cold-send infra on its own domain (never the transactional one), behind a real C0 gate — suppression, country-gate, complaint auto-pause. This is the one place we move slowly and correctly. Nothing sends until it's compliant + signed off.
This is the whole thesis in one function. A prospect replies to a cold email → dedupe it → map it to the offered micro-agent → create an agent_task → the existing inbound runtime executes and delivers. The moment you close this loop, an outbound email becomes a self-activating product, and the funnel becomes the factory. Everything else exists to make this one bridge fire.
None of this is speculative. Every stage has a live dashboard, a data model already typed (growth-run.types.ts), and a design spec. You're not inventing the shape — you're powering a machine that's already standing.
Build the bridge, and the product starts selling itself — literally.