Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】How I Built an Autonomous AI Agent That Earns USDC While I Sleep

2026年09月08日に「Dev.to」が公開したITニュース「How I Built an Autonomous AI Agent That Earns USDC While I Sleep」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

自律型AIエージェントが、x402プロトコルを用いてAIサービスの利用料をUSDCで自動徴収する仕組みを解説する。FastAPIとweb3.pyで実装し、支払い要求から送金検証までを自動化し、AIサービスの具体的な収益化例を示す。

ITニュース解説

自律的に機能するAIエージェントが、ユーザーが意識することなくサービスを提供し、その対価として暗号資産であるUSDCを自動で受け取る仕組みについて解説する。この技術は、AIモデル自体の賢さではなく、その背後にある「お金のやり取り」という土台(プラミング)に焦点を当てている。

まず、AIエージェントが「寝ている間にUSDCを稼ぐ」とはどういうことか。これは、AIが提供する何らかのサービス(例えばテキストの要約や画像のタグ付けなど)に対し、利用者がその都度USDCという暗号資産で支払いをすることで、エージェントが自動的に収益を得る仕組みを指す。従来のサービスであれば、人間がアカウントを管理したり、月額課金を設定したりするが、このAIエージェントは完全に自律的に、つまり人間が介在せずに支払いの要求から受け取りまでを行う点が画期的である。

この自律的な支払いを可能にするのが、「x402プロトコル」という新しい支払いスキームだ。これはHTTPというインターネット通信の基本的なルールを拡張したもので、サーバーがクライアントに対し「402 Payment Required」(支払いが必要です)というステータスコードを返すと同時に、WWW-Authenticateという特別なヘッダーに支払いに関する具体的な情報(いくら、どの通貨で、どこに支払うべきか)を含めて送り返す。この情報を受け取ったクライアント側は、それに基づいて自動的にUSDCを手配し、指定された金額を送り、改めて元のリクエストを再送する、という一連の流れが自動で行われる。

なぜx402プロトコルが自律型エージェントに適しているのか。第一に「ステートレス性」がある。これは、エージェントが個々のユーザーの残高を管理する必要がないことを意味する。支払いが必要な時にだけその都度請求し、支払いがあればサービスを提供するため、管理の手間が大幅に減る。第二に「互換性」だ。HTTPベースであるため、一般的なWebブラウザやプログラム(curl、Postmanなど)も、x402を理解する機能を追加するだけで、既存のビジネスロジックを変更せずに支払い機能を持たせることができる。第三に「低オーバーヘッド」であり、プロトコル自体が追加するデータ量はわずかで、支払いの複雑な処理は専用のSDK(ソフトウェア開発キット)が担うため、システム全体の負荷が低い。 ただし、この仕組みにはトレードオフも存在する。初回のリクエストで支払いがない場合、サーバーは402エラーを返し、クライアントは支払いを行ってから再度リクエストを送るため、未認証の呼び出しに対しては通信が一度増えることになる。また、エージェントはUSDCの送金に署名するためのウォレット(秘密鍵)を管理・運用する必要がある。この例では、イーサリアム互換の「Base」ネットワーク上でUSDCの取引を行う。

システム全体の構成は以下の通りである。まず「クライアント」はAIサービスを利用したい側のアプリケーションやユーザーを指す。次に「エージェントサービス」があり、これはPythonのFastAPIというWebフレームワークで作られている。このサービスがAI機能(テキスト要約など)を提供し、同時にx402プロトコルに則って支払いを要求・検証する。そして「ウォレットマネージャー」は、エージェントがUSDCを受け取るための暗号資産ウォレットを管理する部分だ。これはweb3.pyというライブラリと秘密鍵を使って、USDCの送金トランザクション(取引記録)の作成や署名を行う役割を担う。最後に「USDCレジャー」は、Baseネットワーク上のUSDCという暗号資産の「台帳」である。すべてのUSDCの移動はここに記録され、ウォレットマネージャーはこの台帳に記録された情報を見て支払いを検証する。

具体的な動きをコードの視点から見てみよう。まず、エージェントサービスを起動するために必要なライブラリ群(FastAPI、web3など)を準備する。次に、エージェント自身のウォレットとして機能する秘密鍵や、USDCコントラクトのアドレス(Baseネットワーク上のUSDCを管理するプログラムの場所)などの設定を行う。これらは環境変数から読み込むことが多い。 エージェントサービスでは、例えば「/summarize」というAIサービスのエンドポイント(機能を提供する窓口)を用意する。クライアントがこのエンドポイントにリクエストを送ると、エージェントはまず、そのリクエストに有効な支払いが付随しているかを確認する。 支払いが確認できない場合、エージェントは特別な関数(build_402)を使って、HTTPの402ステータスコードとWWW-Authenticateヘッダーを含むレスポンスを作成し、クライアントに返す。このヘッダーには、サービス利用に必要なUSDCの金額、支払先のエージェントのウォレットアドレス、使用すべきネットワーク(Base)などの情報が含まれる。 この情報を受け取ったクライアントは、自身のウォレットからUSDCを指定された金額だけエージェントのウォレットアドレスに送金する。この送金操作はブロックチェーン上に「トランザクション」として記録され、一意の識別子(トランザクションハッシュ)が生成される。 クライアントは、このトランザクションハッシュをAuthorizationヘッダーに含めて、再度エージェントのサービスエンドポイントにリクエストを送る。エージェントは今度こそ、そのリクエストヘッダーからトランザクションハッシュを抽出し、verify_paymentという関数を使ってその支払いを検証する。この検証では、渡されたハッシュに対応するトランザクションが実際にブロックチェーン上に存在するか、そのトランザクションが正しい金額をエージェントのアドレスに送っているか、USDCのコントラクトを通じて行われた送金であるか、といった複数の条件を確認する。 これらの検証がすべて成功すれば、エージェントは支払いが正しく行われたと判断し、本来のAIサービス(テキスト要約など)の処理を実行し、その結果をJSON形式でクライアントに返す。もし検証に失敗すれば、サービスは提供されない。 この一連の仕組みにより、AIエージェントは自動でサービス提供の対価を受け取り、利用者も手動で支払いを行うことなくAIサービスを利用できる、という新しい形態のサービスが実現する。これは、AI技術の発展とともに、そのビジネスモデルや収益化のあり方も進化していることを示している。

関連コンテンツ

関連IT用語

関連ITニュース