DataTug Perimeter
AIエージェントに 境界を設定しましょう。
鍵を渡さずに、エージェントにデータベースを扱わせましょう。Perimeterは、エージェントが何を読めるかを決め、見せてはならないものを隠し、何かを変更する前にあなたに確認するために開発中です。
急速に進化中
次の文をAIエージェントに貼り付けてください:
https://datatug.ai/install-perimeter.md を読み、その手順に従って私のためにDataTug Perimeterをセットアップしてください。何かをインストールしたり設定を変更したりする前に、必ず私に確認してください。
エージェントが受け取るガイドを読む Claude Codeで動作確認済み。Webページを読めるすべてのエージェントで使えます。ガイドは、変更のたびに確認を求め、データベースのパスワードは決して要求しないよう、エージェントに指示します。
エージェントとデータの間の 三つのコントロール。
それぞれ、今日できることと、これからのことを示しています。

アクセスを制御
エージェントが読めるデータベース、テーブル、行、フィールドを決めます。今日できること:デフォルトで読み取り専用、そしてローカルファイルのアクセスポリシー。
datatug query runは行を読む前にこれを適用します。ポリシーは、そのルールで許可されていないものをすべて拒否できます。Access policies利用可能

機密フィールドをマスク
メールアドレス、電話番号、トークンなどの機密値は、エージェントに届く前にマスクされる予定です。そのため、エージェントのコンテキストにもモデルプロバイダーにも入りません。現在は、ローカルポリシーでフィールドの許可リストを使い、フィールドを除外できます。
Meaning-driven masking on the server予定

変更を承認
エージェントは、理由と有効期限を添えて、特定の変更を一つだけ求めるようになります。あなたが承認すると、その操作だけが実行されます。現時点では、エージェントはDataTug経由で書き込みできません。
Agent changes you approve予定
顧客がログインできない。 エージェントが境界の中でどう解決するか。
Perimeterが目指す方向の一例であり、実際の実行を記録したものではありません。マスキング、範囲を絞った承認、監査記録は計画中です。

エージェントに依頼する
顧客4182がサインインできないと言っています。原因を調べてください。
許可された範囲で読む
アカウントテーブルを読むことができ、読めるのはその顧客の行だけです。
datatug query run --db datatug://shop/crm --from accounts --as support-agent --role supportAccess policies利用可能
機密値はマスクされて届く
5回のログイン失敗でアカウントがロックされたことがわかります。メールアドレスと電話番号はマスクされた状態で届きます。
email: j•••@•••.com · phone: +1 ••• ••• ••42 · failed_logins: 5 · locked: trueMeaning-driven masking on the server予定
変更を一つだけ求める
アカウント4182のロック解除:1行、1フィールド、15分間、理由つき。
UPDATE accounts SET locked = false WHERE id = 4182 · 15 minAgent changes you approve予定
あなたが承認する
何がなぜ変わるのかを正確に確認して、承認します。
Agent changes you approve予定
その操作だけが実行される
ロック解除が実行されます。エージェントがそれ以外を試みても、拒否されます。
UPDATE 1 · DELETE accounts → DENIEDAgent changes you approve予定
記録に残る
誰が依頼し、誰が承認し、何がいつ実行されたかが、一つの監査記録に残ります。
audit: ag-support → request #17 → approved → UPDATE accounts #4182 → 1 rowAudit trail merged with provenance予定
Perimeterが約束できること、 できないこと。
ローカルのDataTugはオフラインAIではない
DataTugはデータの隣、あなたのマシン上で動きます。しかしエージェントのモデルはそうとは限りません。ローカルモデルを使わない限り、エージェントが読んだものはモデルプロバイダーに送られます。
マスキングはエージェントに届く前に行う必要がある
値がいったんエージェントのコンテキストに入ると、取り消す方法はありません。だからPerimeterは、あとからではなく、エージェントへ向かう途中でマスクするように設計されています。
エージェントが迂回できない場合にのみ有効
エージェントがデータベースのパスワード、環境内の接続文字列、データへの別の経路も持っていれば、Perimeterでは止められません。エージェントには、認証情報ではなくDataTugを渡してください。
今日できること
デフォルトで読み取り専用、テーブルを厳密に指定した読み取り許可リスト、そしてCLI自身が適用するローカルのアクセスポリシー。これらのポリシーは誠実なエージェントを範囲内にとどめますが、他のコマンドを実行できるエージェントに対する境界ではありません。
まずは一つのデータベースから。 鍵は手元に。
エージェントがDataTugのCLIとスキルをセットアップし、今日あなたのマシンでPerimeterにできることを説明し、変更のたびに確認します。
次の文をAIエージェントに貼り付けてください:
https://datatug.ai/install-perimeter.md を読み、その手順に従って私のためにDataTug Perimeterをセットアップしてください。何かをインストールしたり設定を変更したりする前に、必ず私に確認してください。
エージェントが受け取るガイドを読む Claude Codeで動作確認済み。Webページを読めるすべてのエージェントで使えます。ガイドは、変更のたびに確認を求め、データベースのパスワードは決して要求しないよう、エージェントに指示します。

