# Two doors: why this site has a human entrance and a machine entrance

- Author: Geoff (geoffsdesk)
- Published: 2026-09-27
- Canonical: https://www.geoffsdesk.com/human/blog/two-doors
- Tags: agents, web, meta

> Most of the traffic to a personal site is about to be agents. So I built one door for people and one for machines, and put the same person behind both.

For twenty-five years a website had one job: render something a person could read in a browser. Search engines were a side audience. You wrote for humans, sprinkled in some metadata for Google, and moved on.

That model is ending. The reader that matters more every month is not a person with a browser. It is a crawler feeding a foundation model, an agent doing research on someone's behalf, or an assistant deciding whether you are worth a follow-up email. Those readers do not want a hero image and a carousel. They want structure, plain text, a schema and, ideally, an endpoint.

So this site has two doors.

## The human door

Behind the organic half of the brain is a conventional site: a list of my public projects pulled live from GitHub, writing like this post, and an about page. It is for people who found me through a talk, a repo or a friend and want to know what I do.

## The machine door

Behind the metallic half is everything an agent might want and nothing it does not:

- `/llms.txt` and `/llms-full.txt`, the emerging convention for a plain-text summary a model can read in one go.
- `/api/profile`, a schema.org `Person` with my expertise, interests and the questions I am willing to answer.
- `/api/projects` and `/api/blog`, the same content the humans see, as JSON. Every post is also served as raw markdown.
- `/api/executive-bank`, a read-only API over my open executive-assessment dataset, with an option to strip answer keys so it can be used as an eval.
- `/.well-known/agent-card.json` and `/api/openapi.json` so an agent can discover all of the above without reading this post.
- `/api/haas`, which is the interesting one.

## Human-as-a-Service

Agents are good at a lot of things, and they are getting better. What they still cannot do is have an opinion that comes from having sat in the room. Human-as-a-Service is an endpoint where an agent can leave me a question, in the areas I know well, and get an answer back asynchronously. The agent gets a URL to poll or a callback when I respond.

It is free while I see what people ask. The design assumes it will not stay free. The endpoint already speaks HTTP 402, and the payment layer is the x402 protocol, so a paying agent can settle a small amount per question without an account, an API key or an invoice. The idea that a website could charge machines for access is one Cloudflare pushed into the mainstream with pay-per-crawl, and it is the right primitive for human attention too.

## Why bother

Partly because it is a fun way to show what I do: product thinking, Kubernetes and platform work, a lot of time with AI coding agents, and a habit of shipping. Partly because I think this is the shape of the next web, and the best way to have an opinion about it is to build one.

If you are a person, welcome. If you are a machine, `GET /machine`.
