Skip to content

Add Windows sandbox to README features#308

Merged
aniketmaurya merged 5 commits into
mainfrom
readme-windows-sandbox
May 28, 2026
Merged

Add Windows sandbox to README features#308
aniketmaurya merged 5 commits into
mainfrom
readme-windows-sandbox

Conversation

@aniketmaurya
Copy link
Copy Markdown
Collaborator

@aniketmaurya aniketmaurya commented May 28, 2026

Summary

  • Replaces the OpenClaw card in the feature grid with a Windows sandbox card (Simple Icons Windows logo). OpenClaw stays discoverable via ## Examples > Advanced.
  • Adds a ## Windows sandbox section right after Quickstart with a Python SmolVM(os="windows", ...) snippet and the smolvm windows build-image CLI.
  • Links out to the full Windows guide.

Scope matches what landed in #302#305: SSH + PowerShell via vm.run(), upload_file(), env vars, and per-VM overlay. Linux host only. No desktop/RDP claim — if that ships later, the card copy can broaden.

Test plan

  • Open the README on GitHub and check the card grid renders cleanly (Windows logo at ~24px, #6e7681 color).
  • Click "Read more →" on the Windows card and confirm it scrolls to ## Windows sandbox.
  • Verify the Python snippet matches the canonical signature in docs/deep-dive/windows-guest-qemu.md (os="windows", ssh_user="smolvm", ssh_password="smolvm").
  • Sanity-check the smolvm windows build-image invocation against smolvm windows build-image --help.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Documentation
    • Replaced the featured card in the top grid with a Windows sandbox card, including updated icon, tagline, and link.
    • Added a Windows sandbox quickstart with Python examples to boot a Windows 11 guest and execute commands, plus a CLI walkthrough to build a Windows guest image from an ISO.
    • Documented requirements and limitations (Linux host/KVM-only for mounts, network controls, snapshots) and linked to detailed setup guidance.

Review Change Stack

Replaces the OpenClaw card in the feature grid with a Windows sandbox
card (OpenClaw remains in the Examples > Advanced table) and adds a
"## Windows sandbox" section after Quickstart with a Python usage
snippet, the image-build CLI, and a link to the full guide.

Scope matches what shipped in #302-#305: SSH + PowerShell via
vm.run(), upload_file(), env vars, and per-VM overlay. Linux host
only; no desktop/RDP claim.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 28, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 6f41dc7e-b429-4058-8870-6856249e6048

📥 Commits

Reviewing files that changed from the base of the PR and between 1de7137 and 96945f6.

⛔ Files ignored due to path filters (1)
  • docs/assets/icons/windows.svg is excluded by !**/*.svg
📒 Files selected for processing (1)
  • README.md

📝 Walkthrough

Walkthrough

README feature grid replaces the OpenClaw card with a Windows sandbox card and a new quickstart section shows how to run Windows 11 guests with Python and CLI examples, plus platform notes (Linux host with KVM required).

Changes

Windows Sandbox Documentation

Layer / File(s) Summary
Feature grid card replacement
README.md
OpenClaw entry replaced with Windows sandbox in the feature grid, updating icon, short description, and link to #windows-sandbox.
Windows sandbox quickstart documentation
README.md
New Windows sandbox section with Windows 11 guest overview, SmolVM(os="windows", ...) Python example (image, ssh_user, ssh_password, wait_for_ssh, run PowerShell), CLI walkthrough to build a Windows guest image from ISO using --virtio-win-iso, and note that Windows guests require a Linux host with KVM (mounts/network controls/snapshots Linux-only).

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

Possibly related PRs

Poem

Windows slips in, sharp as a blade,
A sandbox placed where shadows fade,
PowerShell hums under iron skies,
SmolVM wakes — the guest complies,
Quiet work, done clean and made.

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately reflects the primary change: adding a Windows sandbox feature card to the README's feature grid.
Description check ✅ Passed The description covers Summary and Test plan sections comprehensively, though it deviates from the template by using 'Test plan' instead of 'Testing' and omits 'Related Issues' and 'Checklist' sections.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch readme-windows-sandbox

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

GitHub's image proxy didn't render the cdn.simpleicons.org URL
(no .svg extension in the path). Switch to the same Windows logo
via Iconify's simple-icons collection, which uses the .svg URL
pattern the other seven icons already use.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (1)
README.md (1)

147-147: ⚡ Quick win

Use plain-English terms before jargon in the section opener.

Right now the opener uses “CLI” and “baseline image” without immediate explanation. For beginners, spell those out in simple words first, then introduce the terms.

Suggested rewrite
-SmolVM can boot a Windows 11 guest as well as Linux. Hand it a Windows image and you get the same Python and CLI you use for Linux — run PowerShell, upload files, set environment variables, and run many sandboxes in parallel from one baseline image.
+SmolVM can boot a Windows 11 guest as well as Linux. Give it a Windows disk image, and you can use the same Python API and command-line commands (CLI) as Linux to run PowerShell, upload files, set environment variables, and start many sandboxes from one reusable base image.

As per coding guidelines, "If you must use a technical term, explain it immediately in simple language."

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@README.md` at line 147, Rewrite the opener sentence "SmolVM can boot a
Windows 11 guest as well as Linux..." to put plain-English terms before jargon:
spell out "command-line interface (CLI)" as "command-line interface (CLI)" and
explain "baseline image" as "a common starting virtual machine image (baseline
image)"; keep the rest of the sentence (PowerShell, uploading files, setting
environment variables, running many sandboxes in parallel) but replace instances
of "CLI" and "baseline image" with those expanded phrases so beginners see
simple language first and the jargon in parentheses; update the exact sentence
fragment that contains "CLI" and "baseline image" accordingly.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@README.md`:
- Line 147: Rewrite the opener sentence "SmolVM can boot a Windows 11 guest as
well as Linux..." to put plain-English terms before jargon: spell out
"command-line interface (CLI)" as "command-line interface (CLI)" and explain
"baseline image" as "a common starting virtual machine image (baseline image)";
keep the rest of the sentence (PowerShell, uploading files, setting environment
variables, running many sandboxes in parallel) but replace instances of "CLI"
and "baseline image" with those expanded phrases so beginners see simple
language first and the jargon in parentheses; update the exact sentence fragment
that contains "CLI" and "baseline image" accordingly.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: fd7923de-1dae-480d-bd08-17f80341b9ff

📥 Commits

Reviewing files that changed from the base of the PR and between 86f7725 and 23b65bb.

📒 Files selected for processing (1)
  • README.md

Switch the Windows card icon to a framed (rounded-square) Windows
mark and serve it from docs/assets/icons/windows.svg instead of a
remote CDN. Recolored to #6e7681 to match the other feature icons.

Source: simpleicon.com Windows icon (IcoMoon-generated, fill changed
from #000000 to #6e7681).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 28, 2026

Actionable comments posted: 0

aniketmaurya and others added 2 commits May 28, 2026 14:15
Replace the simpleicon.com-derived framed icon (license unclear) with
a bare four-pane Windows mark redrawn in a 24x24 viewBox from
FontAwesome 5.15.4's brand path. CC BY 4.0 attribution kept as an
SVG comment per the license. Visually consistent with the other
seven cards (bare mark, no frame) and self-hosted so the README
icon does not depend on a third-party CDN.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
vm.run() auto-waits for SSH internally (facade.py:1318), so the
explicit wait_for_ssh() call before it is redundant. Removing it
keeps the Windows snippet symmetric with the Linux quickstart
example above, which also relies on the implicit wait inside run().

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@aniketmaurya aniketmaurya merged commit 5edc886 into main May 28, 2026
9 of 10 checks passed
@aniketmaurya aniketmaurya deleted the readme-windows-sandbox branch May 28, 2026 13:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant