Plain Wallet GitHub ↗

読めるウォレット。

Chrome、Firefox、Safari、Android、iPhone、Mac に対応した、とてもミニマルな EVM ウォレットです。TypeScript で約 2,850 行と、一晩で読める小ささで、エージェントに読ませれば 1 分で済みます。

  • 実行時の依存は 3 つ
  • サーバーなし
  • アナリティクスなし
  • MIT
Plain Wallet のポップアップ。ネットワークとアカウントのセレクターの下にトークン残高の一覧があり、Tokens と Send のボタンが付いています。

署名する内容が、そのまま見えます。

署名のたびに、ウォレット自身のウィンドウでクリックによる確認が必要です。トランザクションを先にすべて組み立て、そのとおりのものに署名します。

インストール

信用せず、確かめてください。小さく保っているのは、そのためです。

Chrome 向け Brave、Edge でも

Chrome ウェブストアからインストールし、パズルのピースのメニューからピン留めすると、ツールバーに表示され続けます。アップデートは自動です。

Android 向け Android 11 以降

ウォレットを内蔵したブラウザです。サイトを入力すると Plain Wallet が使え、承認は拡張機能と同じです。よく使うサイトにスターを付けるとウォレットの上部に並び、ご希望なら指紋でロックを解除できます。

  • Android 版 Plain Wallet。ホーム画面の上に青いウォレットのバンドがあり、上部にお気に入りの dapp、その下にネットワーク、アカウント、トークン残高が並んでいます。
  • Base の Send フォーム。アセット、送金先アドレス、金額を入力し、Review に進みます。
  • 設定画面。アカウントのエクスポートと削除、Disconnect が付いた接続済みサイト、オンになった指紋によるロック解除。

GitHub のリリースにある APK は、次の証明書(SHA-256)で署名されています。1F:EC:2B:63:39:34:74:21:B0:C5:64:AB:19:EE:66:34:39:16:F7:FE:B0:81:62:C3:5F:C3:5C:9F:B5:9F:CB:83

Mac と Safari 向け macOS 14 以降 · App Store 審査中

1 つのアプリで 2 通りに使えます。ウォレット専用のウィンドウと、同じウォレットを共有する Safari 用の Plain Wallet 拡張機能です。インストール後に Safari → 設定 → 機能拡張 を開き、Plain Wallet をオンにして Web サイトでの使用を許可すると、サイトはこれをウォレットとして利用でき、承認は Chrome 拡張機能と同じです。Mac のスリープ時や画面ロック時には、ウォレットもロックされます。

Mac 上の Plain Wallet。ネットワークとアカウントのセレクターの下にトークン残高が並ぶウィンドウで、Tokens と Send のボタンが付いています。

iPhone 向け iOS 18 以降 · App Store 審査中

Android アプリと同じく、ウォレットを内蔵したブラウザです。サイトを入力すると Plain Wallet が使え、よく使うサイトにスターを付けられます。ご希望なら Face ID または Touch ID でロックを解除できます。

Firefox 向け LibreWolf でも · アドオン審査中

Plain Wallet は Firefox アドオンで審査待ちです。公開されるまでは、ご自身でビルドして about:debugging から一時的に読み込むか、LibreWolf や Firefox Developer Edition/Nightly で xpinstall.signatures.required をオフにし、zip を .xpi に名前変更して開いてください。

git clone https://github.com/backmeupplz/plainwallet
cd plainwallet
npm ci && npx wxt zip -b firefox --mv3   # → .output/plainwallet-<version>-firefox.zip

AI エージェント向け まずレビュー

Claude Code、Codex、Cursor など、シェルを実行できるエージェントに、これを貼り付けてください。

https://github.com/backmeupplz/plainwallet にある Plain Wallet ブラウザ拡張機能を私の代わりにインストールしてください。ただし、インストールやビルドの前に、必ずコードをレビューしてください。

1. リポジトリをクローンします。まだ npm install は実行しないでください。依存パッケージにはインストールスクリプトがあります。
2. ソースをすべて読みます。entrypoints/、lib/、wxt.config.ts、package.json、package-lock.json です。TypeScript で約 2,850 行です。
3. シードフレーズや秘密鍵が漏れる可能性のある箇所、ユーザーが選んだ RPC 以外へデータを送る箇所、保管庫の暗号化を弱めている箇所、明示的な承認なしに署名する箇所がないか調べます。依存パッケージにも、想定外のものがないか確認します。
4. 見つけたことを、ファイル名と行番号を添えて報告してください。少しでも怪しい点があれば、そこで止めて私に確認してください。
5. 問題がなければ、次を実行します。npm ci && npm test && npm run build
6. 読み込み方を教えてください。Chrome の場合: chrome://extensions → デベロッパー モード → パッケージ化されていない拡張機能を読み込む → .output/chrome-mv3. Firefox の場合は、npx wxt zip -b firefox --mv3 でビルドし、README の手順に従ってください。

人間向け

または、Chrome、Brave、Edge などの Chromium ブラウザ向け、あるいは Firefox 向けに、拡張機能をソースからビルドすることもできます。

  1. クローンしてビルドします:
    git clone https://github.com/backmeupplz/plainwallet
    cd plainwallet
    npm ci && npm run build
  2. chrome://extensions を開き、デベロッパー モードをオンにして、パッケージ化されていない拡張機能を読み込むをクリックし、.output/chrome-mv3 を選びます。
  3. Firefox / LibreWolf:npx wxt zip -b firefox --mv3 を実行し、上記の手順で読み込みます。

監査は受けていません。失っても困る額の資金は入れないでください。

サポート

ご質問は plainwallet@borodutch.com へメールで、不具合の報告や機能のご要望は GitHub の issue トラッカーへお寄せください。どちらも開発者が回答します。パスワード、シードフレーズ、秘密鍵は、そこでも他のどこでも、絶対に投稿しないでください。

パスワードを忘れた場合

パスワードは復元できません。ウォレットはお使いの端末上でパスワードによって暗号化されており、他の誰もコピーを持っていないためです。ロック解除画面からウォレットをリセットし、シードフレーズまたは秘密鍵をもう一度インポートして、新しいパスワードを設定してください。

シードフレーズをなくした場合

ウォレットのロックを解除できるうちに、設定でパスワードを入力してシードフレーズをエクスポートし、書き留めてください。シードフレーズとパスワードがなければ、私たちを含め、誰もウォレットを復元できません。