The thesis

Every personal build I ship pays twice — once for me, once for LeedAB.

What looks like five side projects on my Mac is really one R&D pipeline. Each personal app discovers a pattern that LeedAB needs to sell at scale — vault sovereignty, agent shape, dashboard sync, cognition. The first build is the cheap one. The second pays customers.

"We're being our own first customer — but with the cost of failure measured in private annoyance, not enterprise refunds."
5 personal builds shipped
3 patterns generalised
0 R&D budget burned
Personal Pattern Company Customer THE FLYWHEEL Mina builds → LeedAB sells
The two ledgers

One codebase — two balance sheets.

Same patterns. Same vault. Same Claude session hooks. The work doesn't fork — only the consumer does. Personal use validates; LeedAB monetises. The personal version is the proof that we can ship the customer version.

Track A · Personal

Mina's Second Brain & agents

Obsidian vault, mina-pt coach, insta-agent, EOI Command Centre, Aria. Everything runs locally on Mina's Mac. Used daily — sleep, training, job hunt, NSW 491 deadline tracking, IG knowledge retrieval. The cost of a bug is "Mina's annoyed for an evening."

Track B · LeedAB

The customer-facing product

Per-business Obsidian brain, 31 specialist agents, COO orchestrator, Champion enablement, Solutions demos. Same architecture, different audience. The cost of a bug is "Tarheel cancels their contract." So we discover the bug on Track A first.

The five builds

Each personal app is solving a problem LeedAB will hit at customer one.

For each one: what it is, why I built it for myself, and the specific LeedAB capability it pre-validates. None of these were started "for LeedAB" — but every one of them retires a customer-side risk before we get there.

Substrate

Second Brain

Obsidian vault + four-layer architecture (PARA + Permanent + Mina/-style + Wiki) + Claude Code session hooks that auto-write every conversation into _inbox/. The nervous system Mina lives inside daily.

4Layer architecture
2yr+Pattern maturity
DailyHook-driven writes
Feeds → LeedAB

The canonical per-customer brain template

  • LeedAB Brain bootstrap.The company brain was rsync'd straight from this vault's Obsidian config — 20+ plugins, graph view, dataview, periodic-notes — all dialled in already.
  • business-vault-schema/.The shape every customer brain inherits from. PARA + Permanent + per-customer People/Operations/Finance overlay.
  • Auto-capture hook pattern.SessionStart/SessionEnd hooks already write to two vaults at once — proves the dual-write pattern Customers will need.
  • Vault sovereignty proof.Two years of "data stays local" lived experience. The pitch isn't a slide — it's a shipping habit.
Vertical agent

Mina-PT

Personal AI coach — training, recovery, nutrition, sleep, supps, accountability. Telegram bot, voice + photo intake, 23 specialist tools, mesocycles, Apple Health integration, multiple coaching personas. Live in Mina's pocket.

23Coach tools
16SQLite tables
50/50Tests passing
Feeds → LeedAB

The per-vertical specialist agent shape

  • Procedural memory test.23 tools = procedural knowledge made executable. Direct rehearsal for how each LeedAB sub-agent encodes domain expertise.
  • Voice + photo intake.Faster-whisper + Sonnet vision already shipped. When LeedAB customers want voice eventually, the receiver code already exists.
  • Single-bot UX.One Telegram entry point routing to specialist behaviours = the same shape as the COO orchestrator. We're testing the customer's mental model on Mina first.
  • launchd / TCC / env-inheritance gotchas.Every macOS deployment edge case Customer-One hits, Mina has already filed and fixed.
Knowledge retrieval

Insta-agent

Local AI agent over Mina's 2,085 Instagram saves. Faster-whisper transcription, fastembed + sqlite-vec retrieval, Sonnet 4.6 agent with one tool. FastAPI dashboard with library/author/random/brief views. 100% local except the LLM call.

639Reels indexed
806Vector chunks
0External services
Feeds → LeedAB

BYO-data retrieval over a customer's owned corpus

  • Local-first vector store.sqlite-vec + fastembed = full retrieval pipeline that runs on a Mac Mini. Direct shape of the appliance offering.
  • Niche dominance pattern.2,085 saves narrowed to a movement/PT focus. Same lens we'll use to specialise per-customer brain content.
  • Source-grounded answers.Structured {answer, sources, queries} response. Customers will demand "where did that come from?" — already solved.
  • Knowledge-shim bridge.mina-pt imports insta-agent's search() directly. Cross-agent knowledge sharing pattern, validated.
Dashboard ↔ vault

EOI Command Centre + Vault Auto-logging

Personal NSW 491 / migration tracker, plus a daily Python digest that reads each app's SQLite/JSON state and writes one canonical block into _inbox/YYYY-MM-DD.md. Polling-based, idempotent, fail-soft. The vault sees every app.

Daily23:50 launchd cron
3Apps wired in v1
IdempotentRe-run safe
Feeds → LeedAB

