Agent skill

P2p

by npc-live in npc-live/clawfirm

Binance P2P trading assistant for natural-language queries about P2P/C2C market ads and (optionally) the user’s own P2P order history.

MITAuto-check: notesBusiness, Finance & HR

Install P2p

skills CLI
$ npx skills add npc-live/clawfirm --skill p2p -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install npc-live/clawfirm p2p --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/npc-live/clawfirm.git skills-src && mkdir -p .claude/skills && cp -r skills-src/app/assets/skills/p2p .claude/skills/p2p && rm -rf skills-src

Use ~/.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/

Facts

Skill name
p2p
GitHub stars
156
Token cost
~2.3k tokens
SKILL.md length
893 words
Files
4 (incl. references)
Skills in repo
49
Repo updated
First seen
Licence
MIT

At a glance

Binance P2P trading assistant for natural-language queries about P2P/C2C market ads and (optionally) the user’s own P2P order history.

  • Works in 2 steps: Public Market (No Auth) → Personal Orders (Requires API Key)
  • The user asks about P2P prices
  • SKILL.md covers When to Use / When NOT to Use, Core Concepts, Capabilities and Security & Privacy Rules, plus 6 more sections
  • Reaches binance.com and c2c.binance.com; needs BINANCE_API_KEY and BINANCE_SECRET_KEY

What it does

P2p is an agent skill from npc-live/clawfirm. Binance P2P trading assistant for natural-language queries about P2P/C2C market ads and (optionally) the user’s own P2P order history. Use when the user asks about P2P prices, searching/choosing ads, comparing payment methods, or reviewing their P2P order history (requires API key). Do NOT use for spot/futures prices, exchange trading, deposits/withdrawals, on-chain transfers, or anything unrelated to P2P/C2C.

Its SKILL.md is about 2.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including reference files (for example `CHANGELOG.md`, `LICENSE.md` and `references/authentication.md`).

It sits in Business, Finance & HR, covering Trading and backtesting and Smart contracts. It works with Binance. The licence is MIT.

When your agent uses it

  • The user asks about P2P prices
  • Searching/choosing ads
  • Comparing payment methods
  • Reviewing their P2P order history (requires API key)

Example prompts

  • “/p2p”

Requirements

  • Python 3
  • A credential in BINANCE_API_KEY
  • A credential in BINANCE_SECRET_KEY

Workflow steps

2 steps, taken from the step headings in SKILL.md.

  1. Public Market (No Auth)
  2. Personal Orders (Requires API Key)

What it can do on your machine

Read from SKILL.md and the folder at commit db435ed. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are python).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • binance.com
    • c2c.binance.com
    • api.binance.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • BINANCE_API_KEY
    • BINANCE_SECRET_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

P2p loads about 2.3k tokens when it runs, and up to ~3k if it reads all its reference files. Until then it costs about 105 tokens; SKILL.md has 893 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~105
When it runs · the whole SKILL.md, loaded when a task matches
~2.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3k

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.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:73
    - Only write to `.env` if the user explicitly agrees.
  • NoteMentions a .env fileSKILL.md:74
    - Ensure `.env` is in `.gitignore` before saving.
  • NoteMentions a .env fileSKILL.md:208
    valid API key (-2015): prompt to verify `.env` / API Management.

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); files beside SKILL.md are not scanned.

SKILL.md

The full file from npc-live/clawfirm at commit db435ed, republished under its MIT licence (© npc-live). 893 words, ~2,284 tokens.

Download SKILL.mdSave it as .claude/skills/p2p/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
p2p
description
Binance P2P trading assistant for natural-language queries about P2P/C2C market ads and (optionally) the user’s own P2P order history. Use when the user asks about P2P prices, searching/choosing ads, comparing payment methods, or reviewing their P2P order history (requires API key). Do NOT use for spot/futures prices, exchange trading, deposits/withdrawals, on-chain transfers, or anything unrelated to P2P/C2C.

Binance P2P Trading Skill

