theseus/bundled-addons/aegis/README.md
Local Dev 84a37b26bf Aegis: README and MPL-2.0 license for its own repository
Aegis is getting a standalone forge repo (silentmode/aegis) split from
this folder. Inside Theseus it was covered by the root LICENSE; on its
own it needs the license and a description in the folder itself.
2026-10-04 00:24:01 +02:00

50 lines
2.2 KiB
Markdown

# Aegis
The multi-chain wallet built into [Theseus](https://code.silentmode.st/silentmode/theseus).
Aegis runs as a Theseus add-on: it lives in the browser's sidebar and gives
web pages a wallet without a separate extension.
- **Chains**: Bitcoin Cash (with CashTokens and BCMR metadata), Bitcoin,
DigiByte, Ethereum and EVM chains added through `wallet_addEthereumChain`,
Solana, Tron and Siacoin.
- **Keys**: every wallet is derived from the Theseus vault, so one master
password protects them all. Seeds and private keys can also be imported.
- **Dapps**: pages get `window.bitcoincash`, `window.wizardconnect`,
`window.ethereum` (EIP-1193), `window.solana` and `window.tronWeb` /
`window.tronLink`. Every connection and every signature goes through a
Theseus approval overlay that shows what is being signed, decoded from the
bytes that get signed.
- **WizardConnect**: pair BCH dapps on the same device without scanning a QR.
## Layout
```
addon.json add-on manifest (id, version, capabilities, update URL)
index.js the add-on: wallet runtimes, panel messages, dapp bridges
panel.html/.js the sidebar UI
wallet-inject.js page-side bridges (isolated world + injected main-world script)
lib/ chain adapters (chain-*.js), transaction and encoding helpers
lib/dgb/ vendored DigiByte address and PSBT modules
```
Aegis loads its heavier dependencies (`@noble/*`, `@scure/bip32`,
`bitcoinjs-lib`, `@wizardconnect/*`, `@bitauth/libauth`) from Theseus's
dependency tree through the add-on API, so this folder runs only inside
Theseus.
## Releases
Aegis has its own version and its own update channel, separate from Theseus
releases. Theseus checks the signed feed in `addon.json`'s `updateURL`,
verifies the Ed25519 signature and the SHA-256 of the package, and applies the
update on the next launch. Each Theseus release also bundles the current Aegis
for new installs.
This repository mirrors `TheseusNavigator/bundled-addons/aegis` from the
Theseus source tree, with its history.
## License
Mozilla Public License 2.0, see [LICENSE](LICENSE). `lib/jsqr.js` is jsQR,
Apache-2.0, see `lib/jsqr.LICENSE`. WizardConnect (LGPL-3.0-or-later) is not
included here; Aegis loads it from Theseus as a separate module.