
AMA Protocol CLI速查手册deploytx、buildtx常用命令一网打尽【免费下载链接】node项目地址: https://gitcode.com/GitHub_Trending/node95/node想在 AMA Protocol 链上部署智能合约、却不知道从哪下手这份AMA Protocol CLI 速查手册就是为你准备的。本文把deploytx部署 WASM 合约和buildtx构造合约调用交易这两条高频命令拆开揉碎配合真实示例和参数速查表让你从零开始也能快速完成链上交互。全文照抄即可运行新手友好。AMA Protocol CLI 是什么先认识 amadeusdAMA Protocol 是一条面向 AI Agent 的隐私 Layer1 公链支持WASM 智能合约、500ms 出块、BLS12-381 签名和 MatMul 工作量证明。它的官方节点客户端amadeusd内置了一套简洁的 CLI 工具入口实现位于 ex_bakeware.ex核心命令如下命令作用使用频率deploytx部署 WASM 智能合约⭐⭐⭐⭐⭐buildtx构造调用合约的交易⭐⭐⭐⭐⭐build_and_broadcasttx构造并直接广播交易⭐⭐⭐generate_wallet生成新钱包公钥私钥⭐⭐⭐getpk从私钥文件推导出公钥⭐⭐ 小知识deploytx、buildtx默认只负责构造并打印交易字节不会自动上链。把输出交给 RPC 节点才算真正提交这一点下面会详细演示。第一步准备工作——私钥与 WASM 文件1️⃣ 准备私钥sk 文件amadeusd通过WORKFOLDER环境变量定位私钥文件sk内容是 Base58 编码的 64 字节种子默认目录是~/.cache/amadeusd。指定自定义目录的方法# 方式一直接生成新钱包 ./amadeusd generate_wallet # 方式二指定私钥目录推荐避免污染默认目录 mkdir -p /home/user/key1 touch /home/user/key1/sk WORKFOLDER/home/user/key1/ ./amadeusd getpk /home/user/key1/sk2️⃣ 编译 WASM 合约项目在 contract_samples/assemblyscript 提供了 4 个现成合约计数器、存币、代币和 NFT。编译命令asc 0_counter.ts --target release --importMemory --memoryBase 65536 --outFile counter.wasm也可以直接运行项目自带的批量脚本 build_and_validate.sh一次编译全部合约并调用 RPC 校验字节码是否合法./build_and_validate.shdeploytx 命令详解一键部署 WASM 合约标准部署命令deploytx的用法非常简单只接受一个参数WASM 文件路径。内部会自动完成字节码校验调用BIC.Contract.validate并用你的私钥签名打包一笔Contract.deploy交易WORKFOLDER/home/user/key1/ ./amadeusd deploytx /home/user/project/node/contract_samples/assemblyscript/deposit.wasm部署后直接上链deploytx输出的是 Base58 编码的交易字节前 4 行是 Bakeware 的启动横幅用sed 1,4d去掉后交给 RPC 即可完成提交WORKFOLDER/home/user/key1/ ./amadeusd deploytx /home/user/project/node/contract_samples/assemblyscript/deposit.wasm \ | sed 1,4d \ | curl -X POST -H Content-Type: application/octet-stream --data-binary - \ https://mainnet-rpc.ama.one/api/tx/submit部署前先验证字节码不放心的话可以先单独校验 WASM 是否会被链接受curl -X POST -H Content-Type: application/octet-stream \ --data-binary deposit.wasm \ https://mainnet-rpc.ama.one/api/contract/validatebuildtx 命令详解构造合约调用交易参数拆解buildtx的完整语法是./amadeusd buildtx 合约地址 函数名 参数列表 [附带代币符号] [附带数量]参数含义示例合约地址部署者的公钥PK或合约地址${PK}函数名要调用的合约函数deposit/withdraw参数列表Elixir 语法数组[AMA,100]附带代币符号转账的代币可选AMA附带数量转账金额可选1000调用合约函数以存币合约1_deposit为例调用deposit函数存入 1000 AMAexport PK777d6Z9WMM5WvKRaEuJH5abEBSMuuoQzotND82j5QpmxWBNfyusgQu46ZyHy9kgYT8 WORKFOLDER/home/user/key1/ ./amadeusd buildtx ${PK} deposit [] AMA 1000 \ | sed 1,4d \ | curl -X POST -H Content-Type: application/octet-stream --data-binary - \ https://mainnet-rpc.ama.one/api/tx/submit调用withdraw取款WORKFOLDER/home/user/key1/ ./amadeusd buildtx ${PK} withdraw [AMA,100] \ | sed 1,4d \ | curl -X POST -H Content-Type: application/octet-stream --data-binary - \ https://mainnet-rpc.ama.one/api/tx/submit 提示合约地址支持两种传法——超过 48 字节的 Base58 公钥会自动解码也可以直接传符号名如内置的Coin。查询合约状态调用完别忘了验证结果查看账户在合约中的余额export PK777d6Z9WMM5WvKRaEuJH5abEBSMuuoQzotND82j5QpmxWBNfyusgQu46ZyHy9kgYT8 curl -X GET -H Content-Type: application/octet-stream \ https://mainnet-rpc.ama.one/api/contract/get/${PK}/vault:${PK}:AMA进阶技巧一条命令完成构造广播嫌| curl管道太麻烦直接用build_and_broadcasttx构造完自动提交并打印交易哈希WORKFOLDER/home/user/key1/ ./amadeusd build_and_broadcasttx ${PK} increment [1]本地测试网部署前先试跑零成本练手在主网上操作之前强烈建议先跑本地测试网方法见 GETTINGSTARTED.mdTESTNETtrue WORKFOLDER/tmp/testnet HTTP_IPV4127.0.0.1 HTTP_PORT80 ./amadeusd启动后即可用相同姿势调用把 RPC 地址换成http://localhost# 在测试网部署并调用计数器合约 ./amadeusd deploytx counter.wasm | sed 1,4d | curl -X POST -H Content-Type: application/octet-stream --data-binary - http://localhost/api/tx/submit ./amadeusd buildtx ${PK} increment [1] | sed 1,4d | curl -X POST -H Content-Type: application/octet-stream --data-binary - http://localhost/api/tx/submit更多合约示例Coin 代币、NFT 铸造等可以参考 contract_samples/README.md 和 Rust 版示例 rust/README.md。常见报错与排查技巧现象原因解决办法输出为空 / 无签名WORKFOLDER下找不到sk文件检查私钥路径touch sk后写入 Base58 种子提交后无反应交易字节未去除前 4 行横幅确认管道中有sed 1,4d部署被拒WASM 字节码不合法先用/api/contract/validate校验参数格式错误参数未用 Elixir 数组语法写成[AMA,100]形式签名失败私钥种子不是 64 字节用generate_wallet重新生成总结AMA Protocol CLI 常用命令速查表场景命令生成钱包./amadeusd generate_wallet推导公钥WORKFOLDER... ./amadeusd getpk sk路径部署合约WORKFOLDER... ./amadeusd deploytx wasm路径调用合约WORKFOLDER... ./amadeusd buildtx PK 函数 参数 [符号] [数量]构造并广播WORKFOLDER... ./amadeusd build_and_broadcasttx PK 函数 参数提交交易输出经sed 1,4d后 POST 到/api/tx/submit校验合约POST wasm 到/api/contract/validate这份AMA Protocol CLI 速查手册覆盖了从部署到调用的完整链路先用asc编译 WASM再用deploytx上链之后用buildtx随心调用最后用 RPC 查询验证结果。把这页收藏起来下次写 AMA 合约时就不用翻文档啦【免费下载链接】node项目地址: https://gitcode.com/GitHub_Trending/node95/node创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考