routeros-fundamentals — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited routeros-fundamentals (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
RouterOS runs a Linux kernel (5.6.3) but everything above the kernel is MikroTik's proprietary `nova` system. This is the single most important fact for agents to internalize.
What does NOT exist on RouterOS:
/bin, /usr, /etc, /var — no FHS layoutls, cat, grep, ps, mount, ip, iptables, etc.).npk files installed via upload + reboot)systemctl, service, init system/proc or /sys accessible from userlanddocker, podman — RouterOS has its own /container subsystem (7.x+)What DOES exist:
/rest/ (HTTP, port 80 by default) — the primary programmatic interface.rsc files) — its own syntax, not bash. See the routeros-scripting skill and Scripting referenceCommon agent mistakes to avoid:
ssh admin@host 'ls /' — it opens RouterOS CLI, not a shellmount, fdisk, mkfs — use /disk commands instead/etc/ — configuration is in the RouterOS databaseping works the same — it's /tool/ping or /ping in CLIapt or opkg — upload .npk via SCP then /system/package/apply-changes (7.18+) or /system/reboot (<7.18)RouterOS CLI uses path-based navigation, not Unix command pipelines:
# Navigation
/ip/address/print
/interface/print
/system/resource/print
# Adding entries
/ip/address/add address=192.168.1.1/24 interface=ether1
# Modifying (by internal ID or find expression)
/ip/address/set [find interface=ether1] address=10.0.0.1/24
# Removing
/ip/address/remove [find address="192.168.1.1/24"]
# Running a command
/system/reboot
/tool/fetch url="http://example.com/file.npk" dst-path="/"Key syntax differences from shell:
= assigns properties (no spaces around it)[find ...] is the query expression (like WHERE)print row numbers are not script-safe object IDs; use [find ...] or *HEX internal IDs"" (double quotes only)#:local myVar "value" and $myVarRouterOS REST API at http://HOST:PORT/rest/. HTTP verbs map non-standardly:
| HTTP | RouterOS Action | CLI Equiv |
|---|---|---|
GET | print (list/read) | /path/print |
PUT | add (create) | /path/add |
PATCH | set (update) | /path/set |
DELETE | remove | /path/remove |
POST | command (execute) | /path/command |
Key gotchas:
PUT creates (NOT updates) — opposite of many REST APIsadmin: (colon required, nothing after)GET /) returns HTTP 200 without auth — use as health check/rest/) requires auth (HTTP 401 without it).id field is *HEX format (e.g., *1, *A)See REST API reference for full patterns, error handling, filtering, POST commands, and /console/inspect.
Format: MAJOR.MINOR[.PATCH][betaN|rcN] — e.g., 7.22, 7.22.1, 7.23beta2, 7.22rc1
Channels: stable / long-term / testing / development
Version endpoint (plain text): https://upgrade.mikrotik.com/routeros/NEWESTa7.<channel>
For version parsing, comparison, download URLs, and package naming: see Version parsing reference.
MikroTik uses these architecture identifiers (not standard Linux arch names):
| MikroTik name | CPU | Common hardware |
|---|---|---|
x86 | x86_64 | CHR, x86-based RouterBOARDs |
arm64 | aarch64 | Modern ARM boards (RB5009, Chateau) |
arm | ARMv7 | Older ARM boards |
mipsbe | MIPS big-endian | Legacy RouterBOARDs |
mmips | MIPS multi-core | hAP ac, RB4011 |
smips | MIPS single-core | hAP lite, mAP |
ppc | PowerPC | CCR1xxx series |
tile | Tilera | CCR (older models) |
CHR (Cloud Hosted Router) is available only for x86 and arm64.
admina to skip# PCI devices (the RouterOS equivalent of lspci)
/system/resource/hardware/print
# IRQ assignments (shows driver binding)
/system/resource/irq/print
# System overview
/system/resource/print
# Disk info
/disk/print
# Installed packages
/system/package/print
# IP services and ports
/ip/service/print
# Network interfaces
/interface/printReference files:
help.mikrotik.com docs and includes a CLI Reference section at <https://manual.mikrotik.com/docs/CLI%20Reference/>./console/inspect command tree: see REST API referenceRelated skills:
.rsc/CLI config automation gotchas: see the routeros-scripting skillrouteros-container skillrouteros-netinstall skillrouteros-app-yaml skillrouteros-command-tree skillrouteros-qemu-chr skillrouteros-sniffer skillMCP tools:
rosetta MCP server tools (routeros_search, routeros_get_page, routeros_command_tree)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.