Borrowing it
Nothing to install: this file belongs to danikf/tik4net. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/danikf/tik4net/master/.claude/skills/mikrotik/SKILL.mdgit clone --depth 1 https://github.com/danikf/tik4netWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/danikf/tik4net/mikrotik)<a href="https://agentmods.dev/skills/danikf/tik4net/mikrotik"><img src="https://agentmods.dev/badge/skills/danikf/tik4net/mikrotik.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00135 | $0.05674 |
| Opus 5 | $0.00068 | $0.02837 |
| Sonnet 5 | $0.00027 | $0.01135 |
| Haiku 4.5 | $0.00014 | $0.00567 |
Grade A, and why
mikrotik scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 361 lines — stays where its author put it; the contents beside it link to each section on GitHub.
MikroTik Router Skill
Use the mikrotik_call MCP tool (provided by the tik4net-mcp server) to interact with MikroTik
routers via the tik4net low-level API. The same word/sentence call runs over every transport, so
the command / parameters format is identical no matter which transport you pick — pick the
transport, keep the command the same.
Default test router
Unless the user specifies otherwise, read the router coordinates from
tik4net.integrationtests/App.config (host, user, pass) and connect with:
- transport:
Api - port:
0(auto / transport default)
If that file is missing or the user works against a different router, ask for host and credentials rather than guessing.
Tool parameters
| Parameter | Type | Description |
|---|---|---|
host |
string | IP or hostname |
username |
string | Username |
password |
string | Password (may be empty) |
command |
string | API command path |
transport |
string | Transport name, default Api (see table below) |
port |
int | Port, 0 = transport default |
routerMac |
string | Router MAC AA:BB:CC:DD:EE:FF — only MacTelnet / WinboxCliMac (else MNDP discovery, ~5 s) |
traceLevel |
string | off (default), words (raw words/CLI lines), or bytes (words plus a byte/frame wire trace) — see Wire tracing & router-log |
traceChannels |
string[] | bytes only: keep just these emit-site channels (wbxcli.mepty, wbxtcp.frame, telnet.sock, mactelnet.udp, api.word, value.token); omit = all |
includeRawTrace |
bool | Back-compat alias for traceLevel='words', default false |
includeRouterLog |
bool | Also append the router's own /log lines emitted during the command (--- ROUTER LOG ---), read over a separate API connection; default false |
routerLogTail |
int | includeRouterLog only: cap on kept log lines, default 200 |
executeMode |
string | auto (default) = verb dispatch over ITikCommand; nonquery = ExecuteNonQuery() — needed for action verbs (see below) |
parameters |
string[] | Extra API words (see below) |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 361 lines · 135 tokens per session scan A 027553431bb3
mikrotik is a skill published in the GitHub repository danikf/tik4net (197 stars, last pushed 3d ago), licensed Apache-2.0. It adds 135 tokens to every session and 5,674 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
generate-code-cs
Generate the code from typespec for C#. Parameter: C# SDK repository root location .
translate-a-sample
Translate the Azure SDK sample from python to C# and generate markdownn file for the sample. Parameters: C# SDK repository root; python SDK repository root; Package name: one of Azure.AI.Projects, Azure.AI.Projects.Agents or Azure.AI.Extensions.OpenAI; The name of sample file in Python SDK repository.
build-sample-matrix
Build the matrix of all the samples throughout different frameworks.
author-test
Generate a test given sample. Parameters: C# SDK repository root; Package name: one of Azure.AI.Projects, Azure.AI.Projects.Agents or Azure.AI.Extensions.OpenAI; the sample to use as a starting point for the test.
update-changelog
Update the CHANGELOG.md files of C# projects. Parameters: csroot C# SDK repository root.
budget-checker
Validates that a proposed trip fits within the user's stated budget.