diff --git a/extensions/index.html b/extensions/index.html new file mode 100644 index 00000000..9df31b58 --- /dev/null +++ b/extensions/index.html @@ -0,0 +1,158 @@ + + + + + +theseus.x โ€” Extensions + + + + + + + + + + + + + + +
+

Theseus Extensions

+

Signed over-the-air update endpoint for Theseus's bundled add-ons. + Every entry is Ed25519-signed by the Silent Mode operator, verified on the + device before install. No cert authority, no app-store gatekeeper.

+
+ +
+ +
+

Available extensions

+

Currently one bundled add-on ships with a signed update channel. More on the way.

+ +
+

๐Ÿ“ธ Screenshot current 0.2.3

+
Capture the current tab โ€” visible viewport, entire scrollable page, or a rectangle + you draw. Pick a mode from the toolbar dropdown; the capture opens in a full-tab editor + (crop, annotate, redact, save).
+
Ships bundled with Theseus 0.3.21+. Later versions auto-update through + this endpoint on the next boot's 30-second poll.
+
+
Signed update manifest โ€” SHA-256 verified before install
+ + +
sha256c051e639a19c60d26160933e29e13ca6e4ad006e47ff4d839b9e472b0eff0a18
+
+
+
+ +
+

How updates work

+

Same mechanism a Firefox XPI update uses, cut down to what a name-native browser needs.

+
+
    +
  1. Every 30 seconds after boot Theseus fetches updates.json for each installed add-on that declares an updateURL in its manifest.
  2. +
  3. Each entry carries an Ed25519 signature over silentmode.addon-update-v1|<id>|<version>|<sha256>. Theseus verifies against a small set of operator public keys baked into the build. Unsigned or badly-signed entries are dropped silently.
  4. +
  5. If a signed version beats what's installed, Theseus downloads the tarball, re-checks its sha256, and stages the new copy under <userData>/addons-updates-staged/<id>-<version>/.
  6. +
  7. On the next Theseus launch, promoteStagedUpdates moves the staged copy into addons/<id>/. Any prior copy is renamed to addons-backups/<id>-<oldver>-<timestamp>/ so hand-edits survive.
  8. +
  9. The Settings > Extensions surface (Theseus 0.3.26+) has a Check for updates button and a Pending updates box for on-demand control.
  10. +
+
+
+ +
+

Operator key

+

The Ed25519 public key baked into Theseus 0.3.19+. + Rotation is by adding a new pubkey and shipping a Theseus release that carries both, then a follow-up release removing the old โ€” during the overlap, entries can be signed by either.

+
732b1263a236b0030383a2376597cfa43c3624b3ca2912a46134f8f2a06e6012
+

Generated 2026-09-07. Held offline by the Silent Mode operator.

+
+ +
+

Roadmap

+

The endpoint is generic โ€” any bundled add-on can advertise an updateURL. + Concrete next-steps:

+ +
+ + + +
+ + +