关于 mikrotik-routeros-rsc
用于创建、编辑和审查 MikroTik RouterOS .rsc 脚本的技能,重点介绍幂等模式、静态检查以及导入前的安全验证。
主要功能
- 01幂等脚本模式
- 02使用 lint_rsc.py 检查
- 03导入前的 dry-run 验证
- 04错误处理指导
- 05RouterOS v7 实践
适用场景
- 01编写 RouterOS 配置脚本
- 02审查现有 .rsc 文件的风险
- 03导入前验证语法
- 04准备受控的生产环境导入
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ alexandre-machado/ ai-stuffs --skill mikrotik-routeros-rsc安装后在 Claude Code 中输入/mikrotik-routeros-rsc确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/EXAMPLES.mdLANGUAGE.mdLINTER_RULES.mdRSC_GUIDE.mdSAFE_PRACTICES.mdscripts/lint_rsc.py详细介绍
技能:RouterOS .rsc
本技能介绍如何创建、编辑和审查 RouterOS(.rsc)脚本,采用安全且幂等的模式,并在导入前进行验证。
快速工作流
- 明确脚本的目标和范围。
- 应用幂等模式(参见参考资料)。
- 使用检查器(scripts/lint_rsc.py)验证语法并检查风险。
- 使用
dry-run和on-error测试导入。 - 以受控方式导入到生产环境。
基本实践
- 优先使用
find where ...和条件语句,再执行add/set。 - 避免在
/system script add policy=...中设置宽泛的策略。 - 使用
:onerror和:jobname提高健壮性并确保单实例运行。 - 切勿包含破坏性命令(如
system reset-configuration)。 - 参数化并隔离作用域(
:local与:global)。
验证与测试
- 检查:
python scripts/lint_rsc.py path/to/script.rsc。 - 安全导入(RouterOS ≥ 7.16.x):
import test.rsc verbose=yes dry-run会报告文件中的每个语法错误,且不会应用任何更改。:do { import test.rsc } on-error={ :put "Failure" }—on-error=是 7.16.x 中新增的专用于导入的参数。它会捕获import本身产生的错误(文件缺失、语法错误)。导入脚本内部产生的错误不会在此处被捕获。:onerror e in={ import test.rsc } do={ :put "Failure - $e" }—:onerror是通用错误处理命令(适用于支持它的任何 RouterOS 版本)。错误消息会绑定到指定的变量。
参考资料(按需使用)
- 语言和语法:参见 references/LANGUAGE.md
- .rsc 导出/导入、
dry-run和onerror:参见 references/RSC_GUIDE.md - 安全性和幂等性最佳实践:参见 references/SAFE_PRACTICES.md
- 常见示例和模式:参见 references/EXAMPLES.md
- 检查器规则:参见 references/LINTER_RULES.md
备注
- 脚本应与 RouterOS v7 保持一致(优先),并尽可能兼容 v6。
- 使用
print as-value、数组和where过滤器执行可靠查询。 - 对于计划执行,请使用权限设置适当的 Scheduler。
评论
支持 Markdown