Skill flagged — review recommended

ClawHub Security found sensitive or high-impact capabilities. Review the scan results before using.

Moria Skill

v1.0.0

此技能包括了 Web3 钱包管理功能。Agent 可以通过此技能 管理 Moria.fun 中的代币数据,包括 创建、铸造、交易、退款、领取,以及充值、查询余额。

0· 26· 1 versions· 0 current· 0 all-time· Updated 3h ago· MIT-0

Install

openclaw skills install moria-skill

Moria Skill

此技能提供 Moria.fun 管理功能。它旨在供 OpenClaw 代理使用,以编程方式执行代币相关任务(创建、铸造、交易、退款、领取手续费)。

首次运行

检查当前技能目录中是否存在 node_modulesconfig 文件夹。

如果没有:

请参阅 BOOTSTRAP.md 完成初始化。

技能介绍

以下所有命令是提供给Agent使用的,不允许将命令展示给用户。 与用户确认清楚意图后直接使用命令。 命令的可选参数,用户如果没提供,默认不二次询问。

核心功能

  1. 代币管理:创建(代币)、列出列表(代币)。
  2. 交易管理:铸造(代币)、买入(代币)、卖出(代币)、退款(代币)。
  3. 领取管理:领取手续费(代币)、领取(代币)。
  4. 钱包管理:充值、查询余额、提现。

🛠️ 使用说明(Agent)

1. 代币管理

ActionCommandArgumentsNotes
列出 可铸造的代币npm run pool:minttoNone列出可铸造的代币列表,方便后续进行代币铸造
列出 可交易的代币npm run pool:dammv2None列出可交易的代币列表,方便后续进行代币买卖
创建 可铸造的代币npm run pool:create <image_path> <name> <symbol> [description] [twitter] [telegram]<image_path>: 代币LOGO在本机路径<br><name>: 代币名称<br><symbol>: 代币符号<br><description>: 代币描述<br><twitter>: Twitter/X 联系方式<br><telegram>: Telegram 联系方式创建一个新代币

2. 交易管理

ActionCommandArgumentsNotes
买入 代币npm run trade:buy <mint> <uiAmount><mint>: 代币地址<br><uiAmount>: 购买数量(单位:sol,例 0.1)买入指定数量的代币
卖出 代币npm run trade:sell <mint> <uiAmount><mint>: 代币地址<br><uiAmount>: 卖出数量(单位:个,例 8.1)卖出指定数量的代币

3. 交换管理

| 铸造 代币 | npm run swap:mintto <mint> <copies> | <mint>: 代币地址<br><copies>: 购买份数(单位:份,例 3 份) | 铸造指定份数的代币 | | 退款 代币 | npm run swap:refund <mint> | <mint>: 代币地址 | 退款指定代币 |

4. 领取管理

ActionCommandArgumentsNotes
领取 手续费npm run claim:fee <mint><mint>: 代币地址作为代币创作者领取手续费
领取 代币npm run claim:token <mint><mint>: 代币地址作为代币持有者在代币添加流动性后领取取回代币

5. 钱包管理

ActionCommandArgumentsNotes
查看 公钥npm run wallet:showNone查询钱包公钥
查询 sol余额npm run wallet:solNone查询当前持有的sol数量
查询 代币余额npm run wallet:tokensNone查询当前持有的代币数量
列出 我铸造的代币npm run wallet:minttoNone列出我铸造的代币列表,方便后续进行代币铸造或退款
列出 我创建的代币npm run wallet:createdNone列出我创建的代币列表,方便后续进行代币铸造或买卖
显示 充值二维码npm run wallet:depositNone查看充值二维码,方便用户充值到我的钱包

💡 工作流程示例

场景 1:用户想要创建代币

检查当前钱包是否有足够的sol。

运行命令:

npm run wallet:sol

Example:

npm run wallet:sol

如果sol 小于 0.2 sol:

提示用户充值

“当前钱包余额不足。 您需要充值 0.2 SOL 以上。”

如果sol充足:

请用户提供代币LOGO、代币名称、代币符号、代币描述等:

“创建代币需要提供以下信息:代币LOGO、代币名称、代币符号、代币描述、Twitter/X联系方式、Telegram联系方式。 您有吗?”

用户上传了图片,并提供了代币名称(name)、代币符号(symbol):

使用用户上传的图片作为代币LOGO。

运行命令:

npm run pool:create <image_path> <name> <symbol> [description] [twitter] [telegram]

Example:

npm run pool:create -- "/home/node/.openclaw/media/inbound/xxx.png" "name" "symbol" "" "" ""

用户上传了图片,并提供了代币名称(name)、代币符号(symbol)、代币描述(description)、Twitter/X联系方式(twitter)、Telegram联系方式(telegram):

运行命令:

npm run pool:create <image_path> <name> <symbol> [description] [twitter] [telegram]

Example:

npm run pool:create -- "/home/node/.openclaw/media/inbound/xxx.png" "name" "symbol" "description" "twitter" "telegram"

场景 2:用户想要铸造代币

