Home/Tools/ai-sdk-tool-code-execution

executeCode

ai-sdk-tool-code-execution

Execute Python code in a sandboxed environment using Vercel Sandbox. Run calculations, data processing, and other computational tasks safely in an isolated environment with Python 3.13.

code-generation
v0.0.2
ISC
⚠️

This tool is currently broken

Import Failed
Cannot load from Railway service
Module not found "https://esm.sh/node:sqlite?target=denonext".
    at https://esm.sh/undici@7.16.0?target=denonext:2:8

Last checked: 12/29/2025, 3:52:23 AM

Interactive Playground

Test ai-sdk-tool-code-execution (executeCode) with AI-powered execution

0/2000 characters

Installation & Usage

Install this tool and use it with the AI SDK

1. Install the package

npm install ai-sdk-tool-code-execution
pnpm add ai-sdk-tool-code-execution

2. Import the tool

import { executeCode } from 'ai-sdk-tool-code-execution';

3. Use with AI SDK

import { generateText } from 'ai';
import { openai } from '@ai-sdk/openai';
import { executeCode } from 'ai-sdk-tool-code-execution';

const result = await generateText({
  model: openai('gpt-4o'),
  tools: { executeCode },
  prompt: 'Your prompt here...',
});

console.log(result.text);

AI Agent Integration

How AI agents can use this tool

Use Case

Use when you need to perform calculations, data processing, or execute Python code safely

Limitations

Python 3.13 only. No network access. 30 second execution timeout.

Examples

  • Perform complex mathematical calculations
  • Process data with pandas/numpy
  • Generate plots with matplotlib

Parameters

Available configuration options

Author-provided
code
Required
Type: string

Python code to execute in the sandbox

Schema extracted: 12/17/2025, 10:50:54 AM

Try to auto-extract schema from the package

README

AI SDK Code Execution Tool

A TypeScript package that provides a code execution tool for the AI SDK. Execute Python code in a sandboxed environment using Vercel Sandbox.

Installation

pnpm add ai-sdk-tool-code-execution

Prerequisites

  • A Vercel account with access to Vercel Sandbox (available in Beta on all plans)
  • Vercel CLI installed
  • A Vercel OIDC token for authentication

Setup

1. Link your Vercel project

From your project directory, link to a new or existing Vercel project:

vercel link

2. Pull environment variables

Download your Vercel OIDC token:

vercel env pull

This creates a .env.local file with your VERCEL_OIDC_TOKEN that the SDK uses to authenticate with Vercel Sandbox.

Note: Development tokens expire after 12 hours. Run vercel env pull again when your token expires.

3. Add your AI provider credentials

If using Vercel AI Gateway, add your API key to .env.local:

AI_GATEWAY_API_KEY=your_api_key_here

Usage

import { executeCode } from "ai-sdk-tool-code-execution";
import { generateText, gateway } from "ai";

const result = await generateText({
  model: gateway("openai/gpt-4o-mini"),
  prompt: "What is 5 + 5 minus 84 cubed?",
  tools: {
    executeCode: executeCode(),
  },
});

console.log(result.text);

The executeCode tool allows your AI agent to run Python 3.13 code in a Vercel Sandbox environment. The agent can perform calculations, data processing, and other computational tasks safely in an isolated environment.

Options

Configure the tool with optional parameters:

type CodeExecutionToolOptions = {
  debug?: boolean;
};

Example with debug enabled:

const result = await generateText({
  model: gateway("openai/gpt-4o-mini"),
  prompt: "Calculate the factorial of 10",
  tools: {
    executeCode: executeCode({ debug: true }),
  },
});

When debug is enabled, you'll see detailed logs of code execution in your terminal.

How it works

This package uses Vercel Sandbox to execute Python code in an ephemeral, isolated environment. Each code execution:

  1. Creates a new sandbox with Python 3.13 runtime
  2. Executes your code using python3 -c
  3. Captures stdout, stderr, and exit codes
  4. Automatically stops the sandbox after execution

Important notes

  • Python 3.13 runtime: Code runs in Vercel Sandbox's python3.13 image
  • Not a REPL: You must use print() to see output. Bare expressions produce no output
  • Isolated execution: Each sandbox runs in a secure, ephemeral environment on Amazon Linux 2023
  • Authentication required: Requires a valid Vercel OIDC token
  • Resource limits: See Vercel Sandbox pricing and limits

Alternative authentication

If you cannot use VERCEL_OIDC_TOKEN, you can authenticate with access tokens. Set these environment variables:

VERCEL_TEAM_ID=your_team_id_here
VERCEL_PROJECT_ID=your_project_id_here
VERCEL_TOKEN=your_access_token_here

Find your team ID, project ID, and create an access token in your Vercel dashboard.

Development

Testing locally

Test the tool with the included test script:

pnpm test

Building

Build the package:

pnpm build

Publishing

Update the version in package.json, then publish:

pnpm publish

The package automatically builds before publishing.

Project structure

.
├── src/
│   ├── tools/
│   │   └── execute-code.ts   # Code execution tool implementation
│   ├── index.ts              # Tool exports
│   └── test.ts               # Test script
├── dist/                     # Build output (generated)
├── package.json
├── tsconfig.json
└── README.md

Monitoring usage

Track your sandbox usage in the Vercel dashboard:

  1. Go to your project
  2. Click the AI tab
  3. Click Sandboxes to view execution history and URLs

View compute usage across all projects in the Usage tab of your dashboard.

Learn more

License

ISC

Statistics

Downloads/month

694

GitHub Stars

0

Quality Score

89%

NPM Keywords

ai
ai-sdk
tools

Maintainers

albanese(gcalbanese96@gmail.com)

Frameworks

vercel-ai