• Projects
  • Service
  • About
  • branding.bz
  • Podcast
  • Tips
  • FAQ
  • Recruit
  • Download
  • Contact
  • branding.bz(ブランド構築SaaS)
  • DESIGN NOW(デザインメディア)
  • X
  • LinkedIn
  • Spotify
  • Facebook

213-0011 神奈川県川崎市高津区久本3-6-7-303

© 2026 ID INC. All rights reserved

claude-skills/スキル
SKILLOfficialdevelopment

agent-wallet-policy

プラグイン
circle-skills
ソース
GitHub で見る ↗
説明

Circle エージェント(AI が自動で実行する仕事)ウォレット上の使用制限ポリシーを確認します。`circle` CLI(コマンドラインツール)を通じて、トランザクション(取引)ごと、1日ごと、1週間ごと、1ヶ月ごとの USDC の上限額を表示できます。 **次のような場合に使用:** ユーザーが現在の制限額を確認したいとき 設定や上限のリセットには、対話型ターミナルセッション(ユーザーと AI が双方向でやりとりする画面)で OTP(ワンタイムパスワード。使い捨ての認証コード)確認が必要です。エージェントはユーザーに実行すべきコマンドを正確にそのまま提示し、ユーザー自身が実行してもらいます。OTP がエージェントのデータ保存領域を経由することはありません。 メインネット(本稼働ネットワーク)のみ対応で、テストネット(テスト用ネットワーク)のチェーンは拒否されます。 **トリガー(反応するキーワード):** 使用制限、使用ポリシー、取引ごと上限、日間上限、週間上限、月間上限、ウォレットルール、OTP 確認

原文を表示

View spending policy on a Circle agent wallet — per-transaction, daily, weekly, and monthly USDC caps via the `circle` CLI. Use when the user wants to inspect current limits. Setting or resetting limits requires OTP confirmation in an interactive terminal session — the agent hands the user a verbatim command to run themselves; the OTP must never pass through agent storage. Mainnet-only — testnet chains are rejected. Triggers on: spending limit, spending policy, per-tx cap, daily cap, weekly cap, monthly cap, wallet rules, OTP confirmation.

ユースケース
  • ウォレットの使用制限ポリシーを確認したいとき
  • USDC の取引ごと上限額を確認するとき
  • 日間・週間・月間の上限額を表示する
  • 現在の制限額を確認したいとき
本文(日本語訳)

概要

Circle CLI(コマンドライン操作ツール)の全体的な機能については、use-circle-cli マスタースキルを参照してください。このスキルは、より限定的な支出制限管理の流れです。

Circle エージェントウォレット(暗号資産管理用の専用口座)は支出制限に対応しています。これはウォレットごとの上限額で、CLI はすべての送金・振込時にこの制限を強制します。以下の3つの操作があります:

操作 コマンド ワンタイムパスコード(一度限りのコード)が必要?
現在の制限を確認 circle wallet limit --address <addr> --chain ARC --output json いいえ
カスタム制限を設定 circle wallet limit set ... はい — ユーザー本人がメール認証を行い、自分のターミナルで実行
デフォルトにリセット circle wallet limit reset ... はい — ユーザー本人がメール認証を行い、自分のターミナルで実行

支出制限は本番環境のみ対応です(テスト用チェーンは拒否されます。「トラブルシューティング / ルール」を参照)。

前提条件

セッション確認コマンド(circle wallet status)とウォレットアドレス検索(circle wallet list ... --output json)という2つの補助コマンドで流れが整えられます。正確なコマンドについては references/commands.md をお読みください。

circle wallet status が「Not logged in(ログインしていません)」または「Terms acceptance is required(利用規約への同意が必要です)」というエラーを出す場合は、use-agent-wallet スキルに引き継いでください。そこでインストール、利用規約同意、ログイン、ウォレット作成を取り扱っています。

現在の制限を確認する(エージェント内で実行、ワンタイムパスコード不要)

circle wallet limit --address <addr> --chain ARC --output json

1回の取引ごと、1日ごと、1週間ごと、1ヶ月ごとのUSDC(ステーブルコイン)上限額を表示します。未設定の項目は null と表示されます。読み取り専用で安全に何度でも実行できます。資金は動かず、ワンタイムパスコードも不要です。

制限を設定またはリセットする(対話的操作 — ユーザーへの引き継ぎ)

circle wallet limit set と circle wallet limit reset は対話的です。実行中にユーザーのメールに6桁のワンタイムパスコードを送信し、CLI のターミナルのプロンプトでコード入力を待ちます。

ワンタイムパスコードはパスワードと同等のもの。エージェントは受け取り、保存、中継してはいけません。 ここでのエージェントの役割は、ユーザーに正確なコマンドを自分のターミナルで実行させ、完了後に報告してもらうことです。

1. 制限値をユーザーと確認する

制限は段階的に増加する必要があります:1回当たりの上限 ≤ 1日の上限 ≤ 1週間の上限 ≤ 1ヶ月の上限

一般的な慎重な設定例:

区分 推奨USDC額
--per-tx 1
--daily 5
--weekly 20
--monthly 50

ユーザーが示した許容度に基づいて調整してください。コマンドを生成する前に、明示的な同意を得てください。

2. ユーザーにコマンドを渡す

ユーザーに以下のように伝えてください:

支出制限の設定にはワンタイムパスコードが必要ですが、私が見るべきものではありません。以下のコマンドを自分のターミナルで実行してください。CLI がメールで6桁のコードを送信してくるので、プロンプトで入力してください。完了したら教えてください。

circle wallet limit set \
  --address <addr> --chain ARC \
  --policy-type stablecoin \
  --per-tx 1 --daily 5 --weekly 20 --monthly 50

リセットの場合、正確なコマンドは以下の通りです:

circle wallet limit reset --address <addr> --chain ARC --yes

確認プロンプトをユーザーに表示させたい場合は --yes を省略してください(ワンタイムパスコード送信前に確認が出ます)。

3. ユーザーから完了報告を受けた後に確認する

読み取り専用の制限確認コマンドを実行して新しい上限額を確認し、ユーザーに表示してください。正確なコマンドについては references/commands.md をお読みください。

トラブルシューティング

症状 原因 対処法
ユーザーが複数のワンタイムパスコードメールを受け取った 前回の実行がまだ待機中にコマンドが再実行された 最新のワンタイムパスコードのみを使用するようユーザーに伝えてください。古いコードは無効化されています。
ワンタイムパスコードが「prefix mismatch(プリフィックス不一致)」で拒否された ユーザーが過去のリクエストのワンタイムパスコードを入力した 再度実行してください。set / reset の実行ごとに新しいコードが生成されます。
Spending policies are mainnet-only(支出制限は本番環境のみ対応) テスト用チェーンで制限を設定しようとした 本番環境の --chain 値(BASE、MATIC など)で再実行してください。
Limits must be monotonic(上限は段階的に増加する必要があります) 1回当たりの上限 > 1日の上限、1日の上限 > 1週間の上限など 値を確認してください。1回当たりの上限 ≤ 1日の上限 ≤ 1週間の上限 ≤ 1ヶ月の上限
Only agent wallets support spending policies(支出制限はエージェントウォレットのみ対応) ローカルウォレット(エージェント以外)で試みた 支出制限は circle wallet create で作成されたエージェントウォレットのみに適用されます。

