Skip to content

Code Interpreter Image Migration Guide ​

Issue: #1764

Background ​

Historically, the source Dockerfiles, environment setup scripts, and build tooling for the official opensandbox/code-interpreter container image lived inside the OpenSandbox monorepo under sandboxes/code-interpreter/.

To separate platform runtime and SDK governance from specific sandbox userland environment implementations, the container image implementation has been extracted into a dedicated repository:

Scope of Separation ​

Extracted to Dedicated Repository ​

The following components and artifacts are now developed, versioned, and published from opensandbox-group/sandbox-images:

  • Dockerfiles (Dockerfile, Dockerfile_base)
  • Environment bootstrap and lifecycle scripts (code-interpreter.sh, code-interpreter-env.sh, jupyter_notebook_config.py)
  • Image build scripts and test suites (build.sh, tests/test_code_interpreter_node_setup.sh)
  • Standalone image publication and release workflows

Retained in OpenSandbox Monorepo ​

OpenSandbox continues to maintain full support for the code-interpreter experience in the monorepo:

  • Code Interpreter SDKs: Multi-language SDKs for Python, JavaScript/TypeScript, C#/.NET, Kotlin/Java, and Go (sdks/sandbox/go/code_interpreter.go) remain in sdks/
  • Execution Daemon & Contracts: In-sandbox daemon (components/execd) and public API contracts (specs/execd-api.yaml, specs/sandbox-lifecycle.yml)
  • Runnable Examples & Tests: End-to-end tests and sample applications (examples/code-interpreter/)

Compatibility and Continuity ​

This migration is purely structural for monorepo maintenance. Container image coordinates, pinned versions, startup paths, and SDK APIs remain fully compatible:

PropertyStatusDetails
Image NamesUnchangedPublished to docker.io/opensandbox/code-interpreter, ghcr.io/opensandbox-group/opensandbox/code-interpreter, and sandbox-registry.cn-zhangjiakou.cr.aliyuncs.com/opensandbox/code-interpreter
Existing TagsValidExisting pinned tags (such as v1.1.0) continue to resolve and run
Startup PathUnchangedEntrypoint /opt/code-interpreter/code-interpreter.sh remains standard
Environment VariablesUnchangedLanguage version selection via PYTHON_VERSION, JAVA_VERSION, NODE_VERSION, GO_VERSION remains identical
SDK UsageUnchangedClient code using CodeInterpreter classes requires no modifications

Signature and Provenance Verification ​

Operators and users who verify container image signatures or build provenance should note the workflow identity:

  • Existing image releases (such as v1.1.0 and earlier) were published by the OpenSandbox monorepo and continue using the OpenSandbox workflow identity (publish-components.yml).
  • New releases from opensandbox-group/sandbox-images use that repository's release.yml workflow identity.
  • Users verifying Cosign signatures or provenance attestations for new releases must follow the verification documentation in opensandbox-group/sandbox-images.

Contributing and Reporting Issues ​

  • Container Image Issues or Requests: If you need new pre-installed packages, updated language versions, or custom kernels in the code-interpreter environment image, please submit an issue or pull request at opensandbox-group/sandbox-images.
  • SDK or Lifecycle Platform Issues: For SDK bugs, lifecycle control plane features, or execd daemon issues, continue contributing to opensandbox-group/OpenSandbox.

Released under the Apache 2.0 License.