Help users interact with Binance P2P (C2C) via natural-language queries.

When to Use / When NOT to Use

Use this skill when the user wants to:
  • Check P2P buy/sell quotes for a crypto/fiat pair (e.g., USDT/CNY).
  • Search P2P advertisements and filter by payment method(s), limits, merchant quality.
  • Compare prices across payment methods (e.g., Alipay vs bank transfer).
  • View their own P2P order history / summary (requires API key).
Do NOT use this skill when the user asks about:
  • Spot/Convert prices, futures/derivatives, margin, trading bots.
  • Deposits/withdrawals, wallet transfers, on-chain transactions.
  • Creating/cancelling orders, appeals, releasing coins (trading operations).
Ask clarifying questions (do not guess) if any key inputs are missing:
  • fiat (e.g., CNY)
  • asset (e.g., USDT)
  • user intent: buy crypto or sell crypto
  • preferred payment method(s)
  • target amount (optional but recommended for ad filtering)

Core Concepts

tradeType mapping (avoid ambiguity)
  • User wants to buy crypto (pay fiat, receive USDT/BTC) → tradeType=BUY
  • User wants to sell crypto (receive fiat, pay USDT/BTC) → tradeType=SELL

Always reflect this mapping in responses when the user’s wording is ambiguous.

Capabilities

Phase 1 — Public Market (No Auth)
  • Quote P2P prices
  • Search ads
  • Compare payment methods
  • Filter/Rank ads by limits and merchant indicators
Phase 2 — Personal Orders (Requires API Key)
  • List P2P order history
  • Filter by trade type / time range
  • Provide summary statistics

Security & Privacy Rules

Credentials
  • Required env vars:
    • BINANCE_API_KEY (sent as header)
    • BINANCE_SECRET_KEY (used for signing)
Never display full secrets
  • API Key: show first 5 + last 4 characters: abc12...z789
  • Secret Key: always mask; show only last 5: ***...c123
Permission minimization
  • Binance API permissions: Enable Reading only.
  • Do NOT request/encourage trading, withdrawal, or modification permissions.
Storage guidance
  • Prefer environment injection (session/runtime env vars) over writing to disk.
  • Only write to .env if the user explicitly agrees.
  • Ensure .env is in .gitignore before saving.

⚠️ CRITICAL: SAPI Signing (Different from Standard Binance API)

Parameter ordering
  • DO NOT sort parameters for SAPI requests.
  • Keep original insertion order when building the query string.

Example:

py
# ✅ Correct for SAPI: keep insertion order
params = {"page": 1, "rows": 20, "timestamp": 1710460800000}
query_string = urlencode(params)  # NO sorting

# ❌ Wrong (standard Binance API only): sorted
query_string = urlencode(sorted(params.items()))
Signing details

See: references/authentication.md for:

  • RFC 3986 percent-encoding
  • HMAC SHA256 signing process
  • Required headers (incl. User-Agent)
  • SAPI-specific parameter ordering

API Overview

Public Queries (MGS C2C Agent API — No Auth)

Base URL: https://www.binance.com

EndpointMethodParamsUsage
/bapi/c2c/v1/public/c2c/agent/quote-priceGETfiat, asset, tradeTypeQuick price quote
/bapi/c2c/v1/public/c2c/agent/ad-listGETfiat, asset, tradeType, limit, order, tradeMethodIdentifiersSearch ads
/bapi/c2c/v1/public/c2c/agent/trade-methodsGETfiatPayment methods

Parameter notes:

  • tradeType: BUY or SELL (treat as case-insensitive)
  • limit: 1–20 (default 10)
  • tradeMethodIdentifiers: pass as a plain string (not JSON array) — e.g. tradeMethodIdentifiers=BANK or tradeMethodIdentifiers=WECHAT. Values must use the identifier field returned by the trade-methods endpoint (see workflow below). ⚠️ Do NOT use JSON array syntax like ["BANK"] — it will return empty results.
