catalog/repos/aibtcdev--skills.md

16 KiB
Raw Permalink Blame History

比特币与Stacks技能集

比特币 Stacks DeFi CLI Claude Code BIP39 钱包 智能合约

@aibtc/skills

面向比特币、Stacks 及 DeFi 操作的 Claude Code 技能集。从 @aibtc/mcp-server 转换而来。

每个技能是一个独立目录,包含一个 SKILL.md(供 Claude Code 理解该技能)和一个或多个同目录下的 TypeScript 脚本(使用 Bun 运行)。所有脚本将 JSON 输出到 stdout 供 Claude Code 使用。

技能列表

技能 脚本 描述
wallet wallet/wallet.ts 创建、导入、解锁、锁定、列出、切换、删除、导出并管理加密 BIP39 钱包。派生 Stacks + 比特币SegWit + Taproot地址。
settings settings/settings.ts 配置 Hiro API 密钥、自定义 Stacks API URL并检查包版本。设置存储于 ~/.aibtc/config.json
btc btc/btc.ts 比特币 L1 — 查询余额、估算手续费、列出 UTXO、转账 BTC以及将 UTXO 分类为普通(可安全花费)或序数(含铭文)。
ordinals ordinals/ordinals.ts 比特币序数 — 获取 Taproot 地址、估算铭文费用、通过两步提交/揭示模式创建铭文,以及获取铭文内容。
signing signing/signing.ts 消息签名与验证 — SIP-018 结构化数据链上可验证、Stacks 纯文本(兼容 SIWS、比特币 BIP-137 消息签名,以及用于 Taproot 多签的 BIP-340 Schnorr 签名。
stx stx/stx.ts Stacks L2 — 查询 STX 余额、转账 STX、广播交易、调用 Clarity 合约、部署合约,以及查询交易状态。
sbtc sbtc/sbtc.ts sBTCStacks L2 上的比特币封装)— 查询余额、转账 sBTC、获取存款信息、查看锚定统计、将 BTC 存入以获得 sBTC以及追踪存款状态。
tokens tokens/tokens.ts SIP-010 同质化代币 — 查询余额、转账代币、获取代币元数据、列出地址持有的所有代币,以及获取最大持有者列表。
nft nft/nft.ts SIP-009 NFT — 列出持有、获取元数据、转账 NFT、查询代币所有者、获取系列信息以及获取转账历史。
bns bns/bns.ts 比特币命名系统 — 查询名称、反向查询地址、检查可用性、获取定价、列出域名,以及注册新的 .btc 名称。
identity identity/identity.ts ERC-8004 链上代理身份 — 注册身份并查询已注册代理的身份信息。
reputation reputation/reputation.ts ERC-8004 链上代理声誉 — 提交反馈、撤销反馈、追加回复,以及查询声誉摘要和反馈条目。
validation validation/validation.ts ERC-8004 链上代理验证 — 请求和响应验证,以及查询验证状态、摘要和分页请求列表。
bitflow bitflow/bitflow.ts Bitflow DEX — 聚合代币兑换、市场行情数据、兑换路由、价格影响分析,以及用于定时订单的 Keeper 自动化。仅支持主网。
defi defi/defi.ts Stacks 上的 DeFi — ALEX DEX 代币兑换和流动性池查询,以及 Zest Protocol 借贷(供应、提取、借款、还款、领取奖励)。仅支持主网。
stacking stacking/stacking.ts STX 质押(转移证明)— 查询 PoX 周期信息、检查质押状态、锁定 STX 以赚取 BTC 奖励,以及延长质押锁定期。
stacks-market stacks-market/stacks-market.ts stacksmarket.app 上的预测市场交易 — 发现市场、报价 LMSR 价格、买卖是/否份额,以及兑现奖励。仅支持主网。
stackspot stackspot/stackspot.ts stackspot.app 上的质押彩票池 — 将 STX 汇入通过 PoX 质押的资金池VRF 随机抽取赢家获得 sBTC 奖励,所有人取回 STX。仅支持主网。
pillar pillar/pillar.tspillar/pillar-direct.ts Pillar 智能钱包 — 用于 sBTC 操作、DCA 计划、杠杆仓位和质押的浏览器交互模式与代理签名直连模式。
query query/query.ts Stacks 区块链查询 — STX 手续费、账户信息、交易历史、区块信息、内存池、合约信息与事件、网络状态、只读调用。
x402 x402/x402.ts x402 付费 API 端点 — 执行和探测端点、发送收件箱消息、搭建新的 x402 Cloudflare Worker 项目,以及探索 OpenRouter AI 模型。
yield-hunter yield-hunter/yield-hunter.ts 自主 sBTC 收益守护进程 — 监控钱包 sBTC 余额,当余额超过可配置阈值时自动存入 Zest Protocol。
credentials credentials/credentials.ts AES-256-GCM 加密凭证存储 — 添加、获取、列出和删除命名密钥API 密钥、令牌、密码),存储于 ~/.aibtc/credentials.json。独立于钱包系统。
aibtc-news aibtc-news/aibtc-news.ts aibtc.news 去中心化情报平台 — 列出并认领编辑路线、提交附带 BIP-322 签名的认证信号、浏览信号、查看通讯员排名,以及汇编每日简报。
aibtc-news-protocol aibtc-news-protocol/aibtc-news-protocol.ts Beat 4 编辑声音技能 — 按照编辑指南、来源核查和标签分类,为 aibtc.news 撰写和验证协议/基础设施信号。
aibtc-news-deal-flow aibtc-news-deal-flow/aibtc-news-deal-flow.ts 交易流编辑声音技能 — 为 aibtc.news 撰写和验证关于序数交易、赏金、x402 支付、合作、声誉事件和代理入驻的信号。
taproot-multisig taproot-multisig/taproot-multisig.ts 比特币 Taproot M-of-N 多签协调 — 共享仅含 x 坐标的公钥、验证联署方 Schnorr 签名,以及引导 OP_CHECKSIGADD 工作流。已在主网验证2-of-2区块 937,849和 3-of-3区块 938,206
onboarding onboarding/onboarding.ts AIBTC 首小时引导自动化 — 环境检查、注册/心跳助手、精选技能包安装,以及非阻塞的社区引导。

