site/releases/index.html
Local Dev 3e87ab3f81 site audit: home, Ariadne page, Hermes downloads, releases/dl consolidation
Home: Prometheus and Hermes are live, not "designed"; new Ariadne and
Pithos cards; VPN, Bergamot and Mirrors linked; the page no longer claims
to run on nginx or to list "seven pieces".

/ariadne: new Silent Mode-headered page for the resolver family — Android
browser (APK, hash, signing key), standalone Windows resolver, how a lookup
resolves — linking out to the sovereign ariadne.x. "Ariadne" tab added to
every page's top nav; VPN and Bergamot navs normalised to the site-root
scheme while there.

Hermes: Download section (Windows installer + MSI, Android APK with hashes
from the manifest, web messenger), mobile and Windows marked live, hero
image path fixed; the brand-kit page's links were relative to a URL that
no longer has a trailing slash and the folder had never been deployed.

Releases/dl: the live dl manifest had been overwritten from a stale base
and was serving 0.3.106 to updaters while 0.3.110 was on the host; merged
(union) and reshipped. Manifest gains hermes-android/hermes-desktop; keep
policy aligned between the page (releases-page.mjs) and the VPS
(dl-vps-archive.sh, new, all products) so the page never links a build the
host no longer has. dl.silentmode.st/ now serves a generated index with
absolute links; dl-latest.sh tracked in-repo and extended with Hermes rows.
scripts/site-linkcheck.mjs resolves links the way the slash-less URLs do.
2026-10-24 03:35:20 +03:00

