alethech について
alethech は、AI エージェントのポータブルで暗号学的に検証可能なメモリ継続性を実現する、ローカル優先のプロトコルとツールです。メモリ記録に署名して検証可能な履歴を構成し、検証済みコンテキストを公開する読み取り専用 MCP ブリッジも備えます。
主な機能
- 01Ed25519 によるメモリコミットの署名
- 02完全性と来歴チェーンの検証
- 03ポータブルな .aleth メモリファイルの暗号化
- 04アイデンティティを保った鍵のローテーション
- 05メモリパッケージのインポートとエクスポート
- 06読み取り専用 MCP メモリブリッジ
活用シーン
- 01保存したメモリが改変されたかを検証
- 02暗号化したエージェントメモリを端末間で移行
- 03MCP クライアントで検証済みコンテキストを確認
MCP 対応
読み取り専用の stdio ブリッジが、検証済みメモリコンテキストと検証ツールを MCP クライアントに公開します。認証情報とパスはツール引数ではなく設定で管理されます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
alethech
検証可能なエージェント継続性プロトコル — ローカルファースト、LLM 不使用、ブロックチェーン不使用。 伝送の完全性を隠蔽から明らかにする技。
Copyright (c) 2026 AliceLabs LLC.
コードに照らして主張をメンテナーが監査した結果、TeleAI-UAGI/Awesome-Agent-Memory(新興プロジェクト)に掲載されました。
公式 MCP Registry に登録されています:io.github.eddyflores100-lang/alethech — 読み取り専用の alethech-mcp ブリッジは、レジストリ対応のあらゆる MCP クライアントから検出できます。
alethech が役に立ったら、★ スターを付けてください。他の人やそのエージェントが見つけやすくなります。
ギリシャ語の ἀλήθεια(aletheia、「隠蔽から明らかにされる真実」)と τέχνη(techne、「技、技巧」)に由来します。 署名後にメモリが変更されていないことを明らかにする技です。
これは、docs/implementacion-nucleo-minimo.md(rev 2 + rev 3 ID レイヤー)で規定されたプロトコルのリファレンス実装です。
これは何か
alethech は、AI エージェント向けの暗号学的に検証可能で、移植可能なメモリ継続性を提供します。Ed25519 でメモリコミットに署名し、ハッシュリンクされた DAG でつなぎ、ID を失うことなく鍵をローテーションできます。また、検証済みの履歴を暗号化された 1 つの .aleth ファイルに封印し、互換性のあるランタイムやデバイス間で転送できます。
このリポジトリに含まれるもの:
- 暗号プロトコルの実装(Ed25519 + SHA-256 + JCS RFC 8785)
- 暗号化された移植可能なメモリコンテナ(
.aleth、scrypt + AES-256-GCM) - プラグインやチャット連携向けの、中立的で検証済みのアダプタービュー
- 読み取り専用の MCP stdio ブリッジ(
python -m alethech.mcp_memory、またはpip install alethech後のalethech-mcp)。検証済みメモリコンテキストと検証ツールを公開します。認証情報とパスは設定として保持され、ツールの引数にはなりません - 9 つの CLI コマンド(
init、commit、evidence、verify、export、import、migrate、key rotate、key revoke) - ミューテーションガード用パスを備えたテストスイート(保証ごとに、検査を無効化すると失敗するテストがあります)
- MIT ライセンスで、PyPI に
alethechとして公開
このリポジトリに含まれないもの:
- プロトコルコアはホスト型検索プラットフォームではありません。移植可能なスキルにより、ローカルの暗号化メモリワークフローと、範囲を限定した語彙検索が追加されます
- 従来の
memexプロジェクト(Python/ChromaDB メモリサーバー)ではありません - Docker、自動更新、LLM 呼び出し、必須のクラウドサービスはありません
- 依存するのは
cryptographyとclickのみです。mem0ai、chromadb、ollamaは使用しません
従来の memex コードベース(167 commits、AliceLabs Proprietary License)は、別のリポジトリeddyflores100-lang/memex-legacy に保存されています。このリポジトリには含まれず、pip install alethech でもインストールされません。
この仕組みの特性
このメモリーセットは、特定のアイデンティティに紐づく暗号学的に検証可能な履歴の一部を構成します。そのコミットは、完全性、暗号学的な作成者情報、来歴の関係について、独立して検証できます。
参照チェックポイントが存在する場合、提示された履歴がそのチェックポイントから継続していることも検証できます。
このプロトコルが証明するのは、エージェントの主張が真実であることではなく、その主張が、それを主張するアイデンティティによって署名されたことだけです。明らかになる真実とは、コンテンツについてではなく、伝送の完全性についてです。
ステータス
リリース済みのバージョン 0.9.1 では、ポータブルな暗号化メモリー(Python、TypeScript、Rust 間での ALETH002 リカバリーに対応した .aleth v2)と、チャットのポータブルメモリーへの取り込みが利用可能です。CI では、Python 3.10~3.13 でのテストスイートに加え、Python、Rust、TypeScript 間の適合性と .aleth の相互運用性をテストします。LLM、必須のクラウド、ブロックチェーン、コンセンサスはありません。
ポータブルメモリースキルをインストールする
npx skills add eddyflores100-lang/alethech --skill alethech --global
エージェントに、チェックポイントの保存、プロジェクトの再開、または別の AI/デバイスへのメモリーの持ち運びを依頼してください。最初の保存時に、暗号化されたローカルメモリーが自動的に作成されます。API キー、アカウント、LLM モデルのダウンロード、サーバー、MCP の設定は不要です。Python 3.10 以降と、スクリプトに対応したエージェントスキルホストが必要です。プロトコルの依存関係が不足している場合は、プライベート環境に一度だけインストールされます。その後のメモリー操作はオフラインで実行されます。任意のクラウドフォルダーへのバックアップでは、暗号文のみがコピーされ、変更されたリモートリビジョンも保持されます。ブラウザーのみでのチャットには、既存の拡張機能/オフラインビューアーを使用します。
ポータブルスキルの設定と制限および一次資料に基づく代替手段のレビューをご覧ください。
インストール
pip install alethech
開発用:
git clone https://github.com/eddyflores100-lang/alethech.git
cd alethech
pip install -e ".[dev]"
使い方
alethech init # generate identity + genesis commit
alethech commit --content <json-file> # create signed MemoryCommit
alethech evidence --tool <name> # create signed EvidenceCommit
--input <file> --output <file>
alethech verify # verify the whole store, offline
alethech export --output <dir> # portable package
alethech import --input <dir> # import external memory
alethech key rotate # rotate operational key
alethech key revoke --key-id <id> # revoke a key
alethech migrate --to v0.2 # migrate identity layer
チャットを取り込み、ファイルを持ち運ぶ
Alethech のツールバーアイコンを使って、読み込まれた会話を取り込み、内容を確認し、新しいローカルアイデンティティとリカバリーコードを使って暗号化された .aleth を作成します。そのファイルを別のデバイス、チャット、または IDE に持ち運べます。拡張機能はファイルをインポートし、リクエストがあった場合にのみ、選択されたコンテキストを空のチャットエディターに挿入します。送信することはありません。テキストに対応した任意のクライアントでは、context.txt をエクスポートできます。MCP クライアントは、ローカルの読み取り専用メモリーコネクターを使用できます。単一のオフライン alethech.html でも、拡張機能のインストールやアカウント登録なしにファイルを開いたり作成したりできます。
チャットの取り込みと転送に関する完全なガイドおよびIDE/MCP の設定をご覧ください。取り込みに必要なのは activeTab と scripting のみで、グローバルホストやストレージの権限は不要です。レンダリング済みチャットの取り込みでは、プロバイダーの非表示メモリーや、読み込まれていない会話履歴を取得できません。
ポータブルな暗号化メモリー(.aleth)
Alethech 0.9 の開発では、ドラッグ&ドロップでの転送を想定した単一の暗号化ファイルが追加されます。
from alethech import Alethech
agent = Alethech.initialize("./working-store")
agent.commit({"fact": "portable memory"})
agent.seal("memory.aleth", "your-passphrase")
# Plugin-style path: dropped file -> unlock -> verify -> neutral context
context = Alethech.drop_context("memory.aleth", "your-passphrase")
.aleth コンテナーは scrypt と AES-256-GCM を使用します。認証済みペイロードは、CI 内の Python、Rust、TypeScript の実装でバイト単位まで完全に一致する形で開けます。ポータブルファイルには、別のデバイスで履歴を継続できるよう、暗号化された運用署名鍵を含めることができますが、root.key と recovery.key は含まれません。
docs/ALETH_CONTAINER_SPEC.md と docs/ADAPTER_CONTRACT.mdをご覧ください。
できないこと
- エージェントの主張が真実であることは証明しません。それを主張するアイデンティティによって署名されたことだけを証明します。
- 外部チェックポイントなしでは、ロールバックを検出しません。
- ローカルの作業用ストアは保存時に暗号化されません。ポータブルな
.alethコンテナーは暗号化されています。 - エージェント間の権限委譲は行いません。
- LLM を呼び出しません。
名前の意味
alethech は、次の言葉に由来します。
- aletheia (ἀλήθεια) — ギリシャ語で「真理」、より正確には「隠されていないこと」(ハイデガーの解釈では、隠されていたものを明らかにする行為としての真理)
- techne (τέχνη) — ギリシャ語で「芸術、技、技法」
つまり、alethech =「隠されていたものを明らかにする技」です。このプロトコルが明らかにするのは、次の点です。
- メモリーが署名後に改変されたかどうか
- 誰が署名したか
- どの署名済みタイムスタンプが記録されたか(物理的な署名時刻ではなく、アーティファクトに記録されたタイムスタンプのみ)
- その来歴
- 管理の連鎖が保たれているかどうか
コンテンツが真実かどうかを明らかにするものではありません。それはエージェントの責任であり、プロトコルの責任ではありません。
テスト
python -m pytest tests/
Python テストスイートでは、次の項目を網羅しています。
- 暗号プリミティブ(Ed25519、SHA-256、base64url、base32)
- JCS 正規化(RFC 8785) — 適合性ベクトル 56 件。内容は次のとおりです。
- ECMAScript の Number.prototype.toString() に準拠した整数/浮動小数点数のシリアライズ
- -0 は "0" としてシリアライズ(RFC 8785 の正誤表に準拠し、保持されません)
- 指数表記の形式(正の指数には '+' を保持し、負の指数からは先頭のゼロを取り除きます)
- 小数表記と指数表記のしきい値(1e21 / 1e-6)
- サロゲートペアを含む UTF-16 キー順序
- 文字列のエスケープ(制御文字、非 ASCII 文字の保持)
- NaN/Infinity の拒否
- agent_id の導出(public_key との暗号学的な結び付け)
- MemoryCommit の署名、改ざん検出、誤ったキーの拒否
- EvidenceCommit の署名(レガシー ID と V2 ID の両方に対応)
- 9 つすべての CLI コマンド(init、commit、evidence、verify、export、import、migrate、key rotate、key revoke)
- チェックポイントの生成 + ロールバック検出 + 因果的連続性(祖先チェック)
- identity_mismatch の検出
- export/import のラウンドトリップ時の保持
- 改ざんされたマニフェストの拒否
- cutoff_head 到達可能性の保証を伴うキーのローテーション
- ancestry_check の変更に対するガード(コードレベルの回避策 3 件)
- recall seam の回避策(データレベルの変更 2 件:active-keys の改ざん、cutoff_head の変更)
- root_id の結び付け(RootAuthority ↔ IdentityRecord ↔ ControlEvent)
- チェックポイントの連続性(チェックポイントの HEAD が現在の HEAD の祖先でなければなりません)
- IdentityRecordV2 の署名検証(ルート公開鍵に対して)
- import の因果的連続性(書き込み前の祖先チェック)
- import の強化(シンボリックリンク、パスのトラバーサル、アーカイブ爆弾、アーティファクトのハッシュ検証)
リポジトリ構成
alethech/ # this repo — cryptographic protocol only
├── alethech/ # source: crypto, objects, store, verify, cli, canonical
│ └── integrations/ # langchain + memex hooks
├── alethech-rs/ # Rust SDK (31 tests, cross-validation)
├── alethech-ts/ # TypeScript SDK (15 tests, Web Crypto API)
├── tests/ # Python behavioral, adversarial, mutation and conformance tests
├── conformance/ # 15 adversarial conformance vectors
├── docs/ # protocol specification
├── examples/ # basic_usage.py + memory_writeback.sh (ops pattern)
├── INTEGRATION.md # how to integrate with memex via MemexAlethechHook
├── INTEGRATION-VIGIL.md # fail-closed memory verification for watchdogs
├── CHANGELOG.md # version history
├── SECURITY.md # threat model + vulnerability policy
├── CONTRIBUTING.md # dev setup + PR process
├── CODE_OF_CONDUCT.md # Contributor Covenant
├── CITATION.cff # academic citation
├── LICENSE # MIT
├── README.md # this file
└── pyproject.toml # alethech 0.9.1, deps: cryptography + click only
言語間検証
このプロトコルは、独立した 3 つの言語で実装されています。
| 言語 | テスト | 依存関係 |
|---|---|---|
| Python | CI スイート | cryptography + click |
| Rust | 31 | ed25519-dalek、sha2、serde |
| TypeScript | 15 | 0(Web Crypto API のみ) |
3 つすべてで、同じ NIST SHA-256 テストベクトル、RFC 4648 base32 ベクトル、RFC 8785 JCS 適合性ベクトルを使用しています。言語間の互換性は、実行可能なハーネスによって検証されます。
python conformance/cross_language_check.py
これは conformance/ 内の共通フィクスチャを使って 3 つすべての実装を実行し、受け入れ対象のフィクスチャについて正規化バイト列がバイト単位で完全に一致することを検証します。既定の実行はフェイルクローズ方式です。終了コード 0 は 3 つすべてが実行されて一致したこと、1 は不一致、2 は実装またはランタイムを利用できないことを示します。CI では Rust ヘルパーをビルドし、3 つのランタイムを使うハーネスを実行します。仕様と 4 つ目の実装を追加する方法については、conformance/CROSS_LANGUAGE.md を参照してください。
ライセンス
MIT。
関連リポジトリ
eddyflores100-lang/memex-legacy— レガシー Memex コードベース(167 コミット、AliceLabs Proprietary License)。MCP 統合を備えた Python/ChromaDB のメモリーシステムです。歴史的な参照用に保存されています。pip install alethechではインストールされません。
Copyright (c) 2026 AliceLabs LLC. MIT License.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。