laden…
EMERGENCY_ALL_APPROVE is uit. Tier-A acties versturen automatisch.
Zet in .env: EMERGENCY_ALL_APPROVE=true
aanwezig of niet, zonder waarden te tonen
kanaal per groep
status (toggles vereisen een config-tabel om te bewaren)
operating doc
# FlowVolt Operator OS — MASTER The single operating doc for Lars's senior agent squad. Sage keeps the footer current nightly; the rest is human-owned. ## 1. What this is An 11-agent team that runs FlowVolt's internal operations: two directors (Eli, Diana) and nine specialists. Brain (reasoning) on Opus, hands (execution) on Sonnet, volume on Haiku. Output surfaces: Slack (#flowvolt-team / -drafts / -builds) and the Mission Control dashboard. Everything Lars-impacting routes through the approval queue. Zero automatic sends. ## 2. The squad Directors: - Eli ♚ Chief of Staff — weekly memo, delegates. Mon 10:00. - Diana 🎯 GTM Director — drives deals, on-demand. Eli's team: - Hugo ☀️ Pipeline Reporter — daily 07:00 funnel brief. - Felix ✨ Voice Drift QA — weekly engine-draft audit. Mon 09:00. - Iris 🪶 Content — LinkedIn ghostwriter; research daily 06:00. - Cleo 🛠️ Builder — on-demand builds + PRs; AI digest daily 06:30. - Sage 🌙 Memory — real-time learner (event-driven) + nightly batch 02:00. See §6. Diana's team (on-demand → #flowvolt-drafts): - Maya 🔍 Prospect Brief · Nora ✏️ Sales Follow-up · Otto 🤝 Deal Closer · Atlas 🧭 Customer Success (dormant until first paying customer). ## 3. Voice `lars-voice.md` is auto-extracted from Lars's real replies. Eight agents read it. Re-extract with `npm run extract-voice`. ## 4. Approvals (Hands) Nora/Otto/Atlas/Cleo queue actions to `pending_approvals`. Lars approves in the dashboard; email sends go from his Gmail on approve and are logged to `operator_sends`. Cleo opens PRs on `cleo/<task>` branches (never merges). ## 5. Owned numbers (accountability) Each agent owns one weekly metric. Sage/Eli track these in `agent_outcomes`. | Agent | Metric | Target | |---|---|---| | Hugo | brief_on_time | 5/5 | | Felix | team_voice_avg | 8.0 | | Diana | new_warm_prospects | 1 | | Maya | briefs_delivered_pct | 100 | | Nora | reply_rate | 0.25 | | Otto | warm_to_meeting_pct | 0.30 | | Atlas | first_to_paying_pct | 0.50 (when active) | | Iris | followers_gained_weekly | 250 | | Cleo | prs_shipped | 3 | | Sage | prompt_tunings | 5 | | Eli | outcome_hit_rate | 0.80 | Eli flags any metric missed two weeks running in the Monday memo. ## 6. Sage — the learning loop Sage learns in two clocks. *Real-time* (event-driven, in-process) reacts the moment a decision lands, so a 14:00 edit makes every agent smarter by 14:00:01. *Nightly* (02:00) still runs for the aggregation that needs a full day: hook-score averages, per-agent ROI, voice re-extraction. Real-time triggers (`lib/sage-realtime.ts`, dispatched via `dispatchToSage`): 1. *Approve verbatim* — the draft is embedded into `golden_examples`. 2. *Edit then approve* — strongest signal. The edited version goes to golden + `lars_writing` + `lars-corpus/`; the original is logged as a near-miss in `failure_patterns`. 3. *Reject* — only `failure_patterns`. Never touches Lars's voice. 4. *Positive reply* — a send that drew a reply is promoted to golden. Fires automatically via the Gmail poller (`scripts/poll-gmail-replies.ts`, every 30 min in business hours; sentiment on Haiku). 5. *Deal closed* — `revenue_attribution.deal_closed_at` set (dashboard `/api/deal`) credits every agent in the `agents_touched` chain and promotes their actual outputs to golden as revenue-proven examples. 6. *LinkedIn metrics* — metrics entered on `/content` (`/api/linkedin/[id]/metrics`): a post beating 1.5x the 7-day median is promoted to golden (viral); under 0.5x it is kept as regen material. Every tuning is logged to `sage_tunings` (the audit trail + the dashboard `/team` activity feed) and each change is git-committed so Lars can revert. Guards: tunings capped at **20/agent/day** (stops thrashing on batch approvals); killswitch **`SAGE_REALTIME_DISABLE_COMMIT=true`** stops the per-decision git commits (embeds + tunings still run). --- <!-- SAGE-FOOTER --> Last updated by Sage: (not yet run) Changes this week: (none yet) <!-- /SAGE-FOOTER -->