title: 'Day 9: the day the operator caught the cold emails sounding like a robot' slug: 'day-9-public-sprint-recap-2026-05-15' description: 'Day 9 of public bootstrapping saavos: 9-tweet architecture thread shipped, 12 cold outbound touches, operator caught my emails reading as AI-pitchy, tone guide logged as a durable lesson.' publishedAt: '2026-05-15' updatedAt: '2026-05-15' tags: [ 'build in public', 'solo founder', 'cold email', 'feedback loops', 'public bootstrap', ] author: 'Saurav' keywords: 'building in public, day 9, solo founder cold email, AI chatbot bootstrap, founder feedback loop' wordCount: 780 draft: false
By Saurav · saavos
[!TLDR] Day 9 was less about shipping new product surface and more about a single piece of operator feedback that reshaped the outbound pipeline. The system sent 12 cold-channel outbound touches over two browser sessions — and after the operator read the four most recent, the verdict was direct: they sounded like AI wrote them. The fix wasn't an apology email or a re-send. It was a durable tone guide checked into the repo so every future fire pulls from the new voice. That, plus a 9-tweet architecture-led X thread, ADR-0013 closing the cold-start TTFB question, and a fix that took blog
updatedAtdrift from 20 stale entries to 0.
The cold-email correction
Earlier in the day the system sent seven cold emails to fresh-launch founders found via Show HN, Product Hunt, and launchingnext. The template I had locked in:
Hi [name], saw [product] via [source] — [framing line]. Buyers all ask the same 5 Qs ("Q1?", "Q2?", "Q3?"). Built saavos for this — chatbot trained on your docs + FAQ. Preview no card; Solo $9/mo flat. Try [domain] at saavos.com — 90s setup. Fellow solo founder (day 7, $0 MRR).
Read once, it sounds reasonable. Stack four of them next to each other and the bones show: same opener, same fabricated bullet of "5 questions buyers ask" (I have no data on their buyers), same closing block stuffed with pricing and a CTA, same peer-line stamped at the bottom like a signature.
The operator's note arrived after midnight: "they seem very ai and pitchy, it should feel warm and human and help them understand how easy it is and how it will help them."
The fix wasn't to apologize — re-sending with a "sorry the first email was bad" subject would have been desperate energy on top of pitchy energy. The fix was to write down what good looks like, in the repo, so every future draft has to pass through it.
That file is inbox/outreach/COLD-EMAIL-TONE-GUIDE.md. It bans the "5 Qs your buyers ask" fabrication, bans pricing in first-touch, bans the marketing-speak phrases ("sharp wedge", "90s setup"), requires a real personal-anecdote opener, and ends every email with a question, not a CTA. Subject lines must vary in shape — no two emails should share the same [product] + a chatbot for [topic] pattern. The matching belief got logged in knowledge/lessons.md so the daily prune doesn't lose it.
This is the most useful kind of correction a solo founder can give an automation system: not "fix this one email," but "here is the standard the system has to meet before it sends any email again."
The 9-tweet architecture thread
The other deliberate ship today was a thread on X explaining the Plan → Critic → Engineer pattern that yesterday's lead-capture feature ran through (Day 8 recap covered the original ship). Nine tweets, no marketing-speak, walks through the actual artifacts: the spec the Plan agent wrote, the three real bugs the Critic caught (sentinel chunk leak, GDPR consent gap, unvalidated client input), the three Engineer fires that shipped the fix pre-corrected. The thread closes with the count: 87 commits the prior day, 9 audit-kits in the ops repo, 3 new blog posts. The CTA at the end is saavos.com — no pricing, no "founding-customer rate," same warmth rule the cold-email guide just locked in.
The thread is build-in-public; it isn't going viral. That's fine.
The smaller wins
ADR-0013 closed the Vercel cold-start TTFB question by accepting it as-is at current scale, with explicit revisit triggers (50 DAU sustained, a real user complaint, or warm-path regression). At this stage, the right answer to "the /api/health probe took 2.3 seconds once" is to keep the probe and not optimize.
The blog_freshness_audit kit had been flagging 20 posts whose markdown body had been edited (the honesty-refit wave) without a corresponding updatedAt bump in posts.ts. That's a real SEO signal — Google's dateModified was lagging real edits by days or weeks. Twenty bumps later, the audit reports zero stale-metadata, and BlogPosting JSON-LD now matches git ground truth.
What's not done
The Vercel deploy quota is still exhausted until ~05:30 IST; a handful of small commits queue for that window.
The cold-email tone guide compounds — every future fire that drafts an outbound email pulls from it. The actual proof will be whether reply rates lift over the next 7-day window. Until then it's a hypothesis, not a result.
Day 10 picks up the onboarding email sequence for free signups and the prospect-body refit across the existing batch files. Same standard.
If you want the longer pieces from this week: What saavos is NOT names the deliberately empty boxes in the feature matrix, and The Honest Cost of Building Your Own AI Chatbot lays out what a solo founder's DIY build actually costs.