Навыки routeros-command-tree
📦

routeros-command-tree

Безопасно

Генерация схем API RouterOS из дерева команд

Создание инструментов для взаимодействия с RouterOS требует понимания иерархии команд. Этот навык предоставляет знания для программного исследования дерева команд RouterOS через API /console/inspect и генерации схем RAML или OpenAPI.

Поддерживает: Claude Codex Code(CC)
📊 71 Адекватно
1

Скачать ZIP навыка

2

Загрузить в Claude

Перейдите в Settings → Capabilities → Skills → Upload skill

3

Включите и начните использовать

Протестировать

Использование «routeros-command-tree». Какие дочерние узлы находятся в /system/script?

Ожидаемый результат:

Путь /system/script содержит следующие команды:
- run (cmd) — Выполнить скрипт
- add (cmd) — Создать новый скрипт
- remove (cmd) — Удалить скрипт
- set (cmd) — Изменить свойства скрипта
- print (cmd) — Список скриптов
- export (cmd) — Экспортировать исходный код скрипта

Использование «routeros-command-tree». Как мне связать команды CLI /ip/address с REST API?

Ожидаемый результат:

Маппинг CLI в REST:
- add → PUT /rest/ip/address (создает новую запись)
- set → PATCH /rest/ip/address/{id} (обновляет существующую)
- remove → DELETE /rest/ip/address/{id} (удаляет запись)
- print → GET /rest/ip/address (перечисляет все)
- get (одиночный) → GET /rest/ip/address/{id}

Аудит безопасности

Безопасно
v2 • 4/16/2026

All 138 static findings are false positives. The skill is a documentation file containing markdown with code examples. The static scanner incorrectly flagged markdown syntax (backticks for code formatting), documentation code snippets (fetch examples), relative markdown links, and misinterpreted documentation text as security issues. No executable code exists in this skill.

1
Просканировано файлов
329
Проанализировано строк
0
находки
2
Всего аудитов
Проблем безопасности не найдено

Обнаруженные паттерны

Markdown Code Formatting Misidentified as Command ExecutionDocumentation Code Examples Misidentified as Network CallsMarkdown Links Misidentified as Path Traversal

Оценка качества

38
Архитектура
100
Сопровождаемость
87
Контент
32
Сообщество
100
Безопасность
91
Соответствие спецификации

Что вы можете построить

Создание инструментов документации API

Генерируйте комплексную документацию API из живого дерева команд RouterOS для вашей конкретной версии RouterOS.

Создание шаблонов генерации кода

Используйте дерево команд для генерации типизированных клиентских библиотек или провайдеров Terraform для ресурсов RouterOS.

Исследование доступных команд

Откройте все доступные параметры конфигурации и их аргументы для конкретного набора функций RouterOS.

Попробуйте эти промпты

Базовое исследование дерева команд
Какие команды доступны в /ip/firewall в RouterOS?
Маппинг конечных точек API
Свяжите команды /interface/bridge с соответствующими конечными точками REST API и HTTP глаголами.
Обнаружение аргументов
Какие аргументы принимает команда /ip/route/add? Покажите синтаксис для каждого.
Генерация схемы
Сгенерируйте схему OpenAPI 3.0 для ресурса /queue/simple на основе дерева команд RouterOS.

Лучшие практики

  • Используйте переменную окружения INSPECTFILE для тестирования, чтобы избежать повторных запросов к живому роутеру во время разработки
  • Пропускайте поиск синтаксиса для аргументов внутри опасных поддеревьев (where, do, else, rule, command, on-error), чтобы предотвратить сбои REST сервера
  • Кэшируйте inspect.json для каждой версии RouterOS, так как дерево команд значительно различается между релизами

Избегать

  • Не запрашивайте описания синтаксиса для каждого аргумента на живом роутере — это занимает часы для полного обхода дерева
  • Не игнорируйте опасные пути — вызов fetchSyntax на узлах arg в этих поддеревьях завершает процесс HTTP сервера
  • Не предполагайте, что дерево идентично между версиями RouterOS — всегда перегенерируйте схемы для вашей целевой версии

Часто задаваемые вопросы

Что такое /console/inspect в RouterOS?
Это конечная точка REST API, которая предоставляет доступ к иерархии команд RouterOS. Вы можете запрашивать ее для получения списка дочерних элементов любого пути или справочного текста для команд и аргументов.
Как избежать сбоя REST сервера RouterOS?
Пропускайте поиск синтаксиса для аргументов внутри поддеревьев, содержащих: where, do, else, rule, command, on-error. Это конструкции скриптового языка, которые вызывают сбой API inspect при запросе их узлов arg.
Могу ли я работать без живого устройства RouterOS?
Да. Установите переменную окружения INSPECTFILE, указывающую на кэшированный файл inspect.json. Такие инструменты, как rest2raml, поддерживают это для генерации схем офлайн.
Какова разница между выводом RAML и OpenAPI?
Оба формата представляют одни и те же данные дерева команд. RAML 1.0 использует нотацию, ориентированную на ресурсы. OpenAPI 3.0 использует стандартную REST терминологию с путями, методами и телами запросов.
Почему PUT создает записи вместо PUT для обновления?
REST API RouterOS использует PUT для операций создания. PATCH используется для обновлений. Это противоположно стандартным REST соглашениям, где PUT — это идемпотентное обновление, а POST — создание.
Сколько времени занимает полный обход дерева?
При работе с живым роутером полный обход занимает много минут из-за тысяч последовательных HTTP запросов. С KVM-ускоренным CHR это быстрее, но всё равно занимает значительное время. Используйте кэшированный inspect.json для разработки.

Сведения для разработчиков

Автор

tikoci

Лицензия

MIT

Ссылка

main

Структура файлов

📄 SKILL.md