The system
How the system works
Every action the system can run for your business, such as sending a text from your number or booking an appointment, is one row in a table called the Directory. Every request to run an action goes to one web address, called dispatch, which checks your permissions and runs it. Every request and every result is stored in one database table, the Ledger. Below are the ten parts of the system, each explained for you, for your team and for your developer.
Live, read from this site at 11:06 AM.
How a request is handled
Every request goes through the same six steps.
A request arrives at dispatch. Dispatch looks up the action in the Directory and checks the permissions for it. A computer runs the action. The request and its result are stored in the Ledger, and the Console app shows them. All of this runs inside your installation, which no other business shares.
Your installation · its own Directory, Ledger, dispatch address, phone number and assistant
Who sends the request
You and your staffAI agentsAI modelsHow it is sent
A textA linkA spreadsheet cellAn iPhone ShortcutA typed commandAn AI model’s tool callAn animation of the steps, running in your browser. The example requests and their limits are the examples used across this site; the business is made up.
01 · Every action the system can run
The Directory
A table with one row for each action the system can run.
The Directory is a table. Each row is one thing the system can do for your business: send a text from your number, book a slot in your calendar, create an ad, read a web page, take a screenshot of your Mac. If an action is not in the table, the system cannot do it.
Each row stores everything needed to run that action: where it runs, what inputs it needs, what it returns, and every way to call it. Changing a setting is typing in a cell. Files added to the system’s folder are added to the table automatically.
One row per action. Each row has one column per way of calling it, and each of those cells holds the complete request (method, address, headers and body) that runs it, followed by the full response from the last run.
Live, read from this site just now.
This system’s Directory1,335 actions
Each action can be run 26 ways.Live
Example actions, described in plain words. The real rows have technical names; choose “For your developer” to see some.
Real action names from this system’s Directory, read just now.
02 · One address that runs any action
Dispatch
One web address runs any action in the Directory.
Dispatch is a single web address. You, your staff, a spreadsheet, an iPhone Shortcut or an AI model send it the name of an action and its inputs. It finds the action in the Directory, checks your permissions, runs it on the right computer, sends back the result, and writes an entry in the Ledger.
Because every request goes through the same address, the same permissions apply whether a request comes from a text message, a link, a spreadsheet cell, a Shortcut, the command line or an AI model, and every request is recorded the same way. One action can be switched off in one place.
Every action is invoked as an HTTP POST of {"key": "<action name>", "args": {…}}. REST, MCP, spreadsheet formulas, text tags and webhooks are different ways of making that same request. Actions run on Cloudflare servers, a Mac, an iPhone, a browser, a virtual machine or a phone.
Live, read from this site just now.
Every way to send a request26 ways
For peopleFor AI modelsFor developers
03 · A record of every request and response
The Ledger
A table with one row for every request and response the system has handled.
The Ledger is a record of everything the system does: every message sent and received, every action run, every change, every AI model’s answer, and every request that was refused. Nothing in it is overwritten. To find out what happened, you read it.
Each entry stores the full request and the full response. Each entry also stores a fingerprint of the entry before it, so if anyone changes an entry later, the change shows up. Refused requests are recorded the same way as completed ones.
Every payload in or out is a Ledger row. Each action appends one row containing a SHA-256 hash of the previous row; nothing is updated in place. An action counts as working only when the declared surface itself ran and five things are stored for that run: why it ran, the exact request written before it ran, the confirmation, the exact response, and the record.
Live, read from this site just now.
This system’s LedgerLive
Live, read from this site at 11:06 AM.
Each entry includes a fingerprint of the entry before it, so an entry changed afterwards no longer matches.
Entries by kind, grouped the way the Console app groups them. Only counts are shown here, never the contents of an entry.
04 · The computers that do the work
Where actions run
Actions run on real computers and phones.
Depending on the action, the work happens on Cloudflare’s servers (always on), on your Mac, on your iPhone, in a web browser signed in to your accounts, or on Android phones rented in a data centre for apps that only run on a phone.
A website or app with no way to connect to it can be recorded once — the steps a person clicks — and saved as a new action in the Directory that can be run again at any time. The browser uses your own signed-in sessions, not fake accounts.
Executors: Cloudflare Workers and containers, a Mac bridge program, iPhone Shortcuts and App Intents, persistent browser profiles, cloud Android phones and Mac virtual machines. Recording steps and compiling them turns any website into a Directory row callable through dispatch.
Live, counted from this system’s Directory just now.
The computers that run actionsLive
Run actions while your own computers are off.
28 actionsFor actions that need the Mac’s screen, apps or files, through a small program on the Mac.
118 actionsThrough Apple Shortcuts: apps, the camera and the share menu.
23 actionsChrome or Safari, signed in to your own accounts.
41 actionsIn a data centre, for apps that only work on a phone.
4 actionsA website with no connection for programs, used once while the steps are recorded.
19 actionsActions counted from the names in this system’s Directory, just now.
05 · What each action is allowed to do
Permissions and limits
Every action has limits, and requests past them are refused.
You decide what the assistant may read (your calendar, your messages, your price list), what it may do (reply, book, invoice), and whom it may answer. A refund can be limited to $500, for one customer, for ten minutes. Ads are created paused. When someone asks, the assistant says it is an AI assistant.
Each action carries its limits: an amount, a time window, a channel, an account. A request outside them is refused, and the refusal is written to the Ledger like any other entry.
A scoped permission is issued for one task, with a limit and an expiry, and stops working when the task is done. With no permission, nothing runs; the refusal is a Ledger row.
Each action has its own limitsLedger entries
Refund $184 to the original card
- limit: ≤ $500 without you
- used once
Make 12 ad variants from the brief
- limit: 36 renders per run
- write: Meta, this account
- limit: paused until you say go
Let the cleaner in at 10
- limit: 20-minute window, weekdays
Refund everyone from last month
- limit: ≤ $500 per action, one customer per action
An illustration using this site’s examples; the business is made up. The refused request is stored in the Ledger like every other request.
06 · Claude, ChatGPT, Grok, Gemini
AI models
Any AI model that can use tools can run the same actions.
AI models such as Claude, ChatGPT, Grok and Gemini can all use the same Directory of actions, with the same permissions, and everything they do is written to the same Ledger. Changing which AI model you use does not mean rebuilding anything.
Every AI model sees the same actions and limits. What each one was asked, what it answered, and what it cost are entries in the Ledger, so models can be compared on real use.
The system is an MCP server (MCP, Model Context Protocol, is the standard way AI apps connect to outside tools): every Directory row is an MCP tool, a function call and a REST endpoint at the same time.
Live, read from this site just now.
AI models that can call tools— named in the Ledger
Requested by Claudethe same actions
Switching to another AI model changes only who sends the request. The actions, their limits and the Ledger stay the same.
07 · Programs that carry out tasks
AI agents
Separate AI programs that take a task and report back.
AI agents are separate programs, each running an AI model. You give one a task by typing it into a row of a shared spreadsheet; it does the work and writes its answer in the next column. A task is closed only when there is a real answer.
Each agent has its own Directory and its own Ledger, and each of its settings is a spreadsheet cell: type in the cell to change it. When a task fails, a new task is created that says what went wrong.
Each agent is its own Cloudflare Worker with its own storage and keys, connected through a shared workbook. Agents have changed and deployed their own code and added their own tests; work is accepted when its tests pass against the live system.
Live, read from this site just now.
An AI agent’s spreadsheet tab7 AI agents
An illustration. The tab names are this system’s real AI agents, read just now; the tasks are made-up examples.
08 · A separate copy for your business
Your installation
Each business gets its own separate copy of the system.
Your business gets its own copy of the system: its own Directory, its own Ledger, its own address, your phone number and your AI assistant. If you stop working with us, you keep the number, the logins, the assistant’s settings and the Ledger.
Nothing is shared with another business. Your permissions, your contacts and your records stay in your copy, and every change to it is an entry in your Ledger.
Each client gets a copy of the permissions and the architecture on a new tenant: its own Worker, its own storage, its own keys.
One installation per businessnothing shared
Your business
- Its own Directory
- Its own Ledger
- Its own dispatch address
- Its own phone number
- Its own AI assistant
shared
Another business
- Its own Directory
- Its own Ledger
- Its own dispatch address
- Its own phone number
- Its own AI assistant
If you leave, you keep
- Your phone number
- Your logins
- The assistant’s settings
- The Ledger
09 · The Console, for iPhone, iPad and Mac
The app
One app to see the Directory, the Ledger and the AI agents.
The Console app runs on iPhone, iPad and Mac. It shows the Directory, the Ledger and your AI agents, and lets you message the agents.
The Ledger opens in tabs: conversations, sessions, changes, events, tasks, traffic, AI models, actions and analysis. Every entry opens to its full content.
The app is a view of the same data: the Directory, the Ledger, the connected agents and the terminals. It reads the system; it does not keep a separate copy.
iPhone · iPad · MacLive
The Ledger
TurnsSessionsChangesEventsTasksTrafficModelsToolsAnalysisTurns
—entries for AI turns (one request to an AI and what it did)
Tapping an entry shows everything that was sent and received, in full.
Counts read from this site just now. The grey bars are placeholders; no entry’s contents are shown on this page.
10 · Articles with sources
The research library
Articles where every claim links to a source.
A library of research articles. Every claim in an article links to its source, or is marked as having no source. Every change to an article is kept.
Any claim can be disputed on the page where it appears. An AI model can read the same article as structured data.
Each article is JSON: its claims, their sources and its revisions. The library is stored like everything else in the system.
Live, read from this site just now.
The research libraryLive
Recent articles, read from the library just now.
Text me.
Tell me which part of your work you would hand to the system first. I’ll reply by Friday with what it would do in your business.