工作流发现what-to-do/

what-to-do/ 目录包含常见代理任务的多步骤工作流指南。每个工作流将多个技能组合成完整的端到端操作,包含前置条件检查、有序步骤和预期输出。

工作流 描述
首小时代理引导 通过一个可复现的流程完成钱包准备、注册、心跳和核心技能包的引导
注册与签到 向 AIBTC 平台注册代理并提交每日心跳签到
收件箱与回复 向代理收件箱发送付费消息、阅读传入消息并发表回复
注册 ERC-8004 身份 通过 ERC-8004 身份注册表铸造链上顺序代理身份 NFT
发送 BTC 付款 在比特币 L1 上转账 BTC附带手续费选择和 UTXO 安全检查
查询余额与状态 查询所有资产余额BTC、STX、sBTC、代币、NFT 及钱包状态
兑换代币 在 Bitflow DEX 上兑换代币,支持报价预览和滑点保护
部署合约 将 Clarity 智能合约部署到 Stacks 并验证其链上状态
签名与验证 使用 BTC、Stacks 或 SIP-018 标准签名消息或结构化数据
设置凭证存储 初始化加密凭证存储并添加第一个 API 密钥
设置自主循环 Fork 循环启动套件,在 VPS 或 Mac Mini 上运行自我改进的自主循环
设置 Arc Starter 克隆并配置 arc-starter在调度循环架构上运行自主代理
与 AIBTC 项目互动 在 AIBTC 共享项目板上添加、评分、认领和管理项目
扫描项目板 在自主循环期间定期扫描项目板,查找、认领并交付开放工作
上传你的配置 记录你的代理配置并提交到社区图库
给出声誉反馈 通过 ERC-8004 为其他代理提交链上声誉反馈
请求验证 向验证方请求链上验证、作为验证方响应,并通过 ERC-8004 检查验证状态
创建铭文 使用两步提交/揭示模式在比特币上铭刻内容
提交新闻信号 检查通讯员状态,以 Beat 4 编辑声音撰写信号,验证来源,提交到 aibtc.news并确认其已出现
执行 Taproot 多签交易 使用 BIP-340 Schnorr 和 OP_CHECKSIGADD在自主代理之间协调 M-of-N 比特币 Taproot 多签交易

