mcpField
A
agent-wallet-policy

agent-wallet-policy

github.com/circlefin其他160812 次安装2 周前更新
代码仓库

关于 agent-wallet-policy

agent-wallet-policy 是用于管理 Circle Agent 钱包消费限额的 CLI 技能,支持查看、设置和重置限额,并规定更改时由用户在自己的终端输入邮件 OTP。

主要功能

  1. 01查看单笔及周期限额
  2. 02设置自定义消费限额
  3. 03将限额重置为默认值
  4. 04更改时由用户输入邮件 OTP
  5. 05更新后核验限额

适用场景

  1. 01查看 Agent 钱包当前消费限额
  2. 02在用户终端设置已确认的限额
  3. 03重置策略并核验结果

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/circlefin/skills --skill agent-wallet-policy

安装后在 Claude Code 中输入/agent-wallet-policy确认已加载。

附带文件references/commands.md

详细介绍

概述

如需了解 Circle CLI 的全部功能,请参阅 use-circle-cli 主技能。此技能仅涵盖支出策略流程。

Circle Agent 钱包支持支出策略——CLI 会对每个钱包的支付和转账强制执行限额。共有三种操作:

操作命令是否需要 OTP?
查看当前限额circle wallet limit --address <addr> --chain ARC --output json否
设置自定义限额circle wallet limit set ...是 — 需由用户本人在自己的终端中输入 OTP
重置为默认值circle wallet limit reset ...是 — 需由用户本人在自己的终端中输入 OTP

支出策略仅适用于主网(测试网链会被拒绝;请参阅“故障排除 / 规则”)。

前提条件

有两个辅助命令用于设置此流程:会话检查(circle wallet status)和钱包地址查询(circle wallet list ... --output json)。有关确切命令,请阅读 references/commands.md。

如果 circle wallet status 报错,提示“Not logged in”或“Terms acceptance is required”,请转交给 use-agent-wallet 技能——该技能涵盖安装、条款、登录和创建钱包。

查看当前限额(在 Agent 中执行,无需 OTP)

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

显示每笔交易、每日、每周和每月的 USDC 限额(未设置的层级显示为 null)。可放心随时调用——此操作为只读,不会转移资金,也不需要 OTP。

设置或重置限额(在交互式终端中执行 — 转交给用户)

circle wallet limit set 和 circle wallet limit reset 都是交互式命令。执行过程中,系统会向用户的电子邮箱发送一个 6 位 OTP,并等待用户在 CLI 的标准输入提示符处输入验证码。

**OTP 等同于密码。Agent 绝不能接收、存储或转发 OTP。**此处 Agent 的任务是向用户提供一条可原样运行的命令,让用户在自己的终端中执行,然后等待用户反馈执行结果。

1. 与用户确认数值

限额必须按递增顺序设置:per-tx ≤ daily ≤ weekly ≤ monthly。

一种较为保守的常见配置:

层级建议的 USDC 数值
--per-tx1
--daily5
--weekly20
--monthly50

根据用户所述的风险承受程度进行调整。生成命令前,务必取得用户明确同意。

2. 向用户提供命令

告诉用户:

设置支出限额需要使用我不应查看的 OTP。请在你自己的终端中运行此命令——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

如果希望用户在发送 OTP 前看到确认提示,请省略 --yes。

3. 用户报告完成后进行验证

运行只读限额命令以确认新限额,然后告知用户。有关确切命令,请阅读 references/commands.md。

故障排除

症状原因解决方法
用户收到多封 OTP 邮件上一次命令仍在等待时,命令被再次运行告知用户只使用最新的 OTP。较早的 OTP 均已失效。
OTP 被拒绝,提示“prefix mismatch”用户输入了上一次请求的 OTP重新开始——每次调用 set / reset 都会生成新的前缀。
Spending policies are mainnet-only尝试在测试网链上设置策略使用主网 --chain 值(例如 BASE、MATIC)重新运行。
Limits must be monotonicper-tx > daily、daily > weekly 等重新检查数值。per-tx ≤ daily ≤ weekly ≤ monthly。
Only agent wallets support spending policies尝试在本地(非 Agent)钱包上操作支出策略仅适用于通过 circle wallet create 创建的 Agent 钱包。

规则

  • 绝 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.
  • 如果已连接电子邮件或消息集成工具(例如通过 MCP 连接的 Gmail 或 Slack),也可以通过这些工具获取 OTP——请告知用户这一选项;如何处理由用户决定。
  • 始终向用户提供一条原样的 circle wallet limit set / reset 命令,让他们在自己的终端中运行。不要尝试通过聊天来协调 OTP。
  • 生成命令前,始终与用户确认拟定的限额值。明确列出每笔交易/每日/每周/每月的数值,并等待用户明确同意。
  • 消费策略仅适用于主网——测试网链会被拒绝。不要引用测试网示例。
  • 只有 Agent 钱包支持消费策略,本地钱包不支持。
  • 用户报告更改已完成后,运行 circle wallet limit --address <addr> --chain ARC --output json,以便用户查看新的限额。

参考链接

替代方案

遇到以下情况时,改为触发 use-agent-wallet 技能:

  • 用户尚未登录 CLI 或接受条款。
  • circle wallet status 报错,提示“未登录”或“需要接受条款”。
  • 用户询问的是钱包设置、登录或会话状态,而不是策略。

遇到以下情况时,改为触发 pay-via-agent-wallet 技能:

  • 用户想调用、付费使用或使用付费 x402 服务。
  • 已设置限额,且用户准备开始消费。

遇到以下情况时,改为触发 fund-agent-wallet 技能:

  • 用户想在设置限额前添加 USDC。
  • 用户提到存款、法币入金、法币购买、二维码转账或 Gateway 存款。

免责声明:此技能按“原样”提供,不附带任何保证,且受 Circle 开发者条款约束。生成的输出可能包含错误,和/或包含费用配置选项(包括支付给 Circle 的费用);更多详情请参阅仓库的 README。

评论

支持 Markdown