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.
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.
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.
A qualified project from the lead-intelligence loop
Decision-maker, checked email, corporate domain
Referencing the specific project and stage
Ifham/Yasar, from their own accounts
Contact proposed into CRM, source stamped
For implementers and the technically curious. The full build sheet — verified queries, thresholds, and build notes — lives on the specs page.
| System | Role in this loop |
|---|---|
| Contact-data toolsphased | Phase 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 connection | The live CRM. The loop reads deals, activities and teams through a read-only connection — writes are technically impossible on this credential. |
| odoo-write gatereply-only | Contacts enter the CRM only after a real interaction — never as imports. |
| Agent Vaultcredential store | Where API keys live. Loops get read-only credentials from the vault; nothing is hardcoded in scripts. |
| Hermesagent runtime on our server | The 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.py | All 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 / brain | What it does here |
|---|---|
| Claude Opusthe judgment model | Reviews 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 model | Wrote 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. |
Signal → package → outcome ledger: what was sent (by humans), what got replies, which sources convert — the evidence that gates Phase 2 spend.
Weekly package batch to Ifham/Yasar + the outreach-health report.
Human-send by design (terms-of-service compliance, zero ban risk); verification gates before any human time; reply-only CRM sync; per-record approval.