SDWallet Logo
SDWallet已通过

AgentVaultAgent 原生的非托管链上支付系统,基于 Monad。Monad Blitz 杭州黑客松 — Agentic Payment 赛道English | 中文一键部署(Claude Code / Cursor / AI Agent)适用于 Claude Code / Cursor / Windsurf / 任何 MCP 兼容 Agent前置要求:node >=18、pnpm、一个持有 MON(用于 Gas)的 Monad 测试网钱包第一步:克隆、安装、部署# 克隆 & 安装依赖 git clone https://github.com/zabr1314/hermes-pay.git agentvault && cd agentvault pnpm install ​ # 安装 Monad Foundry(已装过可跳过) curl -L https://foundry.category.xyz | bash && source ~/.zshrc && foundryup --network monad ​ # 配置环境变量 — OWNER_PRIVATE_KEY 必填 cp .env.example .env # 编辑 .env,填入你的 OWNER_PRIVATE_KEY ​ # 部署合约到 Monad 测试网(自动将合约地址写入 .env) ./scripts/deploy.sh ​ # 编译所有包 pnpm build第二步:接入你的 AgentClaude Code:claude mcp add agentvault node $(pwd)/packages/mcp-server/dist/index.js或手动添加到 ~/.claude.json:{  "mcpServers": {    "agentvault": {      "command": "node",      "args": ["/你的路径/agentvault/packages/mcp-server/dist/index.js"],      "env": {        "OWNER_PRIVATE_KEY": "0x你的私钥",        "AGENTVAULT_ADDRESS": "0x合约地址"     }   } } }Cursor: Settings → MCP → 添加服务器,Command 填 node,Args 指向 packages/mcp-server/dist/index.js其他 MCP 兼容 Agent: 使用相同的 stdio 配置格式。第三步:验证 & 使用重启你的 Agent,然后试试:> 帮我设置钱包 > 创建 session key,单笔限 5 USDC > 支付 0.001 MON 给 0x...dead 用于测试 > 查看支付历史一键启动所有服务./scripts/start-all.sh启动后:Dashboard:http://localhost:3000 — 可视化管理面板Merchant Server (x402):http://localhost:4020 — 付费 API 示例MCP Server:由 Agent 自动管理(stdio 模式)项目简介AgentVault 让 AI Agent 在用户授权范围内自主完成链上支付:特性说明Session Key给 Agent 发放受限临时密钥:有效期、单笔上限、每日预算、Token 锁定Policy EngineYAML 可配置策略引擎:分类限制、收款方黑白名单、超阈值人工确认Audit Trail每笔支付生成结构化审计日志:触发者、任务上下文、策略命中、风险等级x402 SupportHTTP 402 机器支付协议 — Agent 调用付费 API 自动签名支付MCP Integration12 个 MCP Tools + 3 个 Resources,直接集成 Claude Code / Cursor 等DashboardNext.js 可视化面板:余额、Session Key、审计日志、策略管理Non-custodial用户自持资产,Agent 无法接触真实私钥,用户可随时撤销权限系统架构                   ┌──────────────────────────────┐                   │   AI Agent (Claude Code)     │                   └──────────┬───────────────────┘                               │ MCP (stdio)                               ▼ ┌──────────┐   ┌─────────────────────────────┐   ┌──────────────┐ │ Dashboard │   │       MCP Server           │   │ Merchant   │ │ (Next.js) │   │ 12 tools + 3 resources     │   │ Server     │ │ :3000     │   │ Policy Engine + Audit Log │   │ (x402)     │ └─────┬─────┘   └──────────┬──────────────────┘   │ :4020       │     │                     │                       └──────┬───────┘     │         ┌──────────▼──────────┐                   │     └──────────►   @agentvault/sdk ◄───────────────────┘                 │ Wallet + SessionKey │                 │ Transaction Builder │                 └──────────┬──────────┘                           │ JSON-RPC                           ▼                 ┌──────────────────────┐                 │   Monad Blockchain   │                 │   AgentVault.sol     │                 │   Chain ID: 10143   │                 └──────────────────────┘目录结构agentvault/ ├── contracts/                 # Solidity 智能合约 (Foundry) │   ├── src/AgentVault.sol     # 核心合约 (Session Key + 限额 + 暂停) │   ├── test/AgentVault.t.sol   # 30 个 Forge 测试 │   └── script/Deploy.s.sol     # 部署脚本 │ ├── packages/ │   ├── sdk/                   # TypeScript SDK (@agentvault/sdk) │   │   └── src/ │   │       ├── wallet.ts       # 钱包管理 │   │       ├── session-key.ts # Session Key 生命周期 │   │       ├── transaction.ts # 交易构建 │   │       ├── policy-engine.ts# YAML 策略引擎 │   │       ├── audit.ts       # SQLite 审计日志 │   │       └── x402-client.ts # x402 付费 API 客户端 │   │ │   ├── mcp-server/             # MCP Server (Claude Code 集成) │   │   └── src/ │   │       ├── index.ts       # 服务入口 │   │       └── tools/         # 12 个 MCP Tools │   │ │   ├── frontend/               # Dashboard (Next.js) │   │   └── app/               # 余额/Session/审计/策略 面板 │   │ │   └── merchant-server/       # x402 Merchant Server (Express) │       └── src/               # 付费 API 示例 (天气/计算/部署) │ ├── demo/ │   ├── e2e-demo.ts             # 链上端到端演示 │   └── local-test.ts           # 本地验证 (无需链) │ ├── scripts/ │   ├── deploy.sh               # 一键部署合约 │   └── start-all.sh           # 一键启动所有服务 │ ├── .env.example               # 统一环境变量模板 ├── package.json               # pnpm monorepo root └── pnpm-workspace.yaml环境变量变量必填说明OWNER_PRIVATE_KEY是钱包私钥AGENTVAULT_ADDRESS是合约地址(deploy.sh 自动填入)MONAD_RPC_URL否默认 https://testnet-rpc.monad.xyzAGENT_VAULT_AGENT_ID否Agent 标识,用于审计日志,默认 unknownMERCHANT_PORT否Merchant Server 端口,默认 4020MERCHANT_WALLET_PRIVATE_KEY否商户钱包私钥,默认同 OWNERKEYSTORE_PASSWORD否本地密钥存储加密密码测试# 合约测试(30 tests,零配置) cd contracts && forge test -v ​ # SDK 测试(27 tests,零配置) pnpm test:sdk ​ # 本地集成验证(13 checks,零配置,无需链) pnpm exec tsx demo/local-test.ts ​ # 链上端到端(需要 .env 配置) source .env && pnpm exec tsx demo/e2e-demo.tsMCP ToolsTool说明setup_wallet初始化/导入钱包,部署合约get_balance查询 MON + USDC 余额create_session创建受限 Session Keyrevoke_session撤销 Session Keylist_sessions列出所有 Session Keymake_payment策略检查 + 链上支付 + 审计pay_for_apix402 付费 API 调用(带策略检查)get_policy查看当前策略update_policy修改策略规则get_history查询审计日志get_spending_summary花费统计emergency_pause紧急暂停/恢复安全模型完全信任:链上合约逻辑(代码即法律) 部分信任:链下 Policy Engine(可被绕过,但有链上限额兜底) 零信任: Agent 本身(Agent 可以尝试任何操作,合约负责拦截)Owner Key — 全权控制,AES-256-GCM 加密存储Session Key — 临时受限,链上强制执行限额allowedToken — 每个 Session Key 锁定一种 TokenPolicy Engine — 链下二次检查 + 人工确认流程技术栈Solidity 0.8.28 + Foundry | TypeScript + Viem | MCP SDK | Next.js 14 | Express | SQLite | Monad Testnet (10143)LicenseMIT

项目截图

截图 1

创建者:Lucian-1

创建时间:2026年4月12日

活动详情
Monad Blitz@杭州 V2.0

Monad Blitz@杭州 V2.0

查看活动详情

活动
calendar2026年4月12日

团队成员

LLucian-1
队长
赵泽瑞
洪玉麟

团队名称: SDWallet