Tkach Security について
Tkach Security は AI エージェントと保護対象の操作の間に置くセキュリティ境界です。Rust Core が権限と情報フローを検証し、不正または不確実な要求を拒否します。モデル出力を信頼せず、ローカルでポリシーを適用する統合向けです。
主な機能
- 01厳密な範囲で権限を確認
- 02読み取りと外部出力の権限を分離
- 03不正または不確実な要求を拒否
- 04シークレットをモデルコンテキストから隔離
- 05ペイロードを含まない監査記録を生成
- 06オフラインで境界を実演
活用シーン
- 01保護対象の操作前に要求を検証
- 02読み取ったデータの外部出力を制限
- 03侵害されたモデル提案の拒否を確認
MCP 対応
stdio アダプターは MCP クライアントから接続できますが、別途起動したローカルの tkach serve ランタイムと bearer token が必要です。アダプターは要求を運び、ポリシーは Rust Core が適用します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
モデルは提案し、Tkach が許可します。
モデルの提案と保護対象のアクションの間に Tkach を配置します。Rust Core は、アクションの実行や出力の開放を許可する前に、権限と情報フローを確認します。モデルが侵害されていても、モデル出力は信頼できないデータのままです。
Tkach を使う理由
- 明示的な権限: 保護対象のアクションには、正確なスコープを持つ Core 発行の
Propuskが必要です。モデルのテキストからこれを作成することはできません。 - 制御されたデータフロー: 読み取りの許可は、エクスポートの許可を意味しません。 出所情報と開放のチェックは境界内に保たれます。
- フェイルクローズの判断: 無効、拒否、リプレイ、キャンセル、または不確実な 状態が、黙って許可に変わることはありません。
- 分離されたシークレットと制限された証跡: ブローカーが保持するシークレットは
通常のモデルコンテキストの外に保たれます。
Sledのレシートにペイロードは含まれません。
これらの保証は、Tkach を経由する経路に適用されます。モデルを信頼できるものにしたり、あらゆるプロンプトインジェクションを検出したり、侵害されたホストを保護したりするものではありません。
数分で始める
Rust 1.85 以降を使い、crates.io からインストールします。
cargo install tkach-cli --version 0.1.2 --locked
tkach init my-agent
tkach check my-agent/.tkach/request.json
tkach run --demo
init はファイルを上書きせずに初期リクエストを作成します。check はスキーマを検証しますが、実行許可は検証しません。run --demo はモデルに接続せず、オフラインの境界を試します。対話型パネルを使うには tkach ui を実行します。
Rust ツールチェーンを使わない場合は、下記からバイナリをダウンロードし、tkach init から始めてください。
パッケージとダウンロード · v0.1.2
| チャネル | 内容 | インストール/次のステップ |
|---|---|---|
| GitHub Releases | tkach と tkach-mcp。Linux x86_64、macOS x86_64/arm64、Windows x86_64 | ダウンロードの検証 |
| crates.io | 0.1.2 の Rust クレート 7 個:Core、Gateway、HTTP、client、MCP、CLI、provider adapter | パッケージ一覧 |
| npm | 薄型の JavaScript / TypeScript HTTP クライアント | npm install [email protected] |
| PyPI | 薄型の Python HTTP クライアント | python -m pip install tkach-security-client==0.1.2 |
| Official MCP Registry | io.github.ECD5A/[email protected]、ローカル stdio | MCP の設定 |
| GHCR | Linux amd64 / arm64 用 OCI イメージ | ダイジェストとデプロイ |
バイナリアーカイブには、SHA-256 マニフェスト、鍵なし Sigstore バンドル、GitHub ビルド証明書が含まれます。デプロイ時は OCI ダイジェストを固定してください。検証方法の詳細は配布ガイドをご覧ください。
ポリシーを Rust の外に移さずに統合する
アプリケーションからHTTP 契約、Rust クライアント、Python/JS/TS/Go クライアント、または MCP クライアントから stdio アダプターを利用してください。
クライアントと MCP の利用には、別途起動するローカルの tkach serve ランタイムとそのベアラートークンが必要です。パッケージをインストールしても、バックグラウンド保護は有効になりません。
tkach-core はプロバイダー、プロトコル、言語から独立しています。アダプターはリクエストを転送し、ポリシーと権限は Rust に保持されます。
統合ガイドに従うか、動作するexamples/のシナリオをコピーしてください。Go クライアントはソースモジュールであり、独立したレジストリパッケージではありません。
サポート対象のランタイムは、デフォルトでループバック専用です。パブリックインターネットへの公開、TLS 終端、Streamable HTTP、クラウド制御プレーン、汎用エグゼキューターは含まれていません。デプロイ契約をご覧ください。
クロスプラットフォーム CLI の画面を表示
境界の動作を確認する
リポジトリをチェックアウトした状態で、オフラインの Golden Case を実行してください。モデルサービスや認証情報は不要です。一時的なサンドボックス内で新規作成のみの書き込みを 1 回実行し、隣接パスと侵害されたプロバイダーの提案が拒否されることを確認します。
cargo run -p tkach-gateway --example golden_case --locked
期待される結果:
GOLDEN_CASE|safe_output=released|allowed_write=committed|out_of_scope=denied|compromised_action=denied|compromised_executor_calls=0
許可される経路では、正確なポリシー、宛先、エグゼキューターのバインディングに対して、信頼できるホスト設定を使用します。プロバイダーが提供するのは、信頼されていない提案のみです。適用経路についてはアーキテクチャを、リリース時のチェックと残る制限についてはリリースノートをご覧ください。
ドキュメント
貢献
変更は小さくし、セキュリティ境界を明確にしてください。コアの変更には、セキュリティまたは製品上の不具合を実証する必要があります。アダプターは薄いままにし、コアのロジックを重複させないでください。必要なチェック、公開時の主張に関するルール、およびローカルに保持する必要があるファイルについては、CONTRIBUTING.md を参照してください。
サポート
Tkach Security が皆さまの業務に役立っている場合は、継続的なメンテナンスへのご支援をお願いします。
- TON:
pointoncurve.ton - Bitcoin (BTC):
1ECDSA1b4d5TcZHtqNpcxmY8pBH1GgHntN - USDT (TRC20):
TUF4vPdB6QkjCvZq18rBL4Qj4dK5ihCN75
お問い合わせ
Tkach Security、インテグレーション、セキュリティ研究、または共同作業に関するお問い合わせ:
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。