メインコンテンツまでスキップ

Takumi Agent とレジストリ設定の比較

Takumi Guard の導入方法は下記の 2 通りあります。

  • レジストリ設定(クイックスタート・管理者による一括導入を参照): .npmrc などパッケージマネージャーごとの設定で Takumi Guard のレジストリエンドポイントを指定する
  • Takumi Agent: ツールごとの設定を必要とせず、通信を捕捉して Takumi Guard に通すため、ツールごとの設定は不要

どちらの方法でも、同様の Takumi Guard の判定が適用されます。違いは、誰が保護を外せるか、何が対象になるか、ユーザーに求められる対応事項の 3 点です。次の表で両者を比較します。

レジストリ設定Takumi Agent
動作環境macOS、Linux、Windows、CIApple シリコン搭載の Mac デバイス(macOS 13 以降)
導入パッケージマネージャーごとの設定ファイルや環境変数の設定インストーラー 1 つと macOS の数回の承認(管理者権限が必要)
保護が外れる操作設定ファイルの編集、環境変数の設定、--registry の指定システム設定の変更かアンインストール(ツールの設定では外れない)。管理コンソールに表示される
対象ツール設定したパッケージマネージャー対象レジストリと通信する Mac デバイス上のすべてのツール
コンテナ内でのインストールコンテナごとに設定しない限り、公開レジストリに直接届くコンテナがデバイス証明書を信頼するまでブロックされる
証明書不要すべてのランタイムがデバイス証明書を信頼する必要がある。Mac デバイス上の主要なツールは自動で設定される
パッケージの公開・ログインなどのアカウント操作自分のトークンでレジストリに直接送られる自分のトークンでレジストリに直接送られる(Guard が判定するのはインストールのみ)
公開レジストリ上のプライベートパッケージスコープ、インデックス、ソースをレジストリに直接向け、自分のトークンでインストールする(Guard を経由しない。npm、PyPI、RubyGems、Go、Composer を参照)利用できない(Guard が組織のトークンを使うため)。Takumi Agent が捕捉するのは対象レジストリのホスト名のみで、それ以外のホスト(プライベートレジストリ、GitHub Packages、Artifactory、プライベートレジストリを向いたスコープ)を向いたツールは、自分の認証情報で直接通信し、ブロックされることはない
Guard に到達できない場合インストールは失敗する。開発者はツールを公開レジストリに戻せるインストールは失敗し、Mac デバイス上で回避する方法はない
可視性インストールログインストールログに加え、管理コンソールでデバイスごとの保護状態を確認できる

AI コーディングエージェント​

AI コーディングエージェントは、新しいプロジェクトや設定したことのないツール、新しいコンテナやシェルの中で、絶えずパッケージをインストールします。レジストリ設定では、そのすべてのツールが Guard を向いていることが保護の前提になり、設定されていないツールが 1 つあるだけで、あるいは --registry の指定が 1 つ紛れ込むだけで、誰にも気づかれずにダウンロードが公開レジストリへ向かいます。Takumi Agent では設定を維持する必要がありません。対象レジストリからのダウンロードはすべて Takumi Guard を通り、検査できないダウンロードは素通りせず、目に見える形で失敗します。

この制御が及ぶのは、対象の公開レジストリ(そのレジストリが使うすべてのホスト名)と、対象範囲に挙げたミラーです。それ以外のミラー、プライベートレジストリ、Mac デバイスの外にあるプロキシサーバーなど、別のホストに向けられたツールは対象レジストリに到達しないため、Takumi Agent からは見えません。そうした経路の制限は、ネットワークのエグレスポリシーの役割です。

この制御と引き換えに必要になるのが、デバイス証明書の信頼設定です。macOS のキーチェーンを使わないツールにはこの証明書を信頼させる必要があり、コンテナや VM はそれぞれ独自のトラストストアを持ちます。Mac デバイス上の主要なツールは Takumi Agent が自動で設定しますが、コンテナは開発者ごとに一度の設定が必要で、一部のツールには個別の手順が必要です。それぞれの対処については Takumi Agent を使った開発を参照してください。

推奨​

開発者の Mac デバイス、とくに AI コーディングエージェントがコマンドを実行する Mac デバイスには、Takumi Agent の利用をお勧めします。CI、Linux、Windows のマシン、クラウドの開発環境や Mac デバイスの外で動く AI エージェント、Takumi Agent を導入できない環境ではレジストリ設定を使い続けてください。両者は共存できます。既に Guard のレジストリを指定しているパッケージマネージャーは、Takumi Agent をインストールした Mac デバイスでもそのまま動作します。