# tikoci — MikroTik RouterOS Open Source Tools > tikoci is an open source GitHub organization providing developer tools, API schemas, AI integrations, containers, and virtualization utilities for MikroTik RouterOS v7. Not affiliated with or endorsed by MikroTik. All projects target RouterOS 7.x (long-term and newer). The tools help network administrators write scripts, explore APIs, run virtual routers, deploy containers, and give their AI assistants deep RouterOS knowledge. RouterOS is NOT GNU/Linux — it runs a Linux kernel but uses MikroTik's proprietary "nova" system above it. There is no bash, no coreutils, no apt/pkg, no FHS filesystem layout. AI agents frequently fail on RouterOS because they apply Linux assumptions. The tikoci ecosystem exists to bridge this gap — providing structured knowledge, language tooling, and API schemas that let humans and AI assistants work effectively with RouterOS. Key problems tikoci solves for RouterOS administrators: - **Writing RouterOS scripts?** → VS Code language server (lsp-routeros-ts) + notebook (TikBook) + routeros-fundamentals skill - **Understanding the REST API?** → restraml schema tools (API Explorer, Command Lookup, Schema Diff, OpenAPI/RAML downloads) - **Setting up containers on RouterOS?** → routeros-container skill + make.d base image + /app Editor + routeros-app-yaml skill - **Running CHR in a VM for testing?** → mikropkl (declarative CHR VMs) + fat-chr (UEFI images) + routeros-qemu-chr skill - **Flashing/provisioning devices?** → netinstall container + routeros-netinstall skill - **Training your AI assistant on RouterOS?** → rosetta MCP server + routeros-skills (6 Copilot skills) ## AI Integration - [rosetta — MCP Server for MikroTik Documentation](https://github.com/tikoci/rosetta): Model Context Protocol server that indexes 317 MikroTik documentation pages, 4,800+ command properties, and 40,000+ commands into SQLite FTS5 for AI-powered search. Uses a "SQL-as-RAG" pattern — full-text search with BM25 ranking replaces vector embeddings. Provides 11 MCP tools including `routeros_search` (docs), `routeros_search_properties` (command args), `routeros_command_tree` (hierarchy), `routeros_device_lookup` (hardware specs), and `routeros_current_versions` (release channels). Install via `npx -y tikoci-rosetta` or `bunx tikoci-rosetta`. Works with Claude Desktop, VS Code Copilot, Cursor, and any MCP-compatible client. See [CLAUDE.md](https://github.com/tikoci/rosetta/blob/main/CLAUDE.md) for full architecture. - [routeros-skills — Copilot Skills for RouterOS](https://github.com/tikoci/routeros-skills): Collection of 6 structured knowledge files (SKILL.md format) that teach AI coding agents RouterOS-specific patterns. Published on [Skillstore](https://skillstore.io/skills?q=tikoci&tools=claude). Each skill covers a domain where AI agents commonly fail on RouterOS. Can be installed in VS Code Copilot, Claude Code, or read directly from GitHub. Skills listed below: - [routeros-fundamentals](https://github.com/tikoci/routeros-skills/tree/main/routeros-fundamentals/SKILL.md): Core RouterOS v7 knowledge — CLI path syntax, REST API patterns (`/rest/` endpoint, verb mapping), scripting language (`.rsc`), and critical differences from Linux (no bash, no FHS, no coreutils). Prevents the most common AI mistakes when configuring RouterOS. - [routeros-container](https://github.com/tikoci/routeros-skills/tree/main/routeros-container/SKILL.md): RouterOS `/container` subsystem — device-mode prerequisites, OCI container lifecycle, VETH/bridge networking, NAT configuration, storage and architecture requirements (ARM/ARM64/x86). - [routeros-app-yaml](https://github.com/tikoci/routeros-skills/tree/main/routeros-app-yaml/SKILL.md): RouterOS `/app` YAML format (7.21+ builtin, 7.22+ custom) — MikroTik's alternative to docker-compose for defining container applications with services, volumes, networks, and configs. Covers `.tikapp.yaml` naming, app stores, and differences from docker-compose. - [routeros-command-tree](https://github.com/tikoci/routeros-skills/tree/main/routeros-command-tree/SKILL.md): `/console/inspect` API for programmatic command tree traversal — node types (dir, path, cmd, arg), CLI-to-REST mapping, schema generation patterns used by restraml and rosetta. - [routeros-qemu-chr](https://github.com/tikoci/routeros-skills/tree/main/routeros-qemu-chr/SKILL.md): Running RouterOS CHR (Cloud Hosted Router) in QEMU — x86_64 SeaBIOS vs aarch64 UEFI boot, fat-chr UEFI variant, acceleration selection (KVM on Linux, HVF on macOS, TCG fallback), disk layout, VirtIO drivers, port forwarding for REST API access. - [routeros-netinstall](https://github.com/tikoci/routeros-skills/tree/main/routeros-netinstall/SKILL.md): `netinstall-cli` automation — BOOTP/TFTP device flashing, configure scripts (persistent config) vs mode scripts (one-time first-boot, sets device-mode), license key installation, multi-device provisioning with `-m` flag. ## VS Code Extensions - [lsp-routeros-ts — RouterOS Language Server](https://github.com/tikoci/lsp-routeros-ts): Language Server Protocol implementation for RouterOS scripting — provides real-time diagnostics, completions, hover documentation, semantic tokens, go-to-definition, and find-references in VS Code, NeoVim, and other LSP-compatible editors. Install from [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=TIKOCI.lsp-routeros-ts) or [Open VSX](https://open-vsx.org/extension/TIKOCI/lsp-routeros-ts). Understands RouterOS CLI syntax, built-in functions, system variables, and command paths. - [vscode-tikbook — TikBook Notebook for RouterOS](https://github.com/tikoci/vscode-tikbook): VS Code notebook extension for interactive RouterOS scripting — run `.rsc` code cells against live routers, CSV table viewers, JSON converters, Quick Commander menu, draft file format. Includes `/init` command for Copilot setup that configures workspace instructions and MCP connections. Automatically installs the RouterOS LSP if missing. Install from [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=TIKOCI.tikbook). See [copilot-instructions.md](https://github.com/tikoci/vscode-tikbook/blob/main/.github/copilot-instructions.md) for agent patterns. ## API & Schema Tools - [restraml — RouterOS API Schema Engine](https://github.com/tikoci/restraml): Generates RAML and OpenAPI 3.0 schemas from live RouterOS instances via GitHub Actions. Boots CHR images, crawls `/console/inspect`, and produces versioned schemas covering 5,000+ REST endpoints. Powers the web tools below. Schemas are published for Postman import, client code generation, and API documentation. See [CLAUDE.md](https://github.com/tikoci/restraml/blob/main/CLAUDE.md) for full architecture. - [API Explorer](https://tikoci.github.io/restraml/openapi.html): Browse all 5,000+ RouterOS REST API endpoints interactively — search commands, view parameters, see request/response schemas. Powered by OpenAPI 3.0 spec generated by restraml. - [Schema Diff](https://tikoci.github.io/restraml/diff.html): Compare two RouterOS versions side-by-side — see every command, property, and API change between releases. Useful for upgrade planning and finding new features. - [Command Lookup](https://tikoci.github.io/restraml/lookup.html): Search RouterOS CLI and REST commands across versions — find the REST path for any CLI command, see available parameters, check version availability. - [/app Editor](https://tikoci.github.io/restraml/tikapp.html): Browser-based YAML editor for RouterOS `/app` container definitions — live JSON Schema validation, example picker, Monaco editor, copy deploy commands. For RouterOS 7.22+. - [Schema Downloads](https://tikoci.github.io/restraml): Download versioned RAML and OpenAPI schemas for RouterOS — import into Postman, generate client libraries, or use for API documentation. Covers stable, long-term, and testing channels. - [/app User Manual](https://tikoci.github.io/restraml/app): Full /app YAML documentation for RouterOS container apps — services, configs, volumes, built-in apps, and app store structure. ## Virtualization - [mikropkl — Declarative CHR Virtual Machines](https://github.com/tikoci/mikropkl): Define RouterOS CHR virtual machines in Apple's PKL language, run `make`, get ready-to-boot VMs. Supports macOS UTM (`utm://` links), QEMU, and cross-architecture builds (x86_64, aarch64). Automates image download, disk preparation, and QEMU launch scripts. See [CLAUDE.md](https://github.com/tikoci/mikropkl/blob/main/CLAUDE.md) for architecture including pkl patterns, boot track selection (SeaBIOS vs EFI/VirtIO), and CI strategies. - [fat-chr — UEFI-Enabled CHR Images](https://github.com/tikoci/fat-chr): Rebuilds RouterOS CHR `.raw` disk images with a FAT16 EFI system partition — enables UEFI boot on UTM, Apple Virtualization.framework, and other platforms that don't support SeaBIOS. Published as GitHub Releases. - [chr-utm — CHR UTM Templates](https://github.com/tikoci/chr-utm): Pre-built UTM virtual machine packages for RouterOS CHR on macOS. - [CHR Images Browser](https://tikoci.github.io/chr-images.html): Interactive web tool for browsing and downloading mikropkl CHR images — filters by RouterOS version, architecture, and platform with platform-specific install instructions. ## Containers - [make.d — Alpine Multiprocess Container Base](https://github.com/tikoci/make.d): Base image for RouterOS containers built on Alpine Linux — provides 150+ Makefile recipes for adding tools, services, and games via the `mk` command. Foundation for netinstall, serial2http, cligames, and other tikoci containers. Docker Hub: `ammo74/make.d`. - [netinstall — Netinstall as RouterOS Container](https://github.com/tikoci/netinstall): Runs MikroTik's netinstall-cli inside a RouterOS container using QEMU user-mode emulation for ARM/ARM64 support — enables network-based device flashing directly from a router. Docker Hub: `ammo74/netinstall`. - [serial2http — Serial-to-HTTP Bridge](https://github.com/tikoci/serial2http): Go-based HTTP bridge for RouterOS serial ports — exposes `/dev/ttyUSBx` as a REST API for remote serial console access from containers. Docker Hub: `ammo74/serial2http`. - [cligames — Classic BSD Games for RouterOS](https://github.com/tikoci/cligames): 30+ classic BSD terminal games packaged as a RouterOS container — accessible via `telnet` for a retro gaming experience on your router. Docker Hub: `ammo74/cligames`. ## Scripts - [mikrotik-gpl — RouterOS GPL Source](https://github.com/tikoci/mikrotik-gpl): Collection of MikroTik GPL-required source releases and related scripts. - [lsbridge.rsc](https://tikoci.github.io/scripts/lsbridge.rsc): Bridge VLAN visualization TUI — displays bridge port and VLAN configuration in a readable table format. Forum: [MikroTik Forum post](https://forum.mikrotik.com/viewtopic.php?t=207724). - [autovlan.rsc](https://tikoci.github.io/scripts/autovlan.rsc): VLAN automation functions (`$mkvlan`, `$rmvlan`, `$catvlan`) — create, remove, and display VLANs with associated interfaces and IP addressing. ## All Repositories - [restraml](https://github.com/tikoci/restraml): RouterOS API schema engine — generates RAML & OpenAPI from live instances via GitHub Actions - [rosetta](https://github.com/tikoci/rosetta): MCP server for MikroTik documentation — SQLite FTS5 search over 317 pages, 4,800+ properties - [routeros-skills](https://github.com/tikoci/routeros-skills): 6 Copilot skills for RouterOS — fundamentals, containers, /app YAML, command tree, QEMU CHR, netinstall - [lsp-routeros-ts](https://github.com/tikoci/lsp-routeros-ts): RouterOS Language Server — diagnostics, completions, hover, semantic tokens for VS Code/NeoVim - [vscode-tikbook](https://github.com/tikoci/vscode-tikbook): TikBook VS Code notebook — run RouterOS scripts, CSV viewers, Copilot integration - [mikropkl](https://github.com/tikoci/mikropkl): Declarative CHR VMs in PKL — macOS UTM, QEMU, cross-architecture builds - [fat-chr](https://github.com/tikoci/fat-chr): UEFI-enabled CHR disk images — FAT16 EFI partition for Apple/UTM boot - [chr-utm](https://github.com/tikoci/chr-utm): Pre-built UTM packages for RouterOS CHR on macOS - [make.d](https://github.com/tikoci/make.d): Alpine multiprocess container base — 150+ Makefile recipes, foundation for tikoci containers - [netinstall](https://github.com/tikoci/netinstall): Netinstall-cli as RouterOS container — QEMU emulation for ARM/ARM64 device flashing - [serial2http](https://github.com/tikoci/serial2http): Go HTTP bridge for RouterOS serial ports — REST API for /dev/ttyUSBx - [cligames](https://github.com/tikoci/cligames): 30+ classic BSD games as RouterOS container — retro telnet gaming - [nginx](https://github.com/tikoci/nginx): Nginx container optimized for RouterOS - [traefik-wasm-grain](https://github.com/tikoci/traefik-wasm-grain): Traefik WASM plugin built with Grain language — published on official Traefik plugin marketplace - [traefik-wabt](https://github.com/tikoci/traefik-wabt): WebAssembly Binary Toolkit for building Traefik WASM plugins - [winbox-deb](https://github.com/tikoci/winbox-deb): WinBox 4.0 packaged as .deb for Linux — template-style distribution - [mikrotik-gpl](https://github.com/tikoci/mikrotik-gpl): MikroTik GPL source releases and scripts - [netserver](https://github.com/tikoci/netserver): Network server scripts for RouterOS - [adventure](https://github.com/tikoci/adventure): Classic Colossal Cave Adventure as RouterOS container - [wargames](https://github.com/tikoci/wargames): WarGames WOPR terminal simulation as RouterOS container ## Optional - [utf2rsc](https://observablehq.com/@a2m0/utf2rsc?collection=@a2m0/mikrotik): Observable notebook — UTF-8/emoji to RouterOS string byte-escape converter - [csv2rsc](https://observablehq.com/@a2m0/csv2rsc?collection=@a2m0/mikrotik): Observable notebook — CSV to RouterOS array converter - [tikoci.github.io](https://github.com/tikoci/tikoci.github.io): This portfolio site — source code, build pipeline, per-repo landing pages - [Skillstore listing](https://skillstore.io/skills?q=tikoci&tools=claude): All 6 RouterOS skills on Skillstore with one-click install for Claude - [Project Map](https://tikoci.github.io/project-map.html): Interactive D3 force-directed graph showing all projects and their relationships