关于 Moneo
Moneo 是面向 AI Agent 的钱包与资金策略工具包,在签名之前评估限额、预算和交易对手规则。它面向构建金融 Agent 的开发者,并提供可通过 MCP 使用的 Robinhood Chain 交易工具。
主要功能
- 01按 Agent 配置独立账户
- 02签名前执行支出策略检查
- 03设置限额、滚动预算与交易对手名单
- 04记录策略决定、原因与版本
- 05提供报价、订单与持仓功能
适用场景
- 01限制 Agent 的单笔和每日支出
- 02在签名前阻止不符合策略的付款
- 03让 Agent 查询报价并模拟交易
MCP 相关
@moneolabs/mcp 提供 MCP 服务,将受策略保护的钱包交给 Agent 主机使用,并支持 Robinhood Chain 上的交易工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @moneolabs/mcpMONEO_AGENTAgent identity recorded on every decision.MONEO_ASSETDefault asset for amounts that do not name one.MONEO_POLICYPath to a policy JSON file. Defaults to a cautious built-in policy.MONEO_KEY_PATH密钥Where the agent's key is kept. Defaults to ~/.moneo/key.json.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
9收录的工具列表 · 更新于 2 周前
此工具无需参数。
详细介绍
Moneo
面向 AI Agent 的自主金融。
模型永远看不到密钥的钱包、在签名前运行的支出策略,以及为永不休市的市场提供的执行能力。
moneowallet.com · 快速开始 · 软件包 · 各部分如何协同 · 状态 · 参与贡献
只能读取信息的 Agent,出错代价很低;能转移资金的 Agent 则不然。 Moneo 就是两者之间的这一层:它为 Agent 提供独立账户和独立限额,并记录每一次尝试,因此出错时付出的代价是遭到拒绝,而不是损失余额。
专为 Robinhood Chain 打造,代币化股票和 USDG 可在此全天候结算。能在凌晨 3 点交易的 Agent,只有在它也无法于凌晨 3 点毁掉账户时才有用;这正是防护机制的作用。
npm install @moneolabs/wallet @moneolabs/guard @moneolabs/trading
也可以完全跳过代码,直接为 Agent 宿主提供专属钱包——一把真实密钥、一套审慎策略,以及 Robinhood Chain 上的实时流动性池,通过 MCP 使用:
npx @moneolabs/mcp
快速开始
import { createGuard } from "@moneolabs/guard";
import { createWallet, localSigner, memoryRail, toolkit } from "@moneolabs/wallet";
// What this agent may do with money. Data, not code, and versioned.
const guard = createGuard({
perTransaction: { max: "$25" },
rolling24h: { max: "$100" },
counterparties: "allowlist-only",
allow: ["x402:*", "vendor:acme"],
escalate: { above: "$50" },
});
// One account per agent. The signer holds the key, the wallet holds a handle.
const wallet = await createWallet({
agent: "research-agent-01",
signer: localSigner(),
rail: memoryRail(),
guard,
funding: "$500",
});
await wallet.pay({ to: "x402:api.pricefeed.dev/quote", amount: "$0.04" });
// Hand the tools to your agent framework of choice.
const tools = toolkit(wallet, { guard });
examples/ 中提供了两个可运行的示例:
node --experimental-strip-types examples/quickstart.ts
node --experimental-strip-types examples/guarded-trading.ts
软件包
| 软件包 | 功能 |
|---|---|
| @moneolabs/wallet | 每个 Agent 一个账户。可插拔的托管和支付通道,以及用于 MCP 或函数调用的 Agent 工具包。 |
| @moneolabs/guard | 上限、滚动预算、频率限制、允许列表和人工升级审核,均在签名前评估。 |
| @moneolabs/trading | 多场所报价、滑点限制、市价单、限价单、TWAP 和括号订单、持仓及盈亏。 |
| @moneolabs/mcp | 覆盖以上所有功能的 MCP 服务:npx @moneolabs/mcp 可为任何 Agent 宿主提供受防护的钱包。 |
| @moneolabs/core | 精确的货币运算、资产、时长、时钟和价格来源。供其余软件包共享。 |
每个软件包都可以独立使用。即使完全不使用钱包,防护机制也很实用:它可以直接部署在你已有的支付函数前面。
各部分如何协同
agent
│ pay / quote / trade
▼
wallet ──────► guard ──────► decision: allow | hold | block
│ │
│ └─► ledger (every attempt, verdict and reason, blocks included)
│
├─► signer (holds the key; the agent never sees it)
└─► rail (chain, processor, internal ledger)
这一设计带来三个特性,它们正是本项目的核心:
拒绝请求不产生费用。 策略在意图和签名之间运行,因此被拦截的付款不会广播,也不会产生费用。check() 会告知你将会发生什么,但不会实际执行。
转账中的资金不是你可用的资金。 请求获准后会立即预留预算,之后再结算或释放。支付通道处理失败时,预算会退还,而不会一直被占用。
每项判定都有据可查。 决策记录会注明请求者是哪个 Agent、请求内容是什么,以及由哪个版本的哪项策略作出判定。策略版本采用内容寻址,因此仅键顺序不同或金额写法不同的两项策略也会获得相同的 ID。
设计说明
金额绝不是浮点数。 每笔金额都是以 bigint 表示的最小货币单位整数。每次检查时预算若偏差一分的一小部分,最终就会放行不该通过的交易。parseMoney("$0.001") 会抛出异常,而不是悄悄舍去你想保留的精度。
时间由外部注入。 滚动窗口、频率限制和 TWAP 计划都读取 Clock。传入 manualClock(),一笔需要三十分钟的订单只需一毫秒就能完成测试。测试套件涵盖了二十五小时后的预算重置,无需等待那么久。
拒绝以值的形式返回。 Agent 工具包会将被拦截的付款作为普通结果返回,其中包含原因和提示,而不是抛出异常。模型收到堆栈跟踪时会重试;收到“此限额由钱包所有者设置,请让他们调高”时则会停止并说明原因。
外部依赖均通过接口接入。 Signer、Rail、Venue、PriceSource、Approver 和 DecisionLedger 都是接口,并提供可用的参考实现。目标是 Robinhood Chain,但包中没有任何内容将其写死:网络是由你传入的字符串,支付通道则是由你提供的对象。
已实现和未实现的内容
本仓库会如实说明自身的边界。
已完整实现,现已可用。 防护器已完整实现:限额、滚动预算、频率限制、允许列表和拒绝列表、资产与操作规则、升级处理、预留与结算、策略版本管理以及基于历史记录的重放。它没有依赖任何托管服务,也不需要此类服务。金额运算、持仓账簿和订单类型同样都是真实可用的。
通过接口实现,并提供本地参考适配器。 托管功能提供 localSigner,这是一个真正的 Ed25519 签名器,密钥不会离开进程;另有用于 enclave 或 MPC 服务的 remoteSigner。价值转移功能提供 memoryRail,这是一个真正的复式记账账簿,只不过运行在内存中。执行功能提供 simulatedVenue,它是确定性的,并由你提供的价格表驱动。
未包含。 本项目不提供托管式 Moneo API、链客户端、发卡功能或内置价格源。这些功能需要你自行编写适配器,或单独获取。
这也意味着,你不需要 API 密钥,也不需要创建账户。这些是库,不是服务客户端:策略在你的进程中评估,签名器和支付通道则由你传入对象。需要凭据的是你连接到的服务。
开发
npm install
npm test # 120 tests, no network, no waiting on real clocks
npm run typecheck
npm run build
npm run check # format, types, tests, build
需要 Node 20 或更高版本。
许可证
MIT。请参阅 LICENSE。
Moneo 是面向开发者的基础设施,不是经纪商、银行或投资顾问。你需要对 Agent 所遵循的策略以及连接的支付通道负责。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
