hermes.x: standalone site + sidebar addon side:left + mark v2 (tapered trails)
New site-hermes-x/ — standalone .x site (own nav, own assets, own OG tags),
sibling to site-theseus-x and site-sirius-x. Internal nav stays on hermes.x:
Overview, Messenger (preview + UI mockup), Branding (brand kit). The only
cross-link is 'Get Theseus' pointing at theseus.x where appropriate.
Mark redesigned: tilted winged envelope with three tapered speed-trails on
the back-left (top longest, bottom shortest). Default colour sky #38BDF8 —
swappable via --sky in site-hermes-x/assets/shared.css. Alternate orange
palette documented but not applied by default. Mark propagated to:
- site-hermes-x/assets/mark.svg + mark-stroke.svg (16-20px variant)
- site/hermes/{index.html, branding/{index.html, mark.svg, mark-stroke.svg}}
- TheseusNavigator/bundled-addons/hermes/{addon.json, panel.html}
Theseus addon moves out of the top-right extensions dock and into the
left-strip sidebar: panels[].side = 'left' + registerSidebarPanel({side:'left'}).
Appears alongside Mail/Pithos/Telegram, excluded from rightPanels() so the
extensions dock no longer lists it. Verified via sidebarState() CDP query —
hermes:main is no longer in the right-panels list.
site/hermes/ (the nested silentmode.st/hermes page) also updated to the new
mark for consistency; both the sovereign hermes.x and the silentmode-nested
page now show the same winged envelope.
2026-10-21 02:19:58 +03:00
<!doctype html>
< html lang = "en" >
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< title > hermes.x — message anyone by their .bch name< / title >
< meta name = "description" content = "Hermes: end-to-end encrypted messaging where your Bitcoin Cash name is your identity. NIP-17 sealed DMs over Nostr. No email, no phone number, no company account." >
< link rel = "icon" href = "assets/favicon.svg" type = "image/svg+xml" >
< link rel = "mask-icon" href = "assets/favicon.svg" color = "#38BDF8" >
< meta property = "og:type" content = "website" >
< meta property = "og:site_name" content = "hermes.x" >
< meta property = "og:title" content = "hermes.x — message anyone by their .bch name" >
< meta property = "og:description" content = "End-to-end encrypted DMs over Nostr, addressed by your .bch name. No email, no phone, no server that can delete your account." >
< meta property = "og:url" content = "https://hermes.x/" >
< meta property = "og:image" content = "https://hermes.x/assets/mark.svg" >
< meta name = "twitter:card" content = "summary" >
< meta name = "twitter:title" content = "hermes.x — message anyone by their .bch name" >
< meta name = "twitter:description" content = "Sealed-sender DMs over Nostr, addressed by .bch name." >
< link rel = "stylesheet" href = "assets/shared.css" >
< / head >
< body >
< nav class = "topnav" >
< a class = "brand" href = "./" >
2026-10-21 03:00:17 +03:00
< svg viewBox = "0 0 64 64" aria-hidden = "true" > < g fill = "none" stroke = "currentColor" stroke-width = "5" stroke-linecap = "round" stroke-linejoin = "round" transform = "rotate(-20 32 32)" > < rect x = "18" y = "24" width = "34" height = "22" rx = "1.5" / > < path d = "M18 25 L35 39 L52 25" / > < path d = "M18 36 L-4 36" / > < / g > < / svg >
hermes.x: standalone site + sidebar addon side:left + mark v2 (tapered trails)
New site-hermes-x/ — standalone .x site (own nav, own assets, own OG tags),
sibling to site-theseus-x and site-sirius-x. Internal nav stays on hermes.x:
Overview, Messenger (preview + UI mockup), Branding (brand kit). The only
cross-link is 'Get Theseus' pointing at theseus.x where appropriate.
Mark redesigned: tilted winged envelope with three tapered speed-trails on
the back-left (top longest, bottom shortest). Default colour sky #38BDF8 —
swappable via --sky in site-hermes-x/assets/shared.css. Alternate orange
palette documented but not applied by default. Mark propagated to:
- site-hermes-x/assets/mark.svg + mark-stroke.svg (16-20px variant)
- site/hermes/{index.html, branding/{index.html, mark.svg, mark-stroke.svg}}
- TheseusNavigator/bundled-addons/hermes/{addon.json, panel.html}
Theseus addon moves out of the top-right extensions dock and into the
left-strip sidebar: panels[].side = 'left' + registerSidebarPanel({side:'left'}).
Appears alongside Mail/Pithos/Telegram, excluded from rightPanels() so the
extensions dock no longer lists it. Verified via sidebarState() CDP query —
hermes:main is no longer in the right-panels list.
site/hermes/ (the nested silentmode.st/hermes page) also updated to the new
mark for consistency; both the sovereign hermes.x and the silentmode-nested
page now show the same winged envelope.
2026-10-21 02:19:58 +03:00
hermes< span class = "x" > .x< / span >
< / a >
< a href = "./" class = "here" > Overview< / a >
< a href = "messenger/" > Messenger< / a >
< a href = "branding/" > Branding< / a >
< a href = "https://theseus.x/" class = "get" > Get Theseus< / a >
< / nav >
< header class = "hero" >
< div class = "mark" aria-hidden = "true" >
2026-10-21 03:00:17 +03:00
< svg viewBox = "0 0 64 64" > < g fill = "none" stroke = "currentColor" stroke-width = "3" stroke-linecap = "round" stroke-linejoin = "round" transform = "rotate(-20 32 32)" > < rect x = "18" y = "24" width = "34" height = "22" rx = "1.5" / > < path d = "M18 25 L35 39 L52 25" / > < path d = "M18 28 L-4 24" / > < path d = "M18 36 L-6 36" / > < path d = "M18 44 L0 46" / > < / g > < / svg >
hermes.x: standalone site + sidebar addon side:left + mark v2 (tapered trails)
New site-hermes-x/ — standalone .x site (own nav, own assets, own OG tags),
sibling to site-theseus-x and site-sirius-x. Internal nav stays on hermes.x:
Overview, Messenger (preview + UI mockup), Branding (brand kit). The only
cross-link is 'Get Theseus' pointing at theseus.x where appropriate.
Mark redesigned: tilted winged envelope with three tapered speed-trails on
the back-left (top longest, bottom shortest). Default colour sky #38BDF8 —
swappable via --sky in site-hermes-x/assets/shared.css. Alternate orange
palette documented but not applied by default. Mark propagated to:
- site-hermes-x/assets/mark.svg + mark-stroke.svg (16-20px variant)
- site/hermes/{index.html, branding/{index.html, mark.svg, mark-stroke.svg}}
- TheseusNavigator/bundled-addons/hermes/{addon.json, panel.html}
Theseus addon moves out of the top-right extensions dock and into the
left-strip sidebar: panels[].side = 'left' + registerSidebarPanel({side:'left'}).
Appears alongside Mail/Pithos/Telegram, excluded from rightPanels() so the
extensions dock no longer lists it. Verified via sidebarState() CDP query —
hermes:main is no longer in the right-panels list.
site/hermes/ (the nested silentmode.st/hermes page) also updated to the new
mark for consistency; both the sovereign hermes.x and the silentmode-nested
page now show the same winged envelope.
2026-10-21 02:19:58 +03:00
< / div >
< h1 > Message by name< span class = "x" > .< / span > < / h1 >
< p class = "tag" > End-to-end encrypted DMs over Nostr, addressed by your
< code class = "inline" > .bch< / code > name instead of a public-key string.
Your name owns your key. No email, no phone number, no company, no server
that can delete your account.< / p >
< div class = "cta" >
< a class = "btn primary" href = "messenger/" > Open Messenger< / a >
< a class = "btn ghost" href = "https://theseus.x/" > Get Theseus (desktop)< / a >
< / div >
< / header >
< div class = "wrap narrow" >
< section class = "plain" >
< h2 > What ships today< / h2 >
< p class = "lede" > Hermes is live inside the Theseus desktop browser. Web
messenger and Android follow.< / p >
< div class = "grid" >
< div class = "card" >
< h3 > Threaded chat < span class = "src ok" > live< / span > < / h3 >
< p > Contact list on the left (search + unread badges), selected
conversation on the right, inline reply. Enter to send.< / p >
< / div >
< div class = "card" >
< h3 > Send by name < span class = "src ok" > live< / span > < / h3 >
< p > Type < code class = "inline" > alice.bch< / code > . The client resolves the
name on-chain, wraps NIP-17 to the recipient's Nostr key, publishes
to their declared relays. Sealed-sender — the relay never sees who
sent what to whom.< / p >
< / div >
< div class = "card" >
< h3 > Address book < span class = "src ok" > live< / span > < / h3 >
< p > Local contact list — add names, nicknames, import vCards. Nothing
uploaded; the book is on your device.< / p >
< / div >
< div class = "card" >
< h3 > History on your device < span class = "src ok" > live< / span > < / h3 >
< p > Messages persist to disk per identity. Close and reopen the panel —
your threads are still there, unread marks included.< / p >
< / div >
< div class = "card" >
< h3 > Web Messenger < span class = "src next" > next< / span > < / h3 >
< p > < a href = "messenger/" > hermes.x/messenger< / a > — browser-side messenger
for anyone without the desktop app. Same crypto, same identity.< / p >
< / div >
< div class = "card" >
< h3 > Mobile (Ariadne) < span class = "src plan" > planned< / span > < / h3 >
< p > Inside the Ariadne Android app: same wallet seed, same Nostr identity,
zero extra onboarding.< / p >
< / div >
< / div >
< / section >
< section >
< h2 > The one idea that makes this different< / h2 >
< p class = "lede" > Every existing Nostr client has the same wart: identity is
< code class = "inline" > npub1q8s7f3k…< / code > gibberish. The human-name fix —
NIP-05 — resolves < code class = "inline" > alice@example.com< / code > through a
DNS domain and a web server. That is exactly the ICANN + server chain
Bitcoin Cash names exist to escape.< / p >
< div class = "note" >
< b > The Hermes pitch.< / b > < br >
< code class = "inline" > alice.bch< / code > publishes her Nostr pubkey as an
on-chain record. Her name certificate < i > is< / i > her verified,
seizure-resistant identity. Message anyone by their
< code class = "inline" > .bch< / code > name — no phone number, no email, no ICANN,
no company, no server that can delete your account.
< / div >
< / section >
< section >
< h2 > How it works< / h2 >
< ol class = "steps" >
< li > < b > Your name owns your key.< / b >
< span > Register any name on the chain, publish your Nostr pubkey as an
< code class = "inline" > np< / code > record. The key is derived from the
same wallet seed as the name, so one seed backs both.< / span > < / li >
< li > < b > Find people by name.< / b >
< span > Type < code class = "inline" > bob.bch< / code > . The client resolves
it against the chain, pulls < code class = "inline" > np< / code >
(Nostr pubkey) and < code class = "inline" > nr< / code > (preferred relays).
No directory server involved.< / span > < / li >
< li > < b > Send the message sealed.< / b >
< span > NIP-17 gift-wrapped DMs — the relay sees neither sender nor
content, only that a wrap addressed to some pubkey exists. Route over
Tor to also hide your IP.< / span > < / li >
< li > < b > The name shows, not the pubkey.< / b >
< span > Incoming messages reverse-resolve pubkey → name where possible,
so your chat list looks like a normal chat list — not a wall of hex.< / span > < / li >
< / ol >
< / section >
< section >
< h2 > Honest boundaries< / h2 >
< div class = "grid" >
< div class = "card" >
< h3 > Messaging, not email< / h3 >
< p > No Gmail interop — by design. A separate anonymous-mailbox product
covers "sign up on services without leaking a real address".< / p >
< / div >
< div class = "card" >
< h3 > Metadata resistance is good, not perfect< / h3 >
< p > NIP-17 hides sender and content from relays. Relays still see the
recipient pubkey, timing, and your connection IP unless you route
over Tor.< / p >
< / div >
< div class = "card" >
< h3 > Relays are Nostr's soft spot< / h3 >
< p > A message lives only while some relay keeps it. We run one relay +
write to a handful of public relays for reach and redundancy.< / p >
< / div >
< / div >
< / section >
< section class = "plain" style = "text-align:center" >
< h2 > Try it< / h2 >
< p class = "lede" style = "margin-left:auto;margin-right:auto" >
Open the web messenger right here, or install Theseus for the full
experience (persistent history, sidebar entry, keyboard shortcut).< / p >
< div class = "cta" >
< a class = "btn primary" href = "messenger/" > Open Messenger< / a >
< a class = "btn ghost" href = "https://theseus.x/" > Get Theseus< / a >
< a class = "btn ghost" href = "branding/" > Brand kit< / a >
< / div >
< / section >
< / div >
< footer >
< div > hermes.x — a < a href = "https://silentmode.st/" > Silent Mode< / a > project.< / div >
2026-10-21 02:24:13 +03:00
< div class = "fine" > Named for the messenger of the gods. Ermis in modern Greek.< / div >
hermes.x: standalone site + sidebar addon side:left + mark v2 (tapered trails)
New site-hermes-x/ — standalone .x site (own nav, own assets, own OG tags),
sibling to site-theseus-x and site-sirius-x. Internal nav stays on hermes.x:
Overview, Messenger (preview + UI mockup), Branding (brand kit). The only
cross-link is 'Get Theseus' pointing at theseus.x where appropriate.
Mark redesigned: tilted winged envelope with three tapered speed-trails on
the back-left (top longest, bottom shortest). Default colour sky #38BDF8 —
swappable via --sky in site-hermes-x/assets/shared.css. Alternate orange
palette documented but not applied by default. Mark propagated to:
- site-hermes-x/assets/mark.svg + mark-stroke.svg (16-20px variant)
- site/hermes/{index.html, branding/{index.html, mark.svg, mark-stroke.svg}}
- TheseusNavigator/bundled-addons/hermes/{addon.json, panel.html}
Theseus addon moves out of the top-right extensions dock and into the
left-strip sidebar: panels[].side = 'left' + registerSidebarPanel({side:'left'}).
Appears alongside Mail/Pithos/Telegram, excluded from rightPanels() so the
extensions dock no longer lists it. Verified via sidebarState() CDP query —
hermes:main is no longer in the right-panels list.
site/hermes/ (the nested silentmode.st/hermes page) also updated to the new
mark for consistency; both the sovereign hermes.x and the silentmode-nested
page now show the same winged envelope.
2026-10-21 02:19:58 +03:00
< / footer >
< / body >
< / html >