How it works
When the agent needs to run something, it spins up a fresh virtual machine, runs the commands, and destroys it when done. The VM is isolated from the platform and the internet calls it makes originate from the VM itself, not your workspace. A typical flow:- Create a virtual machine (
create_vm). - Run bash commands inside it (
execute_bash) — Python, Node, shell, package installs, and long-running jobs are all fair game. - Transfer files in and out as needed — the agent can upload files you attached to the chat, or files stored as agent documents, and download results back into the chat.
- Destroy the VM when the task is complete (
destroy_vm). Idle VMs also auto-stop on their own.
When to use it
Virtual Machine is the right tool when the agent needs a real Linux environment. Common cases:- Office documents — create and edit
.xlsx,.pptx,.docx, and.pdffiles using libraries likeopenpyxl,python-pptx,python-docx,pypdf, andpandoc. - Data processing — crunch large CSV, JSON, or Parquet files with pandas, or run anything that needs more than a short in-chat script.
- Package installs —
pip install,npm install,apt-get, and headless browser drivers (e.g. Playwright) work as expected. - Longer-running jobs — multi-step pipelines, batch conversions, or commands that would exceed the in-chat code execution timeout.
File transfers
The agent can move files in both directions between the chat and the VM:- Upload — attach a file to the chat (or point the agent at an agent document) and the agent uploads it into the VM for processing.
- Download — after the VM produces output, the agent pulls the file back and saves it as a chat document or agent document that you can open or share.
Example use cases
- “Take this sales spreadsheet, pivot the numbers by region and month, and give me back a new
.xlsxwith charts.” - “Convert these ten Word documents to clean Markdown and save each one as an agent document.”
- “Fill in this PowerPoint template with the metrics from our database and email the deck to the leadership team.”
- “Run this Python script against
orders.csvand report the top 20 customers by revenue.” - “Scrape the pricing pages of these competitors using Playwright and save the results to a CSV.”
Related features
Code Execution
Lightweight in-chat code execution for calculations and quick transformations
Documents
Store files produced or consumed by the VM as agent or chat documents
Scheduling
Run VM-based workflows automatically on a schedule

