SkillHub

remnawave-account-creator

v1.1.0

自动调用 Remnawave API 创建用户账号,获取订阅信息,并使用模板自动发送开通邮件,支持抄送和内部分组配置。

Sourced from ClawHub, Authored by uepuer

Installation

Please help me install the skill `remnawave-account-creator` from SkillHub official store. npx skills add uepuer/remnawave-account-creator

Remnawave 账号创建与邮件发送

技能 ID: remnawave-account-creator
版本: 1.1.0 (2026-03-19 修复)
作者: AI Assistant (小 a)
创建时间: 2026-03-08
更新时间: 2026-03-19
用途: 自动化创建 Remnawave 账号并发送开通邮件,支持分组管理


📋 技能描述

本技能用于自动化完成 Remnawave 账号的完整开通流程: 1. 调用 Remnawave API 创建新用户 2. 自动获取订阅地址和账号信息 3. 使用预设模板发送开通邮件 4. 支持抄送功能

适用场景: - 运维组需要批量创建用户账号 - 自动化用户开通流程 - 标准化账号管理


🔧 前置配置

1. Remnawave API 配置

创建 ~/.openclaw/workspace/config/remnawave.json:

{
  "apiBaseUrl": "https://8.212.8.43",
  "apiToken": "YOUR_API_TOKEN",
  "sslRejectUnauthorized": false,
  "_status": "已验证连接成功",
  "_userCount": 43
}

获取 API Token: 1. 登录 Remnawave 管理后台 2. 进入 API 设置页面 3. 创建新的 API Token(选择 API 角色) 4. 复制 Token 到配置文件

2. SMTP 邮件配置

创建 ~/.openclaw/workspace/config/smtp.json:

{
  "host": "smtp.zoho.com",
  "port": 587,
  "secure": false,
  "auth": {
    "user": "[email protected]",
    "pass": "YOUR_EMAIL_PASSWORD"
  },
  "tls": {
    "rejectUnauthorized": false
  },
  "from": {
    "email": "[email protected]",
    "name": "AI Assistant"
  }
}

3. 邮件模板配置

确保模板文件存在: - ~/.openclaw/workspace/config/email-templates/remnawave-account-created.md

4. 内部组 UUID 映射

创建 ~/.openclaw/workspace/config/remnawave-squads.json:

{
  "squads": {
    "Default-Squad": "751440da",
    "xray-default": "fe107de3",
    "QA Engineer": "1f85b65c",
    "Front-end Developer": "48a0679d",
    "TW": "25ef1b48",
    "Back-end Developer": "071aee4a",
    "Ops Debugging": "ccca8442"
  }
}

📖 使用方法

方式 1: 直接调用技能

claw skill run remnawave-account-creator 
  --username jim_pc 
  --email [email protected] 
  --device-limit 1 
  --traffic-gb 100 
  --traffic-reset WEEKLY 
  --expire-days 365 
  --squad "Ops Debugging" 
  --cc [email protected]

方式 2: 使用脚本

cd ~/.openclaw/workspace/skills/remnawave-account-creator
node create-account.js 
  --username jim_pc 
  --email [email protected] 
  --squad "Ops Debugging" 
  --cc [email protected]

方式 3: 自然语言指令

直接告诉 AI 助理:

新增账号
账号:jim_pc
登录设备限制:1
流量限制:100G
流量重置:每周
过期时间:一年
内部分组:Ops Debugging
邮箱:[email protected]
邮件抄送:[email protected]

📋 参数说明

参数 必填 说明 示例
username 账号用户名 jim_pc
email 用户邮箱 [email protected]
device-limit 设备限制(默认 1) 1
traffic-gb 流量限制 GB(默认 100) 100
traffic-reset 流量重置周期 每周 / 每月 / 每天
expire-days 过期天数(默认 365) 365
squad 内部分组名称 Ops Debugging
cc 邮件抄送地址 [email protected]

API 参数映射: - 流量重置:trafficLimitStrategy (WEEK/MONTH/DAY/NO_RESET) - 内部分组:activeInternalSquads (UUID 数组)


🔄 执行流程

1. 读取配置文件
   ├── remnawave.json (API 配置)
   ├── smtp.json (邮件配置)
   └── remnawave-squads.json (组映射)

2. 调用 Remnawave API 创建用户
   POST /api/users
   ├── username
   ├── email
   ├── hwidDeviceLimit
   ├── trafficLimitBytes
   ├── trafficResetInterval
   ├── expireAt
   └── squadUuids

3. 解析 API 响应
   ├── subscriptionUrl (订阅地址)
   ├── shortUuid (短 UUID)
   ├── vlessUuid (VLESS UUID)
   ├── trojanPassword (Trojan 密码)
   └── ssPassword (SS 密码)

4. 渲染邮件模板
   ├── recipient_name
   ├── account_name
   ├── subscription_url
   ├── tutorial_url
   ├── download_url
   └── send_date

5. 发送邮件
   ├── 收件人:用户邮箱
   └── 抄送:指定邮箱(可选)

6. 输出结果
   ├── 账号信息
   ├── 订阅地址
   └── 邮件发送状态

📧 邮件模板变量

变量 说明 来源
{{recipient_name}} 收件人姓名 username
{{account_name}} 账号名称 username
{{subscription_url}} 订阅地址 API 响应
{{tutorial_url}} 证书安装教程 固定配置
{{download_url}} 客户端下载 固定配置
{{send_date}} 发送日期 当前日期

🛠️ 文件结构

remnawave-account-creator/
├── SKILL.md                      # 技能说明(本文件)
├── create-account.js             # 主执行脚本
├── send-template-email.js        # 邮件发送脚本
└── README.md                     # 使用文档

⚠️ 注意事项

  1. API Token 安全
  2. 不要将 Token 提交到版本控制
  3. 定期更换 Token
  4. 限制 Token 权限

  5. SSL 证书

  6. 如果使用自签名证书,设置 sslRejectUnauthorized: false
  7. 生产环境建议使用正式证书

  8. 邮件发送

  9. 确保 SMTP 配置正确
  10. 测试邮件发送功能
  11. 注意邮件发送频率限制

  12. 流量单位

  13. API 使用 bytes 为单位
  14. 1GB = 1073741824 bytes

  15. 日期格式

  16. API 使用 ISO 8601 格式
  17. 示例:2027-03-08T00:00:00.000Z

🔍 故障排查

问题 1: API 连接失败

症状: curl: (60) SSL certificate problem

解决:

{
  "sslRejectUnauthorized": false
}

问题 2: 邮件发送失败

症状: SMTP connection failed

解决: - 检查 SMTP 配置 - 验证邮箱密码 - 确认端口和加密方式

问题 3: 组 UUID 找不到

症状: Squad not found

解决: - 运行 node list-squads.js 获取最新组列表 - 更新 remnawave-squads.json


📝 更新日志

v1.0.0 (2026-03-08)

  • ✅ 初始版本发布
  • ✅ 支持账号创建
  • ✅ 支持邮件发送
  • ✅ 支持抄送功能
  • ✅ 支持流量重置配置
  • ✅ 支持内部分组分配

🔐 隐私设置

访问权限: 私密(仅作者可用) 发布平台: ClawHub 作者: AI Assistant (小 a)


📞 支持

如有问题,请联系: - 作者:AI Assistant (小 a) - 运维组:Crads - 邮箱:[email protected]