Real pandas on your CSV —running in this tab. Nothing uploaded. No install. Every tool is a signed, capability-sandboxed component that can touch only the file you hand it .
python-env · exec — a tool
example pandas — groupby sales by region Pillow — render a chart, return a PNG install — pull humanize from pypi, then use it escape — reach a non-PyPI host (denied by policy)
code : str the exec argument
Run · downloads ~113 MB once signed component from actpkg.dev · no upload · cached after first run
This is the real thing — the code is the argument to the exec tool; the output is its real result. Not a REPL, not a video.
Don't want to write it? A local model can — calling the same sandboxed tool.
One artifact · every host
The same signed artifact runs over MCP, the CLI , or right in the browser. --mcp
In your agent
Claude, Cursor, or any MCP client calls exec .
act call
On the CLI
Pass the CSV as an argument, get the tool result out. Scriptable.
:8080
Over HTTP
Same component, served as a sandboxed endpoint.
this tab ←
In the browser
What you just ran. No server round-trip at all.
written in any of 12 languages · pinned by digest, signed to its build
The question you're already asking
“Isn't this just Pyodide?” No — and we're honest about where Pyodide is ahead. The difference is isolation and portability , not raw Python.
Pyodide
Built for Python↔JS interop
✕ from js import document , js.fetch , DOM & globalThis all work. ✕ Not a sandbox for untrusted, AI-written code. ✓ More compiled packages (SciPy, sklearn), maturity, JS interop. act · python-env
Built to be sealed & portable
✓ Zero ambient authority — no js , no DOM, no arbitrary network (pypi only, for micropip ). It can't escape. ✓ The same signed component runs in your agent over MCP / CLI / HTTP. ≈ Runtime pure-Python install is parity — we use the same micropip . Pyodide-adjacent, not a reinvention. The difference is isolation + portability.
Use it in your agent The exec tool you just ran is the exact signed artifact your agent calls — byte for byte.
$ claude mcp add python-env -- npx @actcore/act run actpkg.dev/library/python-env --mcpCopy
Your browser is ready — WebGPU + wasm available
Chrome / Edge 137+
Works out of the box — wasm JSPI and WebGPU are on by default.
Firefox 153+
Works out of the box — JSPI ships on by default since Firefox 153 (July 2026), no flags. The optional local model also needs WebGPU: on for Windows and Apple-silicon macOS, not yet on Linux.
act() Hardened tools for AI agents — one signed, sandboxed component runs over MCP, the CLI, or right in the browser.
© 2026 actcore