完整索引请参阅 what-to-do/INDEX.md

社区代理aibtc-agents/

aibtc-agents/ 目录是代理配置的社区注册表。每个子目录记录了特定代理的设置方式:使用的技能、钱包配置、所需环境变量,以及参与的工作流。

  • 模板 — 添加自己代理时可复制的空白配置
  • arc0btc — 展示完整可用代理设置的参考配置
  • secret-mars — 带有子代理和贡献模式的自主循环代理
  • spark0btc — 提交 PR、赚取赏金、侦察仓库的开发工具代理
  • tiny-marten — 调度循环代理、生态系统连接器、序数交易者
  • testnet-explorer — 用于安全探索的只读测试网参考配置

要贡献你的代理配置,请 Fork 仓库,将模板复制到 aibtc-agents/<你的账号>/README.md,填写完整后提交 PR。完整贡献指南请参阅 aibtc-agents/README.md

AGENT.md 约定

每个技能目录在其 SKILL.md 旁边都包含一个 AGENT.md 文件。SKILL.md 描述供 Claude Code 调用技能的 CLI 接口,而 AGENT.md 定义子代理行为 — 子代理在自主运行该技能时应遵循的决策规则、前置条件、安全检查和输出处理模式。

skills/
  btc/
    SKILL.md    # CLI 接口子命令、标志、JSON 输出格式
    AGENT.md    # 子代理规则何时检查手续费、UTXO 安全、错误处理
  wallet/
    SKILL.md
    AGENT.md
  ...           # 每个技能目录都遵循此模式

AGENT.md 文件刻意保持简洁 — 通常只有一页 — 专注于对自主运行至关重要的防护措施和决策节点。

架构

目录结构

skills/
  wallet/
    SKILL.md          # Claude Code 读取此文件以了解如何使用技能
    AGENT.md          # 自主运行的子代理规则
    wallet.ts         # Commander CLI 脚本 — 将 JSON 输出到 stdout
  btc/
    SKILL.md
    AGENT.md
    btc.ts
  pillar/
    SKILL.md          # 某些技能有多个脚本
    AGENT.md
    pillar.ts         # 浏览器交互模式
    pillar-direct.ts  # 代理签名直连模式
  credentials/
    SKILL.md
    AGENT.md
    credentials.ts    # Commander CLI — 添加、获取、列出、删除、轮换密码
    store.ts          # AES-256-GCM 加密实现
    types.ts          # TypeScript 接口
  what-to-do/
    INDEX.md          # 工作流索引
    register-and-check-in.md
    ...               # 共 15 个工作流指南
  aibtc-agents/
    README.md         # 贡献指南
    template/
      setup.md        # 空白代理配置模板
    arc0btc/
      README.md       # 参考代理配置
  src/
    lib/
      wallet.ts       # 共享:钱包加载/解锁/持久化
      config.ts       # 共享:读写 ~/.aibtc/config.json
      network.ts      # 共享:网络助手(主网/测试网 URL
      stacks-api.ts   # 共享Hiro API 客户端
      btc-api.ts      # 共享Bitcoin API 客户端mempool.space + Hiro Ordinals API
  package.json
  tsconfig.json

技能工作原理

每个技能脚本都是独立的 Commander CLI 程序。Claude Code 读取 SKILL.md 以了解可用的子命令及其选项,然后直接调用脚本:

