1.2 KiB
1.2 KiB
Development tools
Host support
Automation currently supports Windows 10/11 only. It requires uv, QEMU
with WHPX support, and ffmpeg.exe on PATH. The Python implementation uses
portable APIs where possible, but other hosts are not supported yet.
QEMU and FreeDOS automation
Start the Python daemon and QEMU:
uv run ferro-vm start
uv run ferro-vm status
TCPAGENT.EXE connects only to 127.0.0.1:5558. Local commands use the
Windows named pipe \\.\pipe\ferrolang-vm; there is no controller or observer
TCP port. Monitor the append-only structured log in another terminal:
lnav .qemu/ferro-vm.log
Commands:
uv run ferro-vm ping
uv run ferro-vm exec 'dir C:\FEC'
uv run ferro-vm put fec/src/check.c 'C:\FEC\SRC\CHECK.C'
uv run ferro-vm get 'C:\FEC\TEST.OK' .qemu/TEST.OK
uv run ferro-vm screenshot
uv run ferro-vm ocr
uv run ferro-vm stop
The daemon logs command metadata, DOS output, exit status, transfers, and agent lifecycle events as UTF-8 lines. It deliberately never logs raw binary payloads or protocol hex.
Standalone OCR
tools/qemu_ocr.py remains available for OCRing an existing image:
uv run python tools/qemu_ocr.py --image .qemu/qemu-screen.png