Relay was originally conceived as a synthetic company.
That was always the mental model.
It had a board of directors. It had HR vetting agents. It had different roles, delegations and responsibilities. In some ways it could behave more flexibly than a real company because the board didn’t have to sit at the top grilling a CEO about what was happening underneath it. It could drop straight into a department, interrogate what was happening there, challenge decisions and then move somewhere else.
I’ve spent an extraordinary amount of time thinking about the organisational structure of this thing.
Then this morning something embarrassingly obvious hit me.
I’ve forgotten the fucking PA.
I am effectively the CEO of this synthetic company and I am still scheduling my own day.
Why?
Why am I chasing some company in Dublin because they still haven’t sent the DDR RAM that actually powers Relay? One of the sticks failed, so its main machine is currently running at half power.
Why am I chasing the people who currently have my lovely Felt IA FRD time trial bike?
Why am I moving appointments around, remembering who needs chasing, checking whether things have arrived and working out what needs doing next?
This is ridiculous.
I need a PA.
So I went to Relay’s chief architect and basically spewed all of this at him.
I said: I need a PA. What would we need to build? What machinery are we missing? How would you approach it?
And I got perhaps the most satisfying answer I could have received.
Essentially:
Nothing much.
We already have the machinery.
We already have the UIs.
We already have the agent infrastructure.
We already have Eyes and Hands.
We already have connectors.
We already have Relay interrogating work, priorities, context and state.
This is just another role.
Give an agent access to the appropriate personal workload, calendar, messages and external systems. Let it interrogate what needs doing, chase things, reshuffle things, surface decisions and use Eyes and Hands where necessary.
That’s it.
There isn’t some enormous missing architectural component.
It is largely an implementation of things we have already built.
Probably a couple of hours’ work.
And oddly, that gave me more confidence in Relay than almost anything else this week.
Because that is what you want from an architecture.
You want to be able to walk up to it one morning and say:
Shit. We need one of these.
And for the answer not to be:
Right. We need another subsystem.
It should be:
Fine. That’s another implementation of the model we already have.
The early versions of Relay were full of things I had invented myself.
Increasingly, the doctrine is the opposite.
Find the established pattern. Find the project. Find the GitHub repository. Use the standard protocol. Put the thinnest possible skin over it. Don’t invent another bloody abstraction unless Relay genuinely needs one.
So discovering that I had somehow constructed an autonomous software company with a board, HR, engineering departments and external workers but forgotten to hire myself a PA was quite funny.
Discovering that adding one barely disturbs the architecture was much more interesting.
That feels like a good sign.




