重い変換は Web Worker で
ハッシュ、正規評価、差分、エンコード、ストリーミングは、専用の Web Worker 内で実行されます。これらは scripts/build-tool-workers.mjs によって TypeScript からコンパイルされ、同源スクリプトとして配信されるため、数 MB の入力が回ってもタブは応答性を保ちます。
04 / DATA BOUNDARY
利用可能な103個のToolarsツールには、入力の処理場所を示す型付きの実行時マニフェストがあります。このページには、マニフェスト、外部接続、配信されるセキュリティヘッダー、内部検査方法の説明を掲載しています。
数字はビルド時に実行時レジストリから導出されます——手書きの数字はありません。
これらのカウントは、サイトのビルド時にカタログと実行時プライバシーコントラクトから計算されます。両者が食い違った場合、該当ツールは黙って隠すのではなくここに列挙されます。
processingLocation browser、inputLeavesDevice false、retention none とマニフェストに書かれている場合のみツールはローカルとしてカウントされます——ラベルはコピーではなくコントラクトから生成されます。
| カテゴリ | ローカル | クラウド | ハイブリッド |
|---|---|---|---|
| ライティング | 7 | 0 | 0 |
| 画像スタジオ | 16 | 0 | 0 |
| デザイン | 17 | 0 | 0 |
| 開発者ツール | 31 | 0 | 0 |
| ソーシャルモックアップ | 11 | 0 | 0 |
| PDFツール | 10 | 0 | 0 |
| ファイルとユーティリティ | 11 | 0 | 0 |
意図的に短く保った一覧です。ツールのワークスペースはサードパーティスクリプトを一切読み込まず、重い実行時は同源の Web Worker、WASM、静的アセットとして提供されます。以下はサイトのシェル自体が到達し得るすべてです。
| サービス / ホスト | 種類 | 用途 | データの境界 |
|---|---|---|---|
track.toolars.com | アナリティクス | PostHog の管理型ファーストパーティ逆プロキシを通じて、本番アナリティクスイベントを受け取ります(Cloudflare 経由で配信)。 | Cookie を使わない許可リストイベントのみ:净化されたページビュー、16 の名前付き製品イベント、Web Vitals、例外。ツールの入力、出力、ファイル名、検索クエリは決して含まれません。SDK は本番オリジンでのみ遅延読み込みされます。 |
us.posthog.com | アナリティクス | 管理されている PostHog アプリケーションを識別し、UI リンクと設定に使用します。 | イベントはこのホストへは流れません。収集は上のプロキシ行のホストへ向かいます。 |
project ref .supabase.co (NEXT_PUBLIC_SUPABASE_URL) | アカウントバックエンド | 認証、お気に入り同期、ニュースレター購読、フィードバックの保存。 | 明示的な操作(ログイン、購読、フォーム送信)でのみ到達します。ワークスペースはこれを呼び出さず、ブラウザバンドルには publishable key しか存在しません。 |
avatars.githubusercontent.com | プロフィール画像 | GitHub でサインインしたアカウントのプロフィール画像。 | 厳格な画像オプティマイザーの許可リスト経由で、サインイン済みのヘッダーメニューにのみ表示されます。 |
lh3.googleusercontent.com | プロフィール画像 | Google でサインインしたアカウントのプロフィール画像。 | 同じ厳格な画像許可リスト。サインインするまで何も読み込まれません。 |
buymeacoffee.com | 外部リンク | フッターの任意のクリエイター支援リンク。 | 埋め込みもスクリプトもない通常の外部リンクで、ツールの利用状況に関するデータは受け取りません。 |
chromewebstore.google.com | 外部リンク | 拡張機能のインストールとストア一覧へのリンク。 | 外部遷移のみで新しいタブで開きます。ストアに見えるのは通常の訪問だけで、ワークスペースの内容は決して見えません。 |
fonts.googleapis.com / fonts.gstatic.com | ビルド時取得 | next/font による Barlow フォントファイルのビルド時ダウンロード。 | 実行時のフォントはサイト自身の静的パスから配信されます。Toolars の利用中、ブラウザーは Google Fonts にリクエストを送信しません。 |
vercel.app (hosting platform) | インフラ | Toolars のすべての応答を配信するホスティングプラットフォーム。 | どのホストも見る標準的なリクエストメタデータ(IP、ヘッダー)のみ。ツールの入出力は経由しません。 |
cloudflare.com (DNS + proxy layer) | インフラ | toolars.com の DNS と、アナリティクスホストの背後にあるプロキシ層。 | ホスティング層と同じリクエストメタデータを処理します。ワークスペースの内容は流れません。 |
この一覧は 2026-09-19 にデプロイ済みソースから監査しました:外部オリジンの全木検索、next.config.ts の画像許可リスト、ADR 007 のアナリティクスコントラクトです。
これらはすべての Toolars ページに付く応答ヘッダーで、設定を生成するのと同じ型付き宣言から読まれます——この表は配信内容からずれることがありません。
| ヘッダー | 値 | 意味 |
|---|---|---|
Strict-Transport-Security | max-age=63072000; includeSubDomains | ブラウザーは今後 2 年間、toolars.com には HTTPS のみで接続し、サブドメインを含みます。 |
X-Content-Type-Options | nosniff | ブラウザーはコンテンツタイプの推測を拒否し、一般的な踏み台型ダウンロードの手口を防ぎます。 |
Referrer-Policy | strict-origin-when-cross-origin | 完全なリファラーは同一オリジンにのみ送信され、クロスオリジンリクエストが露出するのは最低限のホスト名までです。 |
Toolars は現時点でサイト全体の Content-Security-Policy ヘッダーを送信しておらず、このページもそのように装いません。誤ったオリジンを遮断する CSP はアカウント同期や承認済みアナリティクスプロキシを壊すため、その制御は ADR 010 に従い、実際のルートとブラウザー動作に対して先に設計されています。上記のヘッダーは今日配信されており、ここに列挙されたネットワーク境界はすべてコードで強制されテストで覆われています。 docs/adr/010-local-processing-evidence.md
ブラウザー以外の道具は必要ありません。無害な合成ファイルやサンプルテキストを使ってください。実際の機密データは使わず、それを含むスクリーンショットや HAR を公開しないでください。
同じ手順をこちらで実行済みです。下の各カードは scripts/capture-privacy-proof.mjs が本番ビルドに対し実際のヘッドレスブラウザを操作して生成します。測定されたリクエスト数は型付きデータとしてコミットされ、アップロード・クロスオリジンリクエスト・カナリア漏洩のいずれかが発生するとスクリプトは失敗します。
カナリアマーカーを埋めたテストファイルで PNG → JPEG 変換とダウンロードを完了:測定ウィンドウ内で 0 件のリクエスト、0 件のアップロード、0 件のカナリア漏洩。
HEIC → JPEG の変換とダウンロード:初回利用時に約 3.3 MB の libheif デコーダはこのサイト自身のパスからのみ読み込まれ、計測した 2 回目の変換は 0 リクエスト・0 回のアップロード・0 件のカナリア漏洩で、カナリア付きの写真がデバイスの外に出ることはありません。
/generated/runtime/7879e1c92e1bdb08/libheif.js/generated/runtime/e4aa8333fbe55ec7/libheif.wasm/generated/runtime/6c728441042ea88c/heic-decode-worker.js初回利用時、エンジン、ワーカー、選択した言語パック(13種類、各0.4~2 MB)はすべてこのサイト自身のパス(/generated/runtime/775a35df6f2ae100/tesseract-core-lstm.wasm.js・/generated/runtime/89456b34c2769c9a/chi_sim.traineddata.gz・/generated/runtime/d8438d6a4fba7bc3/eng.traineddata.gz・/generated/runtime/e4d26dedc913c87f/worker.min.js)からのみ読み込まれます。英語と簡体字中国語の繰り返し認識はそれぞれ 3 件のリクエスト、0 件のアップロードです。
GET /generated/runtime/e4d26dedc913c87f/worker.min.jsGET /generated/runtime/775a35df6f2ae100/tesseract-core-lstm.wasm.jsGET /generated/runtime/d8438d6a4fba7bc3/eng.traineddata.gz同梱サンプルの読み込み・回転・ダウンロード:測定ウィンドウ内で 0 件のリクエスト、0 件のアップロード、0 件のカナリア漏洩。
サインインはお気に入り(ツール名のみ)とアカウント状態を行レベルセキュリティ付きの Supabase で同期します。ツールワークスペースがアカウントバックエンドを呼び出すことはありません:処理にアカウントは不要で、何も送信されません。
上の一覧はデプロイ済みソースの全木検索から生成されます。これらのホストはツールワークスペースから到達できず、そこではスクリプトの読み込みゼロ・ツールデータの受信ゼロです。
track.toolars.comアナリティクスus.posthog.comアナリティクスproject ref .supabase.co (NEXT_PUBLIC_SUPABASE_URL)アカウントバックエンドavatars.githubusercontent.comプロフィール画像lh3.googleusercontent.comプロフィール画像buymeacoffee.com外部リンクchromewebstore.google.com外部リンクfonts.googleapis.com / fonts.gstatic.comビルド時取得vercel.app (hosting platform)インフラcloudflare.com (DNS + proxy layer)インフラさらに強く確かめたい場合は、ウォームアップ後にネットワークを切断して繰り返してください。テキストと画像ツールは動作し続けます。PDF ツールはウォームアップ時に見た同源 Worker アセットを必要とするため、PDF についてオフライン利用を謳っていないのです。
ローカルファーストはここでは標語ではなくアーキテクチャです。3 つの仕組みがデータをタブ内に留めます。
ハッシュ、正規評価、差分、エンコード、ストリーミングは、専用の Web Worker 内で実行されます。これらは scripts/build-tool-workers.mjs によって TypeScript からコンパイルされ、同源スクリプトとして配信されるため、数 MB の入力が回ってもタブは応答性を保ちます。
OCRエンジン(約4 MB)と各言語パック(0.4~2 MB)、およびPDFランタイムは、ツールを開いた後にのみこのサイト自身の静的パスから読み込まれます。認識と解析はローカルで実行され、処理のために何もアップロードされません。
実行バンドルはそのツールを開いたときにのみダウンロードされます——カタログやホームページでは決して読み込まれません。カタログの閲覧はメタデータのみを配信し、それは同じ Network パネルで簡単に確認できます。
下の検査のうち 1 つは公開されています。プライバシー実証キャプチャハーネスは MIT ライセンスのもと https://github.com/aixtral/toolars-open で公開されており、公開中のサイトに対して自分で再実行できます。残りのコマンドは固定された Node と pnpm のバージョンを使い、非公開リポジトリで実行されており、その方法はここでまとめています。
機械可読な検証レシート — 実行するコマンド、測定値、そしてこれで証明できないこと: 検証レシート(JSON)。
| スクリプト | コマンド | 検証内容 |
|---|---|---|
ローカル処理の証明ハーネスscripts/verify-local-processing.mjs | corepack pnpm verify:local-processing | サイトを再ビルドし、新しいブラウザーコンテキストでネットワークを遮断し、合成カナリアで代表的なワークフローを再実行し、ソースとビルドのフィンガープリントを照合して受領書を作ります。再試行、スキップ、ずれのいずれでも実行は失敗します。 |
オープンコアの依存監査scripts/audit-local-core.mjs | corepack pnpm audit:local-core | 公開面候補の実行依存グラフを描き、ソースの SHA-256 ハッシュ、インストール済み依存バージョン、ライセンステキストを記録します。 |
Worker ビルドscripts/build-tool-workers.mjs | corepack pnpm worker:build | すべてのブラウザー Web Worker を TypeScript ソースから public/generated 内のコンテンツハッシュ付きファイルにコンパイルし、配信される Worker がレビュー済みソースと同一であることを保証します。 |
ベンチマークハーネスscripts/benchmark-tools.mjs | node scripts/benchmark-tools.mjs | 各ツールの受理可能な最大入力、実行時間の中央値、ゼロリークのネットワーク分離を測定し、ベンチマークページの背後にある型付きデータを書き出します。 |
プライバシー実証キャプチャハーネスscripts/capture-privacy-proof.mjs | node scripts/capture-privacy-proof.mjs | ヘッドレス Chromium で画像変換・OCR エンジン・PDF 回転を駆動し、全リクエスト(専用 Web Worker のフェッチを含む)を記録してから、このページが描画する実証 JSON を書き出します。アップロード・クロスオリジンリクエスト・カナリア漏洩のいずれかで失敗します。 |
ベンチマークページは、実際のヘッドレスブラウザーでハーネスが産んだデータを表示し、入力が端末に留まることを証明するカナリア実行も含みます。
ローカルファーストはネットワークフリーを意味しません。以下の機能は、動作にネットワークが必要なのでデータを送信し、どれも何が端末を離れるかを明記しています。
サインインすると、Supabase Auth と行単位セキュリティ付き Postgres を通じてお気に入りとアカウント状態が同期されます。ツールの入出力はその同期に含まれません——すべてのワークスペースはサインアウトでも動作します。
フッターのフォームは、入力したメールアドレスだけを Supabase RPC に送信します。購読に関するアナリティクスイベントは ADR 007 の許可リストどおり、そのアドレスを一切運びません。
これらのフォームは、書いた本文とフォームのメタデータを認証済みサーバーアクションで送信し、送信前に正確なペイロードを明示します。ワークスペースの内容は付加されません。
初回利用時、OCRツールはこのサイト自身の /ocr パスから、エンジン約4 MBと選択言語ごとの言語パック(0.4~2 MB)をダウンロードします。ダウンロードは同一オリジンのみで、画像と認識結果はタブ内に留まり、ダウンロード済みパックはブラウザーのオフラインキャッシュにのみ保存されます。
PDF のインポートとエクスポートは PDF.js Worker を再起動し、ウォームアップ時に見た同源の静的アセットを再取得します。そのため PDF ツールでは完全なオフライン利用を謳っていません。
拡張機能のインストールリンクは Chrome Web Store、任意の支援ボタンは Buy Me a Coffee へ向かいます。どちらも単純な外部リンクであり、Toolars ページにサードパーティスクリプトを埋め込みません。
第三者によるセキュリティ監査も、コンプライアンス認証もありません。別途公開しているプライバシー実証キャプチャハーネスと 2 つのローカル Node パッケージは MIT ライセンスです。ウェブサイト自体のソースコードは公開されておらず、それに対するライセンスも付与していません。このページは、今日検証できることだけを示します。
サードパーティに関する通知 — このサイトが再配布するコンポーネントとそのライセンス全文: 通知とライセンス全文。
利用可能なすべてのツールについて、はい。各ツールにはブラウザー内処理、入力の端末非離脱、保存なしを宣言する型付き実行時マニフェストがあります。このページのラベルはそれらのマニフェストから生成されます。将来のクラウドやハイブリッドのツールは、出荷前に境界を開示する必要があります。
設計の悪い CSP はアカウント同期や承認済みアナリティクスプロキシを壊すため、その制御は ADR 010 に従い、実際のルートに対して先に構築されています。その間、このページは配信されるヘッダーと起こり得る外部接続を正直に開示し、ネットワーク境界はコードで強制されテストで覆われます。
いいえ。PostHog は Cookie なしで動作し、オートキャプチャ、セッションレコーディング、永続化、人物プロファイルはすべて無効です。許可リストに入るのは净化されたページビュー、16 の名前付き製品イベント、Web Vitals、例外だけで、入力・出力・ファイル名・検索クエリは含まれず、イベントはファーストパーティプロキシ経由でのみ送信されます。
実行時レジストリとカタログからビルド時に導出され、ベンチマークページはその背後にある測定実行を示します。カタログのラベルと実行時マニフェストが食い違った場合、そのずれは平均化されるのではなくこのページに印刷されます。
ベンチマークページは、実際のヘッドレスブラウザーでハーネスが産んだデータを表示し、入力が端末に留まることを証明するカナリア実行も含みます。