---
title: "AIエージェントに鍵を渡さずウォレットを与える"
description: "Alchemy CLIのAgent walletsを使うと、開発者はコーディングエージェントに秘密鍵を公開することなく、範囲と期限を限定したオンチェーン取引権限を付与できる。"
---

# AIエージェントに鍵を渡さずウォレットを与える

<ImageBlock
  src="https://media.alchemy.com/blog/agent-wallets-cli-hero-16x9-20260821.png"
  alt="Alchemy CLI内のエージェントウォレット"
  width={1920}
  height={1080}
  priority
/>

[AIエージェント](https://www.alchemy.com/dapps/best/ai-agents)がオンチェーンで送金、スワップ、ブリッジ、デポジットを実行できるようになりました。ターミナルから、秘密鍵を保持することなく。

本日、Alchemy CLIにエージェントウォレットを追加しました。開発者はAlchemyダッシュボードからウォレットを作成し、CLIにスコープ付き・期限付きのアクセス権を付与し、エージェントにコマンドラインから実際のトランザクションを実行させることができます。ウォレットの作成と失効はダッシュボードでのみ行えます。ウォレットの秘密鍵がCLIに触れることはなく、Alchemyに触れることもなく、`.env`ファイルに置かれることもありません。

<ExternalVideo
  url="https://www.youtube.com/watch?v=NNbvdo-JCw4"
  provider="youtube"
  providerUid="NNbvdo-JCw4"
/>

上のデモでは、ClaudeがUSDCに最適な[Aave](https://www.alchemy.com/dapps/aave)マーケットを見つけ、資金を適切なチェーンにブリッジし、プールにデポジットしています。これまで、このワークフローには秘密鍵を保持するカスタムエージェントコードか、ウォレットSDKとコーディングアシスタントを手作業で統合する仕組みのいずれかが必要でした。今では数個のコマンドとダッシュボードのクリックだけで済みます。

## これまでエージェントがオンチェーンで取引してきた方法

これまで、開発者には一般的に2つの実現可能な方法がありましたが、どちらもデフォルトとして適切ではありませんでした。1つは秘密鍵を`.env`に貼り付け、エージェントがその資金を完全に制御することを受け入れる方法です。もう1つはウォレットSDKをカスタムバックエンドに組み込み、認証・署名・失効のロジックを自前で構築する方法です。前者は、ちょっとしたプロンプトのミスひとつでウォレットが空になるリスクと隣り合わせです。後者は、ほとんどのチームが取り組むべきではない数週間の作業を要します。

CLIのエージェントウォレットは、この両方を置き換えます。ウォレットのカストディはAlchemyダッシュボードを通じて保持されます。エージェントはターミナルから承認したスコープ付きセッションを取得します。そのセッションはワンクリックで失効させられます。

## 仕組み

このアーキテクチャは責任を3つに分割しています。[Privy](https://www.privy.io/)は組み込みウォレットのパートナーであり、ウォレットの秘密鍵を安全に保持します。私たちはCLIセッションと、その間の検証レイヤーを保持します。あなたはダッシュボードを通じて承認と失効のコントロールを保持します。

`alchemy wallet connect`を実行すると、CLIはマシン上で新しいP-256キーペアを生成します。秘密鍵はデバイスから出ることはありません。ブラウザがAlchemyダッシュボードを開き、そこでエージェントに使わせたいウォレットを作成または選択し、セッションを承認します。承認により、CLIの公開鍵がそのウォレットの署名者として登録され、特定のケイパビリティにスコープされ、ダッシュボードで設定したセッション有効期限によって制限されます。

すべての署名呼び出しは2段階のチャレンジです。Alchemyのバックエンドが Privyが要求する正規のペイロードを構築し、CLIがそのバイトデータをローカルで正確に署名し、そこで初めてリクエストがPrivyに到達します。セッションが期限切れになった場合、ダッシュボードから失効させられた場合、またはバインディングチェックに失敗した場合、次の署名試行は当社のインフラを出る前に拒否されます。失効はワンクリックで即座に反映されます。

セッションが有効になると、エージェントは送金、スワップ、ブリッジ、コントラクト呼び出しといったトランザクション全般にアクセスできるようになります。トランザクションは[Wallet APIs](https://www.alchemy.com/docs/wallets)を経由するため、ガススポンサーシップ、バッチ処理、自動リトライ、ERC-20によるガス支払い、クロスチェーンスワップも自動的に利用できます。クエリ用に[Data APIs](https://www.alchemy.com/docs/data)をすでにラップしている同じCLIが、今度は承認済みウォレットを通じてトランザクションを送信します。

## 最初からコーディングエージェント向けに構築

Alchemy CLIは、AIエージェント向けのツールサーフェスとして根本から設計されています。その意図を体現するのが2つのフラグです。`--json`はパース用に構造化された出力を返し、`--no-interactive`はプロンプトを無効化してコマンドが入力待ちでブロックしないようにします。また、すべてのコマンド、すべてのフラグ、すべてのエラーコード、実行可能なサンプルを記述したJSONドキュメントを出力する`alchemy agent-prompt`コマンドもあります。これをシステムプロンプトに組み込めば、エージェントは一度で全体のサーフェスを学習できます。

つまり、エージェントは新しいウォレットコマンドを自動的に習得します。統合すべきSDKも、読み解くべきドキュメントページも、新しいコマンドの動作をモデルに教えるためのプロンプトエンジニアリングも不要です。CLI自体がエージェントに説明します。

## 現在利用可能な内容

CLIのエージェントウォレットは現在ライブで利用可能であり、ウェイトリストも別ティアもありません。Node 22以上とAlchemyアカウントが必要です。セッションとウォレット管理のサーフェスはダッシュボードにあり、トランザクションのサーフェスはターミナルにあります。

<CodeSnippet
  language="bash"
  code={`npm i -g @alchemy/cli@latest
alchemy auth
alchemy wallet connect`}
/>

3つのコマンドで、エージェントが制御可能なウォレットがすぐに使える状態になります。すべてのコマンド、すべてのフラグ、対応するすべてのネットワークを含む完全なリファレンスは[CLI docs](https://www.alchemy.com/docs/alchemy-cli)にあります。

オンチェーンで行動する必要のあるエージェントを構築しているなら、このCLIこそ使ってほしいサーフェスです。[CLIをインストール](https://www.alchemy.com/docs/alchemy-cli)し、[ダッシュボードにサインイン](https://dashboard.alchemy.com/)してください。
