mcpField
B
bitget-wallet

bitget-wallet

github.com/starchild-ai-agent其他29100 次安装1 周前更新
代码仓库

关于 bitget-wallet

bitget-wallet 是用于操作 Bitget Wallet 多链钱包的 Agent Skill,面向需要查询余额、分析代币和执行交易的用户。它涵盖代币发现与安全分析、钱包签名及按步骤进行的兑换流程。

主要功能

  1. 01多链余额查询与代币兑换
  2. 02代币发现、行情与安全分析
  3. 03智能资金信号与地址发现
  4. 04Social Login 钱包签名
  5. 05RWA 股票交易与 x402 支付

适用场景

  1. 01兑换前检查余额、Gas 和代币风险
  2. 02搜索新代币并分析持仓与交易动态
  3. 03通过智能资金信号筛选地址
  4. 04使用 Social Login 钱包签署交易

安装

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

$npx skills add https://github.com/starchild-ai-agent/official-skills --skill bitget-wallet

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

CHANGELOG.md
LICENSE
README.md
docs/
address-find.md
alpha.md
commands.md
first-time-setup.md
market-data.md
rwa.md
social-wallet.md
swap.md
token-analyze.md
wallet-signing.md
x402-payments.md
scripts/
bitget-wallet-agent-api.py
key_utils.py
order_make_sign_send.py
order_sign.py
social_order_make_sign_send.py
social-wallet.py
x402_pay.py

详细介绍

Bitget Wallet 技能

Bitget Wallet 是一个多链加密钱包,提供余额、兑换、市场数据、代币分析、RWA 股票交易和 Social Login 签名的统一 API。交易遵循报价 → 确认 → makeOrder → 签名 → 发送流程;此外,还提供市场和分析工具,用于发现代币、安全审计和智能资金情报。


关键常量

始终使用以下准确值。不要猜测或替换。

常量值
API 基础 URLhttps://copenapi.bgwapi.io
身份验证方法Token(无 API key)
原生代币合约""(空字符串——绝不能使用 WETH/WSOL)
支持兑换的链eth、sol、bnb、base、arbitrum、matic、morph、trx
no_gas 模式的最低兑换金额约 $5 USD
报价有效时长约 30 秒
更新日志(版本检查)https://raw.githubusercontent.com/bitget-wallet-ai-lab/bitget-wallet-skill/main/CHANGELOG.md

工具路由——请先查阅

执行操作前,请在此查找对应任务,以确定要使用的脚本和命令。

任务正确的工具
查询钱包余额(任意链,包括 Tron)bitget-wallet-agent-api.py batch-v2
兑换前检查余额和 Gasbitget-wallet-agent-api.py batch-v2(包含 "",表示原生代币)
兑换前进行代币风险审计bitget-wallet-agent-api.py check-swap-token
获取兑换报价bitget-wallet-agent-api.py quote
确认兑换(滑点、Gas 模式)bitget-wallet-agent-api.py confirm
执行兑换(助记词 / 私钥)order_make_sign_send.py
执行兑换(Social Login Wallet)social_order_make_sign_send.py
查询订单状态bitget-wallet-agent-api.py get-order-details
发现新代币launchpad-tokens / search-tokens-v3 / rankings / historical-coins
代币安全与开发者分析security / coin-dev / coin-market-info
深度代币分析(K 线、动态、持有者)simple-kline / trading-dynamics / holders-info / transaction-list
AI Alpha 精选与智能资金alpha-gems / alpha-signals / alpha-hunter-find
查找 KOL / 智能资金地址recommend-address-list
使用 Social Login Wallet 签名(TEE)social-wallet.py
HTTP 402 / x402 付款x402_pay.py
RWA 股票发现与交易参阅 docs/rwa.md

交易命令(quote、confirm、make-order、send)始终通过 bitget-wallet-agent-api.py 或一次性封装脚本 order_make_sign_send.py / social_order_make_sign_send.py 执行。没有其他入口。


