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.
This commit is contained in:
Local Dev 2026-10-21 02:19:58 +03:00
parent 9450f5ec3a
commit 4a7667c06e
3 changed files with 16 additions and 9 deletions

View file

@ -4,11 +4,11 @@
"version": "0.1.0",
"description": "Message anyone by their .bch name. End-to-end encrypted DMs over Nostr (NIP-17), identity derived from your wallet seed.",
"author": "Silent Mode",
"icon": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNjQgNjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZDZmZjNkIiBzdHJva2Utd2lkdGg9IjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHJlY3QgeD0iMjAiIHk9IjIzIiB3aWR0aD0iMjQiIGhlaWdodD0iMTgiIHJ4PSIyIi8+PHBhdGggZD0iTTIwIDI1IEwzMiAzNSBMNDQgMjUiLz48cGF0aCBkPSJNMjAgMzAgTDcgMjciLz48cGF0aCBkPSJNMjAgMzQgTDggMzYiLz48cGF0aCBkPSJNNDQgMzAgTDU3IDI3Ii8+PHBhdGggZD0iTTQ0IDM0IEw1NiAzNiIvPjwvZz48L3N2Zz4K",
"icon": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNjQgNjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZDZmZjNkIiBzdHJva2Utd2lkdGg9IjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTIwIDQyIFEgMjAgMTIgMzIgMTIgUSA0NCAxMiA0NCA0MiIvPjxwYXRoIGQ9Ik0xNiA0MiBMNDggNDIiLz48cGF0aCBkPSJNNDQgMjIgTCA2MCAxNiIvPjxwYXRoIGQ9Ik0yMCAyMiBMIDQgMTYiLz48L2c+PC9zdmc+Cg==",
"main": "index.js",
"activation": "on-demand",
"panels": [
{ "id": "main", "title": "Hermes", "icon": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNjQgNjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZDZmZjNkIiBzdHJva2Utd2lkdGg9IjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHJlY3QgeD0iMjAiIHk9IjIzIiB3aWR0aD0iMjQiIGhlaWdodD0iMTgiIHJ4PSIyIi8+PHBhdGggZD0iTTIwIDI1IEwzMiAzNSBMNDQgMjUiLz48cGF0aCBkPSJNMjAgMzAgTDcgMjciLz48cGF0aCBkPSJNMjAgMzQgTDggMzYiLz48cGF0aCBkPSJNNDQgMzAgTDU3IDI3Ii8+PHBhdGggZD0iTTQ0IDM0IEw1NiAzNiIvPjwvZz48L3N2Zz4K", "page": "panel.html" }
{ "id": "main", "title": "Hermes", "icon": "data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgNjQgNjQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZDZmZjNkIiBzdHJva2Utd2lkdGg9IjQiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCI+PHBhdGggZD0iTTIwIDQyIFEgMjAgMTIgMzIgMTIgUSA0NCAxMiA0NCA0MiIvPjxwYXRoIGQ9Ik0xNiA0MiBMNDggNDIiLz48cGF0aCBkPSJNNDQgMjIgTCA2MCAxNiIvPjxwYXRoIGQ9Ik0yMCAyMiBMIDQgMTYiLz48L2c+PC9zdmc+Cg==", "page": "panel.html", "side": "left" }
],
"capabilities": ["sidebar-panel"]
}

View file

@ -20,6 +20,11 @@ module.exports = {
id: "main",
title: "Hermes",
page: "panel.html",
// Dock on the LEFT strip (alongside mail/pithos/telegram etc.), not
// the right-hand add-on dock. The host checks `side` on both the
// manifest's panels[] entry and the registerSidebarPanel call —
// declaring it in both keeps dormant vs active renders consistent.
side: "left",
});
api.onMessage("open-messages", () => {
// In-process emit: main.js listens on "hermes-open-request" and calls

View file

@ -37,13 +37,15 @@
<body>
<div class="mark" aria-hidden="true">
<svg viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
<g fill="none" stroke="currentColor" stroke-width="4" stroke-linecap="round" stroke-linejoin="round">
<rect x="20" y="23" width="24" height="18" rx="2"/>
<path d="M20 25 L32 35 L44 25"/>
<path d="M20 30 L7 27"/>
<path d="M20 34 L8 36"/>
<path d="M44 30 L57 27"/>
<path d="M44 34 L56 36"/>
<g fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round">
<path d="M20 42 Q 20 12 32 12 Q 44 12 44 42"/>
<path d="M16 42 L48 42"/>
<path d="M44 18 L 60 12"/>
<path d="M44 24 L 62 22"/>
<path d="M44 30 L 58 32"/>
<path d="M20 18 L 4 12"/>
<path d="M20 24 L 2 22"/>
<path d="M20 30 L 6 32"/>
</g>
</svg>
</div>