Workflow: Compare Prices by Payment Method

When the user wants to compare prices across payment methods (e.g., "Alipay vs WeChat"), follow this two-step flow:

Step 1 — Call trade-methods to get the correct identifiers for the target fiat:

GET /bapi/c2c/v1/public/c2c/agent/trade-methods?fiat=CNY
→ [{"identifier":"ALIPAY",...}, {"identifier":"WECHAT",...}, {"identifier":"BANK",...}]

Step 2 — Pass the identifier as a plain string into ad-list via tradeMethodIdentifiers, one payment method per request, then compare:

GET /bapi/c2c/v1/public/c2c/agent/ad-list?fiat=CNY&asset=USDT&tradeType=BUY&limit=5&tradeMethodIdentifiers=ALIPAY&tradeMethodIdentifiers=WECHAT

Compare the best price from each result set.

Important: Do not hardcode identifier values like "Alipay" or "BANK". Always call trade-methods first to get the exact identifier strings for the given fiat currency.

Personal Orders (Binance SAPI — Requires Auth)

Base URL: https://api.binance.com

EndpointMethodAuthUsage
/sapi/v1/c2c/orderMatch/listUserOrderHistoryGETYesOrder history
/sapi/v1/c2c/orderMatch/getUserOrderSummaryGETYesUser statistics

Authentication requirements:

  • Header: X-MBX-APIKEY
  • Query: timestamp + signature
  • Header: User-Agent: binance-wallet/1.0.0 (Skill)

Output Format Guidelines

Show full SKILL.md (375 more words)Show less
Price quote
  • Show both sides when available (best buy / best sell).
  • Use fiat symbol and 2-decimal formatting.

Example:

USDT/CNY (P2P)
- Buy USDT (you buy crypto): ¥7.20
- Sell USDT (you sell crypto): ¥7.18
Ad list

Return Top N items with a stable schema:

  1. adNo (ad number / identifier)
  2. price (fiat)
  3. merchant name
  4. completion rate
  5. limits
  6. payment methods (identifiers)

Avoid generating parameterized external URLs unless the API returns them.

Placing orders (when user requests):

  • This skill does NOT support automated order placement.

  • When user wants to place an order, provide a direct link to the specific ad using the adNo:

    https://c2c.binance.com/en/adv?code={adNo}
    • {adNo}: the ad number/identifier from the ad list result

    Example: https://c2c.binance.com/en/adv?code=123

  • This opens the specific ad detail page where user can place order directly with the selected advertisement.

Personal orders
  • Time format: YYYY-MM-DD HH:mm (UTC+0) — always display in UTC timezone
  • Include: type, asset/fiat, amount, total, status
  • Provide a brief summary line (count + totals) when filtering

Time field conversion (for createTime in listUserOrderHistory):

  • The createTime field returns a Unix timestamp in milliseconds (13 digits).
  • Convert to human-readable format in UTC+0 timezone:
    # Python example
    from datetime import datetime, timezone
    readable_time = datetime.fromtimestamp(createTime / 1000, tz=timezone.utc).strftime('%Y-%m-%d %H:%M (UTC+0)')
    
    # JavaScript example
    const readableTime = new Date(createTime).toISOString().replace('T', ' ').slice(0, 16) + ' (UTC+0)';
    // Or more explicitly:
    const date = new Date(createTime);
    const readableTime = date.getUTCFullYear() + '-' +
      String(date.getUTCMonth() + 1).padStart(2, '0') + '-' +
      String(date.getUTCDate()).padStart(2, '0') + ' ' +
      String(date.getUTCHours()).padStart(2, '0') + ':' +
      String(date.getUTCMinutes()).padStart(2, '0') + ' (UTC+0)';
  • Always display the converted time to users with timezone info, not the raw timestamp.

Error Handling (User-Facing)

  • Invalid API key (-2015): prompt to verify .env / API Management.
  • Signature failed (-1022): warn about wrong secret, sorted params, or stale timestamp.
  • Timestamp invalid (-1021): advise time sync / regenerate timestamp.
  • Rate limit: ask to retry later.