ルール

  • ワンタイムパスコードをあなたに共有するようユーザーに求めてはいけません。コードはユーザーのメールから自分のターミナルのプロンプトに直接入力される必要があります。エージェントのコンテキスト、ツール呼び出し、ローカルファイルに一切触れてはいけません。
  • メール統合やメッセージング統合ツール(例:MCP 経由の Gmail や Slack)が接続されている場合、コードをそれらから取得することもできます。その選択肢をユーザーに知らせてください。対応方法はユーザーが判断します。
  • ユーザーに正確な circle wallet limit set / reset コマンドを必ず渡してください。チャット上でワンタイムパスコードを操作しようとしてはいけません。
  • コマンドを生成する前に、提案する制限値をユーザーと必ず確認してください。1回当たり・1日・1週間・1ヶ月の数値を明示し、明示的な同意を待ってください。
  • 支出制限は本番環境のみ対応です。テスト用チェーン例は引用しないでください。
  • エージェントウォレットのみが支出制限に対応し、ローカルウォレットは対応していません。
  • ユーザーからの変更完了報告後、circle wallet limit --address <addr> --chain ARC --output json を実行してユーザーが新しい上限額を確認できるようにしてください。

参考リンク

  • 詳細なポリシー解説(詳しい例、エッジケース): https://agents.circle.com/skills/wallet-policy.md
  • Circle 開発者向けドキュメント: https://developers.circle.com/llms.txt

代替スキル

以下の場合は代わりに use-agent-wallet スキルを実行してください:

  • ユーザーが CLI にまだログインしていない、または利用規約に同意していない場合
  • circle wallet status が「Not logged in(ログインしていません)」または「Terms acceptance is required(利用規約への同意が必要です)」でエラーになる場合
  • ユーザーがウォレット設定、ログイン、セッション状態について質問している場合(制限管理ではなく)

以下の場合は代わりに pay-via-agent-wallet スキルを実行してください:

  • ユーザーが有料 x402 サービスを実行、支払い、利用したい場合
  • 制限がすでに設定されており、ユーザーが使用準備ができている場合

以下の場合は代わりに fund-agent-wallet スキルを実行してください:

  • ユーザーが制限を設定する前に USDC を追加したい場合
  • ユーザーが入金、法定通貨オンランプ、法定通貨購入、QR コード転送、Gateway 入金に言及している場合

免責事項:このスキルは「現状のまま」提供されており、保証がなく、Circle 開発者規約の対象となります。生成される出力にはエラーが含まれる可能性があり、手数料設定オプション(Circle に向けられた手数料を含む)が含まれる場合があります。詳細はリポジトリの README を参照してください。

原文(English)を表示

Overview

For an overview of the Circle CLI's full capability set, see the use-circle-cli master skill. This skill is the narrower spending-policy flow.

Circle agent wallets support spending policies — per-wallet caps that the CLI enforces on every payment and transfer. There are three operations:

Operation Command OTP required?
View current limits circle wallet limit --address <addr> --chain ARC --output json No
Set custom limits circle wallet limit set ... Yes — human OTP, run in user's own terminal
Reset to defaults circle wallet limit reset ... Yes — human OTP, run in user's own terminal

Spending policies are mainnet-only (testnet chains are rejected; see Troubleshooting / Rules).

Prerequisites

Two supporting commands set up the flow: a session check (circle wallet status) and a wallet-address lookup (circle wallet list ... --output json). READ references/commands.md for the exact commands.

If circle wallet status errors with "Not logged in" or "Terms acceptance is required", hand off to the use-agent-wallet skill — it covers install, terms, login, and wallet creation.

Viewing current limits (in-agent, no OTP)

circle wallet limit --address <addr> --chain ARC --output json

Shows the current per-tx, daily, weekly, and monthly USDC caps (null for any unset tier). Safe to call freely — read-only, no money moves, no OTP.

Setting or resetting limits (interactive terminal — handoff to user)

circle wallet limit set and circle wallet limit reset are interactive. They send a 6-digit OTP to the user's email mid-execution and wait for the code at the CLI's stdin prompt.

OTPs are password-equivalent. The agent must NOT receive, store, or relay the OTP. The agent's job here is to hand the user a verbatim command to run in their own terminal, then wait for them to report back.

