LeedAB · Internal cofounder briefing
2026-05-03 · v0.3.2 · for Muiez

State of the build.
One screen.

Phase 1 (pre-reqs) closed. Phase 2 (manifest reorg) and Phase 3 (Solutions agent + COO orchestrator MVP) shipped to feature branches on muiez/LeedAB-OS as of today, all typechecks green. Three architecture calls at end of doc need your sign-off before we open PRs and ship to main.
TL;DR

The per-customer manifest layer we sketched is now live behind feature branches: 31 agents shipped inside LeedAB-OS, manifest-aware /api/pack, per-customer prompt overrides, agent-licensing API guards, prospect demo URL flow (Solutions agent without Telegram), and a working COO orchestrator MVP with single + fanout delegation.

What I need from you: (a) sign off on or push back on three load-bearing architecture calls below, (b) decide if we want a separate muiez/LeedAB-prospects repo for prospect manifests or keep them in LeedAB-OS/clients/ for now, (c) pick the merge order for the three branches.

§ 01 · what's in the system today

The product surface, verified

Quick numbers. All verified by smoke tests today against running dev server.

31
canonical agents
5
customers seeded
2
branches stacked
9
commits ahead of main

The five customer-lifecycle agents you knew were missing — champion, delivery, implementation, onboarding, solutions — are now registered in the published console (commit e97df2e). They were shipped in leedab-workspace on 2026-04-30 but never made it into apps/console/lib/agents.ts. Closed.

Smoke results across customer modes (verified live, dev server on port 3200):

CustomerIndustryTierAgentsSource
Tarheel Logisticslogisticslogistics-pro11manifest
Acme Logistics (prospect)logisticslogistics-pro7manifest
Sunset Cafe (prospect)hospitality9manifest
Hawkesbury Roofing (prospect)trades6parser-built
Local developmentfounder31default
§ 02 · what's on the branches

Branches, ready for your review

Three branches stacked. Each is independently mergeable; sequence matters but they don't conflict.

add-lifecycle-agents
Registers the 5 customer-lifecycle agents in the published console registry. 1 commit. Type-checked. Subsumed by the next two branches.
subsumed
phase-2-manifest-reorg
7 commits. Ships agents+context corpus inside LeedAB-OS. Adds clients/<id>/manifest.json, manifest reader, 4-source clientId resolver, system-prompt layering, per-customer agent guards, dashboard rail filter. Cherry-picks the lifecycle agents.
ready
phase-3-solutions-coo-mvp
3 commits stacked on phase-2. Solutions agent /build flow without Telegram (parser → manifest writer → demo URL). COO orchestrator MVP with JSON routing + fanout + synthesis. Two CLI test harnesses.
ready

Files I want you to scan first

Two days of work, but if you only read 4 files, read these:

How to test it yourself

From ~/code/LeedAB-OS:

git fetch origin
git checkout phase-3-solutions-coo-mvp
cd apps/console && npm install && npm run dev
# in another terminal:
node scripts/test-solutions-build.mjs "/build big-w-distribution, NSW logistics, 400 dispatches/day"
# then with OpenClaw running:
node scripts/test-coo.mjs tarheel "Coles deducted \$2,400 against PO 8821 — what do we do?"

§ 03 · architecture choices

Three calls I made — push back on any

I committed to these on the branch but they're reversible. Each is the conservative choice given what shipped already. If you want to take a different direction, branch is feature-branch and can be rebased.

01

Per-customer manifest as primary concept (Option C-lean)

Your shipped per-tier pack model (PR #4-7) becomes the baseline; per-customer manifest at clients/<id>/manifest.json overrides agent roster + adds per-agent prompt overrides + per-customer playbook.

Lean: Option C is right because Solutions agent + COO testing both need per-customer differentiation now (different industries, different rosters, different overrides per prospect). Mina overruled my YAGNI Option A on this one.

02

Agent corpus ships inside LeedAB-OS

31 agents + context/ + context/skills/ committed at LeedAB-OS root. leedab-workspace stays as canonical authoring location; sync to LeedAB-OS happens via manual copy for now (script later).

Lean: A1 (copy) over submodule. Submodules are a maintenance pain at our team size; we can promote to a script-or-submodule sync if drift becomes painful.

03

Per-agent dir refactor — deferred

The original apr-29 plan envisioned agents/<id>/AGENT.md + per-agent SKILL.md structure. Phase 2 keeps the existing inline structure (apps/console/lib/agents.ts dictionary). Per-agent dirs become a separate later refactor.

Lean: defer. Bundling adds risk to Phase 2 without unlocking anything immediate. If you disagree, this is the easiest one to add (mostly mechanical).

Other open question for you

The Solutions agent canonical doc says it commits prospect manifests to muiez/LeedAB-prospects (a separate private repo). Today the build flow writes to LeedAB-OS/clients/ by default and only commits to a different repo if LEEDAB_PROSPECT_REPO_PATH env is set. Question: does muiez/LeedAB-prospects exist? Should we create it? Or are you fine with prospect manifests sitting in LeedAB-OS/clients/ for the time being?

§ 04 · what's next

Roadmap from here

2026-04-29 → 2026-05-01 · Done

Phase 1 — Pre-reqs

13 PRs at muiez/LeedAB-OS merged. License-pack model shipped (PR #4 + #6 + #7). Wizard hard-gated, server-side license guards on cost-bearing routes.

2026-05-03 · Done (on branches)

Phase 2 — Manifest reorg

Per-customer manifests, system-prompt layering, agent-license guards, dashboard rail filter, URL-param resolution for prospect demos. Branch phase-2-manifest-reorg.

2026-05-03 · Done (on branches, less Telegram)

Phase 3 — Solutions agent + COO orchestrator MVP

Solutions /build flow (parser → manifest → demo URL), COO orchestrator with single + fanout delegation + synthesis, two CLI harnesses for test-without-Telegram. Telegram bot trigger remains; Mina + Claude wire it next session.

Saturday Sync 14:00 → next 1-2 weeks

Phase 4 — Telegram trigger + Champion agent tools + customer-id in license payload

(a) Wire Solutions /build to your existing bot. (b) Implement Champion agent's 12 stub tools (3 are unblocked today). (c) Backend tweak: customer_id field in license payload — small change, makes resolveClientId cleaner for paying customers.

Q3 2026

Phase 5 — Customer brain provisioning template

Extract _schema/ per-customer template from LeedAB Brain after 2-4 weeks of dogfooding. Lets us provision a fresh customer brain in <30 min instead of bespoke each time.

Q4 2026

Phase 6 — Appliance shape

Mac Mini + UGREEN AI NAS substrate. Per ADR-007. The 12-24 month destination.

§ 05 · loose ends

Things I'm holding for you

Five small things, each requires a yes/no from you:

  1. Open PR for phase-3-solutions-coo-mvp? It carries phase-2 + lifecycle-agents commits. Or keep them as separate PRs for narrower review.
  2. muiez/LeedAB-prospects — exists? Create? Or keep prospects in LeedAB-OS:clients/ for now?
  3. Backend customer_id in license payload — when can you ship this in the agentmind backend? Forward-compat already wired in apps/console; just needs the field to flow through.
  4. Anthropic SDK direct path instead of OpenClaw for the COO orchestrator? Right now the orchestrator routes through your gateway; for early testing, a direct Anthropic SDK path would let me test without OpenClaw running. Your call — purist (always through gateway) or pragmatic (env-flag fallback).
  5. Per-agent dir refactor priority — call (3) above. If you want it bundled with Phase 2 not deferred, say.

Whenever you've got 30 minutes — happy to walk through any of this on a call, or you can reply async on each of the five.