CCXT is a software library that gives programs a common interface for accessing cryptocurrency exchanges and prediction markets. It is used by developers, traders, analysts, and data scientists for market-data analysis, automated trading, backtesting, and trading bots.
Borrowing it
Nothing to install: this file belongs to ccxt/ccxt. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/ccxt/ccxt/master/.agents/skills/payment-assistant/SKILL.mdgit clone --depth 1 https://github.com/ccxt/ccxtWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/ccxt/ccxt/payment-assistant)<a href="https://agentmods.dev/skills/ccxt/ccxt/payment-assistant"><img src="https://agentmods.dev/badge/skills/ccxt/ccxt/payment-assistant/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/ccxt/ccxt/payment-assistant"><img src="https://agentmods.dev/badge/skills/ccxt/ccxt/payment-assistant.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- Snyk fail
- NVIDIA SkillSpector warn
SkillSpector: 7 findings, up to high
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- high YARA Match · line 2 YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).Fix: Remove offensive tool references and exploit code. Legitimate agent skills should not contain penetration testing tools, exploit frameworks, or reconnaissance utilities.
- high Memory Poisoning · line 422 Skill manipulates agent memory, state, or stored context. Memory corruption can alter personality, override safety rules, or cause unpredictable behavior.Fix: Protect agent memory and state from modification by untrusted content. Use read-only memory for critical instructions and validate all state changes.
- high System Prompt Leakage · line 600 Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.Fix: Remove any instructions that reveal, print, or output system prompts or internal rules. System instructions should never be exposed to end users.
- high System Prompt Leakage · line 628 Skill contains instructions that could directly expose system prompts, internal rules, or hidden instructions to users or external parties.Fix: Remove any instructions that reveal, print, or output system prompts or internal rules. System instructions should never be exposed to end users.
- medium Excessive Agency · line 150 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
- medium Excessive Agency · line 151 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
- medium Excessive Agency · line 480 Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.Fix: Add human-in-the-loop confirmation for destructive, irreversible, or high-impact operations. Never auto-execute commands that modify files, send data, or alter system state.
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00119 | $0.07507 |
| Opus 5.5 | $0.00048 | $0.03003 |
| Sonnet 5.5 | $0.00024 | $0.01501 |
| Haiku 4.5 | $0.00012 | $0.00751 |
Grade A, and why
payment-assistant scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 825 lines — stays where its author put it; the contents beside it link to each section on GitHub.
⚠️ CRITICAL: How to Handle QR Images
When user sends a QR code image or asks to pay:
Step 0: Check if user provided a PAYMENT LINK (text, not an image)
If the user provided text (not an image), and the text is a URL containing
app.binance.com/uni-qr/ or app.binance.com/qr/:
→ This is a payment link. Skip all decode steps. Go directly to purchase:
python3 payment_skill.py --action purchase --raw_qr "<the URL text>"
Otherwise (user sent an image, or text doesn't match above) → continue to Step 1.
Step 1: Try to READ the QR data directly (Vision)
Look at the QR code image and try to extract the actual data string (URL or EMV code).
- If you can read it →
--action purchase --raw_qr "<DATA>" - If you cannot read the data (only see logo/colors) → Go to Step 2
Step 2: Check for image file path
Does your platform provide the image attachment path in message metadata?
- If YES →
--action decode_qr --image "<PATH>" - If NO → Go to Step 3
Step 3: Ask user for help (DO NOT auto-use clipboard!)
"I cannot read the QR directly. Please copy to clipboard, then reply 'use clipboard'"
(Translate to user's language as needed)
Step 4: Only after user confirms → use clipboard
python3 payment_skill.py --action decode_qr --clipboard
⛔ FORBIDDEN:
- ❌
--clipboardwithout user explicitly saying "use clipboard" - ❌ Guessing or searching for image files
- ❌ Skipping the "ask user" step
✅ REQUIRED after decode_qr succeeds:
- Tell user the image source (e.g., "Decoded from clipboard" or "Decoded from file: xxx.jpg")
- Include
source_typefrom response in your message to user
🚀 Quick Start - Agent MUST Execute
When user sends a QR code image or asks to pay:
Step 1 - Get QR Data (Choose ONE method)
Method A: AI Vision (BEST - if your platform supports it)
1. Use your vision capability to read the QR code content directly from the image
2. Skip decode_qr entirely, go straight to purchase with the QR data
python3 payment_skill.py --action purchase --raw_qr "https://app.binance.com/uni-qr/xxx"
What ships with it
10 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- common.py 22 KB runs code
- payment_skill.py 2.8 KB runs code
- receive.py 3.8 KB runs code
- references/setup-guide.md 1.8 KB
- requirements.txt 37 B
- send_extension/__init__.py 1.3 KB runs code
- send_extension/base.py 1.6 KB runs code
- send_extension/c2c.py 8.4 KB runs code
- send_extension/pix.py 13 KB runs code
- send.py 38 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 825 lines · 119 tokens per session scan A d45a3ed5017b
payment-assistant is a skill published in the GitHub repository ccxt/ccxt (44,614 stars, last pushed today), licensed MIT. It adds 119 tokens to every session and 7,507 once invoked, about $0.0005 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
market-sentiment
Synthesize crypto market sentiment by combining the Fear & Greed index, trending coins, narrative momentum, whale activity, and on-chain signals into a single actionable market read. Use when the user wants to know if the market is bullish, bearish, or transitioning. Powered by the free-crypto-news API.
coinank-openapi
Access CoinAnk crypto derivatives market data via API key or Agent Payments Protocol/x402 pay-per-call.
pump-swarm
Coordinated multi-wallet trading on Pump.fun.
trading-solana
Trade tokens on Solana DEXes - Jupiter, Raydium, Orca, Meteora, Pump.fun.
copy-trading
Automatically copy trades from successful wallets on Polymarket and crypto.
trading-evm
Trade tokens on EVM chains - Uniswap V3, 1inch on Ethereum, Arbitrum, Optimism, Base, Polygon.