← Sandbox SDK / sandbox / 1-0-preview
Расширения
Расширения добавляют дополнительные возможности вашему Sandbox подкласс в виде вложенных пространств имен (например, sandbox.interpreter.*). Это не глобальные объекты, свободно доступные в любом приложении.
Шаблон подключения
import { Sandbox as BaseSandbox } from "@cloudflare/sandbox";
import { withInterpreter } from "@cloudflare/sandbox/interpreter";
export class Sandbox extends BaseSandbox {
interpreter = withInterpreter(this);
}import { Sandbox as BaseSandbox } from "@cloudflare/sandbox";
import { withInterpreter } from "@cloudflare/sandbox/interpreter";
export class Sandbox extends BaseSandbox<Env> {
interpreter = withInterpreter(this);
}Экспортируйте этот класс из своего Worker. Вызывайте методы расширения через вложенное свойство из кода приложения.
Официальные расширения
В превью-пакете доступны следующие фирменные расширения:
| Расширение | Пакет | Документация |
|---|---|---|
| Code interpreter | @cloudflare/sandbox/interpreter |
Code interpreter, Interpreter API |
| OpenCode | @cloudflare/sandbox/opencode |
Проверьте экспортируемые значения в установленном @next версия (например, withOpenCode и вспомогательные функции client/proxy). |
Для интерпретатора подключитесь один раз, а затем используйте те же имена методов, что и в стабильном пакете (createCodeContext, runCode, и связанные вызовы) в sandbox.interpreter. Для Python требуется -python вариант образа. Полное руководство см. в Code interpreter.
Пользовательские расширения
Расширения, определяемые приложением, являются экспериментальными. Вспомогательные функции находятся в @cloudflare/sandbox/extensions, однако предварительная документация пока не описывает создание или публикацию собственного расширения. Отдавайте предпочтение официальным расширениям из таблицы либо держите весь пользовательский код внутри своего приложения, пока не появится поддерживаемое руководство по созданию расширений.