288 lines
21 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta property="og:type" content="website">
<meta property="og:site_name" content="Silent Mode">
<meta property="og:title" content="Silent Mode — releases &amp;amp; checksums">
<meta property="og:url" content="https://silentmode.st/releases">
<meta property="og:image" content="https://silentmode.st/brand/og.png">
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="630">
<meta name="twitter:card" content="summary_large_image">
<title>Silent Mode — releases &amp; checksums</title>
<style>
:root{--bg:#0b0e14;--panel:#141a24;--line:rgba(255,255,255,.09);--ink:#e7eaf1;--mut:#8b98a9;--dim:#5e6678;--acid:#d6ff3d}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(1100px 560px at 50% -12%,#16202e,var(--bg));
color:var(--ink);font:16px/1.65 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.wrap{max-width:820px;margin:0 auto;padding:3.5rem 1.2rem 4rem}
a{color:var(--acid)}
h1{font-size:1.8rem;margin:0 0 .3rem}
h1 .g{color:var(--acid)}
.lede{color:var(--mut);margin:.2rem 0 2rem}
.rel{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin-bottom:16px}
.rel h2{font-size:1.15rem;margin:0 0 .2rem}
.rel .meta{color:var(--dim);font-size:12.5px;margin-bottom:1rem}
.file{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
.file .n{font-size:14px;color:var(--ink)}
.file .n a{text-decoration:none}
.file code{display:block;font-family:ui-monospace,monospace;font-size:11.5px;color:#c9d4e3;
word-break:break-all;margin-top:4px}
.note{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--acid);
border-radius:10px;padding:14px 18px;color:var(--mut);font-size:13.5px;margin-top:1.6rem}
.note b{color:var(--ink)}
footer{color:var(--dim);font-size:12.5px;margin-top:2.5rem;text-align:center}
</style>
<link rel="stylesheet" href="shared.css?v=20260910">
<link rel="icon" type="image/svg+xml" href="favicon.svg">
</head>
<body>
<nav class="topnav">
<a class="brand" href="./"><svg class="logo" viewBox="0 0 32 20" aria-hidden="true"><rect class="l1" x="1.5" y="3.5" width="17" height="13" rx="6.5" ry="6.5" fill="none" stroke-width="2.6"/><rect class="l2" x="13.5" y="3.5" width="17" height="13" rx="6.5" ry="6.5" fill="none" stroke-width="2.6"/></svg>Silent <span class="g">Mode</span></a>
<a href="theseus">Theseus</a>
<a href="ariadne">Ariadne</a>
<a href="prometheus">Prometheus</a>
<a href="sirius">Sirius</a>
<a href="hephaestus">Hephaestus</a>
<a href="helios">Helios</a>
<a href="hermes">Hermes</a>
<a href="tools">Tools</a>
</nav>
<div class="wrap">
<h1>Silent <span class="g">Mode</span> — releases</h1>
<p class="lede">Canonical SHA-256 checksums for every published build. This page lives at the on-chain
name <code>releases.silentmode.bch</code>; the name pins where it is served from, so a tampered
mirror cannot change what you check against here.</p>
<div class="rel">
<h2>Theseus Navigator <span style="color:var(--acid)">0.3.110</span></h2>
<div class="meta">Windows 64-bit · unsigned · 2026-10-23 · Silent Mode home cards switch from a stacked icon-above-title-above-sub layout to a horizontal one: a left stack holds the icon and the title, the description sits on the right with left-aligned text and up to three lines. Card backgrounds drop to a 55% rgba with a 10 px backdrop blur so the wallpaper reads through. Home tagline updated: Names that live on the Bitcoin Cash chain becomes Names that live on decentralized blockchain. The address-bar tip now points at hello.bch by name.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/TheseusNavigator-0.3.110-portable.exe">TheseusNavigator-0.3.110-portable.exe</a> — portable</div>
<code>1e26fdeaa64b46d58dcb5912760a75c59fccaa527cf464928a21291a77604490</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/TheseusNavigator-Setup-0.3.110.exe">TheseusNavigator-Setup-0.3.110.exe</a> — installer</div>
<code>8d31c55ac41e69779d49cba2b06beb692816ed3f9ef2468a4b458196f088dff9</code>
</div>
</div>
<div class="rel">
<h2>Theseus Navigator <span style="color:var(--acid)">0.3.109</span></h2>
<div class="meta">Windows 64-bit · unsigned · 2026-10-23 · Right-click on a tab now shows a Save page as submenu with PDF and Image (PNG) items. PDF uses the browser printing pipeline (A4, prints backgrounds, respects CSS @page); PNG saves the visible viewport. Both open a save dialog with a filename derived from the tab title or hostname and register the file in the downloads popup. The Claude connector design doc is now hosted at theseus.x/dev/claude-connector/DESIGN-claude-connector.md so readers do not have to leave for the forge.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/TheseusNavigator-0.3.109-portable.exe">TheseusNavigator-0.3.109-portable.exe</a> — portable</div>
<code>b0d1c4acb4c010aec6ffcb9371fd29818000e967f39f07d621cc52c8d44ed3a6</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/TheseusNavigator-Setup-0.3.109.exe">TheseusNavigator-Setup-0.3.109.exe</a> — installer</div>
<code>540abd41ccc253974c97aad9c7309ad870cf1e315c090dcad142f71435fef914</code>
</div>
</div>
<div class="rel">
<h2>Theseus Navigator <span style="color:var(--acid)">0.3.108</span></h2>
<div class="meta">Windows 64-bit · unsigned · 2026-10-23 · Home page: hero mark sits in front of the Theseus Navigator wordmark inside a translucent rounded panel, so the identity stays readable on any wallpaper (the tag line and the hint got matching pill backings). Left-column slots widened from a fixed 3-col grid in a 280 px panel to an auto-fill grid in a 360-440 px panel, so about five columns of 72 px tiles fit instead of three.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/TheseusNavigator-0.3.108-portable.exe">TheseusNavigator-0.3.108-portable.exe</a> — portable</div>
<code>a6cd0f04a141aa26ef7dd38e71170e841800ae993e926910e76099cf430b2e0f</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/TheseusNavigator-Setup-0.3.108.exe">TheseusNavigator-Setup-0.3.108.exe</a> — installer</div>
<code>d84baf7a909a856dc664848573c26bcc049f067e9878513670718530b1874bc8</code>
</div>
</div>
<div class="rel">
<h2>Ariadne Resolver — Windows <span style="color:var(--acid)">0.1.13</span></h2>
<div class="meta">Windows 64-bit · unsigned · bundled Node runtime · 2026-10-01 · Every subsystem is now individually switchable and reports its own state. New endpoint http://127.0.0.1/api/status returns a full state report (daemon version + startup + policy + permitted TLDs + ports + upstream + gateway; index size + warm-start source; per-source enabled/lastAttempt/lastSuccess/lastError/counters for snapshotHttps + electrumWss + perQueryLookup + diskCache + localApi). C:\ProgramData\Ariadne\policy.json extended with a `sources.&lt;name&gt;.enabled` block (hot-reloaded every 5 s alongside the collision policy) -- flip any source off to isolate a path or measure without it. Turning localApi off returns 503 with a hint pointing at the config file. Turning diskCache off skips writing bns-name-snapshot.json AND skips reading it at warm-start. Turning snapshotHttps off skips the HTTPS refresh; electrumWss off skips the WSS refresh; perQueryLookup off skips the per-query /api/name/ fallback. Includes 0.1.12 (orphan-safe upgrade + /api/tlds + /api/name/:n + /api/registry). Upgrades in place.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/AriadneResolver-Setup-0.1.13.exe">AriadneResolver-Setup-0.1.13.exe</a> — installer</div>
<code>a16d10759efede4412f4fdb52d59424bf56bbb258bb002ab930f4a5a5aef8a41</code>
</div>
</div>
<div class="rel">
<h2>Ariadne for Android <span style="color:var(--acid)">0.52</span></h2>
<div class="meta">Android 5.0+ (API 21) · self-signed release key · 2026-10-24 · The updater now polls ariadne.x — manifest + APKs live in the s3://bns/ariadne/ bucket the on-chain record points to, routed through the public BNS gateway so a raw HTTPS client reaches them without the Ariadne resolver being up. Download page link also moved from silentmode.st to ariadne.x. Older clients keep polling the silentmode.st mirror; the manifest at both URLs stays in sync until the fleet has rolled over. Same signing key; installs over 0.51.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/ariadne-v0.52.apk">ariadne-v0.52.apk</a> — APK</div>
<code>da3655262114cd0505b69c9833ea129c2808dc3fbb8c0137abd60bad15959615</code>
</div>
<div class="file">
<div class="n">Signing certificate — SHA-256 (the same key signs every future release)</div>
<code>46ebbbe5dc73148d66410fd0337b1e6683472128c983e8e2578200b9e3ca548c</code>
</div>
</div>
<div class="rel">
<h2>Ariadne for Android <span style="color:var(--acid)">0.51</span></h2>
<div class="meta">Android 5.0+ (API 21) · self-signed release key · 2026-10-24 · Launcher switches to the pottery variant — same bust silhouette in warm terracotta on navy. New Settings → Downloads row opens the system Downloads app so saved files are easy to find. AI engine picker is now a styled list with each provider's real favicon + host, and the bottom-nav AI button carries the current engine's favicon too. Closing a tab from inside the switcher no longer flashes the homepage even for a frame (persistent navy host swaps the inner view atomically). Settings page sections are more clearly separated. Toggling the Tab switcher layout now shows a toast on save. Same signing key; installs over 0.50.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/ariadne-v0.51.apk">ariadne-v0.51.apk</a> — APK</div>
<code>8e5b091bf48ffe17047f91e517e9ca66e8ff4c4cdcb1a074f7b928654eae2b45</code>
</div>
<div class="file">
<div class="n">Signing certificate — SHA-256 (the same key signs every future release)</div>
<code>46ebbbe5dc73148d66410fd0337b1e6683472128c983e8e2578200b9e3ca548c</code>
</div>
</div>
<div class="rel">
<h2>Ariadne for Android <span style="color:var(--acid)">0.50</span></h2>
<div class="meta">Android 5.0+ (API 21) · self-signed release key · 2026-10-23 · New launcher icon — the laurel-crowned bust silhouette from the Ariadne.X brand kit, recoloured gold on navy. Replaces the figure-only mark; same signing key; installs over 0.49.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/ariadne-v0.50.apk">ariadne-v0.50.apk</a> — APK</div>
<code>4ca980c58a21101f2b3b54a864a49f71912d424d07870778da21690efb45e35b</code>
</div>
<div class="file">
<div class="n">Signing certificate — SHA-256 (the same key signs every future release)</div>
<code>46ebbbe5dc73148d66410fd0337b1e6683472128c983e8e2578200b9e3ca548c</code>
</div>
</div>
<div class="rel">
<h2>Pithos <span style="color:var(--acid)">0.3.26</span></h2>
<div class="meta">Windows 64-bit · unsigned · 2026-10-08 · In Theseus, Send on Telegram and Send on WhatsApp open Theseus's own Telegram and WhatsApp apps at their share screens; the share menu shows the real Telegram, WhatsApp and X icons. The sidebar's Full page button is gone (the panel's Maximize does the same).</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-0.3.26-portable.exe">Pithos-0.3.26-portable.exe</a> — portable</div>
<code>951d4e814f8f8a3e729b8dc63ae69b848dff106a1517c0ca12347985567e32b0</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-Setup-0.3.26.exe">Pithos-Setup-0.3.26.exe</a> — installer</div>
<code>e3daef6fedb72c63e893b7851108ed87a08c74ccdf6e1207bb218bda88f57e0a</code>
</div>
</div>
<div class="rel">
<h2>Pithos <span style="color:var(--acid)">0.3.26</span> <span style="color:var(--dim);font-size:.8em">Linux</span></h2>
<div class="meta">Linux 64-bit · unsigned · 2026-10-08 · In Theseus, Send on Telegram and Send on WhatsApp open Theseus's own Telegram and WhatsApp apps at their share screens; the share menu shows the real Telegram, WhatsApp and X icons. The sidebar's Full page button is gone (the panel's Maximize does the same).</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-0.3.26-x86_64.AppImage">Pithos-0.3.26-x86_64.AppImage</a> — AppImage</div>
<code>0562f5b82f8788ef44451babfb9d8799eb635ae56aece0072db18f851f40917f</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-0.3.26-amd64.deb">Pithos-0.3.26-amd64.deb</a> — Debian package</div>
<code>0aecfdccbdc30194b3d0918a7f157d82bffd37a56d88a2de9a0015df666e0334</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-0.3.26-linux-x64.tar.gz">Pithos-0.3.26-linux-x64.tar.gz</a> — tarball</div>
<code>2329527f53fa3726a9ec44a1859f235c7bb59953f9c15b71d1c5081fb5414954</code>
</div>
</div>
<div class="rel">
<h2>Pithos <span style="color:var(--acid)">0.3.25</span></h2>
<div class="meta">Windows 64-bit · unsigned · 2026-10-07 · Share opens a menu: copy the public link, open it, or send it on X, Telegram or WhatsApp. Shared links open on a page with a preview and a Download button. Pithos fills wide windows, a renamed user updates in every open view, and pithos.sia in Theseus asks for the vault PIN after a lock and reopens once it is unlocked.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-0.3.25-portable.exe">Pithos-0.3.25-portable.exe</a> — portable</div>
<code>81a498b0586263c7795643dc8cce96c96d8d9233714913d13b81ab14706f21eb</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-Setup-0.3.25.exe">Pithos-Setup-0.3.25.exe</a> — installer</div>
<code>958e962dc068a5032d1d9f18aa818b67160a93bb5e45b551fc5cf700357d4def</code>
</div>
</div>
<div class="rel">
<h2>Pithos <span style="color:var(--acid)">0.3.25</span> <span style="color:var(--dim);font-size:.8em">Linux</span></h2>
<div class="meta">Linux 64-bit · unsigned · 2026-10-08 · Share opens a menu: copy the public link, open it, or send it on X, Telegram or WhatsApp. Shared links open on a page with a preview and a Download button. Pithos fills wide windows and a renamed user updates in every open view.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-0.3.25-x86_64.AppImage">Pithos-0.3.25-x86_64.AppImage</a> — AppImage</div>
<code>1b0eabd1bb0a28435b05658cf3f5a2dcefd029b65c79dbec80e9e9e1ae135df7</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-0.3.25-amd64.deb">Pithos-0.3.25-amd64.deb</a> — Debian package</div>
<code>04e36e9451ab1addcc6a179dbf527fb2689e019beb7d7edb02fd0d85501c626b</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Pithos-0.3.25-linux-x64.tar.gz">Pithos-0.3.25-linux-x64.tar.gz</a> — tarball</div>
<code>1aea475630e8722c563e132ffa922190da08aec1ab09bedece0fbfbdfecfc307</code>
</div>
</div>
<div class="rel">
<h2>Hermes for Android <span style="color:var(--acid)">0.3.0</span></h2>
<div class="meta">Android 5.0+ (API 21) · signed · 2026-10-24 · In-app auto-update. Hermes now polls dl.silentmode.st/releases-manifest.json on launch and on resume, and shows an update banner at the top of the chat list when a newer version is live. Tap Update → downloads the APK via the pinned client, SHA-256-verifies against the manifest field, then launches Android's package installer. Android refuses to install an APK signed by a different key than the running app, so a tampered manifest can at worst waste bandwidth. Same signing key as 0.2.2; installs over it. Requires the one-time Install-unknown-apps grant on first update, which Android shims via Settings.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/hermes-v0.3.0.apk">hermes-v0.3.0.apk</a> — APK</div>
<code>77d16184ba2c26fb81b79d9e4c5f98f8bfb434690c1e6acd9b7fd5f16651a6cb</code>
</div>
<div class="file">
<div class="n">Signing certificate — SHA-256 (the same key signs every future release)</div>
<code>b1e4685a7476fcbb3b53d807e298dea2ef2c7375f240cf04847d3d712cab95b7</code>
</div>
</div>
<div class="rel">
<h2>Hermes for Android <span style="color:var(--acid)">0.2.2</span></h2>
<div class="meta">Android 5.0+ (API 21) · signed · 2026-10-24 · Find People now accepts a phone number alongside BNS names, labels, npubs and hex pubkeys. Type +15551234567 (or 0015551234567) and Hermes hashes it locally and asks the relays for the matching kind:30078 phone-claim event — the raw number never leaves the device. Shows the Hermes identity with a verified ✓ when the owner's phone-claim carries a valid Telegram attestation, same shape as the Address Book contact matches. The input also switches to a numeric phone keyboard the moment it looks like a phone number. Same signing key as 0.2.1; installs over it.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/hermes-v0.2.2.apk">hermes-v0.2.2.apk</a> — APK</div>
<code>b46da998caa57a6923bb4ab305c5ab1cff88fbf38f4028eb2cecceb77140f1a6</code>
</div>
<div class="file">
<div class="n">Signing certificate — SHA-256 (the same key signs every future release)</div>
<code>b1e4685a7476fcbb3b53d807e298dea2ef2c7375f240cf04847d3d712cab95b7</code>
</div>
</div>
<div class="rel">
<h2>Hermes for Android <span style="color:var(--acid)">0.2.1</span></h2>
<div class="meta">Android 5.0+ (API 21) · signed · 2026-10-24 · Fix: real-time inbox delivery. 0.2.0 held a persistent inbox REQ at sign-in, but mobile WebSockets drop constantly (wifi/cellular transitions, OS backgrounding, keep-alive timeouts) and the REQ wasn't replayed on reconnect — the relay forgot our filter and inbound kind:1059 wraps stopped arriving until the next 15-min WorkManager poll or next outgoing send kicked a catch-up. RelayConnection now remembers active subscriptions and replays them on every onOpen, so a recipient sees messages the moment they land on the relay. Also pins the initial `since` to max(lastSeenAt, now - 7d), bounding the reconnect replay. Updates DeliveryPrefs.lastSeenAt on each decrypted wrap so background delivery stays in step.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/hermes-v0.2.1.apk">hermes-v0.2.1.apk</a> — APK</div>
<code>014438c3c1a92dd0108d994ae411ed27bf2de58c735614498e86d11462066d61</code>
</div>
<div class="file">
<div class="n">Signing certificate — SHA-256 (the same key signs every future release)</div>
<code>b1e4685a7476fcbb3b53d807e298dea2ef2c7375f240cf04847d3d712cab95b7</code>
</div>
</div>
<div class="rel">
<h2>Hermes for Windows <span style="color:var(--acid)">0.1.0</span></h2>
<div class="meta">Windows 64-bit · unsigned · 2026-10-23 · First desktop build: the Hermes messenger as a stand-alone Windows app (Tauri), byte-equal with the Theseus panel and the hermes.x web messenger. Sign in with a recovery phrase or create a new identity; same inbox on every surface.</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Hermes-0.1.0-setup.exe">Hermes-0.1.0-setup.exe</a></div>
<code>0adc742d54daaee2b62e7fdcbff2f0203bd50f995444487ff93233ccc6328552</code>
</div>
<div class="file">
<div class="n"><a href="https://dl.silentmode.st/Hermes-0.1.0.msi">Hermes-0.1.0.msi</a></div>
<code>fa81948bba8c3d6e9306a5aa218424fd2a4bc692891f3d2543c2782207f86b3f</code>
</div>
</div>
<p style="color:var(--dim);font-size:13px;margin:0 0 1.2rem">Recent releases only. Every older build is archived on Sia under
<code style="display:inline">dl-archive/</code> and its checksum stays in this repository's history.</p>
<div class="note"><b>How to verify.</b> After downloading, compute the file's SHA-256 and compare it to
the value above — on Windows: <code style="display:inline">certutil -hashfile &lt;file&gt; SHA256</code>;
on Android, hash the downloaded <code style="display:inline">.apk</code> on a computer before you move
it to the phone, or use any file-hashing app. Nothing here is signed by an authority your device
already trusts — <b>by design</b> — so it will warn about an unrecognized app; the checksum is the
real check. The machine-readable manifest is at
<a href="https://dl.silentmode.st/releases-manifest.json">releases-manifest.json</a>.</div>
<footer>Silent Mode — a Deviant project. Alpha software on a test network.</footer>
</div>
</body>
</html>