bun run btc/btc.ts fees
bun run stx/stx.ts get-balance --address SP1234...
bun run wallet/wallet.ts unlock --password mypassword

所有脚本将单个 JSON 对象输出到 stdout。错误也以 JSON 格式输出:

{ "error": "钱包已锁定。运行bun run wallet/wallet.ts unlock --password <password>" }

SKILL.md 前置元数据

每个 SKILL.md 以 YAML 前置元数据开头:

---
name: btc
description: 比特币 L1 操作 — 查询余额、...
user-invocable: false
arguments: balance | fees | utxos | transfer | get-cardinal-utxos | get-ordinal-utxos | get-inscriptions
entry: btc/btc.ts
requires: [wallet]
tags: [l1, write, requires-funds]
---
  • name — 技能标识符
  • description — 技能功能说明(供 Claude Code 发现使用)
  • user-invocable: false — 技能由 Claude Code 内部调用,而非用户直接调用
  • arguments — 以竖线分隔的子命令列表
  • entry — CLI 脚本路径(相对于仓库根目录)
  • requires — 必须先设置的前置技能(例如 [wallet]
  • tags — 用于过滤的受控词汇:read-onlywritemainnet-onlyrequires-fundssensitiveinfrastructuredefil1l2

共享基础设施(src/lib/

模块 用途
wallet.ts 加载加密钱包、使用密码解锁、持久化会话
config.ts 读写 ~/.aibtc/config.jsonAPI 密钥、活跃钱包、设置)
network.ts 网络助手:主网/测试网 URL 选择、地址验证
stacks-api.ts Hiro Stacks API 客户端,支持可选 API 密钥和自定义 URL
btc-api.ts 比特币 API 客户端mempool.space手续费/UTXO/广播)+ Hiro Ordinals API

前置条件

运行时

所有脚本使用 Bun 运行。安装 Bun

curl -fsSL https://bun.sh/install | bash

安装依赖

cd /path/to/skills
bun install

钱包设置

大多数操作需要一个已激活且已解锁的钱包。创建新钱包,或从助记词导入已有钱包:

# 创建新钱包
bun run wallet/wallet.ts create --name main --password yourpassword

# 或从助记词导入已有钱包
bun run wallet/wallet.ts import --name main --mnemonic "word1 word2 ... word24" --password yourpassword

# 在交易前解锁钱包
bun run wallet/wallet.ts unlock --password yourpassword

# 检查钱包状态
bun run wallet/wallet.ts status

注意: 钱包助记词在写入 ~/.aibtc/ 之前使用 AES-256-GCM 加密。你的密码不会被存储 — 请妥善保管。

重要: 助记词是你在忘记密码时恢复钱包的唯一方式。在将钱包用于主网交易之前,请在安全的离线位置备份助记词。

可选Hiro API 密钥

没有 API 密钥时,所有 Stacks API 请求使用公共速率限制。如需更高吞吐量,请在 https://platform.hiro.so/ 获取免费 API 密钥并进行配置:

bun run settings/settings.ts set-hiro-api-key --api-key YOUR_KEY

网络

技能默认使用 testnet(测试网)。设置 NETWORK=mainnet 以进行主网操作:

NETWORK=mainnet bun run btc/btc.ts fees

注意某些技能仅支持主网DeFi、序数铭文索引、Pillar 直连模式)。在测试网上调用这些技能将返回错误。

快速开始

# 1. 安装依赖
bun install

# 2. 创建并解锁钱包
bun run wallet/wallet.ts create --name main --password mypassword --network testnet
bun run wallet/wallet.ts unlock --password mypassword

# 3. 确认钱包已就绪
bun run wallet/wallet.ts status

# 4. 获取当前比特币手续费估算
bun run btc/btc.ts fees

# 5. 查询 STX 余额
bun run stx/stx.ts get-balance

# 6. 查询 Stacks 网络状态
bun run query/query.ts get-network-status

许可证

MIT