Limitations (By Design)

This skill does NOT:

  • Place/cancel orders
  • Mark as paid / release coins
  • Submit appeals
  • Post/modify advertisements
  • Expose sensitive order-detail endpoints beyond what’s needed for history/summary

For in-app actions, guide users to the official P2P orders page (only as a general entry point).

Developer Notes

Version Check (First Invocation per Conversation)

On the first invocation of this skill per conversation, call:

  • GET /bapi/c2c/v1/public/c2c/agent/check-version?version=1.0.1 (Base: https://www.binance.com)

Behavior:

  • If needUpdate=true: show: New version of P2P Skill is available (current: {clientVersion}, latest: {latestVersion}), update recommended.
  • Else / on failure: proceed silently.
Client-side operations
  • Asset filtering: if API doesn’t support it, fetch then filter locally.
  • Aggregations: compute totals client-side when summary endpoint is insufficient.

© npc-live, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in app/assets/skills/p2p of npc-live/clawfirm.

  • SKILL.md
  • CHANGELOG.md
  • LICENSE.md
  • references/authentication.md

Open the folder on GitHubat commit db435ed

Compare with similar skills

P2p 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.

P2p compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
P2p this skillnpc-live/clawfirm156—~2.3kAutomated safety check: NotesMIT
P2pbinance/binance-skills-hub1.1k—~9.9kAutomated safety check: NotesMIT
Trading Signalbinance/binance-skills-hub1.1k—~682Automated safety check: PassNone
Binance Leaderboardbinance/binance-skills-hub1.1k—~2.5kAutomated safety check: PassNone
Binance Onchain Copy Traderbinance/binance-skills-hub1.1k—~13kAutomated safety check: PassNone
Binance Trading SignalTermiX-official/cryptoclaw100—~817Automated safety check: PassMIT

Similar skills

  • P2p

    binance/binance-skills-hub

    Binance P2P trading assistant for natural-language queries about P2P/C2C market ads, the user's own P2P order history, order detail & appeal tracking, and advertisement publish & management.

    1.1k GitHub stars~9.9k tokensUpdated 27 days ago
    Business, Finance & HRAuto-check: notes
  • Trading Signal

    binance/binance-skills-hub

    Per-trade smart-money signals — each result is a discrete buy or sell event from a tracked smart-money wallet, with trigger price, current price, max gain since trigger, and exit rate.

    1.1k GitHub stars~682 tokensUpdated 27 days ago
    Business, Finance & HRAuto-check passed
  • Binance Leaderboard

    binance/binance-skills-hub

    On-chain wallet leaderboard and Gem Hunter analysis on Binance Web3.

    1.1k GitHub stars~2.5k tokensUpdated 27 days ago
    Business, Finance & HRAuto-check passed
  • Binance Onchain Copy Trader

    binance/binance-skills-hub

    Scaffold for assembling on-chain copy-trading strategies on Binance Agentic Wallet.

    1.1k GitHub stars~13k tokensUpdated 27 days ago
    Business, Finance & HRAuto-check passed
  • Binance Trading Signal

    TermiX-official/cryptoclaw

    Binance Web3 official skill — Smart Money on-chain trading signals tracking professional investor buy/sell activity on BSC and Solana.

    100 GitHub stars~817 tokensUpdated 4 mo ago
    Business, Finance & HRAuto-check passed
  • Metamask Agent Wallet

    nirholas/three.ws

    A skill your agent uses when the user asks anything about blockchain wallets, transactions, signing, token transfers, supported chains, wallet balances, perpetual futures trading, prediction…

    227 GitHub stars~4.5k tokensUpdated today
    Business, Finance & HRAuto-check passed

More from npc-live/clawfirm

All 49 skills in this repo
  • Solana Skill

    npc-live/clawfirm

    Interact with Solana blockchain via Helius APIs. An agent skill from npc-live/clawfirm.

    156 GitHub stars~1k tokensUpdated 3 mo ago
    Auto-check passed
  • Solana Sniper Bot

    npc-live/clawfirm

    Autonomous Solana token sniper and trading bot. An agent skill from npc-live/clawfirm.

    156 GitHub stars~913 tokensUpdated 3 mo ago
    Auto-check: notes
  • Fiat

    npc-live/clawfirm

    Query Binance fiat payment capabilities — supported countries, currencies, payment methods, limits, and crypto prices — via public APIs, plus authenticated order/payment history lookup.

    156 GitHub starsUsed in 1 repo~2.1k tokens
    Auto-check passed
  • Onchain Pay Open API

    npc-live/clawfirm

    Binance Onchain Pay enables users to buy cryptocurrency with fiat (e.g., EUR, USD) or send existing crypto from their Binance account directly to any external on-chain wallet address in a single…

    156 GitHub starsUsed in 1 repo~4.9k tokens
    Auto-check passed
  • Solana Easy Swap

    npc-live/clawfirm

    Swap any Solana token from chat. An agent skill from npc-live/clawfirm.

    156 GitHub stars~1.4k tokensUpdated 3 mo ago
    Auto-check passed
  • Pay people in SOL or USDC, buy and sell tokens, check prices, discover trending and new tokens, create and manage Solana wallets, stake SOL, earn yield through lending and managed vaults, borrow…

    156 GitHub starsUsed in 1 repo~4.7k tokens
    Auto-check passed

Works with

Questions about P2p

What does P2p do?

Binance P2P trading assistant for natural-language queries about P2P/C2C market ads and (optionally) the user’s own P2P order history. P2p is an agent skill from npc-live/clawfirm. Binance P2P trading assistant for natural-language queries about P2P/C2C market ads and (optionally) the user’s own P2P order history.

When should I use P2p?

P2p fits situations like: the user asks about P2P prices; searching/choosing ads; comparing payment methods; reviewing their P2P order history (requires API key).

How do I install P2p in Claude Code?

Run `npx skills add npc-live/clawfirm --skill p2p -a claude-code`. Or copy the skill folder (app/assets/skills/p2p in npc-live/clawfirm) into .claude/skills/p2p in your project. Claude Code loads it when a task matches its description.

How do I install P2p in Codex?

Run `npx skills add npc-live/clawfirm --skill p2p -a codex`. Or copy the skill folder (app/assets/skills/p2p in npc-live/clawfirm) into .agents/skills/p2p in your project. Codex loads it when a task matches its description.

Can I use P2p in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add npc-live/clawfirm --skill p2p -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/p2p, .gemini/skills/p2p, .github/skills/p2p and .opencode/skills/p2p in your project.

What does P2p need to run?

Going by SKILL.md and its folder, P2p needs credentials named BINANCE_API_KEY and BINANCE_SECRET_KEY. Our summary lists: Python 3; A credential in BINANCE_API_KEY; A credential in BINANCE_SECRET_KEY.

Does P2p access the network?

SKILL.md names 3 domains. In commands or code: binance.com, c2c.binance.com and api.binance.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is P2p safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does P2p use?

P2p is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does P2p use?

About 2.3k tokens (SKILL.md is roughly 9.1k 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 739 tokens, read only when the agent opens those files.

What are the alternatives to P2p?

Skills that share tags, products or a category with P2p: P2p (binance/binance-skills-hub, 1.1k stars), Trading Signal (binance/binance-skills-hub, 1.1k stars), Binance Leaderboard (binance/binance-skills-hub, 1.1k stars) and Binance Onchain Copy Trader (binance/binance-skills-hub, 1.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains P2p?

npc-live (a GitHub organization) maintains it in npc-live/clawfirm, which has 156 GitHub stars. The repository holds 49 skills in this directory. The repository was last updated on June 17, 2026.

Source: npc-live/clawfirm on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.