Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add instructions/tikoci/mikropkl/agents-mdgit clone --depth 1 https://github.com/tikoci/mikropklWrote 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/instructions/tikoci/mikropkl/agents-md)<a href="https://agentmods.dev/instructions/tikoci/mikropkl/agents-md"><img src="https://agentmods.dev/badge/instructions/tikoci/mikropkl/agents-md.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 | $0.07381 | $0.07381 |
| Opus 5 | $0.03691 | $0.03691 |
| Sonnet 5 | $0.01476 | $0.01476 |
| Haiku 4.5 | $0.00738 | $0.00738 |
Grade A, and why
mikropkl AGENTS.md scanned grade A with 1 finding 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 4d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -s -m 5 http://localhost:9180/ | head -1 How it starts
The opening of the file, as written. The whole thing — 509 lines — stays where its author put it; the contents beside it link to each section on GitHub.
AGENTS.md — Agent Reference: Roadmap, Implementation Notes, and Decision Log
This document captures deeper technical context, architecture decisions, and planned work items for AI coding agents working on this project. It supplements CLAUDE.md (which is the primary project reference) with information useful for multi-session agent work.
Architecture Summary
The project has two output layers, each derived from the same pkl manifests:
pkl Manifests (.pkl)
│
├─→ UTM bundle (.utm) macOS/UTM.app — primary user-facing
│ config.plist
│ Data/ (disk images)
│ qemu.cfg QEMU --readconfig ini format
│ qemu.sh Launch script (pflash, accel, networking, serial)
│
└─→ (libvirt.xml) Experimental — disabled by default
The .utm directory IS a ZIP archive — this is the key insight for Linux deployment.
UTM bundles are macOS-first but structurally portable. Every bundle includes
qemu.cfg + qemu.sh so users on Linux (or macOS without UTM) can unpack the
ZIP and run QEMU directly.
Image Pipeline
MikroTik download ─→ chr-<ver>.img (x86_64, proprietary boot)
─→ chr-<ver>-arm64.img (aarch64, standard FAT16 EFI)
tikoci/fat-chr ─→ chr-efi.img (x86_64, reformatted FAT16 EFI)
(required for Apple VZ / UEFI boot)
When to use which image:
- QEMU x86_64 → standard
chr-<ver>.img+ SeaBIOS (simplest, fastest) - QEMU aarch64 → standard
chr-<ver>-arm64.img+ EDK2 UEFI pflash - Apple VZ x86_64 →
chr-efi.imgfrom fat-chr (needs proper FAT EFI partition) - Apple VZ aarch64 → [untested] standard ARM64 image (already FAT16)
VirtIO Deep Dive
This is the single most important QEMU detail for this project. Getting the disk interface wrong is the #1 cause of boot failures.
Why UTM says "NVMe" but uses virtio-blk-pci on aarch64
UTM's translation layer maps plist Interface=NVMe differently per backend:
- Apple backend: actual NVMe (Virtualization.framework handles it)
- QEMU backend: UTM passes
-device virtio-blk-pciregardless of the plist value
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.
- 4d ago First seen · 509 lines · 7,381 tokens per session scan A 3a65b107a6fb
mikropkl AGENTS.md is an instructions file published in the GitHub repository tikoci/mikropkl (52 stars, last pushed today), licensed Unlicense. It adds 7,381 tokens to every session, about $0.0369 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
mikrotik-routeros-mcp AGENTS.md
AGENTS.md instructions for drohi-r/mikrotik-routeros-mcp, covering agents.md, project, core rules, key commands and key paths.
routeros-inspector-mcp CLAUDE.md
Claude Code instructions for kevinb361/routeros-inspector-mcp, covering routeros inspector mcp, purpose, hard safety boundary, public-repository hygiene and references.
routeros-inspector-mcp AGENTS.md
AGENTS.md instructions for kevinb361/routeros-inspector-mcp, a project described as: Unofficial read-only MCP server for MikroTik RouterOS inspection and policy-backed audits.
tik4net AGENTS.md
AGENTS.md instructions for danikf/tik4net, covering agents.md, what this is, reference map — read the right file, don't guess, build and tests.
mikrotik-mcp CLAUDE.md
Instructions for mikrotik-mcp/mikrotik-mcp, covering claude.md, what this is, commands, architecture and adding or changing a tool module.
br3eze-code CLAUDE.md
Instructions for br3eze-code/br3eze-code, covering claude.md, commands, what this project is, architecture — the live spine vs. legacy code and other real subsystems.