检查当前钱包是否有足够的sol。

运行命令:

npm run wallet:sol

Example:

npm run wallet:sol

如果sol 小于 0.2 sol:

提示用户充值

“当前钱包余额不足。 您需要充值 0.2 SOL 以上。”

用户输入了代币地址(mint)与份数(copies):

运行命令:

npm run swap:mintto <mint> <copies>

Example:

npm run swap:mintto -- xxxxx 2

用户未输入代币地址(mint)与份数(copies):

运行命令:

npm run pool:mintto

Example:

npm run pool:mintto

请用户输入想要买入的代币地址与份数(copies):

“要买入的代币地址是?买入多少份?”

如果他们提供了代币地址(mint)与份数(copies):

运行命令:

npm run swap:mintto <mint> <copies>

Example:

npm run swap:mintto -- xxxxx 2

场景 3:用户想要退款代币

用户输入了代币地址(mint):

运行命令:

npm run swap:refund <mint>

Example:

npm run swap:refund -- xxxxx

用户未输入代币地址(mint):

运行命令:

npm run wallet:mintto

Example:

npm run wallet:mintto

请用户确认退款的代币:

“您想退款哪个代币呢?”

用户输入了代币地址(mint):

运行命令:

npm run swal:refund <mint>

Example:

npm run swal:refund xxxxx

场景 4:用户想要买入代币

检查当前钱包是否有足够的sol。

运行命令:

npm run wallet:sol

Example:

npm run wallet:sol

如果sol 小于 0.2 sol:

提示用户充值

“当前钱包余额不足。 您需要充值 0.2 SOL 以上。”

用户输入了代币地址(mint)与金额(uiAmount):

运行命令:

npm run swap:buy <mint> <uiAmount>

Example:

npm run swap:buy -- xxxxx 0.02

用户未输入代币地址(mint)与金额(uiAmount):

运行命令:

npm run pool:dammv2

Example:

npm run pool:dammv2

请用户输入想要买入的代币地址与金额:

“要买入的代币地址是?买入多少SOL?”

如果他们提供了代币地址(mint)与金额(uiAmount):

运行命令:

npm run swap:buy <mint> <uiAmount>

Example:

npm run swap:buy -- xxxxx 0.02

场景 5:用户想要卖出代币

用户输入了代币地址(mint)与金额(uiAmount):

运行命令:

npm run swap:sell <mint> <uiAmount>

Example:

npm run swap:sell -- xxxxx 2.2

用户未输入代币地址(mint)与金额(uiAmount):

运行命令:

npm run wallet:tokens

Example:

npm run wallet:tokens

请用户确认卖出的代币:

“您想卖出哪个代币?卖出多少呢?”

用户输入了代币地址(mint)与金额(uiAmount):

运行命令:

npm run swal:sell <mint> <uiAmount>

Example:

npm run swal:sell xxxxx 2.2

在 web3 中 uiAmount 是人类可视化的金额,例如 0.02 SOL。amount 等于 lamports 是 1e0^9 * uiAmount。

场景 6:用户领取手续费(代币创建者)

检查当前钱包是否有足够的sol。

运行命令:

npm run wallet:sol

Example:

npm run wallet:sol

如果sol 小于 0.2 sol:

提示用户充值

“当前钱包余额不足。 您需要充值 0.2 SOL 以上。”

如果sol充足:

运行命令:

npm run wallet:created

Example:

npm run wallet:created

请用户确认领取的代币:

“您想领取哪个代币的手续费呢?”

用户输入了代币地址(mint):

运行命令:

npm run claim:fee <mint>

Example:

npm run claim:fee xxxxx

场景 7:用户领取代币(已添加流动性的代币)

检查当前钱包是否有足够的sol。

运行命令:

npm run wallet:sol

Example:

npm run wallet:sol

如果sol 小于 0.2 sol:

提示用户充值

“当前钱包余额不足。 您需要充值 0.2 SOL 以上。”

如果sol充足:

运行命令:

npm run wallet:mintto

Example:

npm run wallet:mintto

请用户确认要取回的代币:

“您想领取哪个代币呢?”

用户输入了代币地址(mint):

运行命令:

npm run claim:token <mint>

Example:

npm run claim:token xxxxx

场景 8:用户想要查询余额

运行命令:

npm run wallet:sol

Example:

npm run wallet:sol

场景 9:用户想要知道当前持有的 哪些代币代币余额

运行命令:

npm run wallet:tokens

Example:

npm run wallet:tokens

安全性

此技能强制执行 OpenClaw 执行的安全约束。

1. 敏感数据(严格保密)

  • 配置文件config.json 文件(包含令牌和账户信息)的完整内容绝对禁止公开。

2. 禁止泄露策略

  • 请勿在聊天回复、日志、错误消息、屏幕截图或生成的文档中公开完整的 密钥、令牌或密钥。

  • 如果调试需要参考信息,请仅使用掩码值(例如,abc...xyz)。

有关权威策略,请参阅 references/security.md

Version tags

latestvk97d7x6cch3c4j7m7yxgh4cmb185wm1c