mikrotik
Skill0 starsChanged 3 months agoApache-2.0View on GitHub
Administer MikroTik RouterOS devices from this desktop over SSH or the API — read config, change firewall and NAT rules, manage interfaces and DHCP, back up, and upgrade — without locking yourself out. Use when the task mentions MikroTik, RouterOS, winbox, or a router you reach by IP.
2 other projects use a version of this.
Adopted by
Most recently taken up by
- br3eze-code/br3eze-codetheir own version, first seen Jul 8, 2026
- SmmsAdmin/skillstheir own version, first seen Mar 27, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- br3eze-code/br3eze-code★ 3same name
- SmmsAdmin/skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository20 other files it gives its agents.
- aws-cliSkill
- cloud-deploySkill
- containersSkill
- databasesSkill
- dev-runtimesSkill
- find-skillsSkill
- incident-triageSkill
- linux-adminSkill
- log-analysisSkill
- network-reconSkill
- privilege-escalation-auditSkill
- remote-desktopSkill
- security-auditSkill
- shell-safetySkill
- ssh-opsSkill
- system-maintainSkill
- system-performanceSkill
- voip-telephonySkill
- vpn-clientSkill
- youtube-skip-adSkill
The file
Files
The rule that comes before every other rule
You are administering the device you are connected through. A firewall rule, an interface change or an address change can drop your own session, and on a router in another building that means somebody drives there.
RouterOS has the answer built in and you should use it by default:
ssh_exec /system scheduler add name=undo interval=5m on-event="/system reboot"…or, better and simpler, the safe-mode idea: make the risky change, verify you
still have the session, then remove the undo. On the console it is ctrl-X;
over SSH the scheduler above is the equivalent — if you lose the session and
cannot cancel it, the router reboots into the last saved config.
Always take a backup first, and take both kinds:
ssh_exec /system backup save name=before-change
ssh_exec /export file=before-change (readable text, diffable)
ssh_download the .rsc so it lives off the deviceThe binary backup restores exactly; the .rsc export is the one you can read
and diff, which is what tells you what you changed.
Reaching it
ssh_connect then ssh_exec, per the ssh-ops skill — the connection stays
open so a session of twenty commands does not pay twenty handshakes. RouterOS
accepts full commands non-interactively, which is exactly what ssh_exec wants:
ssh_exec /interface print
ssh_exec /ip address print
ssh_exec /ip firewall filter printWebfig over browser_goto is there when a person needs to see it, but the CLI
is what you should drive: it returns text you can act on rather than a page you
have to read.
Reading before changing
/export on its own prints the whole configuration as commands — that is the
single best "what is this router doing" call, and it is one round trip. For
narrower questions: /ip route print, /ip dhcp-server lease print,
/system resource print (CPU, memory, RouterOS version),
/log print for what it has been complaining about.
/tool torch interface=<if> is live traffic and never returns — a job, and
abort it when done. Same for /tool sniffer.
Firewall and NAT, in the order that does not lock you out
Rules are evaluated in order, and add appends to the end. That is the trap:
a drop rule added to the end of a chain whose earlier rule already accepts your
traffic does nothing, and one added before it kills your session.
place-before=puts a rule where you mean it.- Add the accept for your own management access first, verify, then add the drop.
/ip firewall filter printafter every change, and read the order.disabled=yeson a new rule, then enable it once you have looked at it, is cheaper than being wrong.
For NAT, srcnat/masquerade on the out interface and dstnat for
port-forwards; /ip firewall nat print shows both.
Upgrades
/system package update check-for-updates then download, and the install
reboots — so it is a decision, not a step. Say what will be interrupted and let
a person pick the moment. RouterOS v6→v7 is a major migration that changes
syntax; do not treat it as a routine upgrade.
/system routerboard print shows whether the bootloader (current-firmware)
also needs /system routerboard upgrade — people forget this half and then
wonder why a feature is missing.
Credentials
A RouterOS password does not go in a tool argument. Use a key:
/user ssh-keys import on the device with a public key you uploaded, and connect
with the key from here. If the only way in is a password, that is an
ask_human — see the rule in your system prompt.
A router reachable from the internet with admin and a weak password is a
finding to report before you do anything else on it.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

