Cloudflare Dns Updater — Cloudflare DNS Updater — 云flare DNS 更新器
v0.1.1创建或更新 Cloudflare 的代理 DNS A 记录,用于将子域名指向特定 IP 地址。输入记录名称、区域名称和 IP 地址。
0· 1,594·6 当前·6 累计
安全扫描
OpenClaw
可疑
high confidence该技能的代码和 SKILL.md 实现了一个直接的 Cloudflare DNS 更新器,但注册元数据未声明所需的 CLOUDFLARE_API_TOKEN 凭据(并且存在一些小的不匹配),因此安装前请验证。
评估建议
该技能的代码和文档实现了一个正常的 Cloudflare DNS 更新器,但注册元数据省略了所需的 CLOUDFLARE_API_TOKEN。安装或使用前:1) 确认您可以提供一个 CLOUDFLARE_API_TOKEN(在环境中设置)并验证令牌具有最小权限(更喜欢区域范围的 DNS 编辑权限而不是全账户令牌)。2) 了解代理将向 Cloudflare 和(可选)https://ipv4.icanhazip.com/ 发出出站请求以检测公共 IP — 在网络环境中运行它,这些调用是可接受的。3) 自己审查包含的脚本(它很短且易读)并考虑在测试后旋转令牌。4) 如果您依赖注册元数据进行自动化策略强制执行,请更新它以声明 CLOUDFLARE_API_TOKEN,因此不会错过该要求。如果您无法提供适当范围的令牌或无法接受出站网络调用,请不要启用该技能。...详细分析 ▾
ℹ 用途与能力
名称/描述与包含的 Python 脚本匹配:行为是创建/更新 Cloudflare A 记录。需要 python3 和 requests 库是合适的。然而,注册元数据没有列出任何必需的环境变量或主要凭据,而 SKILL.md 和脚本明确要求 CLOUDFLARE_API_TOKEN;此元数据省略是不一致的,值得标记。
✓ 指令范围
SKILL.md 将操作限制为:检查 CLOUDFLARE_API_TOKEN、收集区域/记录/IP、可选地通过 https://ipv4.icanhazip.com/ 获取主机的公共 IP,以及运行包含的脚本。没有指令读取无关文件或将数据泄露到意外的端点。对 icanhazip 的外部调用对于发现公共 IP 是合理的,但这是用户应了解的外部网络操作。
✓ 安装机制
这是一个仅指令的技能,带有一个捆绑的 Python 脚本和一个小的 requirements.txt(requests)。安装期间不需要网络下载或存档提取,因此风险较低。
⚠ 凭证需求
脚本和 SKILL.md 需要 CLOUDFLARE_API_TOKEN(一个敏感凭据),但注册元数据没有将其声明为必需的环境变量或主要凭据。这种不匹配令人担忧,因为自动化工具或用户可能不会意识到必须提供一个秘密。请求的令牌对于 DNS 编辑是合理的,但您应该确认令牌的权限(使用最小权限 / 区域范围的令牌)。
✓ 持久化与权限
该技能不请求 always: true,不修改其他技能或系统范围的设置,并且是用户可调用。它仅需要运行时调用来执行脚本。
安全有层次,运行前请审查代码。
运行时依赖
无特殊依赖
版本
latestv0.1.12026/2/6
安全修复:在 SKILL.md 中匿名化所有示例以删除私人信息。
● 可疑
安装命令 点击复制
官方npx clawhub@latest install cloudflare-dns-updater
镜像加速npx clawhub@latest install cloudflare-dns-updater --registry https://cn.clawhub-mirror.com
技能文档
云flare DNS 更新器
该技能创建或更新一个 Cloudflare DNS 'A' 记录,指向指定 IP 地址并确保其被代理。它是自动化服务部署和 DNS 管理的基础工具。
前置条件
该技能需要CLOUDFLARE_API_TOKEN 环境变量被设置为一个有效的 Cloudflare API 令牌,该令牌具有 DNS 编辑权限。模型应在尝试使用技能前验证此前置条件。如果变量未设置,它应通知用户并停止。核心操作: scripts/update-record.py
核心逻辑由 update-record.py 脚本处理。输入 (命令行参数)
--zone: (必需) 根域名。示例:example.com--record: (必需) 记录名称(子域名)。使用@表示根域名本身。示例:www--ip: (必需) 指向记录的 IPv4 地址。--proxied: (可选) 布尔值(true或false)以设置 Cloudflare 代理状态。默认为true。
输出
脚本将其进度打印到 stdout。- 成功时,打印确认消息和创建/更新记录的 JSON 对象。
- 失败时,打印到 stderr 的描述性错误消息并退出非零状态代码。
执行工作流
使用该技能,请按照以下步骤操作:- 验证前置条件: 检查
CLOUDFLARE_API_TOKEN环境变量是否设置。如果未设置,通知用户并中止。 - 收集输入: 从用户的请求中识别
zone、record名称和目标ip。 - 构造命令: 构建完整的 shell 命令以执行脚本。
- 执行命令: 使用
exec工具运行命令。 - 报告结果:
示例使用
用户请求: "将 www.example.com 指向服务器的公共 IP。" AI 的思维过程:- 用户想要更新 Cloudflare 的 DNS 记录。
cloudflare-dns-updater技能非常适合此用途。 - 我将使用
update-record.py脚本。 - 我需要区域、记录名称和 IP。
example.com
- 记录: www
- IP: 我需要先找到服务器的公共 IP。我可以使用 curl -s https://ipv4.icanhazip.com/。
- 我将首先获取 IP,然后构造最终命令。
- 我将执行命令并报告结果。
AI 的操作:
# 步骤 1: 获取 IP
PUBLIC_IP=$(curl -s https://ipv4.icanhazip.com/)
# 步骤 2: 运行技能的脚本
python3 skills/cloudflare-dns-updater/scripts/update-record.py \
--zone "example.com" \
--record "www" \
--ip "$PUBLIC_IP"
故障策略
- 如果
CLOUDFLARE_API_TOKEN未设置: 不尝试运行脚本。通知用户所需的环境变量缺失,需要管理员配置。 - 如果脚本以错误退出: 读取从 stderr 获取的错误消息。常见错误包括无效的 API 令牌、不正确的区域名称或权限不足。向用户报告具体错误。
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制
免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制