Loop B2B-L4 · Marketing — B2B pipeline · reports to Ifham / Yasar

Software finds and drafts. A person presses send.

The full go-to-market engine: watches for buying signals, finds and verifies the decision-maker, drafts a message referencing the specific project — and hands the ready-to-send package to Ifham or Yasar, who send it from their own accounts.

Design on the shelfPhase 1🕐 Weekly packages⚙️ Design ready — Phase 1 on budget
Part 1 — the plain-english view

The signal engine — everything automated except the one thing that shouldn't be.

What it watches
  • Qualified buying signals from the lead-intelligence loop (a hotel entering early planning, a tender award)
  • Decision-maker identity, verified: checked email, corporate domains only, <5% duplicate gate
  • Weekly outreach health for the humans: acceptance rate (pause below 30%), reply rate, stale invites to withdraw
When & how it speaks

Ready-to-send packages: verified contact + drafted message referencing the specific project and stage (with a quality generic fallback when signal detail is thin). On a reply, the contact is proposed into the CRM — reply-only, per-record approval, source stamped.

Why it exists

The original automation plan stalled on its own fact-check: every LinkedIn sending tool violates LinkedIn's terms, with active enforcement (a major vendor's own page was banned in March 2026). Human-send isn't a compromise — it's the design: zero ban risk, and at two senders, volume was never the constraint anyway.

0
ban risk — because no software ever touches the send button
<5%
duplicate gate on contacts — manufacturing GTM motions fail at ~23% benchmarks
30%
acceptance-rate floor — below it, the loop tells its humans to pause outreach
📡

Signal in

A qualified project from the lead-intelligence loop

🔎

Find & verify

Decision-maker, checked email, corporate domain

✍️

Draft the message

Referencing the specific project and stage

🤝

Human sends

Ifham/Yasar, from their own accounts

↩️

On reply only

Contact proposed into CRM, source stamped

What it will never doNever sends anything, never adds a CRM record without a named person's approval, never imports raw lists.
Where it stands today · July 2026Design complete (the absorbed go-to-market project, loop-ified) with vendor verdicts and phased costs on the go-to-market page. Phase 1 (~$450–650/mo tooling) activates on conversion evidence from the free lead-intelligence shortlists — those are the no-budget test that funds everything downstream.
Part 2 — under the hood

How it's wired: systems, models, and the path a number takes.

For implementers and the technically curious. The full build sheet — verified queries, thresholds, and build notes — lives on the specs page.

ReadsCRM-3 shortlists
Qualified, scored buying signals
StepContact discovery
Project-database contacts + verification tools
StepVerification gate
Email checked, corporate domain, dedup <5%
StepMessage drafting
Specific to project + stage; generic fallback honest
Human gateIfham / Yasar send
From their own accounts — the deliberate manual step
StepReply-only CRM sync
Proposed record, per-approval, source stamped
System we read Automated step State / memory Human decision
SystemRole in this loop
Contact-data toolsphasedPhase 1: project-database contacts + free tiers; Phase 2: a paid enrichment waterfall (~$1,100–1,400/mo all-in) only after Phase 1 converts. Vendor verdicts documented on the GTM page.
Odoo 19 CRMread-only connectionThe live CRM. The loop reads deals, activities and teams through a read-only connection — writes are technically impossible on this credential.
odoo-write gatereply-onlyContacts enter the CRM only after a real interaction — never as imports.
Agent Vaultcredential storeWhere API keys live. Loops get read-only credentials from the vault; nothing is hardcoded in scripts.
Hermesagent runtime on our serverThe scheduler that wakes the loop up. Each loop is a cron job under a Hermes profile; the planned bizops profile will host the business digests (IT loops run under vpsops).
Email renderer + gwsrender_email.pyAll digests pass through one shared renderer: Huxberry-branded HTML, tables for repeated rows, a coral 'needs your response' box when the loop has questions, and an arrow link on every record. Sent from the loops mailbox via the Google Workspace CLI.
Model / brainWhat it does here
Claude Opusthe judgment modelReviews alert wording, thresholds, and anything a human will read and act on. Post-Fable, Opus owns everything that ships.
GPT-5.5 via Codexthe bulk-work modelWrote and maintains the mechanical parts — SQL, diffing, digest assembly. Effectively free on our existing subscription, so routine cycles cost almost nothing.
Claude Fablethe designer (retired)Designed this loop's spec and encoded the judgment as thresholds and checklists before its retirement on 8 July 2026 — so cheaper models can run it without Fable-level reasoning.
State & memory

Signal → package → outcome ledger: what was sent (by humans), what got replies, which sources convert — the evidence that gates Phase 2 spend.

Delivery

Weekly package batch to Ifham/Yasar + the outreach-health report.

Safety rails

Human-send by design (terms-of-service compliance, zero ban risk); verification gates before any human time; reply-only CRM sync; per-record approval.

Before it can run for real
  • CRM-3 shortlists showing conversion (the free test)
  • Phase-1 budget (~$450–650/mo) on that evidence
Full build sheet →