Loop CRM-3 · Sales & CRM · reports to Ifham (then Yasar)

Finding hotels before competitors know they exist.

Sweeps public announcements of GCC hotel openings, refurbishments and tenders, qualifies them against our ideal customer profile, and hands Ifham a scored weekly shortlist with sources and a suggested angle.

Built & tested — pilotWave 3🕐 Weekly⚙️ Claude research harness
Part 1 — the plain-english view

A tireless prospector that reads everything, so Ifham doesn't have to.

What it watches
  • Public GCC hospitality-development news, tender portals, project announcements
  • Each signal is qualification-gated: verified company entity, sector, specific Emirate/country, and a decision-maker persona — or it never reaches a human
  • Signals are scored against a written rubric — band A/B/C, with urgency flags
When & how it speaks

Weekly shortlist to Ifham: scored, sourced, with a suggested opening angle per lead. A construction variant for Yasar clones the same harness later.

Why it exists

Major hotel groups dropped a key competitor brand globally — a large share of hospitality revenue needs replacing, and Ifham prospects alone. The market signal is verified: 717 Middle-East hotel projects (177,110 rooms) are in the pipeline, 202 still in early planning — reachable before anyone else calls them.

717
Middle-East hotel projects in the development pipeline (Q1-2026 industry data)
12
qualified signals on the first live run — 5 scored A-band against the rubric
100%
of shortlisted leads carry a source link — no lead without receipts

Weekly sweep

News, tenders, project databases

🚪

Qualification gate

Entity + sector + location + persona — or it's dropped

⚖️

Scored vs rubric

A written rubric, tuned with Ifham's feedback

💬

Shortlist to Ifham

Scored, sourced, with a suggested angle

👍 per lead

Only then is a CRM record created — one at a time

What it will never doNever adds a lead to the CRM without Ifham approving it, one by one — and every record it creates carries its source stamped from birth.
Where it stands today · July 2026Built and first-run complete: a scoring rubric plus a first shortlist — 12 qualified signals, 5 A-band, with urgency flags where competitor exits create a timing window. Free sources only so far; paid project databases (~€85–250/mo) unlock on conversion evidence from these shortlists.
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.

ReadsPublic web
GCC hospitality news, tenders, project announcements
StepSweep + qualification gate
Mandatory fields verified before a human ever sees the signal
StepRubric scoring
Written rubric → A/B/C band + timing flags
DeliversWeekly shortlist
To Ifham, with sources and a suggested angle
Human gate👍 per lead
Ifham approves individually
Stepodoo-write gate
Approved lead created in CRM, source stamped
System we read Automated step State / memory Human decision
SystemRole in this loop
Web researchfree-tier sources firstNews sweeps and tender portals; paid project databases are a later unlock, gated on the free tier proving conversion.
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 gateper-record approvalThe only path a shortlisted lead takes into the CRM — one approval per record, source/medium stamped at creation.
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.
Agent Vaultcredential storeWhere API keys live. Loops get read-only credentials from the vault; nothing is hardcoded in scripts.
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

The rubric file (versioned, tuned with Ifham's feedback) plus each week's shortlist — so no signal is proposed twice and scores stay comparable week to week.

Delivery

Weekly email shortlist; each entry with score, source links, and a suggested angle. Qualified signals also feed the B2B outbound assistant (B2B-L4) when that ladder switches on.

Safety rails

Qualification gate before any human time is spent; per-record CRM approval; reply-only philosophy downstream — contacts never enter the CRM as raw list imports.

Before it can run for real
  • 2–3 rubric iterations with Ifham's feedback on real shortlists
  • Paid data sources only on conversion evidence — with fresh licences, never shared logins
Full build sheet →