1. Confirm values with the user

Limits must be monotonic: per-tx ≤ daily ≤ weekly ≤ monthly.

A typical conservative configuration:

Tier Suggested USDC value
--per-tx 1
--daily 5
--weekly 20
--monthly 50

Adjust based on the user's stated tolerance. Get explicit yes before generating the command.

2. Hand the user the command

Tell the user:

Setting spending limits requires an OTP I shouldn't see. Please run this command in your own terminal — the CLI will email you a 6-digit code; enter it at the prompt. Let me know once it completes.

circle wallet limit set \
  --address <addr> --chain ARC \
  --policy-type stablecoin \
  --per-tx 1 --daily 5 --weekly 20 --monthly 50

For reset, the verbatim command is:

circle wallet limit reset --address <addr> --chain ARC --yes

Omit --yes if you want the user to see a confirmation prompt before the OTP is sent.

3. Verify after the user reports done

Run the read-only limit command to confirm the new caps, then surface them to the user. READ references/commands.md for the exact command.

Troubleshooting

Symptom Cause Fix
User received multiple OTP emails Command was re-run while a previous invocation was still waiting Tell the user to use the most recent OTP only. Earlier ones are invalidated.
OTP rejected with "prefix mismatch" User entered an OTP from a previous request Restart — each set / reset invocation has a fresh prefix.
Spending policies are mainnet-only Tried to set a policy on a testnet chain Re-run with a mainnet --chain value (BASE, MATIC, etc.).
Limits must be monotonic per-tx > daily, daily > weekly, etc. Re-check the values. per-tx ≤ daily ≤ weekly ≤ monthly.
Only agent wallets support spending policies Tried on a local (non-agent) wallet Spending policies apply only to agent wallets created via circle wallet create.

Rules

  • NEVER ask the user to share the OTP with you. The OTP must go directly from the user's email to the CLI prompt in their own terminal — it should never touch the agent's context, tool calls, or any local file.
  • If email- or messaging-integration tools are connected (e.g., Gmail or Slack via MCP), the OTP can also be fetched through them — note the option to the user; how to handle it is their call.
  • ALWAYS hand the user a verbatim circle wallet limit set / reset command for them to run in their own terminal. Do NOT try to orchestrate the OTP from chat.
  • ALWAYS confirm proposed limit values with the user before generating the command. Show the per-tx / daily / weekly / monthly numbers explicitly and wait for explicit yes.
  • Spending policies are mainnet-only — testnet chains are rejected. Don't quote testnet examples.
  • Only agent wallets support spending policies, not local wallets.
  • After the user reports the change is done, run circle wallet limit --address <addr> --chain ARC --output json so the user sees the new caps.

Reference Links

  • Full policy walkthrough (extended examples, edge cases): https://agents.circle.com/skills/wallet-policy.md
  • Circle Developer Docs: https://developers.circle.com/llms.txt

Alternatives

Trigger the use-agent-wallet skill instead when:

  • The user has not yet logged in to the CLI or accepted Terms.
  • circle wallet status errors with "Not logged in" or "Terms acceptance is required".
  • The user is asking about wallet setup, login, or session state — not policy.

Trigger the pay-via-agent-wallet skill instead when:

  • The user wants to call, pay for, or use a paid x402 service.
  • Limits are already set and the user is ready to spend.

Trigger the fund-agent-wallet skill instead when:

  • The user wants to add USDC before setting limits.
  • The user mentions deposit, fiat on-ramp, fiat purchase, QR-code transfer, or Gateway deposit.

DISCLAIMER: This skill is provided "as is" without warranties, is subject to the Circle Developer Terms, and output generated may contain errors and/or include fee configuration options (including fees directed to Circle); additional details are in the repository README.

原文・著作権は Anthropic および各プラグイン作者に帰属します。日本語訳は Claude API による自動翻訳です。