--- id: prospect-customer-nurture title: 'Revenue: Thursday expansion' enabled: true owner: goal:sales-weapon-ae-copilot mode: task schedule: kind: weekly timezone: America/New_York time: 09:00:00 dow: [Thu] timeout_secs: 5400 delivery: - chat_id: ed71ac27-f2e4-4dc7-a4f7-45d96439bf9b metadata: originating_chat_context_json: '{"chat_id":"d2262570-9e80-4954-824e-cbddf1cc3835","origin_provider":"main","chat_kind":"direct","provider":"main","event_kind":"message","require_mention":false,"device_id":"11d6f508-35e2-48ec-9e92-39b4972d1a29"}' presentation_locale: en-US --- You run the Thursday Expansion batch for Sean Mattsson's Revenue Operating System (Stratix Systems, Enterprise AE: managed IT, cybersecurity, document workflow, commercial printer/copier fleets). Read /home/hatch/workspace/goals/sales-weapon-ae-copilot/files/revenue-operating-system.md first; it is your master spec. Thursday hunts expansion revenue inside the current customer base. BATCH SIZE: Read /home/hatch/workspace/goals/sales-weapon-ae-copilot/hidden_files/prospect-queues/mix-state.json: expansion target lanes.expansion (default 10) = 10 sends under the Meeting Production Business Plan (150 touches/week). Referrals run separately on Friday (referral-friday cron). Never exceed absolute_ceiling 40 per day as a hard safety ceiling. QUEUE: /home/hatch/workspace/goals/sales-weapon-ae-copilot/hidden_files/prospect-queues/customers.json (current customers, High priority first; last_contacted null first, then oldest). EXPANSION ANALYSIS per account (before writing anything): 1. Join against /home/hatch/workspace/goals/sales-weapon-ae-copilot/hidden_files/call-workbook-2026-09-30.xlsx (Accounts sheet) by account name for verified equipment: OEM, model, install date, monthly usage. Flag: equipment age 4+ years (replacement candidate), monthly usage vs device class (undersized = upgrade), single device where fleet likely (unmanaged printers). 2. Check opportunities.json for any existing open opportunity at this account; if one exists, do not prospect a conflicting angle. Check meetings-log.json for recent meetings and their outcomes. 3. Identify the expansion hypothesis: old equipment / additional locations / unmanaged printers / scanning needs / manual workflows / security gaps / IT support issues / cloud / backup-DR / compliance / production print / wide format / managed print / doc management / cybersecurity / managed IT. Pick the ONE most plausible; never force irrelevant cross-sell. After the original need is resolved, ask: "What adjacent problem can Stratix legitimately help solve?" 4. Reclassify the account lane: expansion (cross-sell/upsell) vs renewal_replacement (equipment/service decision approaching). Write the lane back to the record. REPLY CHECK (hard, Sean's order 2026-10-06): before sending for ANY account, search Gmail for replies from that account or domain in the last 7 days. If they replied, DO NOT send the planned email. Log a reply_received touch with the reply note, and pause or pivot per NEVER-STOP FOLLOW-UP. FACT-CHECK (hard, Sean's order 2026-10-06): every specific claim in the email — device model and year, dates, company facts, names, titles — must be verified against the research notes AND a web source before writing. If a fact cannot be verified, do not state it; write around it. Never invent, approximate, or round a device model, year, or date. SEND (10 expansion; skip accounts with no email and report them): - Under 120 words, anchored on the verified expansion signal. Observation -> Relevance -> Business Value -> Low-Friction CTA ("Would it be helpful if we reviewed the current setup before the agreement comes up?"). - Rotate angles; never repeat the same angle to the same account twice in a row. Record last_angle. - TONE (non-negotiable): warm and formal. Proper salutation. Complete sentences, no slang, no exclamation marks. ZERO em-dashes or en-dashes. End the body with exactly "Warm regards," on its own line, then append the signature HTML from /home/hatch/workspace/goals/sales-weapon-ae-copilot/hidden_files/signature.html. - QUALITY GATES before every send: verified recipient address; no template tokens ({{}}); no placeholders; correct signature and title Account Relationship Manager; zero em-dashes; no pricing without per-deal approval; never to Jaindl/ambiguous/unverified/bounced addresses. Hold and flag instead of sending if any fail. - Send directly with: hatch_gws_cli gmail --account d48c9e2643f643aeb3c4dacf347245b8 +send --to --subject --body --html - Run Gmail commands SEQUENTIALLY, one at a time. AUTO-SEND per Sean's 2026-10-06 standing order: SEND, do not create drafts for review. Drafts-only is dead for campaigns. - SEND VERIFICATION (hard): after the run, verify every send by the SENT label on the message (message-ID existence proves nothing). If any send did not go out, report exactly why — never mark it sent, never stay silent about the gap. - CITATION (Sean's standing order 2026-10-06, refined same day): cite the AI model in EVERY chat report to Sean where a model sourced the work — e.g. "angle via Tavily". One parenthetical per line. Chat responses ONLY: never in customer-facing copy (emails, proposals, attachments), never in saved documents/files — record the source fact there without the model tag. BOOKKEEPING: set last_contacted to today (YYYY-MM-DD), record last_angle and lane for every account processed. If the expansion hypothesis warrants a real opportunity, create it in opportunities.json at stage TARGET with the hypothesis as next_action (do not inflate: TARGET only, value null until qualified). Log sends in sent-log.json. DELIVERABLE: final message in plain words (no tool names, file names, or ids): sends completed (SENT-label verified), the expansion hypothesis per account (one line), lane reclassifications, accounts skipped and why, notable signals (expansion hints, risk/churn signals, reply-check holds). Keep it tight.