用途:把 RouterOS 配置、脚本或 API 调用放到真实 RouterOS 上运行验证,而不是仅凭文档推测。适合需要应用配置并回读、迭代 REST/脚本、对 CHR 做集成测试的场景;仅需文档时不适合(改用 routeros-fundamentals),刷物理硬件也不适合;需要裸 QEMU 启动细节可看 routeros-qemu-chr。
主要能力:QuickCHR.start(opts) 启动并返回 REST-ready 实例;exec() 执行 CLI 命令,rest() 做 REST 调用并返回解析后的 JSON;可指定 channel(stable/long-term/testing/development)或版本、架构 x86/arm64、secureLogin;支持 upload/download 传文件、installPackage 装包、extraPorts/--forward 端口转发、networks/--add-network 加网卡、subprocessEnv()/descriptor() 供外部进程连接、snapshot、remove/stop/destroy 清理。
使用方式:安装 bun add @tikoci/quickchr,或不安装直接 bunx @tikoci/quickchr <cmd>。基本流程为 start 后 exec 写入配置、rest 回读断言、最后 remove 拆除。外部工具通过 subprocessEnv() 取 URLBASE、BASICAUTH、QUICKCHR_*,BASICAUTH 为原始 user:password,需自行 base64 编码用于 HTTP Basic,敏感值勿记录日志。
限制:初始化、装包与写入型 exec 需 RouterOS 7.20.8+,更早 7.x 仅能启动;QGA(--via=qga)需 KVM;socket-mcast 在 macOS 与受限 Linux 下会静默失败,跨架构 TCG x86-on-arm64 不可行;免费 CHR 限速 1 Mbps,适合配置/API 验证而非吞吐测试。其余细节暂未提供。