Email without campaigns or segments
Giant Context sends your marketing email with no campaigns and no segments. Every other email tool is built on both. You write, in one sentence, when ...
|
May 5, 2026Giant Context keeps a record of everything that happens with a company's contacts, the activity timeline every CRM has. I wrote this one to be read by an LLM rather than a person. Each entry is a plain sentence, and the sentences are there so the platform's own decision layer can read a contact's history and act on it.
The standard CRM activity log is a set of form fields. Each entry has a type, email or call or meeting, a subject, an outcome, a due date, an assignee. A person fills those fields in and scans the resulting table to see where a deal stands. The structure is there for human eyes, columns to sort and filter, a shape a salesperson learned to read. It is a good design for the reader it was built for.
A log for a person | A log for a model | |
|---|---|---|
Each entry is | Form fields, type, subject, outcome | One plain sentence |
Sorted and filtered by | Columns, a due date, an assignee | Read in order, oldest to newest |
The reader | A salesperson scanning a table | Mind, reading it in order |
Exact references live | Spread across the columns | In a structured data slot on the row |
I threw that out. The activity log became a plain timeline, one row per event, each row a sentence. The schema says what it is for:
The activities schema, in its own comment
Activities are a natural-language timeline: a description of what happened,which app/system wrote it, and optional structured data. No taxonomy(type/outcome), no scheduling (due_at). CRM consumers render the timelineby reading `description`, and agents read `data`.No type field, no outcome, no due date, none of the columns a person sorts by. What is left is the sentence, the source that wrote it, and a slot of structured data carrying the exact references behind it, the id of the send, the event, the link that was clicked. The model reads the sentence to reason. An agent that needs a precise value reads the data. Both sit in the same row. The events are written in English as they happen. When someone opens or clicks or unsubscribes an email, the email app writes a line onto the contact's timeline:
Three lines from a contact's timeline
Opened "Welcome" Clicked a link in "Welcome"Unsubscribed from "Welcome"The reader of this log is not a salesperson. It is Mind, the part of the platform that decides what a business's marketing needs. When it decides which email a contact should get, it reads that contact's timeline oldest to newest and works out what should happen next. Type codes and outcome enums give a model almost nothing to reason with. Sentences give it a history it can follow.
Email is the first reader, not the only one. Once a contact's history is legible to a model, anything that turns on what a person did and when becomes a question the same timeline can answer. Who to call next, what to offer, when to hold off. Most of that logic is still unwritten. The log had to come first.
Every system stores its data for whoever consumes it, and for thirty years that consumer was a person at a screen, so the data took the shape of forms and tables. A CRM built to be filled in by a salesperson makes a model work around the schema before it can reason at all. This one hands it a history it can act on, and Giant Context acts on its own data autonomously because the data was written for the thing doing the acting.
If something other than a person is going to read your data most often, that is who the schema is for.
Remote, Pacific time, full-time or contract. Get in touch.