Agentic Wallet
coinbase/agentic-wallet-skills
Crypto wallet operations via the awal CLI — sign in, check balances, send USDC/ETH/POL/SOL, trade tokens, fund the wallet, and use the x402 payment protocol to discover paid services, pay for API…
Recover USDC from a legacy Circle CLI Gateway --method eco deposit whose fixed refund recipient is the SCA's backing EOA.
$ npx skills add circlefin/skills --skill recover-eco-funds -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install circlefin/skills recover-eco-funds --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/circlefin/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/circle/skills/recover-eco-funds .claude/skills/recover-eco-funds && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "recover-eco-funds" agent skill from https://github.com/circlefin/skills/tree/master/plugins/circle/skills/recover-eco-funds into .claude/skills/recover-eco-funds/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recover-eco-funds", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/circlefin/skills/tree/master/plugins/circle/skills/recover-eco-fundsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add circlefin/skills --skill recover-eco-funds -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install circlefin/skills recover-eco-funds --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/circlefin/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/circle/skills/recover-eco-funds .agents/skills/recover-eco-funds && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "recover-eco-funds" agent skill from https://github.com/circlefin/skills/tree/master/plugins/circle/skills/recover-eco-funds into .agents/skills/recover-eco-funds/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recover-eco-funds", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add circlefin/skills --skill recover-eco-funds -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install circlefin/skills recover-eco-funds --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/circlefin/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/circle/skills/recover-eco-funds .cursor/skills/recover-eco-funds && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "recover-eco-funds" agent skill from https://github.com/circlefin/skills/tree/master/plugins/circle/skills/recover-eco-funds into .cursor/skills/recover-eco-funds/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recover-eco-funds", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/circlefin/skills.git --path plugins/circle/skills/recover-eco-funds--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add circlefin/skills --skill recover-eco-funds -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install circlefin/skills recover-eco-funds --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/circlefin/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/circle/skills/recover-eco-funds .gemini/skills/recover-eco-funds && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "recover-eco-funds" agent skill from https://github.com/circlefin/skills/tree/master/plugins/circle/skills/recover-eco-funds into .gemini/skills/recover-eco-funds/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recover-eco-funds", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install circlefin/skills recover-eco-fundsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add circlefin/skills --skill recover-eco-funds -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/circlefin/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/circle/skills/recover-eco-funds .github/skills/recover-eco-funds && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "recover-eco-funds" agent skill from https://github.com/circlefin/skills/tree/master/plugins/circle/skills/recover-eco-funds into .github/skills/recover-eco-funds/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recover-eco-funds", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add circlefin/skills --skill recover-eco-funds -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install circlefin/skills recover-eco-funds --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/circlefin/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/circle/skills/recover-eco-funds .opencode/skills/recover-eco-funds && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "recover-eco-funds" agent skill from https://github.com/circlefin/skills/tree/master/plugins/circle/skills/recover-eco-funds into .opencode/skills/recover-eco-funds/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "recover-eco-funds", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
recover-eco-fundsRecover USDC from a legacy Circle CLI Gateway --method eco deposit whose fixed refund recipient is the SCA's backing EOA.
Recover Eco Funds is an agent skill from circlefin/skills. Recover USDC from a legacy Circle CLI Gateway --method eco deposit whose fixed refund recipient is the SCA's backing EOA. Use this skill for legacy Eco intents that are stuck, expired, waiting for refund, refunded to eoaOwnerAddress, missing from Gateway, or need a permissionless self-refund. Do not use its executable recovery phases for current Gateway v2 deposits, which set refundRecipient to the SCA. It covers calling Eco's Portal refund(...) with exact onchain intent data, then moving refunded USDC from the…
Its SKILL.md is about 5.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including scripts and reference files (for example `references/eoa-to-sca.md` and `references/self-refund.md`).
It sits in Backend & APIs. It works with Circle USDC. The repository describes itself as: Circle's open source skills for AI-assisted development. The licence is Apache-2.0.
3 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 04cbd18. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadBash(mkdir -p ./eco-recovery-evidence)Bash(circle --version)Bash(circle wallet status --output json)Bash(circle gateway deposit --help)Bash(circle wallet execute --help)Bash(circle contract query --help)Bash(circle wallet list --chain * --type agent --output json)Bash(circle wallet balance --address * --chain * --output json)Bash(circle gateway balance --address * --chain * --output json)…and 8 more on the same allowed-tools line.
From allowed-tools in the SKILL.md frontmatter.
Ships 3 files in scripts/ (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
curltsxnodeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
quotes.eco.comagentic-wallet.circle.comapi.eco.comAlso links to:
docs.eco.comgithub.comeips.ethereum.orgdevelopers.circle.comconsole.circle.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Recover Eco Funds loads about 5.2k tokens when it runs, and up to ~9.1k if it reads all its reference files. Until then it costs about 198 tokens; SKILL.md has 2,232 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from circlefin/skills at commit 04cbd18, republished under its Apache-2.0 licence (© circlefin). 2,232 words, ~5,154 tokens.
.claude/skills/recover-eco-funds/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.Recover funds from a legacy Circle CLI Eco deposit without guessing intent data, refund recipients, or transaction state. The workflow is evidence-first and defaults to read-only inspection.
Legacy-only recovery: The executable recovery phases in this skill are for deposits whose already-published intent fixes
reward.creatorto the Circle SCA's API-verifiedeoaOwnerAddress. Current Gateway v2/Circle CLI deposits setrefundRecipientto the SCA and should refund directly there. For a current deposit, use the read-only status checks below, reconcile the SCA and Gateway balances, and escalate through the normal support path if necessary; do not run the legacy backing-EOA sweep.
Do not classify a deposit as legacy from its age or endpoint version alone. Decode the IntentPublished event and compare the fixed reward.creator with both the SCA and its API-verified eoaOwnerAddress:
reward.creator == eoaOwnerAddress: legacy recovery may apply after all read-only checks.reward.creator == SCA: current direct-to-SCA refund behavior; stop before the executable legacy phases.If there is no Eco deposit and USDC was simply sent to an Agent Wallet's backing EOA (the CLI reports "Wallet not found" for that address), skip Phases 1 and 2 and go straight to Phase 3.
Use the use-circle-cli and use-agent-wallet skills first if the Circle CLI is not installed, the Terms gate is unresolved, or the agent session is invalid. Do not trigger multiple login requests: each fresh request invalidates the prior OTP.
A legacy Eco deposit can require two separate operations:
Portal.refund(destination, routeHash, reward) on the vault/refund chain after the reward deadline. The Portal validates the intent and instructs its deterministic vault to return funds to reward.creator. Anyone may relay this call, but the recipient is fixed by the original intent.reward.creator was the SCA's backing EOA, authorize USDC to move from that EOA to the linked SCA with ERC-3009. The SCA relays the token call and pays gas; the backing EOA does not need native gas.Current Gateway v2/Circle CLI Eco deposits set the SCA as the refund recipient. They are outside the executable scope of this skill: use status and balance reconciliation, and do not run the backing-EOA sweep.
eoaOwnerAddress; do not accept a user-supplied owner without comparing it to that field.reward.creator to equal the selected Circle wallet's API-verified eoaOwnerAddress. If it equals the SCA, classify it as the current direct-to-SCA flow and stop before executable recovery. Although refund(...) is permissionless, never spend the user's gas to refund an unrelated wallet.IntentPublished event. The Eco status API is useful context but is not authoritative enough to build calldata.Withdrawn or Refunded.CIRCLE_PROXY_URL overrides Circle's default, inspect the exact origin and obtain explicit user trust before sending an agent session token through it. The Phase 2 helper requires --allow-proxy-origin <scheme://host> when an override is present. The Phase 3 script talks only to Circle production and refuses to run while an override is set.refundTo(...) as a shortcut. It can change the recipient and is creator-restricted on current Eco contracts. The permissionless refund(...) path is sufficient.Create a dedicated directory before diagnosis, for example:
mkdir -p ./eco-recovery-evidenceCapture command time, CLI version, Circle chain code, RPC URL host, public addresses, intent and transaction hashes, sanitized stdout/stderr, exit code, pre/post balances, simulation result, idempotency key, and final explorer link. Keep the directory private because public addresses and account relationships may still be sensitive.
Do not place raw signatures or authentication material in this directory.
Run current help before relying on remembered flags:
circle --version
circle wallet status --output json
circle gateway deposit --help
circle wallet execute --help
circle contract query --helpIdentify the SCA and inspect the creation chain, candidate vault/refund chains, and Gateway destination:
circle wallet list --chain <SOURCE_CHAIN> --type agent --output json
circle wallet balance --address <SCA> --chain <SOURCE_CHAIN> --output json
circle gateway balance --address <SCA> --chain <GATEWAY_DESTINATION_CHAIN> --output jsonCollect at least one intent identifier:
Eco does not provide a list-intents-by-SCA endpoint. Map the SCA to the single-use Eco vault created for the deposit, then query that vault and its intent:
Identify the source-chain SCA:
circle wallet list --chain <SOURCE_CHAIN> --type agent --output jsonGet <VAULT_ADDRESS> from the original circle gateway deposit --output json result or the saved evidence. Its vaultAddress, sourceAddress, sourceBlockchain, transferTxHash, and deadline fields identify the deposit. If that output was not saved, list the SCA's confirmed outbound transfers and find the exact USDC funding transaction; its destinationAddress is the Eco vault:
circle transaction list \
--address <SCA> \
--chain <SOURCE_CHAIN> \
--operation transfer \
--tx-type outbound \
--state confirmed \
--output jsonMatch the intended amount, time, USDC token, and transaction hash. Do not select a vault from address alone when multiple deposits exist.
Query the current Gateway deposit-vault record. Use the EVM chain ID for the chain that funded the vault (8453 for Base mainnet or 84532 for Base Sepolia; verify current CLI support with circle gateway deposit --help):
curl -fsS \
"https://api.eco.com/circle-gateway/v2/depositAddresses/<VAULT_ADDRESS>?sourceChainId=<SOURCE_CHAIN_EVM_ID>"Record state, vaultAddress, amount, deadline, sourceChainId, and intentHash. States such as PENDING and FUNDING_DETECTED are still in progress; PUBLISHED means an intent was published, while FAILED, REFUNDED_BY_USER, and RECOVERY_PUBLISHED require reconciliation before another action.
When the vault record contains an intentHash, query the intent lifecycle:
curl -fsS \
--request POST \
--url https://quotes.eco.com/api/v3/intents/intentStatus \
--header "Content-Type: application/json" \
--data '{"intentHash":"<INTENT_HASH>"}'If only the creation transaction hash is available, use the alternate accepted identifier:
curl -fsS \
--request POST \
--url https://quotes.eco.com/api/v3/intents/intentStatus \
--header "Content-Type: application/json" \
--data '{"intentCreatedHash":"<CREATION_TRANSACTION_HASH>"}'Capture data.status, data.intentCreated, data.fulfillment, and data.refund, including every transaction hash and explorer URL present.
These APIs are supporting evidence. If the response says WaitingForRefund, continue with onchain reconstruction; never build refund calldata or broadcast from an API status alone.
Classify the state:
| Observed state | Action |
|---|---|
| Intent still before deadline | Wait or escalate; do not refund |
| Intent fulfilled/completed | Reconcile Gateway or destination funds; do not refund |
| Legacy intent, deadline passed, unfulfilled, vault funded | Run the Eco self-refund leg |
| Fixed refund recipient is the SCA | Current flow: reconcile or escalate; do not run legacy recovery |
Reward status already Refunded | Locate the refund recipient balance; do not call refund again |
| USDC is at the SCA | Recovery is complete |
| USDC is at the verified backing EOA | Run the backing EOA sweep leg |
| Vault and both wallet balances are zero | Stop and trace transfer events; do not guess |
The Phase 2 helper (eco-self-refund.mjs) requires a trusted circle-cli developer checkout with dependencies installed because the current public command surface does not expose raw contract calldata submission. It reuses Circle CLI's existing secure session and challenge code; it does not read or print keychain secrets directly.
The Phase 3 helper (sign-eoa-authorization.mjs) needs only Node.js 20.18.2+ and the public @circle-fin/cli 1.1.4 or newer, logged in with circle wallet login. No checkout is required.
Resolve both paths explicitly:
<SKILL_DIR> directory containing this SKILL.md
<CIRCLE_CLI_REPO> trusted circle-cli checkout containing apps/cli and node_modulesIf a newer installed CLI exposes native recovery, raw-calldata, or backing-owner commands in --help, prefer those commands and retain the same preflight, approval, and evidence requirements.
Do not enter this phase until the onchain event proves the deposit is legacy or otherwise proves that the fixed recipient is owned by the selected wallet and requires this manual path. If reward.creator is the SCA, stop and use the current-flow reconciliation path.
Read references/self-refund.md before acting. It defines the exact event fields, tuple, onchain checks, and raw-calldata fallback.
Prefer a native Circle CLI recovery command if the installed CLI exposes one in --help. Otherwise use the bundled helper from a trusted circle-cli checkout:
<CIRCLE_CLI_REPO>/node_modules/.bin/tsx \
<SKILL_DIR>/scripts/eco-self-refund.mjs \
--circle-cli-repo <CIRCLE_CLI_REPO> \
--chain <REFUND_CHAIN> \
--event-chain-id <CREATION_CHAIN_EVM_ID> \
--refund-chain-id <REFUND_CHAIN_EVM_ID> \
--event-rpc-url <CREATION_CHAIN_RPC_URL> \
--refund-rpc-url <REFUND_CHAIN_RPC_URL> \
--sca <SCA> \
--event-portal <CREATION_CHAIN_ECO_PORTAL> \
--portal <REFUND_CHAIN_ECO_PORTAL> \
--creation-tx <SOURCE_TX_HASH> \
--intent-hash <INTENT_HASH> \
--evidence-dir <EVIDENCE_DIR> \
--estimate-feeThe invocation is read-only. It decodes IntentPublished from the explicitly selected creation-chain Portal, verifies the intent hash, then reads reward status and vault balances from the separately selected refund-chain Portal, constructs the exact refund(...) calldata, and performs eth_call from the SCA. --estimate-fee additionally loads the Circle session, verifies that the fixed recipient is the selected SCA or its API-reported backing EOA, and includes the fee estimate in the approval preflight. Omit that flag only for session-free diagnosis; such output is not sufficient for approval. If the selected chain has no funded vault, stop and inspect other chains indicated by the composed Eco route; do not assume the event chain owns the vault or that both Portal addresses are identical.
After showing a preflight with recipientOwnership.checked: true and an estimatedFee, and receiving explicit user approval, re-run with both:
--submit --confirm-intent <INTENT_HASH>The confirmation value binds approval to one intent rather than to an open-ended refund operation.
When CIRCLE_PROXY_URL is set, the helper stops before sending a session token. Inspect the reported origin, ask the user to trust that exact origin, and only then add --allow-proxy-origin <scheme://host>.
After confirmation, verify:
Refunded.IntentRefunded for the expected intent and recipient.The optional normal circle wallet execute tuple-form estimate is not preauthorized by this skill's allowed-tools because its dynamic tuple arguments cannot be narrowly scoped. Run it only through the host's normal interactive command approval. If that estimate fails while direct RPC simulation succeeds, use the preauthorized helper's raw calldata path. Do not change tuple values to make the hosted parser accept them.
Skip this phase when the refund already reached the SCA.
Read references/eoa-to-sca.md before acting. This is a standard USDC ERC-3009 transfer authorized by the backing EOA and relayed by its linked SCA.
Confirm the backing EOA's balance, then show the chain, USDC contract, backing EOA, SCA, and raw and decimal amount, and get explicit user approval before signing:
circle contract query "balanceOf(address)" <BACKING_EOA> --contract <USDC_CONTRACT> --chain <SOURCE_CHAIN>
node <SKILL_DIR>/scripts/sign-eoa-authorization.mjs \
--chain <SOURCE_CHAIN> \
--sca <SCA> \
--eoa <BACKING_EOA> \
--usdc <USDC_CONTRACT> \
--amount-atomic <RAW_USDC_AMOUNT>The helper:
--sca to be one of the logged-in account's Agent Wallets and its API-reported eoaOwnerAddress to equal --eoa.TransferWithAuthorization with from=backing EOA, to=linked SCA, exact raw amount, a fresh 32-byte nonce, and a one-hour expiry, using the live USDC name()/version() for the EIP-712 domain.walletAddress=<backing EOA> and blockchain=<SOURCE_CHAIN>. Signing by the SCA wallet ID is incorrect because it can produce an EIP-1271 replay-safe SCA wrapper instead of the raw EOA signature USDC expects.authorizationState check, the circle wallet execute ... --estimate fee estimate, the single submit command with a fixed idempotency key, and the verification queries.The script talks only to Circle production (https://agentic-wallet.circle.com). If CIRCLE_PROXY_URL is set, it stops before reading the session. Unset the variable, run circle wallet login again, and re-run; the printed circle wallet execute commands must also run without the override.
Run the printed commands in order before the authorization expires. Show the --estimate result and get explicit approval for the transfer and network fee before running the submit command. The submit command contains the raw signature; keep it out of the evidence directory and record a signature hash instead.
After confirmation, verify:
authorizationState(backing EOA, nonce) is true.Do not create a fresh authorization or idempotency key just because a client timed out.
For Eco refund ambiguity, check reward status, vault balance, recipient balance, transaction list, and IntentRefunded logs. If any proves success, record the result and stop.
For ERC-3009 ambiguity, check authorizationState, both USDC balances, transaction list, and transfer logs. A consumed nonce or completed balance movement proves the authorization was used. Never sign a second transfer until the first is reconciled.
If a signed authorization was never submitted, let its validBefore expire before creating another with the same amount unless onchain state proves the nonce unused and the original signature cannot be replayed by an unintended party.
Report:
use-agent-walletDISCLAIMER: This skill is provided "as is" without warranties, is subject to the Circle Developer Terms, and output generated may contain errors. Review every address, amount, deadline, contract, simulation, fee, and approval before broadcasting a transaction.
© circlefin, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 5 other files (scripts, references) in plugins/circle/skills/recover-eco-funds of circlefin/skills.
Open the folder on GitHubat commit 04cbd18
Recover Eco Funds next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Recover Eco Funds this skillcirclefin/skills | 155 | — | ~5.2k | Automated safety check: Pass | Apache-2.0 | |
| Agentic Walletcoinbase/agentic-wallet-skills | 126 | 2 repos | ~1k | Automated safety check: Pass | MIT | |
| Deposit QrSuperior-Trade/superior-skills | 215 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Alchemy Agentic Gatewaymoonpay/skills | 113 | — | ~2.1k | Automated safety check: Notes | MIT | |
| Mppxinternet-court/internet-court-skill | 6.6k | 1 repos | ~1.1k | Automated safety check: Pass | Apache-2.0 | |
| CapacitrBankrBot/skills | 1.2k | — | ~3k | Automated safety check: Pass | None |
coinbase/agentic-wallet-skills
Crypto wallet operations via the awal CLI — sign in, check balances, send USDC/ETH/POL/SOL, trade tokens, fund the wallet, and use the x402 payment protocol to discover paid services, pay for API…
Superior-Trade/superior-skills
A skill your agent uses when a user needs a QR code or wallet payment URI to fund a Superior-managed EVM wallet on a specific chain before using Lighter, Polymarket, Hyperliquid, or other Superior…
moonpay/skills
A skill your agent uses when accessing Alchemy APIs for RPC calls, token balances, NFT metadata, asset transfers, transaction simulation, or Alchemy-specific features.
internet-court/internet-court-skill
TypeScript SDK for the Payment HTTP Authentication Scheme. An agent skill from internet-court/internet-court-skill.
BankrBot/skills
Paste a URL or free text and get matched Polymarket / Hyperliquid / Deribit markets with Quotient edge scores.
keypo-us/keypo-cli
A skill your agent uses when the user wants to swap tokens on Base Sepolia (or Base mainnet) using Uniswap V3.
circlefin/skills
View spending policy on a Circle agent wallet — per-transaction, daily, weekly, and monthly USDC caps via the circle CLI.
circlefin/skills
Build browser or server token bridging across chains with Circle App Kit or standalone Bridge Kit.
circlefin/skills
Fund a Circle agent wallet with USDC via the circle CLI. An agent skill from circlefin/skills.
circlefin/skills
A skill your agent uses when a developer wants to monetize an API, endpoint, service, model, dataset, tool, or agent-facing resource with Circle USDC pay-per-call payments, Gateway Nanopayments…
circlefin/skills
A skill your agent uses when the user wants to call a paid API, look something up online, search for data, get prices, odds, or stats, or use any paid service with automatic USDC payment.
circlefin/skills
Build browser or server token swaps with Circle App Kit or standalone Swap Kit.
Works with
Categories
Recover USDC from a legacy Circle CLI Gateway --method eco deposit whose fixed refund recipient is the SCA's backing EOA. Recover Eco Funds is an agent skill from circlefin/skills. Recover USDC from a legacy Circle CLI Gateway --method eco deposit whose fixed refund recipient is the SCA's backing EOA.
Recover Eco Funds fits situations like: legacy Eco intents that are stuck; waiting for refund; refunded to eoaOwnerAddress; missing from Gateway.
Run `npx skills add circlefin/skills --skill recover-eco-funds -a claude-code`. Or copy the skill folder (plugins/circle/skills/recover-eco-funds in circlefin/skills) into .claude/skills/recover-eco-funds in your project. Claude Code loads it when a task matches its description.
Run `npx skills add circlefin/skills --skill recover-eco-funds -a codex`. Or copy the skill folder (plugins/circle/skills/recover-eco-funds in circlefin/skills) into .agents/skills/recover-eco-funds in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add circlefin/skills --skill recover-eco-funds -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/recover-eco-funds, .gemini/skills/recover-eco-funds, .github/skills/recover-eco-funds and .opencode/skills/recover-eco-funds in your project.
Going by SKILL.md and its folder, Recover Eco Funds needs JavaScript for the scripts in its folder and the command-line tools its instructions call (curl, tsx and node). Our summary lists: Node.js. Its frontmatter pre-approves these tools: Read, Bash(mkdir -p ./eco-recovery-evidence), Bash(circle --version), Bash(circle wallet status --output json), Bash(circle gateway deposit --help), Bash(circle wallet execute --help), Bash(circle contract query --help), Bash(circle wallet list --chain * --type agent --output json), Bash(circle wallet balance --address * --chain * --output json), Bash(circle gateway balance --address * --chain * --output json), Bash(circle transaction list --address * --chain * --operation transfer --tx-type outbound --state confirmed --output json), Bash(curl -fsS "https://api.eco.com/circle-gateway/v2/depositAddresses/*"), Bash(curl -fsS --request POST --url https://quotes.eco.com/api/v3/intents/intentStatus --header "Content-Type: application/json" --data '{"intentHash":"*"}'), Bash(curl -fsS --request POST --url https://quotes.eco.com/api/v3/intents/intentStatus --header "Content-Type: application/json" --data '{"intentCreatedHash":"*"}'), Bash(*/node_modules/.bin/tsx */scripts/eco-self-refund.mjs *), Bash(node */scripts/sign-eoa-authorization.mjs *).
SKILL.md names 8 domains. In commands or code: quotes.eco.com, agentic-wallet.circle.com and api.eco.com; the agent is likely to contact these when it follows the instructions. As links in the text: docs.eco.com, github.com, eips.ethereum.org, developers.circle.com and console.circle.com. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Recover Eco Funds is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.2k tokens (SKILL.md is roughly 21k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Recover Eco Funds: Agentic Wallet (coinbase/agentic-wallet-skills, 126 stars), Deposit Qr (Superior-Trade/superior-skills, 215 stars), Alchemy Agentic Gateway (moonpay/skills, 113 stars) and Mppx (internet-court/internet-court-skill, 6.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
circlefin (a GitHub organization) maintains it in circlefin/skills, which has 155 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 9, 2026.
Source: circlefin/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.