Practical overview
When it fits
Use Takovm when an agent workflow needs Python and file execution with built-in job handling and a self-hosted deployment model.
Who it is for
- Developers building agents that need to execute Python code or manage files in a per-job workspace.
- Teams that want queues, retries and execution records as part of their agent execution infrastructure.
Documented uses
- Run agent-generated Python code in a separate container for each job.
- Provide a temporary workspace for file operations during execution.
- Queue jobs, retry executions and retain output and timing history.
- Replay previous jobs to support debugging.
Requirements & limits
The project is self-hosted and open source under the Apache-2.0 license. Installation requires Docker and Python 3.10 or later.
- Execution containers and workspaces are single-use and ephemeral; persistent per-agent workspaces are described as a roadmap item.
- Network access is disabled by default, with optional allowlists per job type.
- The default strict security mode requires gVisor; the documented permissive fallback to standard Docker removes the userspace-kernel boundary and is not intended for untrusted code.
- The README documents an API server, worker pool and PostgreSQL-backed execution history.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Install and start the Takovm server
Install the server package, prepare its executor image and start the API server.
Before you start
- Docker
- Python 3.10 or later
Steps
Install the server extra with the command below.
pip install "tako-vm[server]"Run
tako-vm setupto pull the executor Docker image.Run
tako-vm serverto start the server; the documented command auto-starts PostgreSQL via Docker.
Expected outcome
The Takovm API server starts with PostgreSQL managed via Docker.
Guide limitations
- This setup recipe does not cover submitting an execution job.
- The project’s default strict security mode requires the gVisor userspace-kernel boundary.
Submit a Python execution request
Send a Python code snippet to a running local Takovm server.
Before you start
- A running Takovm server at
http://localhost:8000
Steps
Send a POST request to
http://localhost:8000/execute.Set the
Content-Typeheader toapplication/json.Provide a JSON body with a
codefield, such as{"code": "print(1 + 1)"}.
Expected outcome
The example submits Python code for execution through the REST API.
Guide limitations
- The README’s example does not document how to inspect or interpret the response.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 12 October 2026
- Original website title
- Tako-Research/TakoVM · Official homepage title · retained in its source language

