---
title: @cloudflare/codemode v0.1.0: a new runtime agnostic modular architecture
description: The Code Mode SDK has been rewritten with `createCodeTool()`, `DynamicWorkerExecutor`, and a new `Executor` interface that allows for Bring Your Own (BYO) sandbox.
image: https://developers.cloudflare.com/changelog-preview.png
---

> Documentation Index  
> Fetch the complete documentation index at: https://developers.cloudflare.com/changelog/llms.txt  
> Use this file to discover all available pages before exploring further. 

[Skip to content](#%5Ftop) 

# Changelog

New updates and improvements at Cloudflare.

[ Subscribe to RSS ](https://developers.cloudflare.com/changelog/rss/index.xml) [ View RSS feeds ](https://developers.cloudflare.com/fundamentals/new-features/available-rss-feeds/) 

![hero image](https://developers.cloudflare.com/_astro/hero.CVYJHPAd_26AMqX.svg) 

[ ← Back to all posts ](https://developers.cloudflare.com/changelog/) 

## @cloudflare/codemode v0.1.0: a new runtime agnostic modular architecture

Feb 20, 2026 

[ Agents ](https://developers.cloudflare.com/agents/)[ Workers ](https://developers.cloudflare.com/workers/) 

The [@cloudflare/codemode ↗](https://www.npmjs.com/package/@cloudflare/codemode) package has been rewritten into a modular, runtime-agnostic SDK.

[Code Mode ↗](https://blog.cloudflare.com/code-mode/) enables LLMs to write and execute code that orchestrates your tools, instead of calling them one at a time. This can (and does) yield significant token savings, reduces context window pressure and improves overall model performance on a task.

The new `Executor` interface is runtime agnostic and comes with a prebuilt `DynamicWorkerExecutor` to run generated code in a [Dynamic Worker Loader](https://developers.cloudflare.com/workers/runtime-apis/bindings/worker-loader/).

#### Breaking changes

* Removed `experimental_codemode()` and `CodeModeProxy` — the package no longer owns an LLM call or model choice
* New import path: `createCodeTool()` is now exported from `@cloudflare/codemode/ai`

#### New features

* **`createCodeTool()`** — Returns a standard AI SDK `Tool` to use in your AI agents.
* **`Executor` interface** — Minimal `execute(code, fns)` contract. Implement for any code sandboxing primitive or runtime.

#### `DynamicWorkerExecutor`

Runs code in a [Dynamic Worker](https://developers.cloudflare.com/workers/runtime-apis/bindings/worker-loader/). It comes with the following features:

* **Network isolation** — `fetch()` and `connect()` blocked by default (`globalOutbound: null`) when using `DynamicWorkerExecutor`
* **Console capture** — `console.log/warn/error` captured and returned in `ExecuteResult.logs`
* **Execution timeout** — Configurable via `timeout` option (default 30s)

#### Usage

* [  JavaScript ](#tab-panel-2679)
* [  TypeScript ](#tab-panel-2680)

JavaScript

```
import { createCodeTool } from "@cloudflare/codemode/ai";import { DynamicWorkerExecutor } from "@cloudflare/codemode";import { streamText } from "ai";
const executor = new DynamicWorkerExecutor({ loader: env.LOADER });const codemode = createCodeTool({ tools: myTools, executor });
const result = streamText({  model,  tools: { codemode },  messages,});
```

TypeScript

```
import { createCodeTool } from "@cloudflare/codemode/ai";import { DynamicWorkerExecutor } from "@cloudflare/codemode";import { streamText } from "ai";
const executor = new DynamicWorkerExecutor({ loader: env.LOADER });const codemode = createCodeTool({ tools: myTools, executor });
const result = streamText({  model,  tools: { codemode },  messages,});
```

#### Wrangler configuration

* [  wrangler.jsonc ](#tab-panel-2677)
* [  wrangler.toml ](#tab-panel-2678)

JSONC

```
{  "worker_loaders": [{ "binding": "LOADER" }],}
```

TOML

```
[[worker_loaders]]binding = "LOADER"
```

See the [Code Mode documentation](https://developers.cloudflare.com/agents/tools/codemode/) for full API reference and examples.

#### Upgrade

Terminal window

```
npm i @cloudflare/codemode@latest
```

```json
{"@context":"https://schema.org","@type":"BlogPosting","@id":"https://developers.cloudflare.com/changelog/post/2026-02-20-codemode-sdk-rewrite/#page","headline":"@cloudflare/codemode v0.1.0: a new runtime agnostic modular architecture · Changelog","description":"The Code Mode SDK has been rewritten with createCodeTool(), DynamicWorkerExecutor, and a new Executor interface that allows for Bring Your Own (BYO) sandbox.","url":"https://developers.cloudflare.com/changelog/post/2026-02-20-codemode-sdk-rewrite/","inLanguage":"en","image":"https://developers.cloudflare.com/changelog-preview.png","dateModified":"2026-02-20","datePublished":"2026-02-20","publisher":{"@type":"Organization","name":"Cloudflare","url":"https://www.cloudflare.com/"},"isPartOf":{"@type":"WebSite","@id":"https://developers.cloudflare.com/#website","name":"Cloudflare Docs","url":"https://developers.cloudflare.com/"}}
```
