`browse` is now the one Chromium on the box, for offline rendering too.
- js/eval --out writes a render straight to disk, allowing skills to stop bundling their own puppeteer
- Convert local HTML or JSON into a PNG or any bytes on disk through the headless Chromium browser without a second browser install
- --raw flag to write literal base64 strings instead of decoding to raw bytes
- Offline render mode docs in the browse skill
- --out is a per-invocation WRITE capability that requires the write scope
- Malformed base64 errors loudly instead of writing a corrupt file
- Missing parent directories are created automatically when using --out
js/eval --out writes a render straight to disk, so skills stop bundling their own puppeteer.
You can now turn your own local HTML or JSON into a PNG (or any bytes) on disk through the same headless browse Chromium you already run, with no second browser install.
js " " --out out.png and eval script.js --out out.png write the evaluate result to a file instead of returning it.
When the result is a base64 data URL, --out decodes it to raw bytes for you; pass --raw to write the literal string.
Malformed base64 errors loudly instead of writing a corrupt file, and missing parent directories are created.
This closes the gap that made local-render skills each npm i puppeteer and download a drifting second Chromium.
Added: js / eval --out render-to-file.
Added: --raw flag.
Added: Offline render mode docs in the browse skill.
Changed: --out is a per-invocation WRITE capability.
js/eval stay read commands, but an --out invocation requires the write scope.