The COO write-back layer for every customer vault

  • Universal write-back pattern.Apps don't know about the vault — the vault knows about apps. Single canonical writer = consistent format, trivial to add agents.
  • The "missing pipe" no one else has.Every "AI for SMBs" play has dumb storage. Reliable app→vault writes = the connective tissue that makes the brain a nervous system, not a folder.
  • COO write-back is Phase 3.Same architecture, swap "Mina's apps" for "LeedAB sub-agents." The Python skeleton already exists.
  • Dashboard ↔ vault sync proven.EOI shared state in mina-pt's SQLite + bootstrap shim = phone↔Mac edits in sync. Same shape Champions will need.
Cognition layer

Self-cleaning Brain

Full cognitive architecture: 4 housekeeping systems (pruning, clearance, consolidation, decay) + 4 cognition systems (binding, weighting, reflection, prediction) + 3 memory types (episodic, semantic, procedural) + 2 attention layers. Built on top of existing manual hygiene commands.

8Cognition systems
5Phase roadmap
~200Customers = port
Feeds → LeedAB

The defensible moat at scale

  • Personal vault first, port second.Phase 5 of the roadmap is explicitly the LeedAB customer-brain port. Personal vault = the lab.
  • Procedural memory typology.The biggest typology gap in any company brain. mina-pt's 23 tools are already a working procedural store — proof of concept for what the LeedAB equivalent looks like.
  • Three safety rails baked in.No hard delete on first pass · confidence-gated · logged + reversible. Customer-trust requirements solved before customer one.
  • Pitched 2026-05-02 to Muiez + Ziad.8 open questions on the table. Saturday Sync is the forum. Earlier iterations preserved in drafts/ for diff/history.
The Aria question

Voice is last, not first — but R&D never stops.

Per the strategic lens (principle 3), terminal LeedAB-via-OpenClaw is the wedge we sell. Voice-for-business returns "way later" once paying customers are stable. But personal Aria continues — because when the day comes that LeedAB needs voice, we don't want to start from a blank Cargo.toml.

Aria — the parked but breathing voice substrate.

Local voice-first agent. Tauri shell + ⌘Space hotkey + overlay window working. Mic capture (cpal) live. ElevenLabs TTS implemented. Claude API single-shot complete. SQLite tasks DB initialised. Roughly half of Sprint 1–2 of the original PRD has landed.

What's missing: STT (whisper-rs commented out, needs cmake), tool layer, persistent memory store. About 3 hours of work to get push-to-talk working end-to-end.

Why we keep it warm. The Tauri/Rust voice stack, the overlay UX, the local-first principle — these are the exact ingredients LeedAB will need when the wedge has earned the right to grow. Letting it rust to zero would mean rebuilding from scratch when the strategic moment arrives. Letting it run as a Mina hobby = keeps the muscle alive at zero company cost.

"Voice-first not voice-only. Local sovereignty. Transparency over magic." — Aria PRD v1.0, the same three principles we'd write for the LeedAB voice tier.
Why the dual-track works

The cost of failure is private on Track A, public on Track B.

This is the whole game. Every gnarly edge-case we discover in Mina's vault is one we don't discover during Tarheel's onboarding call. The "personal projects" aren't a distraction from LeedAB — they're a paid subscription to early failure.

Track A — Personal

Cheap failure, fast learning.

When something breaks on Mina's vault, the consequence is one bad evening and a memory file. We get to debug in zero-stakes mode and let the fix harden over weeks of daily use before it goes anywhere else.

Real failures we've already paid for:
· macOS TCC blocks launchd writes under ~/Desktop/
· launchd doesn't inherit shell env — secrets must be in .env
· Telegram Markdown parse 400 errors → plain-text fallback
· yt-dlp can't read live Chrome cookies on Mac
· IG rate-limits at ~441 saves
Track B — LeedAB

Expensive failure, contract-ending.

When something breaks at Tarheel, it's a Slack escalation, a refund conversation, a positioning hit. SMB customers don't tolerate "we'll fix it next sprint" — they tolerate "we discovered this last quarter on our own gear."

What we'd be hitting cold without Track A:
· Customer's first agent hook silently fails on their Mac
· Vault writes corrupt because two agents race
· Voice integration bricks the rest of the install
· "Why is my data showing up in someone else's brain?"
· Cron fires but never writes (FDA / TCC)

So when I say "I'm just building for myself" — read it as company R&D budget that we're not paying for.

Every personal commit has a LeedAB shadow. The deck above is the audit. The five builds aren't a roadmap — they're the prototyping ground. By the time we onboard Tarheel, the patterns are already calloused on my own usage. That's the whole point of dogfooding before we have customers.

1
Substrate
Vault + hooks + four-layer shape — already a working prototype of the LeedAB Brain template.
2
Connective tissue
Vault auto-logging is the missing pipe between any agent and any vault. Build once, reuse for every customer.
3
Cognition moat
Self-cleaning brain ports to LeedAB at ~200 customers and becomes the thing competitors can't catch up to in a quarter.