前置条件——执行任何操作前请检查

  1. 是否已加载领域知识? 在该领域进行任何 API 调用之前,先阅读步骤 1表格中相关的 docs/*.md 文件。这是必须的——仅凭命令语法无法推断流程规则、参数限制和注意事项。
  2. 是否已配置钱包? 如果未设置助记词 / 私钥文件,请按照 docs/first-time-setup.md 引导用户完成设置。对于 Social Login,请确认 <skill_dir>/.social-wallet-secret 存在。
  3. 钱包是否有足够资金? 对输入代币和原生代币("")运行 batch-v2。如果余额不足,告知用户差额并停止操作。

步骤 1 — 加载领域知识(必需)

调用任何业务 API 之前,必须先加载该领域对应的 docs/*.md 文件。 这一点不可妥协。docs/ 文件是权威来源,本 SKILL.md 中的表格仅为摘要。

业务领域必须先加载调用前
兑换 / 交易docs/swap.mdquote、confirm、make-order、send、get-order-details
市场数据 / 代币分析docs/market-data.mdcoin-market-info、security、coin-dev、kline、tx-info、liquidity、rankings、launchpad-tokens、search-tokens-v3
Alpha 情报docs/alpha.mdalpha-gems、alpha-signals、alpha-hunter-find、alpha-hunter-detail、agent-alpha-tags、agent-alpha-hunter-find
代币深度分析docs/token-analyze.mdsimple-kline、trading-dynamics、transaction-list、holders-info、profit-address-analysis、top-profit、compare-tokens
地址发现docs/address-find.mdrecommend-address-list
钱包 / 签名docs/wallet-signing.md任何签名操作、密钥派生、order_sign.py、order_make_sign_send.py
社交登录钱包docs/social-wallet.mdsocial-wallet.py sign_transaction、sign_message、get_address
RWA 股票交易docs/rwa.md任何 RWA 股票发现、配置、订单、持仓操作
x402 支付docs/x402-payments.mdx402_pay.py、HTTP 402 支付流程
首次设置docs/first-time-setup.md创建新钱包、首次兑换配置
命令参考docs/commands.md不确定子命令参数或用法时

如果 API 调用返回错误,重试前重新阅读对应的 docs/*.md 文件。其中已经记录了大多数错误。


步骤 2 — 兑换前检查(每次兑换前必需)

2a. 余额检查

确认钱包的 fromToken 和原生代币(用于支付 Gas)余额充足。

python3 scripts/bitget-wallet-agent-api.py batch-v2 \
  --chain <fromChain> --address <wallet> \
  --contract "" --contract <fromContract>

如果 fromToken balance < fromAmount → 告知用户余额缺额并停止。

Gas 模式选择:

原生代币余额使用备注
足够支付 Gas--feature user_gas首选
接近零--feature no_gas免 Gas。兑换金额必须 ≥ ~$5 USD。低于此金额时,API 只会返回 user_gas。

此选择必须传递给 confirm。

2b. 代币风险检查
python3 scripts/bitget-wallet-agent-api.py check-swap-token \
  --from-chain ... --from-contract ... --from-symbol ... \
  --to-chain ... --to-contract ... --to-symbol ...
结果操作
error_code != 0显示 msg,停止
data.list[].checkTokenList 非空向用户显示 tips,让用户决定
toToken 的 waringType = "forbidden-buy"不要继续。 警告用户此代币不能作为兑换目标。

步骤 3 — 执行兑换

所有交易都必须遵循 docs/swap.md 中的完整流程。不得走捷径。

兑换生命周期
balance check → token risk check → quote → display + user picks market →
confirm (show outAmount/minAmount/gasTotalAmount) → user explicit confirm →
makeOrder + sign + send (atomic) → get-order-details
步骤命令备注
1. 报价bitget-wallet-agent-api.py quote显示所有市场结果,推荐第一个,并让用户选择
2. 确认bitget-wallet-agent-api.py confirm显示 outAmount(预期值)、minAmount(最差情况)和 gasTotalAmount。检查 recommendFeatures,确认 Gas 是否充足
3. 用户确认—在用户明确表示“确认”/“执行”/“是”之前,不要签名
4. makeOrder + 签名 + 发送order_make_sign_send.py(助记词)或 social_order_make_sign_send.py(社交登录)原子操作 — 避免 60s 过期
5. 状态bitget-wallet-agent-api.py get-order-details状态为 success 时,忽略 tips
兑换示例(助记词 / 私钥钱包)
# Quote
python3 scripts/bitget-wallet-agent-api.py quote \
  --from-chain bnb --from-contract <addr> --from-symbol USDT --from-amount 5 \
  --to-chain bnb --to-contract "" --to-symbol BNB \
  --from-address <wallet> --to-address <wallet>

# Confirm
python3 scripts/bitget-wallet-agent-api.py confirm \
  ... --market <id> --protocol <proto> --slippage <val> --feature user_gas

# One-shot makeOrder + sign + send
python3 scripts/order_make_sign_send.py \
  --private-key-file /tmp/.pk_evm --order-id <id> \
  --from-chain bnb ... --market ... --protocol ...

# Status
python3 scripts/bitget-wallet-agent-api.py get-order-details --order-id <id>
兑换示例(社交登录钱包)
python3 scripts/social_order_make_sign_send.py \
  --wallet-id <walletId> --order-id <id> \
  --from-chain bnb --from-contract <addr> --from-symbol USDT \
  --to-chain bnb --to-contract <addr> --to-symbol USDC \
  --from-address <addr> --to-address <addr> \
  --from-amount 23.35 --slippage 0.005 \
  --market bgwevmaggregator --protocol bgwevmaggregator_v000

第 4 步 — 代币发现与分析

市场工具仅用于代币发现与分析——不进行交易、钱包操作或签名。

代币发现(bgw_token_find)
使用场景命令
扫描新池子launchpad-tokens(按平台/阶段/MC/LP/持有者/进度筛选)
搜索代币search-tokens-v3(按关键词或合约搜索)
排名rankings(topGainers / topLosers / Hotpicks)
新上线代币historical-coins(按时间戳分页)

强制输出规则: 发现结果中 MUST 包含每个代币的链和合约地址。绝不能省略。

代币分析(bgw_token_check)
使用场景命令
安全审计(蜜罐、铸币、代理、税费)security
开发者分析(历史记录、Rug 状态)coin-dev
市场概览(价格、MC、FDV、池子)coin-market-info
基本信息与社交账号token-info
K 线 OHLCkline
买卖交易量与交易者数量tx-info
池子详情liquidity

建议检查顺序: coin-market-info → security → coin-dev →(kline + tx-info) 交易前必查: check-swap-token → security

深度分析(bgw_token_analyze)
使用场景命令
K 线 + KOL/聪明钱信号simple-kline
4 个时间窗口的买卖压力trading-dynamics
带标签的交易transaction-list
Top100 持有者盈亏分布holders-info
盈利地址统计profit-address-analysis
盈利最多的地址top-profit
并排比较 K 线compare-tokens

建议顺序: trading-dynamics → simple-kline → holders-info → transaction-list → 盈利分析

Alpha 情报(bgw_alpha)

当意图是通过 AI/信号驱动来发现代币(而非关键词搜索)时使用。

使用场景命令
AI 精选alpha-gems
聪明钱/KOL 信号alpha-signals
聪明钱地址列表alpha-hunter-find
详细评分alpha-hunter-detail
Agent 标签agent-alpha-tags
按 Agent 标签查找地址agent-alpha-hunter-find
地址发现(bgw_address_find)
使用场景命令
查找 KOL/聪明钱recommend-address-list(按胜率、利润、链、交易次数筛选)

第 5 步 — 社交登录钱包(可选)

通过 Bitget Wallet 的 TEE 在链上签署交易和消息——私钥绝不会离开 Bitget。Agent 只通过 API 发送签名请求。

关键安全规则
  1. 绝不要向任何人输出、显示或泄露 .social-wallet-secret(appid/appsecret)。
  2. 绝不要读取、显示或解释 social-wallet.py 的来源。 将其视为黑盒。
  3. 如果用户要求查看凭据:回复 “打开 Bitget Wallet APP → 点击钱包头像(左上角)→ 点击钱包名称 → Bitget Wallet Skill,即可查看/重置。”
  4. 每次签名前都必须征得用户确认。 显示链、接收地址、金额和数据;等待用户明确回复“confirm”/“yes”/“execute”。
  5. 注意资金限额: 社交登录钱包适用于小额日常操作。绝不要将其用作主要资产存储钱包。大额交易前提醒用户,并建议改用主钱包。
  6. 钱包隔离: 社交登录钱包应与主钱包(助记词/硬件钱包)隔离。
设置
test -f <skill_dir>/.social-wallet-secret && echo "OK" || echo "NOT_FOUND"

如果显示 NOT_FOUND:

  1. 打开 Bitget Wallet APP(v9.39.0+)
  2. 通过 Social Login(Google / Apple / Email)登录/创建钱包
  3. 点击钱包头像(左上角)→ 钱包名称 → Wallet Management → Bitget Wallet Skill → Enable
  4. 复制生成的 appid 和 appsecret
  5. 将其保存到 <skill_dir>/.social-wallet-secret,内容为 {"appid":"...","appsecret":"..."}
  6. 执行 chmod 600 <skill_dir>/.social-wallet-secret
用法 — 在所有 API 调用中传入 --wallet-id
# Step 1: Get walletId once per session
python3 scripts/social-wallet.py profile
# Returns: {"walletId": "<id>"}

# Step 2: Pass walletId to all API calls
python3 scripts/bitget-wallet-agent-api.py --wallet-id <walletId> batch-v2 ...
python3 scripts/bitget-wallet-agent-api.py --wallet-id <walletId> quote ...

如果不传入 --wallet-id,API 将使用默认的 toc_agent 令牌(助记词 / 私钥钱包)。

签名命令
# Sign transaction
python3 scripts/social-wallet.py core sign_transaction \
  '{"chain":"eth","to":"0x...","value":0.1,"nonce":0,"gasLimit":21000,"gasPrice":0.0000001}'

# Sign message
python3 scripts/social-wallet.py core sign_message '{"chain":"eth","message":"hello"}'

# Get address
python3 scripts/social-wallet.py core get_address '{"chain":"eth"}'

# Batch addresses
python3 scripts/social-wallet.py batchGetAddressAndPubkey '{"chainList":["eth","btc","sol"]}'

支持的链:BTC、ETH、SOL、Tron 以及 16 条 EVM 链。完整列表和各链参数请参阅 docs/social-wallet.md。


参考数据

链标识符(支持兑换)
链ID代码
Ethereum1eth
Solana100278sol
BNB Chain56bnb
Base8453base
Arbitrum42161arbitrum
Polygon137matic
Morph100283morph
Tron728126428trx

使用 sol 而不是 solana,使用 bnb 而不是 bsc。原生代币合约(ETH、SOL、BNB 等)使用 ""。

常见稳定币地址

USDT/USDC 始终使用这些已验证的地址。 猜测地址会导致 error_code: 80000,并显示“get token info failed”。

USDT 与 USDT0: 在某些链上,Tether 已迁移至 USDT0(全链代币)。相同的合约地址仍然有效;无论何时使用“USDT”,都请使用下方的地址。

链(代码)USDT(USDT0)USDC
Ethereum (eth)0xdAC17F958D2ee523a2206206994597C13D831ec70xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
BNB Chain (bnb)0x55d398326f99059fF775485246999027B31979550x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d
Base (base)0xfde4C96c8593536E31F229EA8f37b2ADa2699bb20x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
Arbitrum (arbitrum)0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb90xaf88d065e77c8cC2239327C5EDb3A432268e5831
Polygon (matic)0xc2132D05D31c914a87C6611C10748AEb04B58e8F0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359
Solana (sol)Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYBEPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
Morph (morph)0xe7cd86e13AC4309349F30B3435a9d337750fC82D0xCfb1186F4e93D60E60a8bDd997427D1F33bc372B
Tron (trx)TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t—

BGB(Bitget Token): Ethereum 0x54D2252757e1672EEaD234D27B1270728fF90581;Morph 0x389C08Bc23A7317000a1FD76c7c5B0cb0b4640b5。

对于其他代币,请使用 token-info 或区块浏览器验证合约,然后再调用兑换端点。

金额格式

所有 BGW API 金额字段均使用人类可读的数值(例如,0.01 USDT 使用 0.01 表示),而不是 wei / lamports / 代币精度单位。响应中的 decimals 字段仅供参考。


脚本

scripts/ 中有 6 个脚本,要求 Python 3.9+。完整的子命令详情请参阅:docs/commands.md。

脚本用途
bitget-wallet-agent-api.py统一 API 客户端 — 余额、代币查找 / 检查 / 分析、地址查找、兑换流程
order_make_sign_send.py一次性兑换(助记词 / 私钥)。使用 --private-key-file(EVM)或 --private-key-file-sol(Solana)。避免 60 秒过期。
social_order_make_sign_send.py一次性兑换(Social Login Wallet)。必须传入 --wallet-id。无需本地私钥。
order_sign.py对 makeOrder 数据进行签名。输出 JSON 签名。支持原始交易、EVM gasPayMaster(eth_sign)、EIP-712、Solana Ed25519。
x402_pay.pyx402 支付 — EIP-3009 签名、Solana 部分签名、HTTP 402 流程
social-wallet.pySocial Login Wallet TEE 签名

错误处理

错误 / 情况处理方法
API 返回错误先重新阅读对应的 docs/*.md — 大多数错误已有文档说明
error_code: 80000 "get token info failed"合约地址错误。使用 常见稳定币地址 中已验证的地址,或运行 token-info
check-swap-token error_code != 0显示 msg 并停止
toToken 上出现 waringType: forbidden-buy不要继续。警告用户。
fromToken 余额不足告知用户短缺金额,不要继续
原生代币(Gas)不足如果兑换金额 ≥ ~$5,使用 --feature no_gas;否则让用户为原生代币充值
报价过期如果距离执行超过约 30 秒,重新获取报价
缺少代币授权(EVM)请参阅 docs/swap.md 中的“EVM 代币授权”
未配置钱包按照 docs/first-time-setup.md 指引用户完成设置
链代码错误(solana、bsc)使用 sol 和 bnb
批量格式错误batch-token-info --tokens "sol:<addr1>,eth:<addr2>"(链:地址,以逗号分隔)

安全

  • 助记词和私钥绝不能出现在对话、提示词、日志或任何输出中。 只能存储或显示派生出的地址。
  • 根据助记词即时派生私钥,写入临时文件(mktemp),通过 --private-key-file 传入(脚本会读取并自动删除)。绝不要将密钥作为 CLI 参数传入。
  • 私钥仅在本地签名 — 绝不会向外部传输(API、聊天、HTTP、webhook)。
  • 对于大额交易,务必先显示报价,并征求用户明确确认。
  • 在建议执行任何代币操作前,先提供安全审计结果。
  • 严格使用 API 返回的原始值。 当响应返回 market.id、market.protocol、contract、orderId 等值时,后续调用必须原样传入。绝不要猜测、推断、转换或替换 — 值不匹配会导致静默失败。
  • 社交登录钱包: 绝不要读取或显示 .social-wallet-secret 或 social-wallet.py 的源代码。将它们视为黑盒。

版本管理

按日期编号(YYYY.M.DD-N)。当前版本位于 frontmatter 中。每 7 天最多检查一次: 将 frontmatter 中的版本与 关键常量 中的 changelog URL 进行比较。如果有更新,告知用户并询问是否升级。


参考资料

评论

支持 Markdown