Autonomous Agency OS
Executive Summary + Scope of Work · St. Pierre / EyeFly · July 11, 2026 · Session: full-stack audit → 8 Opus workstreams → agency-OS design
TL;DR: Today we audited every automation you own, shipped the person-level attribution core (the Hyros reverse-engineer), staged five more systems to one-command activation, and mapped the path from "tools Akash triggers" to "an agency of department agents that sets weekly projections, executes, reflects, logs learnings, and only escalates to you when targets are missed." The binding constraint is not infrastructure — it's that St. Pierre has zero paid traffic flowing. Your 5 minutes of clicks unblocks more than any build.
1. Where every capability stands (post-session)
| Capability | Status | Reality after today |
| Person-level attribution (Hyros core) | LIVE | 7,352 touches stitched into 3,993 persons. Per-lead timeline: stpierre-attribution-timeline.pages.dev. Pull up a lead → see ad click → VSL watch → application → booking → payment across merged devices. |
| CAPI → Meta (own funnel) | STAGED | Match-quality upgraded (external_id 49/49, fbc where fbclid exists), dry-run proven, n8n workflow validated byte-for-byte. One approval from firing. |
| Retargeting audiences → Meta | STAGED | 3 crash bugs fixed, token verified with write scope, 5 hashed contacts ready. Awaits your "upload audiences." |
| Organic posting (FB+IG) | LIVE | 3/day autonomous. Queue auto-filler with approval gate in flight (agent still running at time of writing). |
| Static / motion / VSL production | SEMI | 989 statics, motion renderer, micro-VSL engine. 44 VSL variants unblocking now (CTA trim agent running). Hooks still hand-authored — the strategy loop (Phase 2) closes this. |
| Cold email (Instantly) | WARMING | Signed-in UI + fully paginated API verify 3 healthy warming accounts in the only workspace. The three point to Aug 1; re-inventory live before using any future total. |
| Newsletter (warm email) | STAGED | Issue 1 approved in DB, drafter proven (3-issue buffer, M/W/F), GHL confirmed reachable from the Mac, consent-line PATCH prepared. Blocked on: your from-address + approvals. |
| Email engagement tracking | MISSING | No opens/clicks land anywhere. Scoped in Phase 6. |
| Per-lead organic engagement | MISSING | Aggregate page insights only. Scoped in Phase 6. |
| AI UGC video | EXCLUDED | By your own brand rule ("real face only"). Policy decision, not a gap. |
| Hosting hierarchy | PLANNED | Audit done: launchd 6 → 1 possible; n8n (71 workflows) is the target; ~17 dead jobs found. Migration plan awaits your go. |
| Weekly projection→reflect loop | MISSING | Skills exist (weekly-planning, scorecard, projections-methodology) but human-triggered, disconnected, no target/actual/learnings ledger. This is the SOW's core. |
2. Shipped this session (8 Opus workstreams)
- Identity spine + lead timeline — delivered live (see above). Rollback scripted; n8n stitcher staged.
- CAPI relay — enriched + staged; agent correctly refused to touch the EyeFly pSid relay (your B2C client system — separate, untouched).
- Audience sync — staged; would have crashed on 3 latent bugs if activated as-was; now fixed.
- Newsletter rail — staged end-to-end; discovered GHL API works from the Mac (the "Cloudflare block" was sandbox-only) and a Typeform jump rule that would have hidden the consent field.
- Instantly diagnosis — 2 "purchased" inboxes never existed; scale-up order prepped (3 domains / 9 inboxes, ~$40/mo); stuck AI campaign confirmed harmless.
- Infra placement audit — launchd 6→1 plan, top-5 n8n migrations, 17 dead jobs, full report in Infrastructure-Migration-2026.
- VSL unblock — in flight: trimming the baked-in CTA off the base VSL, rendering all 44 variants.
- Organic queue auto-filler — in flight: drafts → your approval gate → live queue.
3. Waiting on you (nothing proceeds without these words)
Go-live approvals (the permission layer requires you to name each)
1. "Import and activate the SP CAPI n8n workflow — start firing events to my pixel."
2. "Upload the audiences — sync hashed contacts to my Meta custom audiences, schedule daily in n8n."
3. "Apply the consent line to the Typeform, create the 5 GHL tags, register the newsletter drafter."
4. "Migrate the top 5 jobs to n8n and archive-then-delete the dead jobs."
Decisions
- Instantly purchase: pick 2 domains (trystpierre.com / getstpierre.com / stpierremedia.com / stpierrehq.com) → "Place the Instantly order… charge it."
- Newsletter from-address (e.g. alex@stpierre.ai).
- Create the conversation_no_book retargeting audience? (currently skipped)
- Lead owner "Alex St. Pierre" confirmation in GHL.
Your 5 minutes of clicks (the actual constraint)
- Calendly: weekdays only · no bookings <24h · max 5 days out.
- Flip campaign "Free-Build" ACTIVE ($95/day — your budget lever, always).
- Say "publish kits" (public pages still say $1 — contradicts the ads).
- Two 10-second GHL checks (DEMO comment workflow; unpublish Trigger 20/Slack).
Compliance line held all session: cold email is lawful (CAN-SPAM w/ opt-out). Cold SMS/iMessage to non-consented numbers is a TCPA violation ($500–$1,500/text) — you had an incident yesterday. SMS/iMessage stays speed-to-lead on consented form-fillers; personal iMessage routing (myCRM sim) is for warm/known contacts, Twilio for automated sends.
4. Scope of Work — the agency that runs, grows, and self-improves without you
Design principles, from your own words: (1) constraints exist only to allocate limited resources — triage is the OS; (2) every department gets an agent with a pipeline you can monitor and steer but that is never bottlenecked on you; (3) every agent keeps a ledger of what it did and why; (4) the improvement engine is the weekly loop — projections → plan → execute → reflect → log target/actual/learnings — starting at 100% hit rate, tightening toward 75% to force stretch; (5) you review; agents execute; you get pulled in only when targets are missed. 100% of your time goes to human relationships, recording content, and auditing the roll-up.
Phase 0 — Unblock the constraint · your clicks + 4 approval lines · effort: none (built)
Everything in Section 3. No build in Phases 1–6 outranks turning traffic on.
Acceptance: ads spending, kits published, CAPI firing, audiences syncing, consent line live.
Phase 1 — The Loop Engine (the core OS) · ~1 session · no permission gates (internal Postgres) · THE FIRST BUILD
- Schema:
sp_department_targets (department, week, metric, target, confidence, rationale), sp_department_actuals, sp_learnings (what we predicted, what happened, why, what changes), sp_agent_ledger (unified what/why/rollback log every agent writes to).
- Sunday projections rite: each department agent drafts next week's targets + plan from live data → one review panel HTML → your single voice-note/edit pass → lock.
- Friday reflection rite: auto-compare target vs actual per metric, compute rolling hit rate, log learnings, propose next week's bar (auto-tighten toward 75% hit rate as accuracy improves).
- Exception router: any metric off-track mid-week → lands in your morning brief with "here's where your involvement changes the outcome." On-track = silent.
Acceptance: two consecutive weeks where every department has locked targets, logged actuals, a learning entry, and your morning brief contains only exceptions.
Phase 2 — Department agents (one per week, on top of Phase 1)
| # | Agent | Does weekly/daily | Builds on | Your role |
| 2.1 | Content strategy (own, all channels) | Reads decision-engine verdicts + organic insights → drafts next wave of hooks/scripts/statics per channel; feeds queue-filler; flags "needs Akash on camera" items separately | decision engine, content-fill, static-expander, queue-filler | Approve waves; record flagged reels/YouTube |
| 2.2 | Repurposing | Every net-new recording auto-fans to statics, carousels, tweet, IG, newsletter section, YouTube cut — cross-linked with locked UTMs | transcript-to-statics, content-statics, UTM convention | None (gate inherits from 2.1) |
| 2.3 | Sales projections | Weekly: who closes / who's at risk / where your push changes the outcome; daily pipeline delta | sp_ghl_opportunities, sp_persons timeline, sales_current_state | Make the flagged pushes |
| 2.4 | Client delivery + CS (EyeFly) | Per-client weekly targets; daily "what happened, why, tomorrow's plan" client updates drafted to your review panel; retention risk scoring | campaign-triage, client-health-check, csm-inbox, CAPI fleet | Approve client-facing sends until trusted |
| 2.5 | Onboarding | New client → subaccount, snapshot, custom values, kickoff checklist, first-week targets auto-created | new-client-onboarding, ghl-api, new-launch-qa | Kickoff call only |
| 2.6 | Finance | Weekly expected income (from 2.3 close probabilities) + expected expenses (Plaid + subscriptions) → runway; variance logged in the loop | finance skill, plaid refresh, projections-methodology | Read it |
| 2.7 | Outbound + reply triage | Ramps sends post-warmup; sources leads (SuperSearch); replies: interested→GHL + booking link, objection→drafted response to your panel; iMessage-first routing for warm 1:1 only | Instantly skill, myCRM sim, identity spine | Approve reply drafts initially |
| 2.8 | CRM hygiene | Stale stages, missed follow-ups, orphan leads → fixed or exception-listed; keeps sp_persons stitching clean | ghl mirror, identity spine | None |
Phase 3 — The Review Panel · ~1 session
One roll-up surface (morning brief + weekly Report, cf-dashboard pattern): every department's target/actual/plan/hit-rate, agent ledgers browsable, one-click feedback per item that routes back into that agent's next run. Unless you comment, agents proceed and self-improve via Friday learnings.
Acceptance: you can be off-grid for 7 days and every department still sets, executes, and reflects — with a complete ledger of what happened and why.
Phase 4 — List growth & lead magnets · after traffic flows
- Lead-magnet factory: agent proposes magnets from winning hooks/learnings → builds page + delivery + nurture in the house pattern → your approval → published with UTMs + consent capture feeding the newsletter list.
- Personalization engine v2: extend the demo factory (already <1s/lead) — niche-correct video per vertical (needs your recordings: foundation, waterproofing, concrete — currently everything gets crawl-space), personalized ROI pages from timeline data.
- List engine: every lead ever (with consent story per segment) → newsletter list; organic comment-keyword funnels (ManyChat spec exists) activated as a rail.
Phase 5 — Attribution completion · closes the remaining Hyros gaps
- Email engagement: Instantly webhooks + GHL email events → sp_touches (opens/clicks per person).
- Organic per-lead touches: comment/DM ingest + link-click capture → sp_touches.
- CAPI v2: relay reads sp_persons for external_id/fbc (handoff already written); add high-intent events (VSL 50%, application start); Stripe metadata stamps application_token (handoff written).
- Cross-channel learnings: every channel's test results land in sp_learnings; every drafting agent reads it before generating — ads learnings shape email subject lines, organic hooks, and vice versa. This is "all testing feeds learning across every channel."
Phase 6 — Infra consolidation · approval line #4 + follow-through
launchd 6→1, Claude tasks 6→2, dead jobs archived-then-deleted, everything glue-shaped on n8n per your hierarchy (online → launchd → agent tasks). AGENTS.md updated to the new n8n policy.
5. What stays yours, permanently
Money levers
Ad budgets/activation, purchases, payroll — agents stage, you flip.
Your face & voice
Recording reels/YouTube/VSLs — the stated moat. Agents script, cut, fan out, publish.
Human relationships
Sales pushes the agent flags, client escalations, hiring.
The bar
Weekly 10-minute review: approve projections, react to misses, tighten the stretch.
Prepared 2026-07-11. Companion docs: jobs placement audit · Instantly order · newsletter go-live · retargeting/READY-TO-ACTIVATE-2026-07-11.md · ads-autopilot/tracking/RUNBOOK-capi.md · live timeline: stpierre-attribution-timeline.pages.dev