An assistant that runs in the background is only as trustworthy as the rules it runs under. Here are the rules, then the system that enforces them, then the tools.
Principles
It never sends anything to another person. Drafts stay drafts until I send them.
It never closes my decisions for me. It recommends; I mark done, decline, approve.
It never spends money. It can comparison-shop and pressure-test a purchase. The card stays with me.
It writes down what it learned. Every project has a book: brief, decisions, open questions, session log. The delta between what it drafts and what I send is how it learns my voice.
It brings me decisions, not updates. Recommendation first, evidence underneath, prep already done.
The system
Me (decides, sends, buys) Scheduled Claude run Notion, the system of record Outside service
The loop
Everything runs on one loop. Scheduled runs read the outside world and the Notion record, do the work an agent is allowed to do, and leave decisions in an attention queue. I read the queue from one page, answer in a line, and that answer starts the next run. Nothing leaves the system to another person unless I send it myself.
One loop: runs read outside services and the Notion record, write back into Notion, and surface decisions on one page. Replies from that page start the next run.
Project Books: how it remembers
Every project, from a renovation to a job search to a dinner planner, gets one Notion page with the same four parts. A run reads the book before it does anything and appends a session log line when it is done. That is the whole memory model: no hidden state, and I can read the book instead of the transcript.
Memory is a page, not a transcript: a run reads the book before it acts and appends to it when it finishes. Changes to the brief and answers to open questions are mine.
The learning loop: the delta between the draft and what I sent
The agent never sends mail. It writes a draft in my voice and leaves it in Gmail; I edit and send. On the next run it compares what it drafted to what actually went out, and folds the difference into a writing-style file that every future draft reads. The same shape runs everywhere: Job Radar notes revise the rubric, project books carry decisions forward, and the Command Center queue records which recommendations I took.
The correction loop: draft, human edit, diff, profile update. The assistant gets better at sounding like me without ever sending as me.
The per-project diagrams, for the Job Radar and Concert Radar, are on their project pages.
Tools
Claude (Claude Code and its scheduled tasks) does the reading, drafting, scoring and filing. Every run starts from a written brief and ends with a log line.
Notion is the system of record: the attention queue, one Project Book per project, and the radar tables. If it isn't in Notion, the agent doesn't know it.
GitHub Actions runs the deterministic parts on a schedule, like the daily job fetch, and keeps the data as plain JSON in a repo.
Gmail, Google Calendar and Drive are read through connectors. Drafts are written to Gmail; nothing is sent from there by an agent.
Spotify supplies taste for the concert radar; venue newsletters supply the presale windows.
A single HTML page is the Command Center: no framework, reads Notion live, and has been changed about a hundred times.