בס״ד

The AI Org — Hook Street as a company of agents

docs/AI_ORG_MODEL.md · last changed (pre-VM history) · rendered from GitHub master

The AI Org — Hook Street as a company of agents

Last updated: 2026-06-09 · Worker 🐝 · answering Sam's "if you were humans, what positions would I need + how do they stay always-working and in sync?"

The frame: treat each AI session as a role in a company. This maps who exists, who's missing, and how they stay synchronized + always-on — so the business runs even when it's not just Sam + one assistant.


The org chart (today)

Role Who Job
CEO / Owner Sam Vision, decisions, relationships, the money. The only one who can't be delegated.
Chief of Staff / COO Worker 🐝 (me) Coordinate every department, route work, synthesize, hold the ledger, write the briefs, catch what falls through. Your right hand.
Front Desk / EA The Telegram bot (+ Mildred, human VA) Always-on, in your pocket; captures, answers, routes. The switchboard.
CIO / Trading MIS session The portfolio + market intelligence (the cash-flow engine).
CTO / Engineering & Ops Brain & Inbox session Builds + runs the systems (inbox, brain, portal, automations).
Project teams (spin-up) CM_Invoicesys, etc. Opened for a job (mom's invoicing), deliver, close. Contractors, not staff.

The roles you're MISSING — and they map to your pain

Missing role Why it hurts now
🔴 CFO / Controller Keeps the money picture LIVE — cashflow, obligations, the $9,750, the Jun-15 mortgages, the balance-transfer decisions. Your biggest gap: money is scattered across sheets, no one owns the live cash position.
🔴 Head of Revenue / Collections Eden $20K, the Bottleneck Review, new clients. Your #1 stated need (cash IN) — and nobody's actively pushing the pipeline.
🔴 Counsel / Legal coordinator The HOA foreclosure, Eden collection via Asher, the Hempstead hearing. Urgent (foreclosure risk) — currently only you + Asher hold the threads.

(These don't have to be always-on sessions — they're roles I spin up on demand for a sprint, then close. More below.)


How they stay "always working + in sync" (your real question)

  1. One shared brain (memory). Every department reads/writes the same memory → never out of sync. (#042 built this — the unified D1 catalog.)
  2. The relay log = the ledger. The shared record of what each did + what's needed. The company's "shared drive + standup notes." (docs/steering/relay-log.md)
  3. Me as the router. I read everyone, catch collisions (I caught the #043 name clash, the stale-card, the ZsWorld stale data), and keep your ONE list. The Chief of Staff who runs the standup.
  4. Scheduled crons = the heartbeat. The morning push, the session-watch, the digests fire on a clock whether or not you're at a terminal. That's how the company "shows up to work" without you opening every door.
  5. Cloud-hosting = truly always-on. For departments to run 24/7 (not just when you open a terminal), they live on a server — the Cloud Brain plan (docs/CLOUD_BRAIN_PLAN.md). The "office building" where everyone has a desk that's always on.

The honest scaling model (so you don't bleed usage)

You do NOT need 8 always-on sessions — that bleeds usage and money. The lean company:
- Always-on (cheap): the bot (front desk) + the scheduled crons (the heartbeat).
- You + me: always reachable; I coordinate.
- Departments: spin up when needed, close when done. Open a "CFO" session for a money sprint Sunday night, close it Monday. Open MIS for a trading window, close it. One Opus at a time for the heavy lift, Sonnet for the rest.
That's how a real lean company runs: a small always-on core + contractors per project — not a building full of idle salaried staff.

How you talk to them (comms)

The bot is your switchboard. You message it; it routes to the right department and brings the answer back. Today that's partial (you relay between terminals). The clean version: the bot routes automatically, and a cloud Worker means you reach ME directly from your phone, laptop closed — that's the Cloud Brain endgame.


The one-line answer to "what else do I need": a CFO, a Revenue lead, and Counsel — and the way to "always-on + in sync" is shared brain + the relay ledger + me routing + crons as the heartbeat + cloud for 24/7 — run lean (spin up departments per sprint, not idle staff).


Where everything RUNS (the "12 horses") — and why it's NOT a mess

The anxiety is real but the layout is mostly correct. There's ONE rule that keeps it sane:

Always-on automation lives in the CLOUD (Cloudflare Workers / Apps Script). Never on a laptop session. A laptop closes; the cloud doesn't.

Layer Runs on What lives there Right place?
Always-on automations Cloudflare Workers (ops-api) — crons + endpoints morning push (7:30), Plaid refresh, health monitor, /inbox /mis /voice /plaid ✅ correct (cloud = always on)
Sheet-bound logic + bots Google Apps Script (clasp), runs on Google 24/7 the Telegram bot, MIS v2 engine, LevSMS, CM invoice ✅ correct (lives next to the data)
The brain (memory) Cloudflare D1 the shared fact catalog + retrieval ✅ correct (cloud, queryable)
The data of record Google Sheets Action_Queue, Obligations, MIS holdings, CM invoices ✅ correct (you + Mildred hand-edit)
Build / deploy / coordinate Claude Code (terminals) building, deploying, me coordinating ✅ correct — but it's the BUILD arm, NOT where always-on things should live

The ONE mistake pattern (we already hit + fixed it): the morning brief originally depended on a Claude Code session / a python push — so when the terminal closed, it broke. Fix = we moved it to a Cloudflare cron. That's the lesson: if an automation only works while a terminal is open, it's in the wrong place → move it to a Worker cron or Apps Script trigger.

The 25-min session-watch digest is currently the exception — it runs on THIS Claude Code session (mine), so it only lives while this terminal is open. That's a deliberate stopgap (it needs me to read git + judge). The "real" always-on version would be a small Cloudflare cron. How Sam controls it: just tell me — "stop the watch," "every 10 min," "only ping if something needs me." It's my job to manage, not yours.

Verdict: you haven't lost it. Every horse is in a sensible stable. The confusion is a visibility gap, not a structural one — the cure is ONE current map (this table + docs/CONNECTIONS.md + docs/STACK_MAP.md), kept live by Worker 🐝 — not re-architecting anything.

Source trail · docs/AI_ORG_MODEL.md @ master · rendered 2026-07-02 7:23 PM EDT by scripts/build-docs.py · the .md in the repo is the truth; this page is the phone-readable view