OFM chatter and revenue operations
Status: URGENT operating-model checkpoint written 2026-08-29; sourcing campaign in progress. Owner: OFM-CHATTER-DEEP.
Executive decision (checkpoint)
HALO should own the durable conversation-to-revenue operating record—assignment, creator voice/boundaries, fan memory, intent and offer state, PPV/custom linkage, promises/follow-ups, attribution, handoffs, QA, escalation, consent/policy evidence, and export—while the platform connector remains authoritative for message delivery, receipts, platform IDs, and platform policy state. Buzz is the fixed internal coordination/event plane, not the fan conversation database. The immediate product gap is not another broadcast composer; it is a human-resumable sales workspace with a stateful customer memory and a provable handoff path.
This is a product proposal, not implementation authorization. The existing /messages screen is evidence of a thin internal broadcast surface, not evidence of an OFM inbox.
Persona and authority map (urgent)
| Persona | Job in the loop | May see | May change | Must not control |
|---|---|---|---|---|
| Owner/admin | Set commercial/policy boundaries; inspect revenue, risk, staffing, audit | Cross-agency rollups, all scoped conversation metadata, QA/escalations, exports | Policies, role/queue assignment, approved playbook versions, overrides, retention/export approvals | Raw creator credentials or unapproved impersonation; platform truth |
| Chatter/sales operator | Conduct approved fan conversations, qualify intent, sell, follow up, record outcomes | Assigned threads, permitted creator voice/playbook, fan memory relevant to assigned creator, offer/content availability, own performance | Draft/send within platform scope, tags, next action, promise, offer state, handoff/escalation, evidence links | Creator boundary/consent policy, money settlement, global fan access, irreversible automation |
| Shift lead/manager | Balance queues, take over risky/stuck threads, coach and QA | Team queues, thread history, handoff packets, metrics, policy flags, sampled transcripts | Assign/reassign, approve/escalate, annotate QA, override queue state with reason, resolve disputes | Edit immutable message receipts or silently alter attribution |
| Creator/model | Define voice, boundaries, availability, offer/content approvals; receive escalations | Own profile/playbook, approved content/offers, creator-facing requests and selected thread context | Approve/revoke boundaries, content/offer availability, custom-request acceptance, availability; optionally reply/take over | Internal chatter compensation, other creators' fans, audit deletion |
| Content specialist/fulfillment | Link approved asset/PPV/custom deliverable to the conversation and status | Approved asset metadata, request brief, due/rights state, minimum needed fan context | Attach/version/link asset, update fulfillment state, flag missing approval | Send on creator's behalf unless explicitly authorized |
| Finance/compliance | Reconcile sale/commission/liability and investigate disputes | Sale/event receipts, immutable attribution, customs, refunds/chargebacks, consent/policy evidence | Reconcile, freeze/dispute, correct through adjustment record, export | Conversation content beyond minimum necessary; rewrite operational history |
| External platform connector/agent | Ingest/send platform events within consented scope | Connector credentials in isolated vault; platform IDs/events | Create idempotent message/event receipts, report delivery/failure/rate-limit state | HALO business decisions, policy bypass, unsupervised high-risk sends |
| Buzz/agents | Coordinate staff work and scoped tool calls | Typed thread/task links and allowed summaries, never unrestricted customer vault | Post coordination events, claim/hand off tasks, request approval, draft/summarize/classify | Become source of truth for platform messages, money, consent, or fan identity |
Authority rule: platform message/event receipt is authoritative for “what the platform accepted/sent”; HALO conversation projection is authoritative for “what the agency promised, assigned, attributed, approved, or must do next”; creator/consent/playbook records are authoritative for voice and boundaries; finance ledger is authoritative for money; Buzz is authoritative only for team coordination/event delivery inside its contract.
End-to-end operating journey (urgent)
- Entry and identity. A platform webhook/read connector receives a new inbound message,
purchase, tip, renewal signal, or custom request. Normalize the platform account, creator, fan/platform identity, thread, event ID, and received time. Deduplicate before creating a conversation event. If identity confidence is low, quarantine for review.
- Queueing and assignment. Apply creator, language/skill, shift, SLA, risk, VIP/value,
and workload rules. Create an assignment lease with owner, queue, priority, reason, expiry, and audit trail. Notify the chatter through the HALO/Buzz coordination link; do not copy the entire platform thread into Buzz.
- Context and guardrails. Chatter opens the thread with a compact fan card: stable
platform identity, consent-safe notes, lifecycle/segment, prior purchases and promises, open custom/PPV requests, last owner/handoff, and relevant creator playbook version. Sensitive fields are field-scoped and redacted by role. The system shows allowed, unavailable, expired, and escalation-required offers—not invented availability.
- Conversation and assist. Chatter replies in the platform-native channel using an
approved voice/playbook. AI may summarize, classify intent, retrieve approved facts, suggest a draft, detect risk, or propose a next action. Human approval is required for sending and for policy-sensitive, high-value, custom, refund, or boundary-adjacent actions. Store draft provenance and approval actor separately from the platform receipt.
- Offer / PPV / custom conversion. A sale candidate links to the creator and approved
content/offer version, price/currency, promise, expiry, and platform transaction or request ID. A custom request becomes a structured work item with brief, consent/boundary check, price/deposit, due date, fulfillment owner, and status. Do not treat a typed “sold” note as settled money.
- Follow-up and retention. Convert an explicit promise (“send X tomorrow”, “check back
after payday”, renewal/save attempt) into a due action with owner, trigger, SLA, and suppression reason. A scheduler creates a queue item; it never sends without the same policy/approval gate. Track response, conversion, fulfillment, renewal, refund, and chargeback outcomes as separate events.
- Handoff / escalation. Before shift end, chatter records a structured handoff packet:
fan goal/state, last inbound, what was said/promised, offer and price state, open question, next action/deadline, risk flags, creator constraints, and evidence links. Receiving chatter acknowledges or the manager is paged. Escalate boundary/consent, abuse, self-harm/threat, fraud, payment dispute, account lock, creator concern, or uncertain identity to the correct human queue; preserve the original context.
- QA and attribution. Manager samples or reviews risk-triggered threads against the
playbook version and rubric. Attribute conversation events, approved offers, sales, customs, and outcomes to creator, chatter, shift, campaign/content, and connector. Corrections are adjustment events, not silent edits. Quality metrics must not reward unsafe pressure or gross sales alone.
- Close, export, and offboarding. Close only when the thread has no due action or an
explicit disposition. Export a machine-readable package containing platform IDs/events, HALO records, attribution, approvals, handoffs, attachments/links, and retention/legal holds. On staff departure revoke leases and access while preserving immutable history; on creator departure export/return scoped records and revoke credentials/content rights; on platform suspension freeze sends, retain evidence, and make a recovery queue.
Feature / sub-app tree (urgent)
Chatter Revenue Operations
├── Conversation cockpit
│ ├── creator/queue/skill/SLA/VIP/risk inboxes
│ ├── thread timeline + platform event receipts + unread/lease state
│ ├── fan/customer card, segments, value/retention state, consent-safe notes
│ ├── approved voice/playbook retrieval + offer/content availability
│ ├── composer: draft → policy check → human approve → platform send
│ └── AI assist: summarize, classify, retrieve, draft, risk/intent suggestion
├── Revenue workflow
│ ├── offer/PPV catalog links and versioned price/expiry
│ ├── purchase/transaction attribution and reconciliation handoff
│ ├── custom-request intake → consent/price → fulfillment → delivery → dispute
│ ├── promises, follow-ups, renewal/save actions, suppression reasons
│ └── refund/chargeback/fraud and platform-outage recovery queues
├── Workforce operations
│ ├── assignment rules, leases, shift calendar, capacity and SLA queues
│ ├── structured handoff packet + acknowledgement + takeover
│ ├── manager review, escalation, exception and dispute inboxes
│ └── Buzz links for coordination, claims, approvals and notifications
├── Quality, policy and learning hooks
│ ├── creator voice/boundary/consent policy versions
│ ├── prohibited-content/risk detectors and mandatory human gates
│ ├── rubric samples, QA evidence, calibration and coaching links
│ └── auditable AI prompt/model/draft/approval provenance
├── Analytics and portability
│ ├── funnel: response → offer → purchase → fulfillment → renewal/refund
│ ├── cohort/segment/creator/chatter/shift/campaign/content attribution
│ ├── quality, SLA, retention, workload and handoff-loss metrics
│ └── export, retention/legal hold, correction and access audit
└── Shared primitives
├── stable IDs, idempotency keys, event log, projections, clock/source metadata
├── scoped RBAC/ABAC, redaction, consent and creator-boundary checks
├── connector adapter contract, retry/dead-letter/replay, rate-limit state
└── evidence-linked approvals, immutable receipts, synthetic test fixtures
Current HALO coverage and gaps (urgent, read-only evidence)
Evidence grade: FACT means directly observed in the named source; INFERENCE is a bounded conclusion from that source; PROPOSAL is this report's design recommendation.
| Area | Current HALO evidence | Decision-grade gap |
|---|---|---|
| Internal messaging | FACT: /messages renders “Send Messages”; it posts {message, recipients, timestamp} to process.env.N8N_WEBHOOK_URL and shows toast success/error (repo/src/pages/Messages.tsx:10-49). | No persisted thread, inbound platform event, delivery receipt, retry/dead-letter, creator scope, fan identity, queue, or audit authority. The empty webhook URL is a concrete deployment failure mode. |
| Recipient model | FACT: the form searches/selects current creators or team members and sends prefixed IDs; the legacy recipient component labels WhatsApp and filters only Team/Creator (repo/src/components/messages/WebhookMessageForm.tsx:17-57, repo/src/components/messages/RecipientList.tsx:32-52). | Fans, platform accounts, conversation IDs, skills, assignment leases, shifts, language, risk, VIP/segment, and scoped availability are absent. |
| Fan/customer memory | FACT: customs stores fanUsername, fanDisplayName, description, dates, price, status, seller, sender/endorser, and attachments (repo/convex/schema.ts:357-375). | No fan entity, identity merge/confidence, thread history, purchase/renewal timeline, preferences, consent-safe notes, segment, value, opt-out/suppression, or cross-platform identity boundary. |
| Custom fulfillment | FACT: /customs-tracker lists and creates customs; the board has partially_paid → fully_paid → endorsed → done/refunded, drag transitions, overdue due dates, downpayment edit, attachments, and status history (repo/src/pages/CustomsTracker.tsx:20-117, repo/src/components/customs/KanbanBoard.tsx:17-23,69-133, repo/convex/customs.ts:26-136). | Useful downstream work item, but no source conversation/offer/message ID, consent/boundary approval, creator acceptance, fulfillment evidence, immutable actor IDs, payment-event authority, SLA/escalation, or fan communications. Attachment upload currently returns demo path strings (repo/src/hooks/useCustomAttachments.ts:24-37). |
| Sales attribution | FACT: salesTracker is a week/day/model/chatter earnings grid with lock/admin-confirmed fields; payroll is a separate role-routed surface (repo/convex/schema.ts:387-406, repo/convex/payroll.ts:36-205, repo/src/pages/Payroll.tsx:22-74). | No event-level sale/PPV/source attribution, platform transaction ID, offer/content/campaign linkage, refund/chargeback adjustment, commission source, or conversation-to-ledger promotion. It is a manually maintained payroll input, not conversation truth. |
| Workforce / shift | FACT: chatter payroll tracks attendance and week-scoped earnings; gamification has shift/day quest assignments and completion evidence (see repo/convex/schema.ts:408-418,745-771 and INTERNAL-PRIOR-ART.md). | No conversation queue assignment, lease/claim, shift handoff packet, acknowledgement, stale-thread recovery, SLA clock, capacity view, or manager takeover. |
| Playbooks / voice / QA | FACT: no chatter inbox/playbook/QA/conversation tables or routes were found in the read-only route/module pass; role permissions only expose generic file flags and Chatter is preview/download without edit/upload (repo/convex/rolePermissions.ts:4-14). | Creator voice versioning, approved claims/offers, boundaries, rubric, transcript sampling, AI provenance, coaching, policy gates, and quality-vs-gross-sales controls are missing. This is a negative finding from the inspected route/schema/module surface, not proof that no untracked external system exists. |
| Authority / access | FACT: /messages, /customs-tracker, /payroll, and /tasks-rewards are routed under authentication, while /upload/:id is a public creator upload route (repo/src/App.tsx:145-183). | Route auth is not a conversation-specific least-privilege model. Need field-level fan/thread scopes, creator boundary approvals, immutable audit, connector secret isolation, export/revocation, and human approval enforcement. |
| Buzz / Oracle crossover | FACT: Buzz is fixed by campaign brief; Oracle proves one-action live operations, unified chat/tip event ingestion, deduplication, truth-grounded goals, and human-present safety gates (INTERNAL-PRIOR-ART.md). | No HALO↔Buzz typed conversation/task adapter or shared event IDs are present in HALO evidence. Streaming readback cannot be treated as OnlyFans messaging authority; reuse only the event/proof patterns. |
Search vocabulary (urgent, intent-first)
Search in these families, using combinations rather than “OnlyFans CRM” alone:
- Conversation operations: shared inbox, omnichannel inbox, social inbox, unified inbox,
conversation routing, queue assignment, skill-based routing, priority queue, SLA, conversation lease, agent takeover, supervisor whisper/barge, escalation queue.
- Sell-by-chat: conversational commerce, social selling, DM sales, chat sales,
pay-per-view workflow, PPV unlock, offer state machine, upsell/cross-sell, renewal save, fan segmentation, subscriber lifecycle, high-value customer, customer memory.
- Customer-success analogue: customer timeline, next-best action, task/follow-up,
promise tracking, playbook, health score, expansion, retention, churn risk, handoff summary, account notes, customer data platform, identity resolution.
- Contact-center / QA: contact-center workspace, agent desktop, interaction history,
disposition, wrap-up, call/chat QA, rubric, calibration, speech/text analytics, coaching, human-in-the-loop, agent assist, retrieval-augmented draft, redaction.
- Human-resumable agents: durable execution, workflow pause/resume, approval gate,
task claim, lease expiry, inbox/outbox, dead-letter, idempotent webhook, event sourcing, append-only audit, replay, correction event, provenance.
- Custom / fulfillment: custom request management, commission workflow, creative
fulfillment, order-to-cash, deposit milestone, deliverable approval, digital delivery, content entitlement, refund/chargeback dispute.
- Trust and boundaries: consent management, creator rights, policy engine, age/identity
safeguards, sensitive-data redaction, purpose limitation, retention/export, scoped access, impersonation authorization, platform terms, human approval.
- Adjacent markets: contact center, BPO workforce management, creator/talent CRM,
influencer monetization, Patreon/subscription support, marketplace seller messaging, hospitality guest messaging, high-touch customer success, legal case handoff.
Executive decision (full research position)
Decision: BUILD a narrow HALO conversation-to-revenue operating layer; integrate Buzz as an internal coordination sidecar; BUY or benchmark exact OFM products where they reveal domain state; STUDY selected open-source state machines; reject any design that makes credentials, platform account control, impersonation, or unreviewed sensitive sending part of the product.
This is an operational continuity problem, not a “make another broadcast composer” problem. HALO needs a human-resumable record of who owns a conversation, what the creator permits, what the fan wants, what was offered or promised, what was fulfilled, who acted, what needs review, and what may be attributed to money. A platform connector remains the authority for platform receipt, delivery state, platform IDs, and platform policy. Buzz remains the authority for internal coordination. The finance ledger remains the authority for money.
The product boundary is therefore four separate truths:
| Truth | System of record | HALO’s permitted role | Explicit non-goal |
|---|---|---|---|
| Platform receipt | Authorized platform connector/provider | Store a scoped, rebuildable projection with source IDs and receipt status | Pretend a local note is proof that a platform message was sent, read, or purchased |
| HALO work and attribution | HALO domain layer | Own assignment leases, playbook version, fan context, offer/custom state, promises, handoffs, QA, escalation, and work attribution | Replace the platform thread or silently rewrite its receipt history |
| Finance ledger | Finance/accounting surface | Link an outcome to an external ledger reference and expose reconciliation status | Treat a conversation event, custom card, or chatter claim as settled money |
| Buzz coordination | Buzz sidecar | Link a work item to internal channels, threads, handoffs, and agent participation | Use Buzz as the fan database, platform-message authority, or commission ledger |
Confidence: high for the HALO coverage and missingness findings because they are grounded in local source; medium for product/category fit because vendor and operator pages are claims or secondary evidence; medium for OSS reuse because repository health and license scope are snapshots and require a later legal/engineering review.
Safety and authority non-negotiables
- No credential harvesting, cookie/session copying, anti-detect behavior, proxy evasion,
account-control evasion, scraping intended to defeat platform controls, or platform-policy bypass.
- No unauthorized impersonation. A creator’s voice, identity, permissions, and consent
must be explicit, versioned, revocable, and scoped to the authorized platform/account.
- No autonomous sensitive send. AI may classify, retrieve, summarize, draft, or propose;
a human approval and server-side policy gate are required for paid content, custom promises, identity-sensitive content, high-risk claims, refunds, account changes, or any action whose platform terms require human oversight.
- No shadow money ledger. A sale, PPV purchase, refund, chargeback, payout, or commission
is only finance truth when reconciled to the finance/platform source.
- No second chat authority. A local mirror may be rebuilt and audited; it must not claim to
be the source of platform delivery or read receipts.
Research receipt and evidence discipline
Date / scope: 2026-08-29, read-only research in this repository. The owned artifact is this file only. repo/ and Oracle were inspected as evidence and not modified. Serena was attempted first as required by the local instructions; its daemon was unavailable (ECONNREFUSED 127.0.0.1:24225), so the code pass used narrow direct reads and scoped searches as the documented fallback.
Local corpus
- The identity catalog exists at
/Users/shaansisodia/SISO_Workspace/SISO_Agent_Base/research/repo-catalog/identity/identity.sqlite; a read-only count returned 1,358,200 repo_card rows.
- A narrow shared inbox query produced generic help-desk/Discord/shared-inbox candidates,
not a validated OFM operating system. A narrow onlyfans query was dominated by scrapers, downloaders, and automation/evasion-adjacent projects; this is a negative lexical signal, not a product shortlist.
- The curated catalog path named by the campaign,
/Users/shaansisodia/SISO_Research/siso-foundry/pipelines/github/awesome/catalog_full.sqlite, was absent on this machine. This is a missing receipt, not evidence that the catalog is empty. The campaign’s screened addendum remains candidate input: 67 queries, 1,889 rows, 1,781 unique repositories, 30 promoted for evidence review; promotion is not adoption.
External research
The live-product pass used official product/help pages for CreatorHero, Infloww, Supercreator, OnlyMonster, Chatwoot, Front, Intercom, Second Nature, and MaestroQA. The operator pass used creator-operations guides and training/SOP pages for vocabulary and workflow shape only. Vendor adoption, revenue, user, uplift, and performance figures are not accepted as benchmarks without independent evidence. Direct OFM interviews remain an open requirement.
The platform-safety pass used official Fansly documentation as a concrete example of management sessions, permission boundaries, automated-message behavior, and human oversight. It is platform evidence for a safe design pattern, not a claim about every platform or a license to automate a platform that has not authorized it.
GitHub method
Every repository cited below was checked in the same research session with:
gh api repos/OWNER/NAME
The ledger records the returned full_name, HTML URL, stars, SPDX value, pushed_at, archived, and default branch. For every NOASSERTION result, the repository tree and the actual license source were inspected. NOASSERTION is never treated as permission to copy, deploy, or sell.
Internal prior art and crossover
What HALO and Oracle already prove
[LOCAL / FACT] HALO has a visible creator/team message form at repo/src/pages/Messages.tsx:10-49 that posts {message, recipients, timestamp} to process.env.N8N_WEBHOOK_URL. The form selects creators/team members through repo/src/components/messages/WebhookMessageForm.tsx:17-57, and its recipient copy still references WhatsApp and Team/Creator filters. This is a broadcast/webhook surface, not a durable fan conversation system.
[LOCAL / FACT] HALO has its strongest structured customer-adjacent state in customs: repo/convex/schema.ts:357-385 stores model/fan display fields, description, status, seller, sale/due values, deposits/full price, attachments, timestamps, and status history. The customs backend at repo/convex/customs.ts:26-136 supports status changes and history. The attachment hook at repo/src/hooks/useCustomAttachments.ts:24-37 currently returns demo path strings, so actual fulfillment storage is not proven.
[LOCAL / FACT] Sales/payroll are separate: repo/convex/schema.ts:387-406 defines salesTracker, while repo/convex/payroll.ts:36-205 and the payroll UI connect week/day, model, chatter, earnings, locks, and admin confirmation. No inspected path establishes that a platform receipt or conversation action is the source for a finance record.
[LOCAL / FACT] Oracle’s protected streaming work proves a useful pattern: one low-cognitive-load action can start a multi-platform workflow; platform events can be deduplicated into a durable proof ledger; goals/overlays can be grounded in authoritative events; and camera/mic/account safety gates can keep a human present. The Oracle docs/PROVEN-LEDGER.html evidence is strong for event provenance and human safety, not for OFM message authority.
Reusable crossover
[INFERENCE → PROPOSAL] Reuse these patterns in the chatter domain:
- Stable event IDs and provenance. Every platform receipt, HALO work event, Buzz
coordination event, and finance reference gets an origin, source ID, observed time, received time, actor, and deduplication key.
- Authoritative-event goals. A “follow up,” “custom due,” or “QA complete” goal is
grounded in a recorded state transition, not a manually typed progress number.
- Human-readable proof. A shift lead must be able to answer “why is this in my queue?”
and “what actually happened?” without reconstructing an agent trace.
- Human-present safety gates. A sensitive action has a visible policy decision,
approver, scope, expiration, and revocation path.
- Creator-visible progress. Creator/model views should expose only the work and
permissions they are entitled to see, including promise/fulfillment state and escalation, rather than exposing a staff-only transcript dump.
What does not transfer
- Oracle’s OBS/OME/browser, live-stream transport, viewer-chat, tip, overlay, and camera
machinery is not a chatter connector and must not become one by analogy.
- Oracle’s event ledger does not prove a platform DM was delivered or purchased.
- HALO’s gamification/shift-quest tables can support training and operational cadence, but
XP, bananas, ranks, or leaderboards cannot substitute for QA evidence, consent, policy review, or finance reconciliation.
- A shared Convex deployment does not imply shared auth, data ownership, retention, or
schema compatibility. Cross-domain links should use stable opaque IDs and typed events.
- Buzz’s rich internal messaging is not a reason to duplicate fan transcript history into a
second authoritative inbox.
Crossover seam
The safe seam is a portable work/evidence contract:
platform receipt -> HALO projection -> lease/playbook/action -> outcome/attribution
+------ Buzz link --------+ +------ finance ref ------+
This contract should converge creator/model IDs, permission scope, event provenance, approval/revocation, goals, and evidence. It should not converge platform credentials, raw secret material, or the two products’ entire data models. The inspected route evidence does not prove a complete model-facing HALO application; that remains an explicit discovery item rather than an assumption.
What are we still missing?
This is the first-principles missingness map: start from the desired outcome, identify the state that must remain true, then locate where the current system loses it.
| Desired outcome | State that must survive a shift or outage | Current evidence | Missing capability / proof |
|---|---|---|---|
| Preserve creator trust while selling | Authorized voice/boundaries, prohibited topics, price/offer rules, consent and revocation | Operator sources repeatedly describe creator voice/playbook training; no HALO playbook/consent surface was found | Versioned creator playbook, policy evaluator, approval scope, training/eval record |
| Resume every active fan conversation | Fan identity mapping, thread source, last inbound/outbound, intent, sentiment/priority, owner, next action | HALO /messages posts a webhook and has no durable thread state | Connector-backed thread projection, fan memory, queue, idempotent receipt ledger |
| Never lose a promise | Promise text, due time, owner, fulfillment evidence, acknowledgement, expiry/escalation | Customs has due/status state, but fan promises and follow-up queue were not found | First-class promise state linked to a conversation and fulfillment/custom |
| Make handoffs safe | Old owner, new owner, reason, summary, playbook version, acknowledgement, SLA | Operator sources describe shift handoff; no handoff state/ack surface was found | Lease expiry, handoff acknowledgement, takeover, unresolved/escalation state |
| Attribute work fairly | Actor, shift, creator, thread, action, offer, outcome, source event, split policy, dispute path | Payroll/sales are separate manual structures | Append-only work attribution linked to external finance reconciliation |
| Fulfill customs accurately | Offer terms, deposit, content entitlement, attachment, approval, delivery, refund/chargeback | Customs schema/status exists; attachments are demo-path evidence | Real storage/entitlement/delivery evidence, customer confirmation, finance link |
| Coach rather than merely rank chatters | Rubric, sample, transcript/receipt evidence, calibration, action plan, retraining outcome | Operator vocabulary includes weekly QA/calibration/retraining; no QA domain found | Versioned rubric, blind calibration, coaching task, appeal/retention policy |
| Keep AI useful and bounded | Source context, draft provenance, confidence, policy result, approver, action outcome | Prior art supports draft/handoff/approval patterns; no HALO AI boundary found | Human-only sensitive-action gate and auditable AI suggestion/evaluation state |
| Keep platform truth separate | Platform account, message ID, status ladder, delivery/read/purchase evidence, connector errors | No inspected HALO conversation/connector tables were found | Authorized adapter, receipt projection, retries/dead letter, rebuild/export |
| Let managers see exceptions | Queue aging, SLA, blocked reason, connector health, policy/finance mismatch | Existing routes expose messages/customs/payroll/tasks, not exception control | Exception-first cockpit with acknowledge, resolve, escalate, and audit |
| Let a creator leave safely | Exportable fan/work/fulfillment/attribution evidence, revocation, retention/deletion policy | Export/offboarding contract was not found in the inspected pass | Portable exit package and access/consent revocation |
Missing state is more important than missing screens
The highest-leverage missing records are not “another dashboard” or “more AI.” They are:
- conversation_projection: source/platform IDs, receipt status, normalized participant
reference, event cursor, and rebuild metadata.
- fan_memory: explicit facts, source event, confidence, expiry, and “do not infer”
boundaries; never silently merge identities across platforms.
- assignment_lease: owner, queue, acquired/expired time, heartbeat, takeover, and reason.
- playbook_version: creator scope, allowed voice/offer rules, prohibited actions, approval
requirements, test/eval status, effective/revoked times.
- offer and promise: terms, source, expiry, owner, acknowledgement, fulfillment and
escalation.
- handoff: structured summary, old/new owner, required acknowledgement, SLA, and unresolved
state.
- work_attribution: actor/shift/action/outcome/source event, separate from finance_ref.
- qa_case: rubric version, sample, grader/calibration, coaching task, retraining result,
appeal, and retention.
- policy_decision: action, scope, reason, approver, expiration, revocation, and final
platform receipt.
Durable domain model and end-to-end journey
The urgent journey above is the operating path. The durable model below makes the authority boundary testable.
Minimal state model
Creator/Model ├── Platform account + authorized connector scope ├── Playbook versions + consent/policy boundaries └── Staff/shift permissions Fan identity (platform-scoped, non-merged by default) └── Conversation projection ├── Assignment lease / queue / SLA ├── Fan memory facts + source evidence ├── Offer / PPV / custom request ├── Promise / follow-up / fulfillment ├── Handoff / escalation / acknowledgement ├── AI draft / human approval / policy decision ├── QA / calibration / coaching └── Work attribution -> external finance reference
Required invariants:
- A platform receipt is append-only and source-linked; a local projection can be rebuilt.
- A human action is attributed to the authenticated staff identity and active lease.
- A lease cannot silently remain active after shift expiry, revocation, or account freeze.
- A creator playbook version is captured on every sensitive draft, send approval, offer, and
QA case.
- A promise cannot close without fulfillment evidence or an explicit cancellation/refund
reason.
- An attribution record cannot become a settled finance record without reconciliation.
- A handoff is incomplete until the receiver acknowledges or a lead takes over.
- An AI draft is not a platform action; the final send/receipt is a separate event.
Ranked full-system and live-product candidates
Rank is fit to the missing state, not an endorsement of vendor claims or a purchase order. “Vendor claim” means the official page says the capability; it is not independent proof. Hosted product licenses are proprietary/terms-controlled unless stated otherwise.
| Rank | Product / evidence | Exact job and affected personas | Decision | Authority boundary, API/stack, duplication, Buzz relationship | Confidence |
|---|---|---|---|---|---|
| 1 | Infloww Messages Pro ↗, fan signals ↗, custom requests ↗ | Exact OFM multi-creator inbox; tabs/focus queues, chat history, PPV/read state, fan tags/signals, private-content requests. Affects chatters, shift leads, creators, fulfillment. | BUY/benchmark, connector candidate | Official help pages support the workflow claims; public API/tenant export/terms need diligence. Keep platform receipt in provider, HALO work/attribution in HALO, Buzz as internal handoff. It overlaps the desired fan inbox, so it must not be bought as an unbounded second authority. | Medium-high for feature evidence; low for vendor metrics |
| 2 | CreatorHero OFM CRM ↗, marketing workflow page ↗ | Exact creator/fan chat operations: chat UI, AI summaries/translation, spend/PPV context, chatter tracking, tagging, scheduling and creator management. Affects chatters, managers, creators. | BUY/benchmark | Public pages are vendor claims; no public API/retention/export proof in cited evidence. Treat as a benchmark and interview target, not a source for HALO money or consent. Buzz only links internal work. | Medium |
| 3 | OnlyMonster ↗, roles and permissions ↗, message tracker ↗ | Multi-platform creator operations, team roles, message activity, analytics, API/webhooks and export claims. Affects owners, managers, chatters, finance/compliance. | BUY/benchmark; strongest boundary study | Official docs show scoped roles and sensitive permissions. API/export and platform authorization still require diligence. Use as connector/operating benchmark; do not grant chatter access to cards/bank, account settings, unsend, or media deletion by default. Buzz remains coordination. | Medium-high for permission vocabulary; medium for full capability |
| 4 | Supercreator ↗ | AI chatter, fan CRM, inbox/vault, message library, pricing copilot, team roles and human handoff. Affects chatters, managers, creators. | BUY/benchmark with hard gates | Vendor page claims AI + human workflow; public API, audit/export, and policy behavior need proof. Any AI auto-chat must be disabled for sensitive actions. It duplicates fan conversation authority if allowed to own the inbox, so prefer benchmark/connector assessment. | Medium |
| 5 | Chatwoot shared inbox ↗, user guide ↗ | Generic shared inbox, assignment, notes, labels, canned responses, team/SLA/automation. Affects chatters and shift leads if a lawful connector exists. | STUDY; integrate only after a channel spike | Hosted product is proprietary; OSS core/license split is in the GitHub ledger. Strong generic conversation patterns, weak OFM creator/PPV/custom semantics. Buzz is already fixed as internal coordination, so production adoption would duplicate an inbox unless a specific connector gap is proven. | High for generic pattern; low for OFM fit |
| 6 | Front assignment/handoff ↗, analytics ↗ | Mature team assignment, inbox transfer, customer history, and actor-level response attribution. Affects managers and agents. | STUDY/BUY only for a comparative pilot | Proprietary, email/support oriented; analytics correctly warns that actual repliers can differ from official assignee. Do not use it as fan or finance authority; Buzz overlap is internal coordination. | Medium-high |
| 7 | Intercom assignment/workflows ↗ | Routing by team/round-robin/workload, workflow attributes, SLA. Affects shift leads and agents. | STUDY pattern, do not add by default | Generic support product and another identity/inbox; no cited OFM/PPV/custom proof. Borrow routing vocabulary, not another system of record. | Medium-high |
| 8 | MaestroQA coaching ↗, calibrations ↗ | Rubric-based conversation review, calibration, coaching tasks and follow-ups. Affects QA leads, managers, chatters. | BUY/STUDY as QA specialist | Separate QA evidence from platform receipt and finance. Vendor review/coverage claims are untrusted until a synthetic trial. Buzz can carry a coaching handoff link but not QA truth. | Medium-high |
| 9 | Second Nature ↗ | Scenario roleplay, adaptive personas, scoring/feedback, certification and manager coaching. Affects trainers and chatters. | BUY/STUDY for training only | Training system should consume redacted/synthetic playbook cases; it must not receive credentials or live fan authority. Buzz can coordinate a training assignment. | Medium |
Product ranking conclusions
- Exact OFM products have the most relevant vocabulary and workflow surface, but their
public evidence is mostly vendor claims and their authority/export boundaries are not sufficiently transparent for an immediate buy decision.
- Generic inboxes solve assignment and support mechanics, not creator voice, PPV/custom
state, consent, or OFM attribution. They are pattern donors, not automatic replacements.
- QA and simulation are separate purchases/lanes. Combining a training score with a sales
score would create the wrong incentive and erase safety evidence.
Ranked verified GitHub candidates
These are implementation/pattern candidates, not adoption claims. Source links point to the exact repository or file used for the domain judgment.
| Rank | Repository / verified source | Useful state or pattern | Decision | License / boundary / duplication | Confidence |
|---|---|---|---|---|---|
| 1 | DeskcommCRM ↗; claim route ↗, transfer route ↗, draft route ↗, follow-up queue ↗ | Transactional claim/transfer, org scoping, audit/activity, bot silence, human-review draft, promise/follow-up queue, explicit escalation actions. | STUDY/adapt state machine | MIT per API metadata. Pattern only; do not copy a whole CRM or assume its auth/tenant model fits HALO. No Buzz duplication. | High for cited source behavior |
| 2 | WACRM ↗; handoff ↗, auto-reply guard ↗, webhook ↗, send path ↗ | Self-hostable shared inbox, contact/fan-like memory, pipelines, idempotent webhook, human assignment pause, handoff summary, send persistence, RLS/API/MCP boundary. | STUDY/adapt connector mechanics | MIT per API metadata. WhatsApp implementation is not an OF connector; optional auto-reply is disallowed for HALO sensitive sends. Avoid importing its channel authority wholesale. | High for cited source behavior |
| 3 | Zavu Inbox ↗ | Clean provider/app split: Zavu owns messages, contacts, senders, delivery, compliance and AI; local app owns users/workspace state and rebuildable mirror; HMAC/freshness and no privileged path. | STUDY/adapt authority boundary | Apache-2.0 per API metadata and root README. Its provider is not HALO; use the rebuildable-mirror contract and webhook discipline. Buzz should remain separate. | High |
| 4 | Senqo ↗; features ↗, manual send ↗, handoff notify ↗ | Explicit AI/human mode, manual takeover, verified teammate handoff notification, eval replay without send, knowledge/response templates and skills. | STUDY, synthetic eval donor | MIT per API metadata. WhatsApp credentials and transport are out of scope; fire-and-forget notification is not a proof of handoff acknowledgement. | High |
| 5 | trycompai/crm ↗; evidence ↗, leased tasks ↗, approval ↗ | Observed evidence vs suggestion, contradiction/ confidence bands, durable leased queue with retries/retirement, automated sensitive-write denial and user approval. | STUDY/adapt control plane | MIT per API metadata. It is agent-first CRM, not a platform connector or OFM domain. Keep approval decision separate from final receipt. | High |
| 6 | Chatwoot ↗ | Mature omnichannel support, contacts/history, teams, labels, automation, AI agent and shared inbox patterns. | STUDY; conditional integrate | NOASSERTION API value; actual root LICENSE is MIT Expat outside enterprise/, while enterprise/LICENSE applies separate production subscription/enterprise terms. Do not assume the enterprise tree is MIT. | High for license boundary |
| 7 | Twenty ↗ | Custom objects/views/workflows/agents and self-hosted CRM substrate. | STUDY sidecar only; legal review | NOASSERTION; root LICENSE inspected: mostly AGPLv3, some MIT SDK/UI/apps, enterprise headers, and a Twenty Application Exception for API/SDK/webhook-integrating applications. Not a blanket permission to modify/host it as a competing SaaS. | High for license caution |
| 8 | InfluenceX ↗ | Creator discovery/outreach pipeline with draft-review-approve-send, replies, contracts/content/payment state, ROI and export/webhook concepts. | STUDY adjacent creator pipeline | MIT per API metadata. Email/KOL outreach is not fan chat; use creator-side approval and state ideas only. | Medium-high |
| 9 | Open Mercato ↗ | MIT modular multi-tenant/custom entities, dynamic forms, org hierarchy/RBAC, event subscribers/workflows. | ARCHITECTURE SPIKE only | MIT per API metadata. General substrate could swallow scope and duplicate HALO; test one entity/event slice only if build pressure appears. | Medium-high |
| 10 | erxes ↗ | Broad experience OS: inbox, contacts, products, segments, automation, tickets/tasks and operations. | STUDY only; legal/product reject for direct adoption | NOASSERTION; actual LICENSE.md says core outside ee/ is AGPLv3 and ee/LICENSE adds an explicit no-competing-SaaS restriction. Do not make it the HALO authority. | High for license caution |
| 11 | Operately ↗ | Goals, projects, team spaces, check-ins, messages/docs and manager cadence patterns. | STUDY manager-cadence pattern | NOASSERTION; actual root LICENSE is Apache-2.0 while ee/LICENSE is paid/enterprise-restricted. Not chatter-specific; no inbox duplication. | High for license caution |
Operator and market signals
The following are validated vocabulary and workflow signals, not prevalence statistics:
| Signal | Why it matters to the domain | Evidence quality |
|---|---|---|
| Creator-specific voice training and style guide | Playbook version must be tied to creator, examples, prohibited topics, offer language and retraining | Repeated across OnlyFans Course SOP library ↗, Bunny Academy ↗, and vendor/operator guides; secondary/vendor |
| Synthetic/dummy fans, trial shift, nesting and shadowing | Safe onboarding needs practice without live fan or platform authority | Operator/training vocabulary; direct OFM interviews still needed |
| Shift handoff and acknowledgement | “Last message / fan status / pending ask / purchase context / next action” must survive ownership change | CRMChat handoff fields ↗, CreatorHub handover ↗, OnlyFans Course sales SOP ↗ |
| Fan segmentation and retention | Queue priority and next action need more than unread count: VIP/spend/recency/intent/retention state | Operator vocabulary plus Infloww fan signals ↗; product/vendor evidence |
| Weekly QA/calibration and retraining | Sales outcome alone is an unsafe score; rubric, calibration, coaching and retraining are first-class work | MaestroQA calibrations ↗, OnlyFans Course master guide ↗; secondary/vendor |
| Playbook vs agency SOP | A creator-specific contract must override generic agency scripts | Operator sources; requires interviews and consent model |
| 24/7 shift operations and fragmented tools | Handoffs and exception queues are the product wedge; Discord/Slack/Telegram/WhatsApp/Sheets/Drive are coordination fragments, not one authority | Operator research; secondary |
The general diagnose → practice → observe → audit → coach → refresh loop is useful as a control-loop shape, but the shared X/DSA material is not OFM evidence. Vendor metrics remain untrusted. The next evidence upgrade is direct interviews with owners, shift leads, chatters, creators, finance/compliance, and fulfillment operators.
Recommended HALO + Buzz composition
Ownership split
- Authorized platform adapter: owns platform account scope, message send/receive,
platform IDs, delivery/read/purchase receipts, rate/policy responses, connector cursor, retry/dead-letter, and provider terms. Use only documented/authorized management or API paths. Fansly’s official management-session and permission documentation is a useful boundary example: management sessions ↗, messaging ↗, and AI content/oversight ↗.
- HALO domain layer: owns platform-scoped identity references, conversation projection,
assignment leases, queue/SLA, creator playbook, fan memory facts, offer/custom/promise state, handoffs, QA, policy decisions, work attribution, export and operational audit.
- Finance ledger: owns settled money, reconciliation, payout/commission, refund and
chargeback truth. HALO stores typed references and discrepancy cases.
- Buzz: owns internal channels, threads, DMs, reactions, search, workflows, agent
participation and coordination. It receives opaque HALO work links and emits coordination events; it does not become the fan transcript or finance record.
- AI/training sidecar: drafts, classifies, summarizes, retrieves approved playbook
material, runs synthetic roleplay/evals, and proposes next actions. It cannot directly perform sensitive sends or mutate money/consent/account-control state.
Minimum event/link contract
Every cross-system link should carry:
event_id, event_type, source_system, source_record_id, creator_ref, platform_account_ref?, conversation_ref?, actor_ref?, occurred_at, observed_at, correlation_id, schema_version, sensitivity, policy_decision?
The platform event is immutable. HALO may append a projection and work event. Buzz may append a coordination event. Finance may append reconciliation. Consumers must not rewrite another system’s truth. A projection must be rebuildable from source receipts and a local cursor; a Buzz outage must not erase HALO queue state; a connector outage must freeze sends and expose an exception rather than silently inventing a receipt.
Recommended composition sequence
Phase A — HALO first: implement synthetic conversation projections, queue/lease, playbook, fan memory, offer/promise/custom, handoff/QA/attribution schemas and read-only operator views. Do not connect a live platform yet.
Phase B — Buzz one-way: link HALO work items to Buzz threads/channels for shift coordination and escalation. Keep HALO authoritative for work state and Buzz authoritative for coordination state. Start with typed links and read-only agent participation.
Phase C — Authorized connector: add one platform adapter only after the synthetic receipt/rebuild/permission suite passes. Inbound and receipt readback precede any outbound send. Human approval is required for sensitive sends.
Phase D — reconciliation and training: link external finance references, customs fulfillment evidence, QA calibration, and synthetic/trial-shift outcomes. Never infer settled money from a chat event.
Build / buy / integrate / study / reject ledger
| Item | Action | Rationale and boundary |
|---|---|---|
| HALO conversation projection + queue/lease/handoff state | BUILD | This is the missing domain-specific continuity layer; it must preserve platform receipt as a source-linked projection and make human work resumable. |
| Creator playbook, consent/policy scope, fan memory, promises, QA, attribution | BUILD | These are HALO-owned operating records, not generic inbox features. Build the smallest append-only state and read surfaces first. |
| Authorized platform adapter | INTEGRATE | Connector/provider owns platform receipt and policy; start with one documented, authorized path and read-only/readback proof. |
| Buzz | INTEGRATE (fixed) | Internal coordination sidecar only. Use opaque IDs/typed links; no fan DB, platform receipt, or finance authority. |
| Infloww / CreatorHero / OnlyMonster / Supercreator | BUY or benchmark | Exact OFM vocabulary and workflow are valuable; public evidence is insufficient to cede authority. Require export, audit, permissions, API, terms, outage, and human-gate proof. |
| Chatwoot / Front / Intercom | STUDY; conditional pilot | Assignment, notes, SLA, and handoff patterns are mature, but adding another inbox duplicates Buzz/HALO and lacks OFM semantics. |
| MaestroQA / Second Nature | BUY/STUDY specialist | QA and training are separate jobs. Use synthetic/redacted cases and keep their scores separate from revenue attribution. |
| DeskcommCRM / WACRM / Zavu / Senqo / Comp AI | STUDY/adapt | Reuse narrowly: transactional leases, idempotent webhooks, rebuildable mirrors, handoff, durable queues, evidence, approval. Do not copy whole products or their platform credentials. |
| Twenty / erxes / Open Mercato / Operately | STUDY or bounded spike | Useful substrate/manager patterns but risk broad CRM/ERP duplication, license constraints, and loss of HALO’s narrow authority boundary. |
| AirChatter, of-crm, Velvet, FlowOF, comparison dataset, RecruitingOS | REJECT as implementation dependencies | Archived/concept-only, unlicensed, data-only, exposed-secret risk, or private/commercial source. They can be negative evidence or interview leads, not code/product dependencies. |
| Credential/session harvesting, anti-detect, scraping to defeat controls, unauthorized impersonation, platform-policy bypass | REJECT categorically | Outside the product’s authority and safety boundary; never a shortcut to connector coverage. |
| Unreviewed autonomous sensitive send or autonomous account-control mutation | REJECT categorically | AI may propose; human approval, policy scope, and platform receipt are required. |
| Generic “replace HALO with a CRM/ERP” program | REJECT for this phase | It erases the domain-specific state and creates duplicate authority before the missingness map is proven. |
Phased synthetic proof plan
All phases below use synthetic creators, synthetic fans, dummy platform accounts, fake offers, fake customs, and seeded redacted playbooks. No credentials, live fan, live platform send, or real finance mutation is required.
| Phase | Fixture / exercise | Required proof artifact | Pass gate |
|---|---|---|---|
| 0. Contract and permissions | Two creators, three chatters, one lead, finance reviewer, QA reviewer, two synthetic platforms, 20 fans, role matrix and revoked permissions | Event schema, entity map, permission matrix, threat-model checklist | Every role can see/change only its allowed truth; revoked creator/agent cannot approve or send |
| 1. Receipt projection | Duplicate, out-of-order, retried, edited, read, failed, and unknown-message events | Append-only receipt log, cursor, dedupe report, projection rebuild diff | Replaying the same fixture creates no duplicate message/work/finance event; rebuild matches projection |
| 2. Queue and lease | Concurrent claim, shift expiry, heartbeat loss, reassignment, priority/VIP/SLA, lead takeover | Lease timeline, queue aging report, handoff record | Exactly one active lease; expiry creates visible exception; receiver acknowledgement closes handoff |
| 3. Playbook and fan memory | Creator A/B voice rules, prohibited topic, fan preference, uncertain identity, expired fact, conflicting fact | Draft provenance, memory source/confidence/expiry ledger, policy decision | No cross-creator memory leak; uncertain/expired facts are not stated as known; prohibited draft is blocked |
| 4. Offer, promise, custom | PPV-like offer, custom deposit, due date, revision, fulfillment upload, customer confirmation, refund/chargeback | Offer/promise/custom state timeline, attachment/entitlement evidence, finance reference | Promise cannot close without evidence; refund/chargeback remains a finance exception; chat claim is not settled money |
| 5. AI + human action | Classify/summarize/retrieve/draft, human edit, approve, reject, escalate, platform failure | AI input/source/decision log, approval record, final receipt or failure record | AI never sends sensitive action without approval; failed receipt is not reported as sent; policy veto is visible |
| 6. QA and training | Synthetic shift replay, blind rubric grading, two graders, calibration disagreement, coaching and retraining | Rubric version, grader variance, calibration decision, coaching task, retraining result | QA score is reproducible and separate from revenue; unsafe high-revenue behavior fails |
| 7. Buzz outage and coordination | Create HALO work item, link to Buzz, duplicate/out-of-order Buzz event, Buzz unavailable, acknowledgement and escalation | Cross-system correlation report and outage recovery diff | HALO work state survives Buzz outage; Buzz cannot mutate platform/finance truth; duplicate links are idempotent |
| 8. Connector outage / offboarding | Provider timeout, revoked scope, platform suspension, staff removal, creator export/deletion request | Dead-letter/retry report, freeze-send decision, export package, revocation audit | Sensitive sends freeze; no ghost receipt; export is intelligible and source-linked; access is revoked |
| 9. Supervised pilot | One platform-authorized test account, read-only/readback first, named humans, explicit consent/terms, limited real operations only after gates | Signed pilot checklist, incident log, daily reconciliation, rollback plan | Zero unexplained receipt/attribution discrepancies; any policy/authority violation stops the pilot |
Proof plan ranking
The order matters: receipt/idempotency → lease/handoff → playbook/memory → offer/promise → human approval → QA → Buzz outage → connector/offboarding → supervised pilot. A polished inbox before the first four proofs would optimize the visible surface while leaving the real operational risk unresolved.
GitHub verification and license ledger
All rows below were verified through gh api repos/OWNER/NAME in this session. Stars and timestamps are a point-in-time snapshot, not adoption evidence. NOASSERTION rows include the actual license-source inspection and therefore must not be summarized as “unlicensed” when a source exists.
| Repository | HTML URL | Stars | SPDX | pushed_at | Archived | Default branch | License-source receipt / judgment |
|---|---|---|---|---|---|---|---|
| block/buzz | https://github.com/block/buzz | 31,339 | Apache-2.0 | 2026-08-29T07:23:13Z | false | main | Root Apache-2.0 metadata. Fixed internal sidecar anchor, not a competing chatter product. |
| melgarafael/DeskcommCRM | https://github.com/melgarafael/DeskcommCRM | 726 | MIT | 2026-08-29T01:11:16Z | false | main | MIT SPDX from API; source routes cited above inspected for claim/transfer/draft/follow-up behavior. |
| ArnasDon/wacrm | https://github.com/ArnasDon/wacrm | 2,143 | MIT | 2026-08-27T08:49:39Z | false | main | MIT SPDX from API; README and webhook/send/handoff source inspected. |
| zavudev/zavu-inbox | https://github.com/zavudev/zavu-inbox | 0 | Apache-2.0 | 2026-08-20T16:18:22Z | false | main | Apache-2.0 SPDX and root README boundary inspected. |
| devennn/senqo | https://github.com/devennn/senqo | 9 | MIT | 2026-08-14T05:19:08Z | false | main | MIT SPDX from API; FEATURES.md and manual/handoff source inspected. |
| trycompai/crm | https://github.com/trycompai/crm | 9,071 | MIT | 2026-08-21T14:25:00Z | false | release | MIT SPDX from API; evidence/tasks/approval source inspected. |
| chatwoot/chatwoot | https://github.com/chatwoot/chatwoot | 36,288 | NOASSERTION | 2026-08-29T07:34:40Z | false | develop | Actual root LICENSE ↗ says code outside enterprise/ is MIT Expat; actual enterprise/LICENSE ↗ applies separate production subscription/enterprise terms. |
| twentyhq/twenty | https://github.com/twentyhq/twenty | 55,819 | NOASSERTION | 2026-08-29T08:23:04Z | false | main | Actual root LICENSE ↗ inspected: mostly AGPLv3, enterprise-marked files, some MIT SDK/UI/apps, and an Application Exception for API/SDK/webhook-integrating applications. Legal review required; not blanket MIT. |
| erxes/erxes | https://github.com/erxes/erxes | 4,074 | NOASSERTION | 2026-08-29T04:08:17Z | false | main | Actual LICENSE.md ↗ and ee/LICENSE ↗ inspected: AGPLv3 core plus EE terms including a no-competing-SaaS restriction. |
| open-mercato/open-mercato | https://github.com/open-mercato/open-mercato | 1,690 | MIT | 2026-08-28T23:25:44Z | false | main | MIT SPDX from API; README architecture claims used as pattern evidence only. |
| oratis/influencex | https://github.com/oratis/influencex | 4 | MIT | 2026-08-09T15:23:13Z | false | main | MIT SPDX from API; README/source architecture used for adjacent creator-outreach patterns only. |
| operately/operately | https://github.com/operately/operately | 545 | NOASSERTION | 2026-08-29T01:31:42Z | false | main | Actual root LICENSE ↗ is Apache-2.0; actual ee/LICENSE ↗ is paid/enterprise-restricted. |
Verified negative/reject ledger
| Repository | HTML URL | Stars | SPDX | pushed_at | Archived | Default branch | Verified rejection |
|---|---|---|---|---|---|---|---|
| 0xDevDav/AirChatter | https://github.com/0xDevDav/AirChatter | 1 | MIT | 2026-02-08T18:42:42Z | true | master | Archived Chrome extension for Chatterly, not a direct OFM system; assistant concept requires review/personalization. MIT does not overcome irrelevance/staleness. |
| keydbeats1/of-crm | https://github.com/keydbeats1/of-crm | 0 | NOASSERTION | 2025-08-10T22:25:51Z | false | main | README describes a role/shift/sales concept, but the tree had no license-like source. No reuse permission; reject as dependency. |
| EddyRoig-1/velvet-desktop | https://github.com/EddyRoig-1/velvet-desktop | 0 | NOASSERTION | 2026-01-10T23:29:06Z | false | main | Tree had no license-like source and no usable README evidence. Reject. |
| ofmtools/onlyfans-crm-comparison | https://github.com/ofmtools/onlyfans-crm-comparison | 1 | NOASSERTION | 2026-08-05T16:40:54Z | false | main | Actual root LICENSE ↗ is CC BY 4.0: dataset/comparison material, not an operating system; attribution/link/change notice required. Study as market evidence only. |
| vhvyvy/FlowOF | https://github.com/vhvyvy/FlowOF | 0 | NOASSERTION | 2026-08-01T12:56:23Z | false | main | Tree had no license-like source. Public README also exposed a credential, so it is a security negative finding; do not copy, run, publish, or repeat the secret. |
| kgorlov/RecruitingOS-Adult-Recruiting-CRM | https://github.com/kgorlov/RecruitingOS-Adult-Recruiting-CRM | 0 | NOASSERTION | 2026-06-04T21:10:06Z | false | master | Tree had no license-like source; README presents a private/commercial adult recruiting workflow. Treat as interview/market signal only, not code. |
Negative findings and open questions
Negative findings
- No maintained, openly licensed, exact OFM chatter/revenue operating system was proven in
the local corpus or screened candidates. Exact lexical search is noisy and frequently points toward acquisition, scraping, or automation-adjacent projects rather than a lawful work/receipt/finance system.
- HALO’s current /messages route is not durable conversation state. It posts to an n8n
webhook, has no inspected persistence, and has an empty-URL failure mode. It must not be presented as a fan inbox.
- Customs is a useful adjacent state machine, but it does not prove fan identity,
conversation continuity, promise acknowledgement, or attachment delivery.
- Payroll/sales fields do not prove platform-receipt attribution or finance reconciliation.
- Buzz can improve internal handoff and escalation, but it cannot safely become the
customer/platform authority.
- Public product metrics and operator anecdotes cannot establish adoption, uplift, or
prevalence. Direct OFM interviews are still required.
- A public repository containing a secret is not a reusable implementation lead; it is a
security warning and must not be operationalized.
Open questions that change the next design gate
- Which platform(s) are actually authorized for the first connector, and what documented
API/management-session, webhook, export, audit, and human-oversight terms apply?
- Does the owner want HALO to be a work/control plane beside an existing OFM product, or
eventually the source of operational records while the provider remains platform authority?
- What creator/model consent and revocation workflow is legally/operationally required
for delegated chat, training data, AI suggestions, and custom fulfillment?
- What exactly constitutes a sale, PPV purchase, custom deposit, refund, chargeback, and
commission in the finance ledger, and which source can reconcile each?
- What fan identity/retention policy applies across platforms, and when must an identity
remain deliberately unmerged?
- What queue SLA, shift lease, handoff acknowledgement, QA rubric, escalation policy, and
appeals process do real operators use today?
- Which current HALO creator/model routes are production-authoritative versus legacy,
demo, or merely intended? The inspected route/schema pass did not prove a complete model-facing operating app.
- What is the retention/export/deletion policy for fan data, staff work evidence, creator
playbooks, AI traces, and Buzz links?
Domain conclusion
The smallest credible next proof is a synthetic HALO work layer with four truth boundaries visible in every screen and event: platform receipt, HALO work/attribution, finance ledger, and Buzz coordination. If that proof cannot preserve an active fan promise across a shift, reconcile a custom outcome without inventing money, and block an unreviewed sensitive send, more integrations or a larger CRM will only increase the uncertainty.