Person ↔ person
Hand off something of value
You're giving a $50 voucher to a friend — or a stranger who won your giveaway.
Today that means hoping the email address you typed belongs to the right person.
With handles on both sides, the transfer targets username.md/them:
the issuer's system looks up the recipient's handle, checks the signature on the
response, and delivers to the verified endpoint it finds there. The voucher goes to
the person who controls that handle — not to a typo, and not to a lookalike
who registered a similar-sounding email an hour ago.
# before releasing the voucher: resolve the recipient and verify the signature
$ curl -sI -H 'accept: application/json' https://username.md/v1/users/dana/profile \
| grep -iE 'content-digest|signature'
# signature verifies against the platform's published key → deliver
# signature fails → stop. No voucher for impostors.
Person → market
Sell something to a stranger
Selling a guitar, a couch, a domain? The buyer's real question is never about the
item — it's "is this seller real?" A handle answers with facts instead of vibes:
verified claims (a domain proven by DNS, a bound Bluesky account, imported Keybase
proofs) that anyone — including the buyer's AI agent — can check before money moves.
Your reputation stops being trapped inside one marketplace's star rating and becomes
something you carry with you, listing to listing, platform to platform.
# buyer (or buyer's agent) checks the seller's verified claims first
$ curl -s https://username.md/v1/users/chris/claims
# → { "claims": [ { "type": "dns", "domain": "chrisbergeron.com", "jws": "..." }, ... ] }
Agents → you
Agents come to you — not the other way around
The old web made you go to every service and fill out the same forms, over and over,
keeping dozens of profiles in sync by hand. The agentic web inverts that: software
acting for other people fetches your handle — as JSON, Markdown, or a signed
response — and gets your links, your keys, and your rules for how you want to be
contacted. You publish once, on a name you control, and every agent that needs to know
something about you comes and asks. Change a link once; every future lookup gets the
new answer.
# an agent reads you in the format it prefers
$ curl -s -H 'accept: text/markdown' https://username.md/v1/users/chris/profile
# and reads your standing instructions for agents
$ curl -s https://username.md/users/chris/llms.txt
Institution → you
Your records, delivered to you
Think about how your medical records move today: from your provider to a third-party
records vendor, through a portal you log into with yet another password, on terms set by
everyone except you. A verified handle changes the destination. Because your handle
publishes a signed, verifiable endpoint that provably belongs to you, an institution can
release your records directly to you — encrypted to your published key, delivered
to the endpoint you designated — with cryptographic proof that the recipient was really
you. The middleman stops being a requirement and becomes a choice.
# the institution resolves your handle to a public key + delivery endpoint
$ curl -s https://username.md/users/chris/.well-known/did.json
# → public keys + service endpoints, signed — encrypt to the key, deliver to the endpoint
Agent ↔ arena
A win record is worthless if nobody can prove who won it
Agent arenas are here — fighting leagues, trading tournaments, coding battles, task
marketplaces. Every one of them hands your agent a local account, a local ranking, a
local reputation. Enter three arenas and you have three strangers who happen to share a
name. A handle turns those scattered records into one provable track record: your agent
registers as username.md/your-agent, proves control of the
handle cryptographically, and its wins anchor to an identity no arena can reset — and no
copycat can squat. Arenas get something too: one request tells them an entrant is real,
so sybil entries and impostor personas fail at the door instead of corrupting the
bracket.
# the arena verifies an entrant before seeding the bracket
$ curl -sI -H 'accept: application/json' https://username.md/v1/users/your-agent/profile \
| grep -iE 'content-digest|signature'
# signature verifies → seed the entrant. fails → no bracket for impostors.