Expand mikrotik-api skill with common safe operation templates

This commit is contained in:
OpenClaw Assistant
2026-02-24 19:25:39 +00:00
parent 26b784ddb7
commit a1e3f217c8
2 changed files with 123 additions and 0 deletions

View File

@@ -52,6 +52,81 @@ python3 {baseDir}/scripts/routeros_api.py \
- Сейчас реализован plaintext API (8728). Для TLS/API-SSL нужен отдельный режим.
- Скрипт не делает бесконечный `listen`-цикл; он рассчитан на запрос-ответ.
## Готовые безопасные команды (типовые задачи)
### 1) Статус роутера
```bash
python3 {baseDir}/scripts/routeros_api.py \
--host <ip> --user <user> --password '<pass>' \
print /system/resource/print --proplist uptime,version,board-name,cpu-load,free-memory,total-memory
```
### 2) Список интерфейсов
```bash
python3 {baseDir}/scripts/routeros_api.py \
--host <ip> --user <user> --password '<pass>' \
print /interface/print --proplist .id,name,type,running,disabled,mtu
```
### 3) IP-адреса на интерфейсах
```bash
python3 {baseDir}/scripts/routeros_api.py \
--host <ip> --user <user> --password '<pass>' \
print /ip/address/print --proplist .id,address,interface,disabled
```
### 4) DHCP leases
```bash
python3 {baseDir}/scripts/routeros_api.py \
--host <ip> --user <user> --password '<pass>' \
print /ip/dhcp-server/lease/print --proplist .id,address,mac-address,host-name,status,server,last-seen
```
### 5) Маршруты по умолчанию
```bash
python3 {baseDir}/scripts/routeros_api.py \
--host <ip> --user <user> --password '<pass>' \
print /ip/route/print --proplist .id,dst-address,gateway,distance,active,disabled --query '?dst-address=0.0.0.0/0'
```
### 6) DNS-настройки
```bash
python3 {baseDir}/scripts/routeros_api.py \
--host <ip> --user <user> --password '<pass>' \
print /ip/dns/print --proplist servers,allow-remote-requests,cache-size,cache-used
```
### 7) Wi-Fi (legacy wireless)
```bash
python3 {baseDir}/scripts/routeros_api.py \
--host <ip> --user <user> --password '<pass>' \
print /interface/wireless/print --proplist .id,name,ssid,frequency,band,mode,disabled,running
```
### 8) Wi-Fi (wifiwave2)
```bash
python3 {baseDir}/scripts/routeros_api.py \
--host <ip> --user <user> --password '<pass>' \
print /interface/wifi/print --proplist .id,name,ssid,configuration.disabled,running
```
## Осторожно с изменениями
Перед командами `set/add/remove`:
1. Сними текущее состояние через `print`.
2. Проверь `.id` целевого объекта.
3. Применяй изменения по одной команде.
4. Сразу валидируй результат повторным `print`.
## Ссылки
- Основные заметки по протоколу: `references/routeros-api-notes.md`
- Практические шаблоны: `references/common-operations.md`