hkblockchaintechnology commited on
Commit
74588a2
·
verified ·
1 Parent(s): 08e3971

Publish tiny_computer_agent_app.py from marimo

Browse files
Files changed (1) hide show
  1. tiny_computer_agent_app.py +33 -7
tiny_computer_agent_app.py CHANGED
@@ -303,7 +303,8 @@ def readme():
303
  accepts injected input. Trigger it from the Actions tab. The repo needs a GitHub mirror -
304
  Hugging Face does not run GitHub Actions.
305
 
306
- **2. A local QEMU VM without KVM.** Measured on the headless container above:
 
307
 
308
  ```
309
  /dev/kvm absent -> no hardware virtualization
@@ -312,19 +313,43 @@ def readme():
312
  qemu-system-x86_64 -accel tcg -> boots (reached "No bootable device.")
313
  ```
314
 
315
- So a Windows guest is *possible* with no KVM at all, but entirely under software
316
- emulation. TCG runs roughly 10-50x slower than native, which turns a 20-minute Windows
317
- install into many hours - and the harness's OCR would then run on an emulated CPU inside
318
- the guest. Use this only when no CI runner and no cloud box is available:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
319
 
320
  ```bash
321
  qemu-img create -f qcow2 win.qcow2 64G
322
- qemu-system-x86_64 -accel tcg -m 8G -smp 4 \
 
 
 
 
323
  -drive file=win.qcow2,format=qcow2,if=virtio \
324
  -cdrom Win11_Eval_x64.iso -boot d \
325
- -device virtio-vga -vnc :1 # then RDP/VNC in, pip install the harness inside
326
  ```
327
 
 
328
  **3. A cloud Windows box.** Any Windows VM reachable over RDP gives a native desktop, a
329
  real `SendInput` path and real DPI scaling. Untested here; it is the closest thing to
330
  "a user's actual laptop".
@@ -390,6 +415,7 @@ def readme():
390
  - [x] Blind-grid-click guard, echo detection, no-progress guard
391
  - [ ] Make the VLM reliable on a live screen (it echoes the prompt instead of choosing)
392
  - [ ] Windows run of the live test - workflow committed; needs a GitHub mirror with Actions on
 
393
  - [ ] Accessibility-tree detector (AT-SPI on Linux, UI Automation on Windows)
394
  - [ ] Score episodes: replay a trace and count how often the choice was right
395
  - [ ] marimo console: live screen preview, action log, pause / resume / step
 
303
  accepts injected input. Trigger it from the Actions tab. The repo needs a GitHub mirror -
304
  Hugging Face does not run GitHub Actions.
305
 
306
+ **2. A local QEMU VM without KVM.** Measured on the headless container above - this is
307
+ what the box actually reported, not what the docs claim:
308
 
309
  ```
310
  /dev/kvm absent -> no hardware virtualization
 
313
  qemu-system-x86_64 -accel tcg -> boots (reached "No bootable device.")
314
  ```
315
 
316
+ The rest of the Windows 11 ingredient list was then checked rather than assumed - UEFI
317
+ firmware and a TPM 2.0, both under pure TCG:
318
+
319
+ ```
320
+ apt-get install -y ovmf swtpm -> /usr/share/OVMF/OVMF_CODE_4M.fd + swtpm 0.7.1
321
+ swtpm socket --tpm2 --tpmstate dir=/tmp/tpmstate \
322
+ --ctrl type=unixio,path=/tmp/swtpm-sock &
323
+ qemu-system-x86_64 -accel tcg -machine q35 -m 4G -smp 4 \
324
+ -drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE_4M.fd \
325
+ -drive if=pflash,format=raw,file=/tmp/OVMF_VARS.fd \
326
+ -chardev socket,id=chrtpm,path=/tmp/swtpm-sock \
327
+ -tpmdev emulator,id=tpm0,chardev=chrtpm -device tpm-tis,tpmdev=tpm0 -nographic
328
+
329
+ -> UEFI Interactive Shell v2.2
330
+ EDK II
331
+ UEFI v2.70 (Debian distribution of EDK II, 0x00010000)
332
+ ```
333
+
334
+ So the whole stack works here: UEFI boot, an emulated TPM 2.0, and software-only
335
+ emulation. A Windows 11 guest is genuinely installable - just slow, because TCG runs
336
+ roughly 10-50x slower than native, turning a 20-minute install into many hours, after
337
+ which the harness's OCR would run on an emulated CPU inside the guest. Use it only when
338
+ no CI runner and no cloud box is available:
339
 
340
  ```bash
341
  qemu-img create -f qcow2 win.qcow2 64G
342
+ qemu-system-x86_64 -accel tcg -m 8G -smp 4 -machine q35 \
343
+ -drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE_4M.fd \
344
+ -drive if=pflash,format=raw,file=/tmp/OVMF_VARS.fd \
345
+ -chardev socket,id=chrtpm,path=/tmp/swtpm-sock \
346
+ -tpmdev emulator,id=tpm0,chardev=chrtpm -device tpm-tis,tpmdev=tpm0 \
347
  -drive file=win.qcow2,format=qcow2,if=virtio \
348
  -cdrom Win11_Eval_x64.iso -boot d \
349
+ -device virtio-vga -vnc :1 # VNC/RDP in, then pip install the harness inside
350
  ```
351
 
352
+
353
  **3. A cloud Windows box.** Any Windows VM reachable over RDP gives a native desktop, a
354
  real `SendInput` path and real DPI scaling. Untested here; it is the closest thing to
355
  "a user's actual laptop".
 
415
  - [x] Blind-grid-click guard, echo detection, no-progress guard
416
  - [ ] Make the VLM reliable on a live screen (it echoes the prompt instead of choosing)
417
  - [ ] Windows run of the live test - workflow committed; needs a GitHub mirror with Actions on
418
+ - [x] Windows VM ingredients verified locally (UEFI + TPM 2.0 boot under TCG; no KVM here)
419
  - [ ] Accessibility-tree detector (AT-SPI on Linux, UI Automation on Windows)
420
  - [ ] Score episodes: replay a trace and count how often the choice was right
421
  - [ ] marimo console: live screen preview, action log, pause / resume / step